From 3f2e580bd7b0ab527f40a47f89d70b5e4483dede Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Sat, 23 Sep 2017 16:50:43 +0200 Subject: [PATCH 1/4] Hopefully fixes the ADD SET issues, #4100 --- rtgui/options.cc | 117 ++----------------------------------------- rtgui/preferences.cc | 3 +- 2 files changed, 5 insertions(+), 115 deletions(-) diff --git a/rtgui/options.cc b/rtgui/options.cc index 38be51931..45f4896d6 100644 --- a/rtgui/options.cc +++ b/rtgui/options.cc @@ -510,120 +510,9 @@ void Options::setDefaults () sndLngEditProcDone = "window-attention"; #endif - // Reminder: 0 = SET mode, 1 = ADD mode - baBehav = { - 1, // ADDSET_TC_EXPCOMP - 1, // ADDSET_TC_BRIGHTNESS - 1, // ADDSET_TC_BLACKLEVEL - 1, // ADDSET_TC_CONTRAST - 1, // ADDSET_SH_HIGHLIGHTS - 1, // ADDSET_SH_SHADOWS - 1, // ADDSET_SH_LOCALCONTRAST - 1, // ADDSET_LC_BRIGHTNESS - 1, // ADDSET_LC_CONTRAST - 1, // ADDSET_SHARP_AMOUNT - 1, // ADDSET_WB_TEMPERATURE - 1, // ADDSET_WB_GREEN - 1, // ADDSET_ROTATE_DEGREE - 1, // ADDSET_DIST_AMOUNT - 1, // ADDSET_PERSPECTIVE - 1, // ADDSET_CA - 1, // ADDSET_VIGN_AMOUNT - 1, // ADDSET_VIGN_RADIUS - 1, // ADDSET_VIGN_STRENGTH - 1, // ADDSET_VIGN_CENTER - 1, // ADDSET_LC_CHROMATICITY - 1, // ADDSET_TC_SATURATION - 1, // ADDSET_TC_HLCOMPAMOUNT - 1, // ADDSET_TC_HLCOMPTHRESH - 1, // ADDSET_TC_SHCOMP - 1, // ADDSET_DIRPYREQ - 1, // ADDSET_DIRPYRDN_LUMA - 1, // ADDSET_DIRPYRDN_LUDET - 1, // ADDSET_DIRPYRDN_CHROMA - 1, // ADDSET_DIRPYRDN_CHROMARED - 1, // ADDSET_DIRPYRDN_CHROMABLUE - 1, // ADDSET_DIRPYRDN_GAMMA - 1, // ADDSET_CHMIXER - 1, // ADDSET_PREPROCESS_GREENEQUIL - 1, // ADDSET_PREPROCESS_LINEDENOISE - 1, // ADDSET_RAWCACORR - 1, // ADDSET_RAWEXPOS_LINEAR - 1, // ADDSET_RAWEXPOS_PRESER - 1, // ADDSET_RAWEXPOS_BLACKS - 1, // ADDSET_SHARPENEDGE_AMOUNT - 1, // ADDSET_SHARPENMICRO_AMOUNT - 1, // ADDSET_SHARPENEDGE_PASS - 1, // ADDSET_SHARPENMICRO_UNIFORMITY - 1, // ADDSET_VIBRANCE_PASTELS - 1, // ADDSET_VIBRANCE_SATURATED - 1, // ADDSET_FREE_OUPUT_GAMMA - 1, // ADDSET_FREE_OUTPUT_SLOPE - 1, // ADDSET_CAT_DEGREE - 1, // ADDSET_CAT_ADAPSCEN - 1, // ADDSET_CAT_ADAPLUM - 1, // ADDSET_CAT_LIGHT - 1, // ADDSET_CAT_RSTPRO - 1, // ADDSET_CAT_BADPIX - 1, // ADDSET_CAT_JLIGHT - 1, // ADDSET_CAT_CHROMA - 1, // ADDSET_CAT_CONTRAST - 1, // ADDSET_CAT_CHROMA_S - 1, // ADDSET_CAT_CHROMA_M - 1, // ADDSET_CAT_HUE - 1, // ADDSET_CAT_BADPIX - 1, // ADDSET_WB_EQUAL - 1, // ADDSET_GRADIENT_DEGREE - 1, // ADDSET_GRADIENT_FEATHER - 1, // ADDSET_GRADIENT_STRENGTH - 1, // ADDSET_GRADIENT_CENTER - 1, // ADDSET_PCVIGNETTE_STRENGTH - 1, // ADDSET_PCVIGNETTE_FEATHER - 1, // ADDSET_PCVIGNETTE_ROUNDNESS - 1, // ADDSET_BLACKWHITE_HUES - 1, // ADDSET_BLACKWHITE_GAMMA - 1, // ADDSET_DIRPYREQ_THRESHOLD - 1, // ADDSET_DIRPYREQ_SKINPROTECT - 1, // ADDSET_COLORTONING_SPLIT - 1, // ADDSET_COLORTONING_SATTHRESHOLD - 1, // ADDSET_COLORTONING_SATOPACITY - 1, // ADDSET_COLORTONING_BALANCE - 1, // ADDSET_COLORTONING_STRENGTH - 1, // ADDSET_DIRPYRDN_PASSES - 1, // ADDSET_RAWFFCLIPCONTROL - 1, // ADDSET_FILMSIMULATION_STRENGTH - 1, // ADDSET_WA - 1, // ADDSET_WA_SKINPROTECT - 1, // ADDSET_WA_THRESHOLD2 - 1, // ADDSET_WA_THRR - 1, // ADDSET_WA_THRRH - 1, // ADDSET_WA_THRESHOLD - 1, // ADDSET_WA_THRESHOLD2 - 1, // ADDSET_WA_CHRO - 1, // ADDSET_WA_CHROMA - 1, // ADDSET_WA_CONTRAST - 1, // ADDSET_WA_RESCON - 1, // ADDSET_WA_RESCONH - 1, // ADDSET_WA_RESCHRO - 1, // ADDSET_WA_SKYPROTECT - 1, // ADDSET_WA_EDGRAD - 1, // ADDSET_WA_EDGVAL - 1, // ADDSET_WA_STRENGTH - 1, // ADDSET_WA_EDGEDETECT - 1, // ADDSET_WA_EDGEDETECTTHR - 1, // ADDSET_WA_EDGEDETECTTHR2 - 1, // ADDSET_WA_TMRS - 1, // ADDSET_WA_GAMMA - 1, // ADDSET_RETI_STR - 1, // ADDSET_RETI_NEIGH - 1, // ADDSET_RETI_LIMD - 1, // ADDSET_RETI_GAIN - 1, // ADDSET_RETI_OFFS - 1, // ADDSET_RETI_VART - 1, // ADDSET_RETI_GAM - 1, // ADDSET_RETI_SLO - 1, // ADDSET_WB_TEMPBIAS - }; + // 0 = SET mode, 1 = ADD mode + baBehav.clear(); + baBehav.resize(ADDSET_PARAM_NUM, 0); rtSettings.darkFramesPath = ""; rtSettings.flatFieldsPath = ""; diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc index 98b01561a..9d5afda8d 100644 --- a/rtgui/preferences.cc +++ b/rtgui/preferences.cc @@ -216,6 +216,8 @@ Gtk::Widget* Preferences::getBatchProcPanel () appendBehavList (mi, M ("TP_SHARPENING_AMOUNT"), ADDSET_SHARP_AMOUNT, false); appendBehavList (mi, M ("TP_SHARPENING_RLD_DAMPING"), ADDSET_SHARP_DAMPING, false); appendBehavList (mi, M ("TP_SHARPENING_RLD_ITERATIONS"), ADDSET_SHARP_ITER, false); + appendBehavList (mi, M ("TP_SHARPENING_EDTOLERANCE"), ADDSET_SHARP_EDGETOL, false); + appendBehavList (mi, M ("TP_SHARPENING_HALOCONTROL"), ADDSET_SHARP_HALOCTRL, false); mi = behModel->append (); mi->set_value (behavColumns.label, M ("TP_SHARPENEDGE_LABEL")); @@ -342,7 +344,6 @@ Gtk::Widget* Preferences::getBatchProcPanel () mi = behModel->append (); mi->set_value (behavColumns.label, M ("TP_WAVELET_LABEL")); appendBehavList (mi, M ("TP_WAVELET_LEVELS"), ADDSET_WA_THRES, true); - //appendBehavList (mi, M("TP_WAVELET_CONTRAST"), ADDSET_WA, true); appendBehavList (mi, M ("TP_WAVELET_THRESHOLD"), ADDSET_WA_THRESHOLD, true); appendBehavList (mi, M ("TP_WAVELET_THRESHOLD2"), ADDSET_WA_THRESHOLD2, true); appendBehavList (mi, M ("TP_WAVELET_CHRO"), ADDSET_WA_CHRO, true); From 31af0935d826c40001d59e7ca0defe23d0d3d791 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sun, 24 Sep 2017 01:10:08 +0200 Subject: [PATCH 2/4] Some changes to addsetid code in preferences --- rtgui/preferences.cc | 70 +++++++++++++++++++------------------------- rtgui/preferences.h | 2 ++ 2 files changed, 32 insertions(+), 40 deletions(-) diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc index 9d5afda8d..b228c4dc7 100644 --- a/rtgui/preferences.cc +++ b/rtgui/preferences.cc @@ -420,22 +420,21 @@ void Preferences::appendBehavList (Gtk::TreeModel::iterator& parent, Glib::ustri ci->set_value (behavColumns.addsetid, id); } +void Preferences::behAddSetRadioToggled (const Glib::ustring& path, bool add) +{ + Gtk::TreeModel::iterator iter = behModel->get_iter (path); + iter->set_value(behavColumns.badd, add); + iter->set_value(behavColumns.bset, !add); +} + void Preferences::behAddRadioToggled (const Glib::ustring& path) { - - Gtk::TreeModel::iterator iter = behModel->get_iter (path); - //bool set = iter->get_value (behavColumns.bset); - iter->set_value (behavColumns.bset, false); - iter->set_value (behavColumns.badd, true); + behAddSetRadioToggled(path, true); } void Preferences::behSetRadioToggled (const Glib::ustring& path) { - - Gtk::TreeModel::iterator iter = behModel->get_iter (path); - //bool add = iter->get_value (behavColumns.badd); - iter->set_value (behavColumns.bset, true); - iter->set_value (behavColumns.badd, false); + behAddSetRadioToggled(path, false); } @@ -2051,14 +2050,13 @@ void Preferences::fillPreferences () moptions.baBehav.resize (ADDSET_PARAM_NUM); - for (size_t i = 0; i < moptions.baBehav.size(); i++) - for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) - for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) - if (adjs->get_value (behavColumns.addsetid) == (int)i) { - adjs->set_value (behavColumns.badd, moptions.baBehav[i] == 1); - adjs->set_value (behavColumns.bset, moptions.baBehav[i] != 1); - break; - } + for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); ++sections) { + for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); ++adjs) { + const bool add = moptions.baBehav[adjs->get_value(behavColumns.addsetid)]; + adjs->set_value (behavColumns.badd, add); + adjs->set_value (behavColumns.bset, !add); + } + } addc.block (false); setc.block (false); @@ -2563,32 +2561,24 @@ bool Preferences::splashClosed (GdkEventAny* event) return true; } +void Preferences::behAddSetAllPressed (bool add) +{ + moptions.baBehav.clear(); + moptions.baBehav.resize(ADDSET_PARAM_NUM, add); + for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); ++sections) { + for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); ++adjs) { + adjs->set_value(behavColumns.badd, add); + adjs->set_value(behavColumns.bset, !add); + } + } +} + void Preferences::behAddAllPressed () { - - if (moptions.baBehav.size() == ADDSET_PARAM_NUM) { - for (size_t i = 0; i < moptions.baBehav.size(); i++) - for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) - for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) - if (adjs->get_value (behavColumns.addsetid) == (int)i) { - adjs->set_value (behavColumns.badd, true); - adjs->set_value (behavColumns.bset, false); - break; - } - } + behAddSetAllPressed(true); } void Preferences::behSetAllPressed () { - - if (moptions.baBehav.size() == ADDSET_PARAM_NUM) { - for (size_t i = 0; i < moptions.baBehav.size(); i++) - for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) - for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) - if (adjs->get_value (behavColumns.addsetid) == (int)i) { - adjs->set_value (behavColumns.badd, false); - adjs->set_value (behavColumns.bset, true); - break; - } - } + behAddSetAllPressed(false); } diff --git a/rtgui/preferences.h b/rtgui/preferences.h index c9659d3dc..3849a175e 100644 --- a/rtgui/preferences.h +++ b/rtgui/preferences.h @@ -275,8 +275,10 @@ public: void clearThumbImagesPressed (); void clearAllPressed (); + void behAddSetRadioToggled (const Glib::ustring& path, bool add); void behAddRadioToggled (const Glib::ustring& path); void behSetRadioToggled (const Glib::ustring& path); + void behAddSetAllPressed (bool add); void behAddAllPressed (); void behSetAllPressed (); From 5fc2b1e1ca35360e9519f142a95193d07fea8172 Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Mon, 25 Sep 2017 00:24:01 +0200 Subject: [PATCH 3/4] Added ICC profiles ACES, DCI-P3 Theater and DCI-P3 D65 --- rtdata/iccprofiles/output/ACES.icc | Bin 0 -> 608 bytes rtdata/iccprofiles/output/DCI-P3 D65.icc | Bin 0 -> 644 bytes rtdata/iccprofiles/output/DCI-P3 Theater.icc | Bin 0 -> 640 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 rtdata/iccprofiles/output/ACES.icc create mode 100644 rtdata/iccprofiles/output/DCI-P3 D65.icc create mode 100644 rtdata/iccprofiles/output/DCI-P3 Theater.icc diff --git a/rtdata/iccprofiles/output/ACES.icc b/rtdata/iccprofiles/output/ACES.icc new file mode 100644 index 0000000000000000000000000000000000000000..cb87b8bf2d180c75d5d69c8de53069e6369f1f37 GIT binary patch literal 608 zcmZQzU`k*B0wxCrhTOc8q9AuCg^0)~1@?ywoD7mc2_Xi##N^@vAPW!pc8!4%Bz;*I zL@o=zcgr)ROhwtZn?Gl!lrTsP58z2jEly@&U=#tWiBB#lDgm;An8BsIqyWU;0c49L zXB6cE*=K-kl_H=6f$R?;@uH9*XQ1m@fNY+0usD+dNIV@$JP9JM0uoO`63;2k%>?ST z0E=gX>|*i(u_5jOvKSax9i3f+!7M5gC8-r4|1tRGD=Hxj01~Y)-2;!vAPrzZ%$m9qK zBcLcVNM?^H1B3Hxuo`gOFtGps|HcQQ@9!!GhL~ml|Nr+(E-fkps{;}Ud1gfhh8o(is>o9)gK66a{@^r~qoLAZ00ngl%_-a#145sUUqq6cuI;6*cI4ujea&Jg(2wwHo>x8rutn zg22VCf}kM?TEg}=q1Ddyg*rKPhRf%D&O7%W&H?Nfps=q1xxC2}t5LSQx6d437{fFr z9B`%NqCqqye%@gd>9>G5eUG(V^s{kuS8jVs&$CCu4T(ubEy{q6(LbteaFh6wI94_d z!7s#KIm2_rE#etY4N}LW!t-Q8BK8rxG|T&i*9Lsr@=L;}2Yj}a)2TMz^(W#jyCT?B zrJ3e6BvK!*ZISM#|b>$_Z)X0KuqwgKG$>N Ow!bLq8WX6<#_=z4$7vq` literal 0 HcmV?d00001 diff --git a/rtdata/iccprofiles/output/DCI-P3 Theater.icc b/rtdata/iccprofiles/output/DCI-P3 Theater.icc new file mode 100644 index 0000000000000000000000000000000000000000..90ccbc69c4942deb544781cc3887638b499d22c3 GIT binary patch literal 640 zcmb`Eze~eF6vw}bNELq$6%-V2s5(fC*hQSIDHNdpucQ4Ldbqr!k zBrvUN1&gRh{5(Sv=|`_v>yg8`x3kdw`{ajI4PSi<*CR%fdO-suM(?Pa#ckpX;$X?P z1lNe&T8d|hUx_`O1{8w{&tp-A*iAfYINl??(d844UlBghsNwwjYPm8nU1Hrbg zrHJVn!_I6(fGenMc(?p5{@2CU%i=6-=9!kaD%>8(^NkacsX+ zcUl5g2b#_1gI46nPA^FEHM)978^GNQFy!vkEt~-3vp_A Date: Mon, 25 Sep 2017 02:08:06 +0200 Subject: [PATCH 4/4] fix warning in improcfun.cc --- rtengine/improcfun.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 3bc154446..1676dc433 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -1891,12 +1891,9 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int } } - float meanQ; if (std::isnan (mean)) { mean = (sum / ((height) * width)) / 327.68f; //for Yb for all image...if one day "pipette" we can adapt Yb for each zone - meanQ = (sumQ / ((height) * width));//in case of - } }