Merge branch 'dev' into spot-removal-tool

This commit is contained in:
Hombre
2020-05-18 14:54:30 +02:00
306 changed files with 20836 additions and 10481 deletions

View File

@@ -93,6 +93,7 @@ ToolPanelCoordinator::ToolPanelCoordinator (bool batch) : ipc (nullptr), favorit
flatfield = Gtk::manage (new FlatField ());
rawcacorrection = Gtk::manage (new RAWCACorr ());
rawexposure = Gtk::manage (new RAWExposure ());
preprocessWB = Gtk::manage (new PreprocessWB ());
bayerrawexposure = Gtk::manage (new BayerRAWExposure ());
xtransrawexposure = Gtk::manage (new XTransRAWExposure ());
fattal = Gtk::manage (new FattalToneMapping ());
@@ -157,6 +158,7 @@ ToolPanelCoordinator::ToolPanelCoordinator (bool batch) : ipc (nullptr), favorit
addfavoritePanel (sensorxtrans->getPackBox(), xtransprocess, 2);
addfavoritePanel (sensorxtrans->getPackBox(), xtransrawexposure, 2);
addfavoritePanel (rawPanel, rawexposure);
addfavoritePanel (rawPanel, preprocessWB);
addfavoritePanel (rawPanel, preprocess);
addfavoritePanel (rawPanel, darkframe);
addfavoritePanel (rawPanel, flatfield);
@@ -359,6 +361,7 @@ void ToolPanelCoordinator::imageTypeChanged (bool isRaw, bool isBayer, bool isXt
sensorxtrans->FoldableToolPanel::hide();
xtransprocess->FoldableToolPanel::hide();
xtransrawexposure->FoldableToolPanel::hide();
preprocessWB->FoldableToolPanel::hide();
preprocess->FoldableToolPanel::hide();
flatfield->FoldableToolPanel::show();
filmNegative->FoldableToolPanel::hide();
@@ -379,6 +382,7 @@ void ToolPanelCoordinator::imageTypeChanged (bool isRaw, bool isBayer, bool isXt
sensorxtrans->FoldableToolPanel::hide();
xtransprocess->FoldableToolPanel::hide();
xtransrawexposure->FoldableToolPanel::hide();
preprocessWB->FoldableToolPanel::hide();
preprocess->FoldableToolPanel::hide();
flatfield->FoldableToolPanel::hide();
filmNegative->FoldableToolPanel::hide();
@@ -400,6 +404,7 @@ void ToolPanelCoordinator::imageTypeChanged (bool isRaw, bool isBayer, bool isXt
sensorxtrans->FoldableToolPanel::hide();
xtransprocess->FoldableToolPanel::hide();
xtransrawexposure->FoldableToolPanel::hide();
preprocessWB->FoldableToolPanel::hide();
preprocess->FoldableToolPanel::hide();
flatfield->FoldableToolPanel::hide();
filmNegative->FoldableToolPanel::hide();
@@ -638,6 +643,7 @@ void ToolPanelCoordinator::initImage (rtengine::StagedImageProcessor* ipc_, bool
ipc->setSizeListener (crop);
ipc->setSizeListener (resize);
ipc->setImageTypeListener (this);
ipc->setFilmNegListener (filmNegative);
flatfield->setShortcutPath (Glib::path_get_dirname (ipc->getInitialImage()->getFileName()));
icm->setRawMeta (raw, (const rtengine::FramesData*)pMetaData);
@@ -661,40 +667,52 @@ void ToolPanelCoordinator::closeImage ()
void ToolPanelCoordinator::closeAllTools()
{
for (size_t i = 0; i < options.tpOpen.size(); i++)
for (size_t i = 0; i < options.tpOpen.size(); ++i) {
if (i < expList.size()) {
expList.at (i)->set_expanded (false);
expList[i]->set_expanded(false);
}
}
}
void ToolPanelCoordinator::openAllTools()
{
for (size_t i = 0; i < options.tpOpen.size(); i++)
for (size_t i = 0; i < options.tpOpen.size(); ++i) {
if (i < expList.size()) {
expList.at (i)->set_expanded (true);
expList[i]->set_expanded(true);
}
}
}
void ToolPanelCoordinator::updateToolState()
{
for (size_t i = 0; i < options.tpOpen.size(); i++)
if (i < expList.size()) {
expList.at (i)->set_expanded (options.tpOpen.at (i));
if (options.tpOpen.empty()) {
for (auto expander : expList) {
expander->set_expanded(false);
}
wavelet->updateToolState({});
retinex->updateToolState({});
return;
}
for (size_t i = 0; i < options.tpOpen.size(); ++i) {
if (i < expList.size()) {
expList[i]->set_expanded(options.tpOpen[i]);
}
}
if (options.tpOpen.size() > expList.size()) {
size_t sizeWavelet = options.tpOpen.size() - expList.size();
const size_t sizeWavelet = options.tpOpen.size() - expList.size();
std::vector<int> temp;
for (size_t i = 0; i < sizeWavelet; i++) {
temp.push_back (options.tpOpen.at (i + expList.size()));
for (size_t i = 0; i < sizeWavelet; ++i) {
temp.push_back(options.tpOpen[i + expList.size()]);
}
wavelet->updateToolState (temp);
retinex->updateToolState (temp);
wavelet->updateToolState(temp);
retinex->updateToolState(temp);
}
}
@@ -1090,3 +1108,8 @@ bool ToolPanelCoordinator::getFilmNegativeExponents(rtengine::Coord spotA, rteng
{
return ipc && ipc->getFilmNegativeExponents(spotA.x, spotA.y, spotB.x, spotB.y, newExps);
}
bool ToolPanelCoordinator::getRawSpotValues(rtengine::Coord spot, int spotSize, std::array<float, 3>& rawValues)
{
return ipc && ipc->getRawSpotValues(spot.x, spot.y, spotSize, rawValues);
}