diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..5cdfd8d5b --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,19 @@ +## Thank You +Thank you for showing interest in contributing to RawTherapee. It is people such as yourself who make this program and project possible. + +## Contribute as a Tester +The most useful feedback is based on the latest development code, and in the case of crashes should include a stack backtrace made using a debug build. +- Compilation instructions for Linux: + - http://rawpedia.rawtherapee.com/Linux +- Compilation instructions for Windows: + - http://rawpedia.rawtherapee.com/Windows +- Compilation instructions for macOS: + - http://rawpedia.rawtherapee.com/MacOS +- How to write useful bug reports including how to get stack backtraces: + - http://rawpedia.rawtherapee.com/How_to_write_useful_bug_reports + +## Contributing as a Programmer +- Announce and discuss your plans in GitHub before starting work. +- Keep branches small so that completed and working features can be merged into the "dev" branch often, and so that they can be abandoned if they head in the wrong direction. +- Use C++11 +- Code must be run through astyle version 3 or newer before being merged. diff --git a/rtdata/languages/default b/rtdata/languages/default index 3bb61fc78..a31b2624d 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -808,6 +808,9 @@ HISTORY_MSG_560;Local - Exp black HISTORY_MSG_561;Local - Exp Shcompr HISTORY_MSG_562;Local - Exp Scope HISTORY_MSG_563;Local - Exp Contrast curve +HISTORY_MSG_564;CAM02 - Temp out +HISTORY_MSG_565;CAM02 - Green out +HISTORY_MSG_566;CAM02 - Yb out HISTORY_NEWSNAPSHOT;Add HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: Alt-s HISTORY_SNAPSHOT;Snapshot @@ -1060,7 +1063,8 @@ PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID PREFERENCES_CUSTPROFBUILDPATH;Executable path PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency -PREFERENCES_D50;5000K +PREFERENCES_D50_OLD;5000K +PREFERENCES_D50;Settings in main menu PREFERENCES_D55;5500K PREFERENCES_D60;6000K PREFERENCES_D65;6500K @@ -1105,7 +1109,8 @@ PREFERENCES_GREY;Output device's Yb luminance (%) PREFERENCES_GREY05;Yb=05 CIE L#30 PREFERENCES_GREY10;Yb=10 CIE L#40 PREFERENCES_GREY15;Yb=15 CIE L#45 -PREFERENCES_GREY18;Yb=18 CIE L#50 +PREFERENCES_GREY18_OLD;Yb=18 CIE L#50 +PREFERENCES_GREY18;Settings in main menu PREFERENCES_GREY23;Yb=23 CIE L#55 PREFERENCES_GREY30;Yb=30 CIE L#60 PREFERENCES_GREY40;Yb=40 CIE L#70 @@ -1433,7 +1438,7 @@ TP_COLORAPP_LABEL_VIEWING;Viewing Conditions TP_COLORAPP_LIGHT;Lightness (J) TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. TP_COLORAPP_MODEL;WP Model -TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\nWB [RT] + [output]: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Preferences > Color Management.\n\nWB [RT+CAT02] + [output]: RT's white balance settings are used by CAT02 and the output device's white balance is set in Preferences - Color Management. +TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\nWB [RT] + [output]: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\nWB [RT+CAT02] + [output]: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions. TP_COLORAPP_RSTPRO;Red & skin-tones protection TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. TP_COLORAPP_SHARPCIE;--unused-- @@ -1458,6 +1463,7 @@ TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] TP_COLORAPP_WBRT;WB [RT] + [output] +TP_COLORAPP_YB;Yb (mean luminance) TP_COLORTONING_AB;o C/L TP_COLORTONING_AUTOSAT;Automatic TP_COLORTONING_BALANCE;Balance diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 011da1f61..7eb35f988 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -264,6 +264,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh double Yw; Yw = 1.0; double Xw, Zw; + double Xwout, Zwout; double f, c, nc, yb = 0., la, xw, yw, zw, f2 = 0., c2 = 0., nc2 = 0., yb2 = 0., la2; double fl, n, nbb, ncb, aw; double xwd = 0., ywd, zwd = 0.; @@ -274,6 +275,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh bool ciedata = params->colorappearance.datacie; ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB + ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout); //viewing condition for surround if (params->colorappearance.surround == "Average") { @@ -320,59 +322,66 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh bool needJ = (alg == 0 || alg == 1 || alg == 3); bool needQ = (alg == 2 || alg == 3); + /* + //settings white point of output device - or illuminant viewing + if (settings->viewingdevice == 0) { + xwd = 96.42; //5000K + ywd = 100.0; + zwd = 82.52; + } else if (settings->viewingdevice == 1) { + xwd = 95.68; //5500 + ywd = 100.0; + zwd = 92.15; + } else if (settings->viewingdevice == 2) { + xwd = 95.24; //6000 + ywd = 100.0; + zwd = 100.81; + } else if (settings->viewingdevice == 3) { + xwd = 95.04; //6500 + ywd = 100.0; + zwd = 108.88; + } else if (settings->viewingdevice == 4) { + xwd = 109.85; //tungsten + ywd = 100.0; + zwd = 35.58; + } else if (settings->viewingdevice == 5) { + xwd = 99.18; //fluo F2 + ywd = 100.0; + zwd = 67.39; + } else if (settings->viewingdevice == 6) { + xwd = 95.04; //fluo F7 + ywd = 100.0; + zwd = 108.75; + } else if (settings->viewingdevice == 7) { + xwd = 100.96; //fluo F11 + ywd = 100.0; + zwd = 64.35; + } + */ - //settings white point of output device - or illuminant viewing - if (settings->viewingdevice == 0) { - xwd = 96.42; //5000K - ywd = 100.0; - zwd = 82.52; - } else if (settings->viewingdevice == 1) { - xwd = 95.68; //5500 - ywd = 100.0; - zwd = 92.15; - } else if (settings->viewingdevice == 2) { - xwd = 95.24; //6000 - ywd = 100.0; - zwd = 100.81; - } else if (settings->viewingdevice == 3) { - xwd = 95.04; //6500 - ywd = 100.0; - zwd = 108.88; - } else if (settings->viewingdevice == 4) { - xwd = 109.85; //tungsten - ywd = 100.0; - zwd = 35.58; - } else if (settings->viewingdevice == 5) { - xwd = 99.18; //fluo F2 - ywd = 100.0; - zwd = 67.39; - } else if (settings->viewingdevice == 6) { - xwd = 95.04; //fluo F7 - ywd = 100.0; - zwd = 108.75; - } else if (settings->viewingdevice == 7) { - xwd = 100.96; //fluo F11 - ywd = 100.0; - zwd = 64.35; - } + xwd = 100. * Xwout; + zwd = 100. * Zwout; + ywd = 100. / params->colorappearance.greenout;//approximation to simplify - - //settings mean Luminance Y of output device or viewing - if (settings->viewingdevicegrey == 0) { - yb2 = 5.0; - } else if (settings->viewingdevicegrey == 1) { - yb2 = 10.0; - } else if (settings->viewingdevicegrey == 2) { - yb2 = 15.0; - } else if (settings->viewingdevicegrey == 3) { - yb2 = 18.0; - } else if (settings->viewingdevicegrey == 4) { - yb2 = 23.0; - } else if (settings->viewingdevicegrey == 5) { - yb2 = 30.0; - } else if (settings->viewingdevicegrey == 6) { - yb2 = 40.0; - } + /* + //settings mean Luminance Y of output device or viewing + if (settings->viewingdevicegrey == 0) { + yb2 = 5.0; + } else if (settings->viewingdevicegrey == 1) { + yb2 = 10.0; + } else if (settings->viewingdevicegrey == 2) { + yb2 = 15.0; + } else if (settings->viewingdevicegrey == 3) { + yb2 = 18.0; + } else if (settings->viewingdevicegrey == 4) { + yb2 = 23.0; + } else if (settings->viewingdevicegrey == 5) { + yb2 = 30.0; + } else if (settings->viewingdevicegrey == 6) { + yb2 = 40.0; + } + */ + yb2 = params->colorappearance.ybout; //La and la2 = ambiant luminosity scene and viewing la = double (params->colorappearance.adapscen); @@ -1492,6 +1501,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int float xwd, ywd, zwd; int alg = 0; bool algepd = false; + double Xwout, Zwout; const bool epdEnabled = params->epd.enabled; bool ciedata = (params->colorappearance.datacie && pW != 1) && ! ((params->colorappearance.tonecie && (epdEnabled)) || (params->sharpening.enabled && settings->autocielab && execsharp) @@ -1499,6 +1509,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int || (params->impulseDenoise.enabled && settings->autocielab) || (params->colorappearance.badpixsl > 0 && settings->autocielab)); ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB + ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout); //viewing condition for surround if (params->colorappearance.surround == "Average") { @@ -1543,59 +1554,64 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int algepd = true; } - //settings white point of output device - or illuminant viewing - if (settings->viewingdevice == 0) { - xwd = 96.42f; //5000K - ywd = 100.0f; - zwd = 82.52f; - } else if (settings->viewingdevice == 1) { - xwd = 95.68f; //5500 - ywd = 100.0f; - zwd = 92.15f; - } else if (settings->viewingdevice == 2) { - xwd = 95.24f; //6000 - ywd = 100.0f; - zwd = 100.81f; - } else if (settings->viewingdevice == 3) { - xwd = 95.04f; //6500 - ywd = 100.0f; - zwd = 108.88f; - } else if (settings->viewingdevice == 4) { - xwd = 109.85f; //tungsten - ywd = 100.0f; - zwd = 35.58f; - } else if (settings->viewingdevice == 5) { - xwd = 99.18f; //fluo F2 - ywd = 100.0f; - zwd = 67.39f; - } else if (settings->viewingdevice == 6) { - xwd = 95.04f; //fluo F7 - ywd = 100.0f; - zwd = 108.75f; - } else { /*if(settings->viewingdevice == 7) */ - xwd = 100.96f; //fluo F11 - ywd = 100.0f; - zwd = 64.35f; - } - - - //settings mean Luminance Y of output device or viewing - if (settings->viewingdevicegrey == 0) { - yb2 = 5.0f; - } else if (settings->viewingdevicegrey == 1) { - yb2 = 10.0f; - } else if (settings->viewingdevicegrey == 2) { - yb2 = 15.0f; - } else if (settings->viewingdevicegrey == 3) { - yb2 = 18.0f; - } else if (settings->viewingdevicegrey == 4) { - yb2 = 23.0f; - } else if (settings->viewingdevicegrey == 5) { - yb2 = 30.0f; - } else { /* if(settings->viewingdevicegrey == 6)*/ - yb2 = 40.0f; - } - + xwd = 100.f * Xwout; + zwd = 100.f * Zwout; + ywd = 100.f / params->colorappearance.greenout;//approximation to simplify + /* + //settings white point of output device - or illuminant viewing + if (settings->viewingdevice == 0) { + xwd = 96.42f; //5000K + ywd = 100.0f; + zwd = 82.52f; + } else if (settings->viewingdevice == 1) { + xwd = 95.68f; //5500 + ywd = 100.0f; + zwd = 92.15f; + } else if (settings->viewingdevice == 2) { + xwd = 95.24f; //6000 + ywd = 100.0f; + zwd = 100.81f; + } else if (settings->viewingdevice == 3) { + xwd = 95.04f; //6500 + ywd = 100.0f; + zwd = 108.88f; + } else if (settings->viewingdevice == 4) { + xwd = 109.85f; //tungsten + ywd = 100.0f; + zwd = 35.58f; + } else if (settings->viewingdevice == 5) { + xwd = 99.18f; //fluo F2 + ywd = 100.0f; + zwd = 67.39f; + } else if (settings->viewingdevice == 6) { + xwd = 95.04f; //fluo F7 + ywd = 100.0f; + zwd = 108.75f; + } else { + xwd = 100.96f; //fluo F11 + ywd = 100.0f; + zwd = 64.35f; + } + */ + yb2 = params->colorappearance.ybout; + /* + //settings mean Luminance Y of output device or viewing + if (settings->viewingdevicegrey == 0) { + yb2 = 5.0f; + } else if (settings->viewingdevicegrey == 1) { + yb2 = 10.0f; + } else if (settings->viewingdevicegrey == 2) { + yb2 = 15.0f; + } else if (settings->viewingdevicegrey == 3) { + yb2 = 18.0f; + } else if (settings->viewingdevicegrey == 4) { + yb2 = 23.0f; + } else if (settings->viewingdevicegrey == 5) { + yb2 = 30.0f; + } else { + yb2 = 40.0f; + } + */ //La and la2 = ambiant luminosity scene and viewing la = float (params->colorappearance.adapscen); diff --git a/rtengine/procevents.h b/rtengine/procevents.h index dae7aaea1..d9153793d 100644 --- a/rtengine/procevents.h +++ b/rtengine/procevents.h @@ -590,7 +590,9 @@ enum ProcEvent { Evlocallabshcompr = 560, Evlocallabsensiex = 561, Evlocallabshape = 562, - + EvCATtempout = 563, + EvCATgreenout = 564, + EvCATybout = 565, NUMOFEVENTS diff --git a/rtengine/procparams.cc b/rtengine/procparams.cc index 610654417..96f62e3a5 100644 --- a/rtengine/procparams.cc +++ b/rtengine/procparams.cc @@ -119,10 +119,10 @@ void CropParams::mapToResized (int resizedWidth, int resizedHeight, int scale, i x1 = 0, x2 = resizedWidth, y1 = 0, y2 = resizedHeight; if (enabled) { - x1 = min (resizedWidth - 1, max (0, x / scale)); + x1 = min (resizedWidth - 1, max (0, x / scale)); y1 = min (resizedHeight - 1, max (0, y / scale)); - x2 = min (resizedWidth, max (0, (x + w) / scale)); - y2 = min (resizedHeight, max (0, (y + h) / scale)); + x2 = min (resizedWidth, max (0, (x + w) / scale)); + y2 = min (resizedHeight, max (0, (y + h) / scale)); } } @@ -148,10 +148,10 @@ void RetinexParams::getDefaulttransmissionCurve (std::vector &curve) } void RetinexParams::getDefaultgaintransmissionCurve (std::vector &curve) { - double v[16] = { 0.00, 0.1, 0.35, 0.00, + double v[16] = { 0.00, 0.1, 0.35, 0.00, 0.25, 0.25, 0.35, 0.35, 0.70, 0.25, 0.35, 0.35, - 1.00, 0.1, 0.00, 0.00 + 1.00, 0.1, 0.00, 0.00 }; @@ -167,23 +167,23 @@ void RetinexParams::getDefaultgaintransmissionCurve (std::vector &curve) void RetinexParams::setDefaults() { enabled = false; - str = 20; - scal = 3; + str = 20; + scal = 3; iter = 1; grad = 1; grads = 1; - gam = 1.30; - slope = 3.; - neigh = 80; - offs = 0; - vart = 200; + gam = 1.30; + slope = 3.; + neigh = 80; + offs = 0; + vart = 200; limd = 8; highl = 4; - highlights = 0; - htonalwidth = 80; - shadows = 0; - stonalwidth = 80; - radius = 40; + highlights = 0; + htonalwidth = 80; + shadows = 0; + stonalwidth = 80; + radius = 40; skal = 3; retinexMethod = "high"; @@ -321,16 +321,16 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect return; } - float low[3]; // RGB color for shadows - float med[3]; // RGB color for mid-tones + float low[3]; // RGB color for shadows + float med[3]; // RGB color for mid-tones float high[3]; // RGB color for highlights - float lowSat = 0.f; - float medSat = 0.f; + float lowSat = 0.f; + float medSat = 0.f; float highSat = 0.f; float minTmp, maxTmp; - // Fill the shadow mixer values of the Color TOning tool - low[0] = float (redlow ) / 100.f; // [-1. ; +1.] +// Fill the shadow mixer values of the Color TOning tool + low[0] = float (redlow ) / 100.f; // [-1. ; +1.] low[1] = float (greenlow) / 100.f; // [-1. ; +1.] low[2] = float (bluelow ) / 100.f; // [-1. ; +1.] minTmp = min (low[0], low[1], low[2]); @@ -340,7 +340,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect float v[3]; lowSat = (maxTmp - minTmp) / 2.f; - if (low[0] == minTmp) { + if (low[0] == minTmp) { v[0] = 0.f; } else if (low[1] == minTmp) { v[1] = 0.f; @@ -348,7 +348,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 0.f; } - if (low[0] == maxTmp) { + if (low[0] == maxTmp) { v[0] = 1.f; } else if (low[1] == maxTmp) { v[1] = 1.f; @@ -356,7 +356,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 1.f; } - if (low[0] != minTmp && low[0] != maxTmp) { + if (low[0] != minTmp && low[0] != maxTmp) { v[0] = (low[0] - minTmp) / (maxTmp - minTmp); } else if (low[1] != minTmp && low[1] != maxTmp) { v[1] = (low[1] - minTmp) / (maxTmp - minTmp); @@ -371,8 +371,8 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect low[0] = low[1] = low[2] = 1.f; } - // Fill the mid-tones mixer values of the Color TOning tool - med[0] = float (redmed ) / 100.f; // [-1. ; +1.] +// Fill the mid-tones mixer values of the Color TOning tool + med[0] = float (redmed ) / 100.f; // [-1. ; +1.] med[1] = float (greenmed) / 100.f; // [-1. ; +1.] med[2] = float (bluemed ) / 100.f; // [-1. ; +1.] minTmp = min (med[0], med[1], med[2]); @@ -382,7 +382,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect float v[3]; medSat = (maxTmp - minTmp) / 2.f; - if (med[0] == minTmp) { + if (med[0] == minTmp) { v[0] = 0.f; } else if (med[1] == minTmp) { v[1] = 0.f; @@ -390,7 +390,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 0.f; } - if (med[0] == maxTmp) { + if (med[0] == maxTmp) { v[0] = 1.f; } else if (med[1] == maxTmp) { v[1] = 1.f; @@ -398,7 +398,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 1.f; } - if (med[0] != minTmp && med[0] != maxTmp) { + if (med[0] != minTmp && med[0] != maxTmp) { v[0] = (med[0] - minTmp) / (maxTmp - minTmp); } else if (med[1] != minTmp && med[1] != maxTmp) { v[1] = (med[1] - minTmp) / (maxTmp - minTmp); @@ -424,7 +424,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect float v[3]; highSat = (maxTmp - minTmp) / 2.f; - if (high[0] == minTmp) { + if (high[0] == minTmp) { v[0] = 0.f; } else if (high[1] == minTmp) { v[1] = 0.f; @@ -432,7 +432,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 0.f; } - if (high[0] == maxTmp) { + if (high[0] == maxTmp) { v[0] = 1.f; } else if (high[1] == maxTmp) { v[1] = 1.f; @@ -440,7 +440,7 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect v[2] = 1.f; } - if (high[0] != minTmp && high[0] != maxTmp) { + if (high[0] != minTmp && high[0] != maxTmp) { v[0] = (high[0] - minTmp) / (maxTmp - minTmp); } else if (high[1] != minTmp && high[1] != maxTmp) { v[1] = (high[1] - minTmp) / (maxTmp - minTmp); @@ -482,17 +482,17 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect Color::rgb2hsl (low[0], low[1], low[2], h, s, l); } - colorCurve.at (idx++) = xPosLow; - colorCurve.at (idx++) = h; - colorCurve.at (idx++) = 0.35; - colorCurve.at (idx++) = 0.35; + colorCurve.at (idx++) = xPosLow; + colorCurve.at (idx++) = h; + colorCurve.at (idx++) = 0.35; + colorCurve.at (idx++) = 0.35; if (medSat != 0.f) { Color::rgb2hsl (med[0], med[1], med[2], h, s, l); - colorCurve.at (idx++) = xPosMed; - colorCurve.at (idx++) = h; - colorCurve.at (idx++) = 0.35; - colorCurve.at (idx++) = 0.35; + colorCurve.at (idx++) = xPosMed; + colorCurve.at (idx++) = h; + colorCurve.at (idx++) = 0.35; + colorCurve.at (idx++) = 0.35; } if (highSat == 0.f) { @@ -505,10 +505,10 @@ void ColorToningParams::mixerToCurve (std::vector &colorCurve, std::vect Color::rgb2hsl (high[0], high[1], high[2], h, s, l); } - colorCurve.at (idx++) = xPosHigh; - colorCurve.at (idx++) = h; - colorCurve.at (idx++) = 0.35; - colorCurve.at (idx) = 0.35; + colorCurve.at (idx++) = xPosHigh; + colorCurve.at (idx++) = h; + colorCurve.at (idx++) = 0.35; + colorCurve.at (idx) = 0.35; opacityCurve.at (1) = xPosLow; opacityCurve.at (2) = double (lowSat); @@ -579,7 +579,7 @@ void ColorToningParams::getCurves (ColorGradientCurve &colorCurveLUT, OpacityCur satur = 0.9f; } - if (twocolor == "All" || twocolor == "Two") { + if (twocolor == "All" || twocolor == "Two") { satur = 0.9f; } @@ -594,23 +594,56 @@ void ColorToningParams::getCurves (ColorGradientCurve &colorCurveLUT, OpacityCur } } -SharpeningParams::SharpeningParams() : enabled (false), radius (0.5), amount (200), threshold (20, 80, 2000, 1200, false), edgesonly (false), edges_radius (1.9), edges_tolerance (1800), halocontrol (false), halocontrol_amount (85), deconvamount (75), deconvradius (0.75), deconviter (30), deconvdamping (20) {}; +SharpeningParams::SharpeningParams() : + enabled (false), + radius (0.5), + amount (200), + threshold (20, 80, 2000, 1200, false), + edgesonly (false), + edges_radius (1.9), + edges_tolerance (1800), + halocontrol (false), + halocontrol_amount (85), + deconvamount (75), + deconvradius (0.75), + deconviter (30), + deconvdamping (20) +{}; -VibranceParams::VibranceParams() : enabled (false), pastels (0), saturated (0), psthreshold (0, 75, false), protectskins (false), avoidcolorshift (true), pastsattog (true) {}; +VibranceParams::VibranceParams() : + enabled (false), + pastels (0), + saturated (0), + psthreshold (0, 75, false), + protectskins (false), + avoidcolorshift (true), + pastsattog (true) +{}; //WaveletParams::WaveletParams (): hueskin(-5, 25, 170, 120, false), hueskin2(-260, -250, -130, -140, false), hllev(50, 75, 100, 98, false), bllev(0, 2, 50, 25, false), pastlev(0, 2, 30, 20, false), satlev(30, 45, 130, 100, false), edgcont(0, 20, 100, 75, false){ -WaveletParams::WaveletParams (): hueskin (-5, 25, 170, 120, false), hueskin2 (-260, -250, -130, -140, false), hllev (50, 75, 100, 98, false), bllev (0, 2, 50, 25, false), - pastlev (0, 2, 30, 20, false), satlev (30, 45, 130, 100, false), edgcont (bl, tl, br, tr, false), /* edgcont(0, 10, 75, 40, false),*/level0noise (0, 0, false), level1noise (0, 0, false), level2noise (0, 0, false), level3noise (0, 0, false) +WaveletParams::WaveletParams() : + hueskin ( -5, 25, 170, 120, false), + hueskin2 (-260, -250, -130, -140, false), + hllev ( 50, 75, 100, 98, false), + bllev ( 0, 2, 50, 25, false), + pastlev ( 0, 2, 30, 20, false), + satlev ( 30, 45, 130, 100, false), + edgcont ( bl, tl, br, tr, false), + /*edgcont ( 0, 10, 75, 40, false),*/ + level0noise (0, 0, false), + level1noise (0, 0, false), + level2noise (0, 0, false), + level3noise (0, 0, false) { setDefaults (); } void WaveletParams::getDefaultOpacityCurveRG (std::vector &curve) { - double v[8] = { 0.0, 0.50, 0.35, 0.35, + double v[8] = { 0.0, 0.50, 0.35, 0.35, 1.00, 0.50, 0.35, 0.35 }; @@ -623,7 +656,7 @@ void WaveletParams::getDefaultOpacityCurveRG (std::vector &curve) } void WaveletParams::getDefaultOpacityCurveBY (std::vector &curve) { - double v[8] = { 0.0, 0.50, 0.35, 0.35, + double v[8] = { 0.0, 0.50, 0.35, 0.35, 1.00, 0.50, 0.35, 0.35 }; @@ -635,6 +668,7 @@ void WaveletParams::getDefaultOpacityCurveBY (std::vector &curve) } } + void WaveletParams::getDefaultOpacityCurveW (std::vector &curve) { double v[16] = { 0.00, 0.35, 0.35, 0.00, @@ -652,7 +686,7 @@ void WaveletParams::getDefaultOpacityCurveW (std::vector &curve) void WaveletParams::getDefaultOpacityCurveWL (std::vector &curve) { - double v[8] = { 0.0, 0.50, 0.35, 0.35, + double v[8] = { 0.0, 0.50, 0.35, 0.35, 1.00, 0.50, 0.35, 0.35 }; @@ -671,8 +705,9 @@ void WaveletParams::getDefaultOpacityCurveWL (std::vector &curve) void WaveletParams::getDefaultCCWCurve (std::vector &curve) { - double v[12] = { 0.0, 0.25, 0.35, 0.35, - 0.50, 0.75, 0.35, 0.35, 0.90, 0.0, 0.35, 0.35 + double v[12] = { 0.0, 0.25, 0.35, 0.35, + 0.50, 0.75, 0.35, 0.35, + 0.90, 0.0, 0.35, 0.35 }; curve.resize (13); @@ -716,38 +751,38 @@ void WaveletParams::setDefaults() wavclCurve.clear (); wavclCurve.push_back (DCT_Linear); - Lmethod = "4_"; - CHmethod = "without"; - CHSLmethod = "SL"; - EDmethod = "CU"; - NPmethod = "none"; - BAmethod = "none"; - TMmethod = "cont"; - HSmethod = "with"; - CLmethod = "all"; - Backmethod = "grey"; - Dirmethod = "all"; - Tilesmethod = "full"; - daubcoeffmethod = "4_"; - rescon = 0; - resconH = 0; - reschro = 0; - tmrs = 0; - gamma = 1; - sky = 0.; - sup = 0; - thres = 7; - chroma = 5; - chro = 0; - contrast = 0; - edgrad = 15; - edgval = 0; - edgthresh = 10; - thr = 35; - thrH = 65; + Lmethod = "4_"; + CHmethod = "without"; + CHSLmethod = "SL"; + EDmethod = "CU"; + NPmethod = "none"; + BAmethod = "none"; + TMmethod = "cont"; + HSmethod = "with"; + CLmethod = "all"; + Backmethod = "grey"; + Dirmethod = "all"; + Tilesmethod = "full"; + daubcoeffmethod = "4_"; + rescon = 0; + resconH = 0; + reschro = 0; + tmrs = 0; + gamma = 1; + sky = 0.; + sup = 0; + thres = 7; + chroma = 5; + chro = 0; + contrast = 0; + edgrad = 15; + edgval = 0; + edgthresh = 10; + thr = 35; + thrH = 65; skinprotect = 0.; - hueskin.setValues (-5, 25, 170, 120); - hueskin2.setValues (-260, -250, -130, -140); + hueskin.setValues ( -5, 25, 170, 120); + hueskin2.setValues (-260, -250, -130, -140); threshold = 5; threshold2 = 4; edgedetect = 90; @@ -755,12 +790,12 @@ void WaveletParams::setDefaults() edgedetectthr2 = 0; edgesensi = 60; edgeampli = 10; - hllev.setValues (50, 75, 100, 98); - bllev.setValues (0, 2, 50, 25); - pastlev.setValues (0, 2, 30, 20); - satlev.setValues (30, 45, 130, 100); -// edgcont.setValues(bl, tl, br, tr); - edgcont.setValues (0, 10, 75, 40); + hllev.setValues (50, 75, 100, 98); + bllev.setValues ( 0, 2, 50, 25); + pastlev.setValues ( 0, 2, 30, 20); + satlev.setValues (30, 45, 130, 100); + //edgcont.setValues (bl, tl, br, tr); + edgcont.setValues ( 0, 10, 75, 40); level0noise.setValues (0, 0); level1noise.setValues (0, 0); level2noise.setValues (0, 0); @@ -862,24 +897,24 @@ void DirPyrDenoiseParams::getCurves (NoiseCurve &lCurve, NoiseCurve &cCurve) con void ToneCurveParams::setDefaults() { - autoexp = false; - clip = 0.02; - expcomp = 0; - brightness = 0; - contrast = 0; - saturation = 0; - black = 0; - hlcompr = 0; + autoexp = false; + clip = 0.02; + expcomp = 0; + brightness = 0; + contrast = 0; + saturation = 0; + black = 0; + hlcompr = 0; hlcomprthresh = 33; - shcompr = 50; + shcompr = 50; curve.clear (); curve.push_back (DCT_Linear); curve2.clear (); curve2.push_back (DCT_Linear); - curveMode = ToneCurveParams::TC_MODE_STD; - curveMode2 = ToneCurveParams::TC_MODE_STD; + curveMode = ToneCurveParams::TC_MODE_STD; + curveMode2 = ToneCurveParams::TC_MODE_STD; hrenabled = false; - method = "Blend"; + method = "Blend"; } void LensProfParams::setDefaults() @@ -926,7 +961,6 @@ void RAWParams::BayerSensor::setPixelShiftDefaults() pixelShiftNonGreenCross2 = false; pixelShiftNonGreenAmaze = false; } - void LocallabParams::setDefaults() { enabled = false; @@ -1189,6 +1223,7 @@ void LocallabParams::getCurves (LocretigainCurve &cTgainCurve, LocretigainCurver } + void RAWParams::setDefaults() { bayersensor.method = RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::amaze]; @@ -1196,7 +1231,7 @@ void RAWParams::setDefaults() bayersensor.ccSteps = 0; bayersensor.dcb_iterations = 2; bayersensor.dcb_enhance = true; - //bayersensor.all_enhance = false; +//bayersensor.all_enhance = false; bayersensor.lmmse_iterations = 2; bayersensor.black0 = 0.0; bayersensor.black1 = 0.0; @@ -1234,17 +1269,17 @@ void RAWParams::setDefaults() void ColorManagementParams::setDefaults() { - input = "(cameraICC)"; + input = "(cameraICC)"; toneCurve = false; applyLookTable = false; applyBaselineExposureOffset = true; applyHueSatMap = true; dcpIlluminant = 0; working = "ProPhoto"; - output = "RT_sRGB"; - outputIntent = RI_RELATIVE; + output = "RT_sRGB"; + outputIntent = RI_RELATIVE; outputBPC = true; - gamma = "default"; + gamma = "default"; gampos = 2.22; slpos = 4.5; freegamma = false; @@ -1285,12 +1320,12 @@ void ProcParams::setDefaults () toneCurve.setDefaults(); - labCurve.brightness = 0; - labCurve.contrast = 0; - labCurve.chromaticity = 0; + labCurve.brightness = 0; + labCurve.contrast = 0; + labCurve.chromaticity = 0; labCurve.avoidcolorshift = false; labCurve.lcredsk = true; - labCurve.rstprotection = 0; + labCurve.rstprotection = 0; labCurve.lcurve.clear (); labCurve.lcurve.push_back (DCT_Linear); labCurve.acurve.clear (); @@ -1311,7 +1346,7 @@ void ProcParams::setDefaults () labCurve.clcurve.clear (); labCurve.clcurve.push_back (DCT_Linear); - rgbCurves.lumamode = false; + rgbCurves.lumamode = false; rgbCurves.rcurve.clear (); rgbCurves.rcurve.push_back (DCT_Linear); rgbCurves.gcurve.clear (); @@ -1321,128 +1356,131 @@ void ProcParams::setDefaults () colorToning.setDefaults(); - sharpenEdge.enabled = false; - sharpenEdge.passes = 2; - sharpenEdge.amount = 50.0; - sharpenEdge.threechannels = false; + sharpenEdge.enabled = false; + sharpenEdge.passes = 2; + sharpenEdge.amount = 50.0; + sharpenEdge.threechannels = false; - sharpenMicro.enabled = false; - sharpenMicro.amount = 20.0; - sharpenMicro.uniformity = 50.0; - sharpenMicro.matrix = false; + sharpenMicro.enabled = false; + sharpenMicro.amount = 20.0; + sharpenMicro.uniformity = 50.0; + sharpenMicro.matrix = false; - sharpening.enabled = false; - sharpening.radius = 0.5; - sharpening.amount = 200; + sharpening.enabled = false; + sharpening.radius = 0.5; + sharpening.amount = 200; sharpening.threshold.setValues (20, 80, 2000, 1200); - sharpening.edgesonly = false; - sharpening.edges_radius = 1.9; - sharpening.edges_tolerance = 1800; - sharpening.halocontrol = false; + sharpening.edgesonly = false; + sharpening.edges_radius = 1.9; + sharpening.edges_tolerance = 1800; + sharpening.halocontrol = false; sharpening.halocontrol_amount = 85; - sharpening.method = "usm"; - sharpening.deconvradius = 0.75; - sharpening.deconviter = 30; - sharpening.deconvdamping = 20; - sharpening.deconvamount = 75; + sharpening.method = "usm"; + sharpening.deconvradius = 0.75; + sharpening.deconviter = 30; + sharpening.deconvdamping = 20; + sharpening.deconvamount = 75; - prsharpening.enabled = false; - prsharpening.radius = 0.5; - prsharpening.amount = 200; + prsharpening.enabled = false; + prsharpening.radius = 0.5; + prsharpening.amount = 200; prsharpening.threshold.setValues (20, 80, 2000, 1200); - prsharpening.edgesonly = false; - prsharpening.edges_radius = 1.9; - prsharpening.edges_tolerance = 1800; - prsharpening.halocontrol = false; + prsharpening.edgesonly = false; + prsharpening.edges_radius = 1.9; + prsharpening.edges_tolerance = 1800; + prsharpening.halocontrol = false; prsharpening.halocontrol_amount = 85; - prsharpening.method = "rld"; - prsharpening.deconvradius = 0.45; - prsharpening.deconviter = 100; - prsharpening.deconvdamping = 0; - prsharpening.deconvamount = 100; + prsharpening.method = "rld"; + prsharpening.deconvradius = 0.45; + prsharpening.deconviter = 100; + prsharpening.deconvdamping = 0; + prsharpening.deconvamount = 100; - vibrance.enabled = false; - vibrance.pastels = 0; - vibrance.saturated = 0; + vibrance.enabled = false; + vibrance.pastels = 0; + vibrance.saturated = 0; vibrance.psthreshold.setValues (0, 75); - vibrance.protectskins = false; - vibrance.avoidcolorshift = true; - vibrance.pastsattog = true; + vibrance.protectskins = false; + vibrance.avoidcolorshift = true; + vibrance.pastsattog = true; vibrance.skintonescurve.clear (); vibrance.skintonescurve.push_back (DCT_Linear); - wb.method = "Camera"; - wb.temperature = 6504; - wb.green = 1.0; - wb.equal = 1.0; - wb.tempBias = 0.0; - colorappearance.enabled = false; - colorappearance.degree = 90; - colorappearance.autodegree = true; - colorappearance.surround = "Average"; - colorappearance.adaplum = 16; - colorappearance.badpixsl = 0; - colorappearance.adapscen = 2000.0; - colorappearance.autoadapscen = true; - colorappearance.algo = "No"; - colorappearance.wbmodel = "RawT"; - colorappearance.jlight = 0.0; - colorappearance.qbright = 0.0; - colorappearance.chroma = 0.0; - colorappearance.schroma = 0.0; - colorappearance.mchroma = 0.0; + wb.method = "Camera"; + wb.temperature = 6504; + wb.green = 1.0; + wb.equal = 1.0; + wb.tempBias = 0.0; + colorappearance.enabled = false; + colorappearance.degree = 90; + colorappearance.autodegree = true; + colorappearance.surround = "Average"; + colorappearance.adaplum = 16; + colorappearance.badpixsl = 0; + colorappearance.adapscen = 2000.0; + colorappearance.autoadapscen = true; + colorappearance.algo = "No"; + colorappearance.wbmodel = "RawT"; + colorappearance.jlight = 0.0; + colorappearance.qbright = 0.0; + colorappearance.chroma = 0.0; + colorappearance.schroma = 0.0; + colorappearance.mchroma = 0.0; colorappearance.rstprotection = 0.0; - colorappearance.contrast = 0.0; - colorappearance.qcontrast = 0.0; - colorappearance.colorh = 0.0; - colorappearance.surrsource = false; - colorappearance.gamut = true; -// colorappearance.badpix = false; - colorappearance.datacie = false; - colorappearance.tonecie = false; -// colorappearance.sharpcie = false; + colorappearance.contrast = 0.0; + colorappearance.qcontrast = 0.0; + colorappearance.colorh = 0.0; + colorappearance.surrsource = false; + colorappearance.gamut = true; +// colorappearance.badpix = false; + colorappearance.datacie = false; + colorappearance.tonecie = false; +// colorappearance.sharpcie = false; colorappearance.curve.clear (); colorappearance.curve.push_back (DCT_Linear); colorappearance.curve2.clear (); colorappearance.curve2.push_back (DCT_Linear); - colorappearance.curveMode = ColorAppearanceParams::TC_MODE_LIGHT; - colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_LIGHT; + colorappearance.curveMode = ColorAppearanceParams::TC_MODE_LIGHT; + colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_LIGHT; colorappearance.curve3.clear (); colorappearance.curve3.push_back (DCT_Linear); - colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_CHROMA; + colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_CHROMA; + colorappearance.tempout = 5000; + colorappearance.greenout = 1.0; + colorappearance.ybout = 18; - impulseDenoise.enabled = false; - impulseDenoise.thresh = 50; + impulseDenoise.enabled = false; + impulseDenoise.thresh = 50; - defringe.enabled = false; - defringe.radius = 2.0; - defringe.threshold = 13; + defringe.enabled = false; + defringe.radius = 2.0; + defringe.threshold = 13; defringe.huecurve.resize (25); - defringe.huecurve.at (0) = FCT_MinMaxCPoints; - defringe.huecurve.at (1) = 0.166666667; - defringe.huecurve.at (2) = 0.; - defringe.huecurve.at (3) = 0.35; - defringe.huecurve.at (4) = 0.35; - defringe.huecurve.at (5) = 0.347; - defringe.huecurve.at (6) = 0.; - defringe.huecurve.at (7) = 0.35; - defringe.huecurve.at (8) = 0.35; - defringe.huecurve.at (9) = 0.513667426; - defringe.huecurve.at (10) = 0; - defringe.huecurve.at (11) = 0.35; - defringe.huecurve.at (12) = 0.35; - defringe.huecurve.at (13) = 0.668944571; - defringe.huecurve.at (14) = 0.; - defringe.huecurve.at (15) = 0.35; - defringe.huecurve.at (16) = 0.35; - defringe.huecurve.at (17) = 0.8287775246; - defringe.huecurve.at (18) = 0.97835991; - defringe.huecurve.at (19) = 0.35; - defringe.huecurve.at (20) = 0.35; - defringe.huecurve.at (21) = 0.9908883827; - defringe.huecurve.at (22) = 0.; - defringe.huecurve.at (23) = 0.35; - defringe.huecurve.at (24) = 0.35; + defringe.huecurve.at (0) = FCT_MinMaxCPoints; + defringe.huecurve.at (1) = 0.166666667; + defringe.huecurve.at (2) = 0.; + defringe.huecurve.at (3) = 0.35; + defringe.huecurve.at (4) = 0.35; + defringe.huecurve.at (5) = 0.347; + defringe.huecurve.at (6) = 0.; + defringe.huecurve.at (7) = 0.35; + defringe.huecurve.at (8) = 0.35; + defringe.huecurve.at (9) = 0.513667426; + defringe.huecurve.at (10) = 0; + defringe.huecurve.at (11) = 0.35; + defringe.huecurve.at (12) = 0.35; + defringe.huecurve.at (13) = 0.668944571; + defringe.huecurve.at (14) = 0.; + defringe.huecurve.at (15) = 0.35; + defringe.huecurve.at (16) = 0.35; + defringe.huecurve.at (17) = 0.8287775246; + defringe.huecurve.at (18) = 0.97835991; + defringe.huecurve.at (19) = 0.35; + defringe.huecurve.at (20) = 0.35; + defringe.huecurve.at (21) = 0.9908883827; + defringe.huecurve.at (22) = 0.; + defringe.huecurve.at (23) = 0.35; + defringe.huecurve.at (24) = 0.35; dirpyrDenoise.setDefaults(); @@ -1453,35 +1491,35 @@ void ProcParams::setDefaults () epd.scale = 1.0; epd.reweightingIterates = 0; - sh.enabled = false; - sh.hq = false; - sh.highlights = 0; - sh.htonalwidth = 80; - sh.shadows = 0; - sh.stonalwidth = 80; + sh.enabled = false; + sh.hq = false; + sh.highlights = 0; + sh.htonalwidth = 80; + sh.shadows = 0; + sh.stonalwidth = 80; sh.localcontrast = 0; - sh.radius = 40; + sh.radius = 40; - crop.enabled = false; - crop.x = -1; - crop.y = -1; - crop.w = 15000; - crop.h = 15000; - crop.fixratio = true; - crop.ratio = "3:2"; + crop.enabled = false; + crop.x = -1; + crop.y = -1; + crop.w = 15000; + crop.h = 15000; + crop.fixratio = true; + crop.ratio = "3:2"; crop.orientation = "As Image"; - crop.guide = "Frame"; + crop.guide = "Frame"; coarse.setDefaults(); commonTrans.autofill = true; - rotate.degree = 0; + rotate.degree = 0; - distortion.amount = 0; + distortion.amount = 0; perspective.horizontal = 0; - perspective.vertical = 0; + perspective.vertical = 0; gradient.enabled = false; gradient.degree = 0; @@ -1495,7 +1533,7 @@ void ProcParams::setDefaults () pcvignette.feather = 50; pcvignette.roundness = 50; - cacorrection.red = 0; + cacorrection.red = 0; cacorrection.blue = 0; @@ -1507,29 +1545,29 @@ void ProcParams::setDefaults () lensProf.setDefaults(); - chmixer.red[0] = 100; - chmixer.red[1] = 0; - chmixer.red[2] = 0; + chmixer.red[0] = 100; + chmixer.red[1] = 0; + chmixer.red[2] = 0; chmixer.green[0] = 0; chmixer.green[1] = 100; chmixer.green[2] = 0; - chmixer.blue[0] = 0; - chmixer.blue[1] = 0; - chmixer.blue[2] = 100; + chmixer.blue[0] = 0; + chmixer.blue[1] = 0; + chmixer.blue[2] = 100; - blackwhite.autoc = false; - blackwhite.enabledcc = true; - blackwhite.enabled = false; - blackwhite.mixerRed = 33; - blackwhite.mixerGreen = 33; - blackwhite.mixerBlue = 33; + blackwhite.autoc = false; + blackwhite.enabledcc = true; + blackwhite.enabled = false; + blackwhite.mixerRed = 33; + blackwhite.mixerGreen = 33; + blackwhite.mixerBlue = 33; blackwhite.mixerOrange = 33; blackwhite.mixerYellow = 33; - blackwhite.mixerCyan = 33; - blackwhite.mixerMagenta = 33; + blackwhite.mixerCyan = 33; + blackwhite.mixerMagenta = 33; blackwhite.mixerPurple = 33; - blackwhite.gammaRed = 0; - blackwhite.gammaGreen = 0; + blackwhite.gammaRed = 0; + blackwhite.gammaGreen = 0; blackwhite.gammaBlue = 0; blackwhite.luminanceCurve.clear (); blackwhite.luminanceCurve.push_back (FCT_Linear); @@ -1538,14 +1576,14 @@ void ProcParams::setDefaults () blackwhite.setting = "NormalContrast"; blackwhite.beforeCurve.clear (); blackwhite.beforeCurve.push_back (DCT_Linear); - blackwhite.beforeCurveMode = BlackWhiteParams::TC_MODE_STD_BW; + blackwhite.beforeCurveMode = BlackWhiteParams::TC_MODE_STD_BW; blackwhite.afterCurve.clear (); blackwhite.afterCurve.push_back (DCT_Linear); - blackwhite.afterCurveMode = BlackWhiteParams::TC_MODE_STD_BW; - blackwhite.algo = "SP"; + blackwhite.afterCurveMode = BlackWhiteParams::TC_MODE_STD_BW; + blackwhite.algo = "SP"; resize.enabled = false; - resize.scale = 1.0; + resize.scale = 1.0; resize.appliesTo = "Cropped area"; resize.method = "Lanczos"; resize.dataspec = 3; @@ -1565,8 +1603,8 @@ void ProcParams::setDefaults () dirpyrequalizer.threshold = 0.2; dirpyrequalizer.skinprotect = 0.; - dirpyrequalizer.hueskin.setValues (-5, 25, 170, 120); //default (b_l 0, t_l 30, b_r 170, t_r 120); -// dirpyrequalizer.algo = "FI"; + dirpyrequalizer.hueskin.setValues (-5, 25, 170, 120); //default (b_l 0, t_l 30, b_r 170, t_r 120); +// dirpyrequalizer.algo = "FI"; hsvequalizer.hcurve.clear (); hsvequalizer.hcurve.push_back (FCT_Linear); @@ -1585,7 +1623,7 @@ void ProcParams::setDefaults () rank = 0; colorlabel = 0; inTrash = false; - prot = 1; + ppVersion = PPVERSION; } @@ -1652,11 +1690,11 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b Glib::KeyFile keyFile; - keyFile.set_string ("Version", "AppVersion", APPVERSION); - keyFile.set_integer ("Version", "Version", PPVERSION); + keyFile.set_string ("Version", "AppVersion", APPVERSION); + keyFile.set_integer ("Version", "Version", PPVERSION); if (!pedited || pedited->general.rank) { - keyFile.set_integer ("General", "Rank", rank); + keyFile.set_integer ("General", "Rank", rank); } if (!pedited || pedited->general.colorlabel) { @@ -1664,36 +1702,36 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->general.intrash) { - keyFile.set_boolean ("General", "InTrash", inTrash); + keyFile.set_boolean ("General", "InTrash", inTrash); } - // save tone curve +// save tone curve if (!pedited || pedited->toneCurve.autoexp) { - keyFile.set_boolean ("Exposure", "Auto", toneCurve.autoexp); + keyFile.set_boolean ("Exposure", "Auto", toneCurve.autoexp); } if (!pedited || pedited->toneCurve.clip) { - keyFile.set_double ("Exposure", "Clip", toneCurve.clip); + keyFile.set_double ("Exposure", "Clip", toneCurve.clip); } if (!pedited || pedited->toneCurve.expcomp) { - keyFile.set_double ("Exposure", "Compensation", toneCurve.expcomp); + keyFile.set_double ("Exposure", "Compensation", toneCurve.expcomp); } if (!pedited || pedited->toneCurve.brightness) { - keyFile.set_integer ("Exposure", "Brightness", toneCurve.brightness); + keyFile.set_integer ("Exposure", "Brightness", toneCurve.brightness); } if (!pedited || pedited->toneCurve.contrast) { - keyFile.set_integer ("Exposure", "Contrast", toneCurve.contrast); + keyFile.set_integer ("Exposure", "Contrast", toneCurve.contrast); } if (!pedited || pedited->toneCurve.saturation) { - keyFile.set_integer ("Exposure", "Saturation", toneCurve.saturation); + keyFile.set_integer ("Exposure", "Saturation", toneCurve.saturation); } if (!pedited || pedited->toneCurve.black) { - keyFile.set_integer ("Exposure", "Black", toneCurve.black); + keyFile.set_integer ("Exposure", "Black", toneCurve.black); } if (!pedited || pedited->toneCurve.hlcompr) { @@ -1705,19 +1743,19 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->toneCurve.shcompr) { - keyFile.set_integer ("Exposure", "ShadowCompr", toneCurve.shcompr); + keyFile.set_integer ("Exposure", "ShadowCompr", toneCurve.shcompr); } - // save highlight recovery settings +// save highlight recovery settings if (!pedited || pedited->toneCurve.hrenabled) { - keyFile.set_boolean ("HLRecovery", "Enabled", toneCurve.hrenabled); + keyFile.set_boolean ("HLRecovery", "Enabled", toneCurve.hrenabled); } if (!pedited || pedited->toneCurve.method) { - keyFile.set_string ("HLRecovery", "Method", toneCurve.method); + keyFile.set_string ("HLRecovery", "Method", toneCurve.method); } - if (!pedited || pedited->toneCurve.curveMode) { + if (!pedited || pedited->toneCurve.curveMode) { Glib::ustring method; switch (toneCurve.curveMode) { @@ -1746,10 +1784,10 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Exposure", "CurveMode", method); + keyFile.set_string ("Exposure", "CurveMode", method); } - if (!pedited || pedited->toneCurve.curveMode2) { + if (!pedited || pedited->toneCurve.curveMode2) { Glib::ustring method; switch (toneCurve.curveMode2) { @@ -1778,7 +1816,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Exposure", "CurveMode2", method); + keyFile.set_string ("Exposure", "CurveMode2", method); } if (!pedited || pedited->toneCurve.curve) { @@ -1791,38 +1829,38 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double_list ("Exposure", "Curve2", tcurve); } - //save retinex +//save retinex if (!pedited || pedited->retinex.enabled) { keyFile.set_boolean ("Retinex", "Enabled", retinex.enabled); } if (!pedited || pedited->retinex.str) { - keyFile.set_integer ("Retinex", "Str", retinex.str); + keyFile.set_integer ("Retinex", "Str", retinex.str); } if (!pedited || pedited->retinex.scal) { - keyFile.set_integer ("Retinex", "Scal", retinex.scal); + keyFile.set_integer ("Retinex", "Scal", retinex.scal); } if (!pedited || pedited->retinex.iter) { - keyFile.set_integer ("Retinex", "Iter", retinex.iter); + keyFile.set_integer ("Retinex", "Iter", retinex.iter); } if (!pedited || pedited->retinex.grad) { - keyFile.set_integer ("Retinex", "Grad", retinex.grad); + keyFile.set_integer ("Retinex", "Grad", retinex.grad); } if (!pedited || pedited->retinex.grads) { - keyFile.set_integer ("Retinex", "Grads", retinex.grads); + keyFile.set_integer ("Retinex", "Grads", retinex.grads); } if (!pedited || pedited->retinex.gam) { - keyFile.set_double ("Retinex", "Gam", retinex.gam); + keyFile.set_double ("Retinex", "Gam", retinex.gam); } if (!pedited || pedited->retinex.slope) { - keyFile.set_double ("Retinex", "Slope", retinex.slope); + keyFile.set_double ("Retinex", "Slope", retinex.slope); } if (!pedited || pedited->retinex.medianmap) { @@ -1832,71 +1870,71 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b if (!pedited || pedited->retinex.neigh) { - keyFile.set_integer ("Retinex", "Neigh", retinex.neigh); + keyFile.set_integer ("Retinex", "Neigh", retinex.neigh); } if (!pedited || pedited->retinex.offs) { - keyFile.set_integer ("Retinex", "Offs", retinex.offs); + keyFile.set_integer ("Retinex", "Offs", retinex.offs); } if (!pedited || pedited->retinex.vart) { - keyFile.set_integer ("Retinex", "Vart", retinex.vart); + keyFile.set_integer ("Retinex", "Vart", retinex.vart); } if (!pedited || pedited->retinex.limd) { - keyFile.set_integer ("Retinex", "Limd", retinex.limd); + keyFile.set_integer ("Retinex", "Limd", retinex.limd); } if (!pedited || pedited->retinex.highl) { - keyFile.set_integer ("Retinex", "highl", retinex.highl); + keyFile.set_integer ("Retinex", "highl", retinex.highl); } if (!pedited || pedited->retinex.skal) { - keyFile.set_integer ("Retinex", "skal", retinex.skal); + keyFile.set_integer ("Retinex", "skal", retinex.skal); } if (!pedited || pedited->retinex.retinexMethod) { - keyFile.set_string ("Retinex", "RetinexMethod", retinex.retinexMethod); + keyFile.set_string ("Retinex", "RetinexMethod", retinex.retinexMethod); } if (!pedited || pedited->retinex.mapMethod) { - keyFile.set_string ("Retinex", "mapMethod", retinex.mapMethod); + keyFile.set_string ("Retinex", "mapMethod", retinex.mapMethod); } if (!pedited || pedited->retinex.viewMethod) { - keyFile.set_string ("Retinex", "viewMethod", retinex.viewMethod); + keyFile.set_string ("Retinex", "viewMethod", retinex.viewMethod); } if (!pedited || pedited->retinex.retinexcolorspace) { - keyFile.set_string ("Retinex", "Retinexcolorspace", retinex.retinexcolorspace); + keyFile.set_string ("Retinex", "Retinexcolorspace", retinex.retinexcolorspace); } if (!pedited || pedited->retinex.gammaretinex) { - keyFile.set_string ("Retinex", "Gammaretinex", retinex.gammaretinex); + keyFile.set_string ("Retinex", "Gammaretinex", retinex.gammaretinex); } - if (!pedited || pedited->retinex.cdcurve) { + if (!pedited || pedited->retinex.cdcurve) { Glib::ArrayHandle cdcurve = retinex.cdcurve; keyFile.set_double_list ("Retinex", "CDCurve", cdcurve); } - if (!pedited || pedited->retinex.mapcurve) { + if (!pedited || pedited->retinex.mapcurve) { Glib::ArrayHandle mapcurve = retinex.mapcurve; keyFile.set_double_list ("Retinex", "MAPCurve", mapcurve); } - if (!pedited || pedited->retinex.cdHcurve) { + if (!pedited || pedited->retinex.cdHcurve) { Glib::ArrayHandle cdHcurve = retinex.cdHcurve; keyFile.set_double_list ("Retinex", "CDHCurve", cdHcurve); } - if (!pedited || pedited->retinex.lhcurve) { + if (!pedited || pedited->retinex.lhcurve) { Glib::ArrayHandle lhcurve = retinex.lhcurve; keyFile.set_double_list ("Retinex", "LHCurve", lhcurve); } if (!pedited || pedited->retinex.highlights) { - keyFile.set_integer ("Retinex", "Highlights", retinex.highlights); + keyFile.set_integer ("Retinex", "Highlights", retinex.highlights); } if (!pedited || pedited->retinex.htonalwidth) { @@ -1904,31 +1942,31 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->retinex.shadows) { - keyFile.set_integer ("Retinex", "Shadows", retinex.shadows); + keyFile.set_integer ("Retinex", "Shadows", retinex.shadows); } if (!pedited || pedited->retinex.stonalwidth) { - keyFile.set_integer ("Retinex", "ShadowTonalWidth", retinex.stonalwidth); + keyFile.set_integer ("Retinex", "ShadowTonalWidth", retinex.stonalwidth); } if (!pedited || pedited->retinex.radius) { - keyFile.set_integer ("Retinex", "Radius", retinex.radius); + keyFile.set_integer ("Retinex", "Radius", retinex.radius); } - if (!pedited || pedited->retinex.transmissionCurve) { + if (!pedited || pedited->retinex.transmissionCurve) { Glib::ArrayHandle transmissionCurve = retinex.transmissionCurve; keyFile.set_double_list ("Retinex", "TransmissionCurve", transmissionCurve); } - if (!pedited || pedited->retinex.gaintransmissionCurve) { + if (!pedited || pedited->retinex.gaintransmissionCurve) { Glib::ArrayHandle gaintransmissionCurve = retinex.gaintransmissionCurve; keyFile.set_double_list ("Retinex", "GainTransmissionCurve", gaintransmissionCurve); } - // save channel mixer +// save channel mixer if (!pedited || pedited->chmixer.red[0] || pedited->chmixer.red[1] || pedited->chmixer.red[2]) { Glib::ArrayHandle rmix (chmixer.red, 3, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Channel Mixer", "Red", rmix); + keyFile.set_integer_list ("Channel Mixer", "Red", rmix); } if (!pedited || pedited->chmixer.green[0] || pedited->chmixer.green[1] || pedited->chmixer.green[2]) { @@ -1938,20 +1976,20 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b if (!pedited || pedited->chmixer.blue[0] || pedited->chmixer.blue[1] || pedited->chmixer.blue[2]) { Glib::ArrayHandle bmix (chmixer.blue, 3, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Channel Mixer", "Blue", bmix); + keyFile.set_integer_list ("Channel Mixer", "Blue", bmix); } - //save Black & White +//save Black & White if (!pedited || pedited->blackwhite.enabled) { - keyFile.set_boolean ("Black & White", "Enabled", blackwhite.enabled); + keyFile.set_boolean ("Black & White", "Enabled", blackwhite.enabled); } if (!pedited || pedited->blackwhite.method) { - keyFile.set_string ("Black & White", "Method", blackwhite.method ); + keyFile.set_string ("Black & White", "Method", blackwhite.method ); } if (!pedited || pedited->blackwhite.autoc) { - keyFile.set_boolean ("Black & White", "Auto", blackwhite.autoc); + keyFile.set_boolean ("Black & White", "Auto", blackwhite.autoc); } if (!pedited || pedited->blackwhite.enabledcc) { @@ -1959,59 +1997,59 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->blackwhite.setting) { - keyFile.set_string ("Black & White", "Setting", blackwhite.setting ); + keyFile.set_string ("Black & White", "Setting", blackwhite.setting ); } if (!pedited || pedited->blackwhite.filter) { - keyFile.set_string ("Black & White", "Filter", blackwhite.filter ); + keyFile.set_string ("Black & White", "Filter", blackwhite.filter ); } if (!pedited || pedited->blackwhite.mixerRed) { - keyFile.set_integer ("Black & White", "MixerRed", blackwhite.mixerRed); + keyFile.set_integer ("Black & White", "MixerRed", blackwhite.mixerRed); } if (!pedited || pedited->blackwhite.mixerOrange) { - keyFile.set_integer ("Black & White", "MixerOrange", blackwhite.mixerOrange); + keyFile.set_integer ("Black & White", "MixerOrange", blackwhite.mixerOrange); } if (!pedited || pedited->blackwhite.mixerYellow) { - keyFile.set_integer ("Black & White", "MixerYellow", blackwhite.mixerYellow); + keyFile.set_integer ("Black & White", "MixerYellow", blackwhite.mixerYellow); } if (!pedited || pedited->blackwhite.mixerGreen) { - keyFile.set_integer ("Black & White", "MixerGreen", blackwhite.mixerGreen); + keyFile.set_integer ("Black & White", "MixerGreen", blackwhite.mixerGreen); } if (!pedited || pedited->blackwhite.mixerCyan) { - keyFile.set_integer ("Black & White", "MixerCyan", blackwhite.mixerCyan); + keyFile.set_integer ("Black & White", "MixerCyan", blackwhite.mixerCyan); } if (!pedited || pedited->blackwhite.mixerBlue) { - keyFile.set_integer ("Black & White", "MixerBlue", blackwhite.mixerBlue); + keyFile.set_integer ("Black & White", "MixerBlue", blackwhite.mixerBlue); } if (!pedited || pedited->blackwhite.mixerMagenta) { - keyFile.set_integer ("Black & White", "MixerMagenta", blackwhite.mixerMagenta); + keyFile.set_integer ("Black & White", "MixerMagenta", blackwhite.mixerMagenta); } if (!pedited || pedited->blackwhite.mixerPurple) { - keyFile.set_integer ("Black & White", "MixerPurple", blackwhite.mixerPurple); + keyFile.set_integer ("Black & White", "MixerPurple", blackwhite.mixerPurple); } if (!pedited || pedited->blackwhite.gammaRed) { - keyFile.set_integer ("Black & White", "GammaRed", blackwhite.gammaRed); + keyFile.set_integer ("Black & White", "GammaRed", blackwhite.gammaRed); } if (!pedited || pedited->blackwhite.gammaGreen) { - keyFile.set_integer ("Black & White", "GammaGreen", blackwhite.gammaGreen); + keyFile.set_integer ("Black & White", "GammaGreen", blackwhite.gammaGreen); } if (!pedited || pedited->blackwhite.gammaBlue) { - keyFile.set_integer ("Black & White", "GammaBlue", blackwhite.gammaBlue); + keyFile.set_integer ("Black & White", "GammaBlue", blackwhite.gammaBlue); } if (!pedited || pedited->blackwhite.algo) { - keyFile.set_string ("Black & White", "Algorithm", blackwhite.algo); + keyFile.set_string ("Black & White", "Algorithm", blackwhite.algo); } if (!pedited || pedited->blackwhite.luminanceCurve) { @@ -2024,11 +2062,11 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b switch (blackwhite.beforeCurveMode) { case (BlackWhiteParams::TC_MODE_STD_BW): - mode = "Standard"; + mode = "Standard"; break; case (BlackWhiteParams::TC_MODE_FILMLIKE_BW): - mode = "FilmLike"; + mode = "FilmLike"; break; case (BlackWhiteParams::TC_MODE_SATANDVALBLENDING_BW): @@ -2040,7 +2078,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Black & White", "BeforeCurveMode", mode); + keyFile.set_string ("Black & White", "BeforeCurveMode", mode); } if (!pedited || pedited->blackwhite.afterCurveMode) { @@ -2059,7 +2097,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Black & White", "AfterCurveMode", mode); + keyFile.set_string ("Black & White", "AfterCurveMode", mode); } if (!pedited || pedited->blackwhite.beforeCurve) { @@ -2072,145 +2110,145 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double_list ("Black & White", "AfterCurve", tcurvebw); } - // save luma curve +// save luma curve if (!pedited || pedited->labCurve.brightness) { - keyFile.set_integer ("Luminance Curve", "Brightness", labCurve.brightness); + keyFile.set_integer ("Luminance Curve", "Brightness", labCurve.brightness); } if (!pedited || pedited->labCurve.contrast) { - keyFile.set_integer ("Luminance Curve", "Contrast", labCurve.contrast); + keyFile.set_integer ("Luminance Curve", "Contrast", labCurve.contrast); } if (!pedited || pedited->labCurve.chromaticity) { - keyFile.set_integer ("Luminance Curve", "Chromaticity", labCurve.chromaticity); + keyFile.set_integer ("Luminance Curve", "Chromaticity", labCurve.chromaticity); } if (!pedited || pedited->labCurve.avoidcolorshift) { - keyFile.set_boolean ("Luminance Curve", "AvoidColorShift", labCurve.avoidcolorshift); + keyFile.set_boolean ("Luminance Curve", "AvoidColorShift", labCurve.avoidcolorshift); } if (!pedited || pedited->labCurve.rstprotection) { - keyFile.set_double ("Luminance Curve", "RedAndSkinTonesProtection", labCurve.rstprotection); + keyFile.set_double ("Luminance Curve", "RedAndSkinTonesProtection", labCurve.rstprotection); } if (!pedited || pedited->labCurve.lcredsk) { - keyFile.set_boolean ("Luminance Curve", "LCredsk", labCurve.lcredsk); + keyFile.set_boolean ("Luminance Curve", "LCredsk", labCurve.lcredsk); } - if (!pedited || pedited->labCurve.lcurve) { + if (!pedited || pedited->labCurve.lcurve) { Glib::ArrayHandle lcurve = labCurve.lcurve; keyFile.set_double_list ("Luminance Curve", "LCurve", lcurve); } - if (!pedited || pedited->labCurve.acurve) { + if (!pedited || pedited->labCurve.acurve) { Glib::ArrayHandle acurve = labCurve.acurve; keyFile.set_double_list ("Luminance Curve", "aCurve", acurve); } - if (!pedited || pedited->labCurve.bcurve) { + if (!pedited || pedited->labCurve.bcurve) { Glib::ArrayHandle bcurve = labCurve.bcurve; keyFile.set_double_list ("Luminance Curve", "bCurve", bcurve); } - if (!pedited || pedited->labCurve.cccurve) { + if (!pedited || pedited->labCurve.cccurve) { Glib::ArrayHandle cccurve = labCurve.cccurve; keyFile.set_double_list ("Luminance Curve", "ccCurve", cccurve); } - if (!pedited || pedited->labCurve.chcurve) { + if (!pedited || pedited->labCurve.chcurve) { Glib::ArrayHandle chcurve = labCurve.chcurve; keyFile.set_double_list ("Luminance Curve", "chCurve", chcurve); } - if (!pedited || pedited->labCurve.lhcurve) { + if (!pedited || pedited->labCurve.lhcurve) { Glib::ArrayHandle lhcurve = labCurve.lhcurve; keyFile.set_double_list ("Luminance Curve", "lhCurve", lhcurve); } - if (!pedited || pedited->labCurve.hhcurve) { + if (!pedited || pedited->labCurve.hhcurve) { Glib::ArrayHandle hhcurve = labCurve.hhcurve; keyFile.set_double_list ("Luminance Curve", "hhCurve", hhcurve); } - if (!pedited || pedited->labCurve.lccurve) { + if (!pedited || pedited->labCurve.lccurve) { Glib::ArrayHandle lccurve = labCurve.lccurve; keyFile.set_double_list ("Luminance Curve", "LcCurve", lccurve); } - if (!pedited || pedited->labCurve.clcurve) { + if (!pedited || pedited->labCurve.clcurve) { Glib::ArrayHandle clcurve = labCurve.clcurve; keyFile.set_double_list ("Luminance Curve", "ClCurve", clcurve); } - // save sharpening +// save sharpening if (!pedited || pedited->sharpening.enabled) { - keyFile.set_boolean ("Sharpening", "Enabled", sharpening.enabled); + keyFile.set_boolean ("Sharpening", "Enabled", sharpening.enabled); } if (!pedited || pedited->sharpening.method) { - keyFile.set_string ("Sharpening", "Method", sharpening.method); + keyFile.set_string ("Sharpening", "Method", sharpening.method); } if (!pedited || pedited->sharpening.radius) { - keyFile.set_double ("Sharpening", "Radius", sharpening.radius); + keyFile.set_double ("Sharpening", "Radius", sharpening.radius); } if (!pedited || pedited->sharpening.amount) { - keyFile.set_integer ("Sharpening", "Amount", sharpening.amount); + keyFile.set_integer ("Sharpening", "Amount", sharpening.amount); } if (!pedited || pedited->sharpening.threshold) { Glib::ArrayHandle thresh (sharpening.threshold.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Sharpening", "Threshold", thresh); + keyFile.set_integer_list ("Sharpening", "Threshold", thresh); } if (!pedited || pedited->sharpening.edgesonly) { - keyFile.set_boolean ("Sharpening", "OnlyEdges", sharpening.edgesonly); + keyFile.set_boolean ("Sharpening", "OnlyEdges", sharpening.edgesonly); } if (!pedited || pedited->sharpening.edges_radius) { - keyFile.set_double ("Sharpening", "EdgedetectionRadius", sharpening.edges_radius); + keyFile.set_double ("Sharpening", "EdgedetectionRadius", sharpening.edges_radius); } if (!pedited || pedited->sharpening.edges_tolerance) { - keyFile.set_integer ("Sharpening", "EdgeTolerance", sharpening.edges_tolerance); + keyFile.set_integer ("Sharpening", "EdgeTolerance", sharpening.edges_tolerance); } if (!pedited || pedited->sharpening.halocontrol) { - keyFile.set_boolean ("Sharpening", "HalocontrolEnabled", sharpening.halocontrol); + keyFile.set_boolean ("Sharpening", "HalocontrolEnabled", sharpening.halocontrol); } if (!pedited || pedited->sharpening.halocontrol_amount) { - keyFile.set_integer ("Sharpening", "HalocontrolAmount", sharpening.halocontrol_amount); + keyFile.set_integer ("Sharpening", "HalocontrolAmount", sharpening.halocontrol_amount); } if (!pedited || pedited->sharpening.deconvradius) { - keyFile.set_double ("Sharpening", "DeconvRadius", sharpening.deconvradius); + keyFile.set_double ("Sharpening", "DeconvRadius", sharpening.deconvradius); } if (!pedited || pedited->sharpening.deconvamount) { - keyFile.set_integer ("Sharpening", "DeconvAmount", sharpening.deconvamount); + keyFile.set_integer ("Sharpening", "DeconvAmount", sharpening.deconvamount); } if (!pedited || pedited->sharpening.deconvdamping) { - keyFile.set_integer ("Sharpening", "DeconvDamping", sharpening.deconvdamping); + keyFile.set_integer ("Sharpening", "DeconvDamping", sharpening.deconvdamping); } if (!pedited || pedited->sharpening.deconviter) { - keyFile.set_integer ("Sharpening", "DeconvIterations", sharpening.deconviter); + keyFile.set_integer ("Sharpening", "DeconvIterations", sharpening.deconviter); } - // save vibrance +// save vibrance if (!pedited || pedited->vibrance.enabled) { - keyFile.set_boolean ("Vibrance", "Enabled", vibrance.enabled); + keyFile.set_boolean ("Vibrance", "Enabled", vibrance.enabled); } if (!pedited || pedited->vibrance.pastels) { - keyFile.set_integer ("Vibrance", "Pastels", vibrance.pastels); + keyFile.set_integer ("Vibrance", "Pastels", vibrance.pastels); } if (!pedited || pedited->vibrance.saturated) { - keyFile.set_integer ("Vibrance", "Saturated", vibrance.saturated); + keyFile.set_integer ("Vibrance", "Saturated", vibrance.saturated); } if (!pedited || pedited->vibrance.psthreshold) { @@ -2219,7 +2257,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->vibrance.protectskins) { - keyFile.set_boolean ("Vibrance", "ProtectSkins", vibrance.protectskins); + keyFile.set_boolean ("Vibrance", "ProtectSkins", vibrance.protectskins); } if (!pedited || pedited->vibrance.avoidcolorshift) { @@ -2227,46 +2265,46 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->vibrance.pastsattog) { - keyFile.set_boolean ("Vibrance", "PastSatTog", vibrance.pastsattog); + keyFile.set_boolean ("Vibrance", "PastSatTog", vibrance.pastsattog); } - if (!pedited || pedited->vibrance.skintonescurve) { + if (!pedited || pedited->vibrance.skintonescurve) { Glib::ArrayHandle skintonescurve = vibrance.skintonescurve; keyFile.set_double_list ("Vibrance", "SkinTonesCurve", skintonescurve); } - //save edge sharpening +//save edge sharpening if (!pedited || pedited->sharpenEdge.enabled) { - keyFile.set_boolean ("SharpenEdge", "Enabled", sharpenEdge.enabled); + keyFile.set_boolean ("SharpenEdge", "Enabled", sharpenEdge.enabled); } if (!pedited || pedited->sharpenEdge.passes) { - keyFile.set_integer ("SharpenEdge", "Passes", sharpenEdge.passes); + keyFile.set_integer ("SharpenEdge", "Passes", sharpenEdge.passes); } if (!pedited || pedited->sharpenEdge.amount) { - keyFile.set_double ("SharpenEdge", "Strength", sharpenEdge.amount); + keyFile.set_double ("SharpenEdge", "Strength", sharpenEdge.amount); } if (!pedited || pedited->sharpenEdge.threechannels) { keyFile.set_boolean ("SharpenEdge", "ThreeChannels", sharpenEdge.threechannels); } - //save micro-contrast sharpening +//save micro-contrast sharpening if (!pedited || pedited->sharpenMicro.enabled) { - keyFile.set_boolean ("SharpenMicro", "Enabled", sharpenMicro.enabled); + keyFile.set_boolean ("SharpenMicro", "Enabled", sharpenMicro.enabled); } if (!pedited || pedited->sharpenMicro.matrix) { - keyFile.set_boolean ("SharpenMicro", "Matrix", sharpenMicro.matrix); + keyFile.set_boolean ("SharpenMicro", "Matrix", sharpenMicro.matrix); } if (!pedited || pedited->sharpenMicro.amount) { - keyFile.set_double ("SharpenMicro", "Strength", sharpenMicro.amount); + keyFile.set_double ("SharpenMicro", "Strength", sharpenMicro.amount); } if (!pedited || pedited->sharpenMicro.uniformity) { - keyFile.set_double ("SharpenMicro", "Uniformity", sharpenMicro.uniformity); + keyFile.set_double ("SharpenMicro", "Uniformity", sharpenMicro.uniformity); } /* @@ -2279,7 +2317,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b // save wb if (!pedited || pedited->wb.method) { - keyFile.set_string ("White Balance", "Setting", wb.method); + keyFile.set_string ("White Balance", "Setting", wb.method); } if (!pedited || pedited->wb.temperature) { @@ -2287,119 +2325,131 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->wb.green) { - keyFile.set_double ("White Balance", "Green", wb.green); + keyFile.set_double ("White Balance", "Green", wb.green); } if (!pedited || pedited->wb.equal) { - keyFile.set_double ("White Balance", "Equal", wb.equal); + keyFile.set_double ("White Balance", "Equal", wb.equal); } if (!pedited || pedited->wb.tempBias) { - keyFile.set_double ("White Balance", "TemperatureBias", wb.tempBias); + keyFile.set_double ("White Balance", "TemperatureBias", wb.tempBias); } /* - // save colorShift - if (!pedited || pedited->colorShift.a) keyFile.set_double ("Color Shift", "ChannelA", colorShift.a); - if (!pedited || pedited->colorShift.b) keyFile.set_double ("Color Shift", "ChannelB", colorShift.b); + // save colorShift + if (!pedited || pedited->colorShift.a) keyFile.set_double ("Color Shift", "ChannelA", colorShift.a); + if (!pedited || pedited->colorShift.b) keyFile.set_double ("Color Shift", "ChannelB", colorShift.b); */ - // save colorappearance +// save colorappearance if (!pedited || pedited->colorappearance.enabled) { - keyFile.set_boolean ("Color appearance", "Enabled", colorappearance.enabled); + keyFile.set_boolean ("Color appearance", "Enabled", colorappearance.enabled); } if (!pedited || pedited->colorappearance.degree) { - keyFile.set_integer ("Color appearance", "Degree", colorappearance.degree); + keyFile.set_integer ("Color appearance", "Degree", colorappearance.degree); } if (!pedited || pedited->colorappearance.autodegree) { - keyFile.set_boolean ("Color appearance", "AutoDegree", colorappearance.autodegree); + keyFile.set_boolean ("Color appearance", "AutoDegree", colorappearance.autodegree); } if (!pedited || pedited->colorappearance.surround) { - keyFile.set_string ("Color appearance", "Surround", colorappearance.surround); + keyFile.set_string ("Color appearance", "Surround", colorappearance.surround); } -// if (!pedited || pedited->colorappearance.backgrd) keyFile.set_integer ("Color appearance", "Background", colorappearance.backgrd); +// if (!pedited || pedited->colorappearance.backgrd) keyFile.set_integer ("Color appearance", "Background", colorappearance.backgrd); if (!pedited || pedited->colorappearance.adaplum) { - keyFile.set_double ("Color appearance", "AdaptLum", colorappearance.adaplum); + keyFile.set_double ("Color appearance", "AdaptLum", colorappearance.adaplum); } if (!pedited || pedited->colorappearance.badpixsl) { - keyFile.set_integer ("Color appearance", "Badpixsl", colorappearance.badpixsl); + keyFile.set_integer ("Color appearance", "Badpixsl", colorappearance.badpixsl); } if (!pedited || pedited->colorappearance.wbmodel) { - keyFile.set_string ("Color appearance", "Model", colorappearance.wbmodel); + keyFile.set_string ("Color appearance", "Model", colorappearance.wbmodel); } if (!pedited || pedited->colorappearance.algo) { - keyFile.set_string ("Color appearance", "Algorithm", colorappearance.algo); + keyFile.set_string ("Color appearance", "Algorithm", colorappearance.algo); } if (!pedited || pedited->colorappearance.jlight) { - keyFile.set_double ("Color appearance", "J-Light", colorappearance.jlight); + keyFile.set_double ("Color appearance", "J-Light", colorappearance.jlight); } if (!pedited || pedited->colorappearance.qbright) { - keyFile.set_double ("Color appearance", "Q-Bright", colorappearance.qbright); + keyFile.set_double ("Color appearance", "Q-Bright", colorappearance.qbright); } if (!pedited || pedited->colorappearance.chroma) { - keyFile.set_double ("Color appearance", "C-Chroma", colorappearance.chroma); + keyFile.set_double ("Color appearance", "C-Chroma", colorappearance.chroma); } if (!pedited || pedited->colorappearance.schroma) { - keyFile.set_double ("Color appearance", "S-Chroma", colorappearance.schroma); + keyFile.set_double ("Color appearance", "S-Chroma", colorappearance.schroma); } if (!pedited || pedited->colorappearance.mchroma) { - keyFile.set_double ("Color appearance", "M-Chroma", colorappearance.mchroma); + keyFile.set_double ("Color appearance", "M-Chroma", colorappearance.mchroma); } if (!pedited || pedited->colorappearance.contrast) { - keyFile.set_double ("Color appearance", "J-Contrast", colorappearance.contrast); + keyFile.set_double ("Color appearance", "J-Contrast", colorappearance.contrast); } if (!pedited || pedited->colorappearance.qcontrast) { - keyFile.set_double ("Color appearance", "Q-Contrast", colorappearance.qcontrast); + keyFile.set_double ("Color appearance", "Q-Contrast", colorappearance.qcontrast); } if (!pedited || pedited->colorappearance.colorh) { - keyFile.set_double ("Color appearance", "H-Hue", colorappearance.colorh); + keyFile.set_double ("Color appearance", "H-Hue", colorappearance.colorh); } if (!pedited || pedited->colorappearance.rstprotection) { - keyFile.set_double ("Color appearance", "RSTProtection", colorappearance.rstprotection); + keyFile.set_double ("Color appearance", "RSTProtection", colorappearance.rstprotection); } if (!pedited || pedited->colorappearance.adapscen) { - keyFile.set_double ("Color appearance", "AdaptScene", colorappearance.adapscen); + keyFile.set_double ("Color appearance", "AdaptScene", colorappearance.adapscen); } if (!pedited || pedited->colorappearance.autoadapscen) { - keyFile.set_boolean ("Color appearance", "AutoAdapscen", colorappearance.autoadapscen); + keyFile.set_boolean ("Color appearance", "AutoAdapscen", colorappearance.autoadapscen); } if (!pedited || pedited->colorappearance.surrsource) { - keyFile.set_boolean ("Color appearance", "SurrSource", colorappearance.surrsource); + keyFile.set_boolean ("Color appearance", "SurrSource", colorappearance.surrsource); } if (!pedited || pedited->colorappearance.gamut) { - keyFile.set_boolean ("Color appearance", "Gamut", colorappearance.gamut); + keyFile.set_boolean ("Color appearance", "Gamut", colorappearance.gamut); } -// if (!pedited || pedited->colorappearance.badpix) keyFile.set_boolean ("Color appearance", "Badpix", colorappearance.badpix); + if (!pedited || pedited->colorappearance.tempout) { + keyFile.set_integer ("Color appearance", "Tempout", colorappearance.tempout); + } + + if (!pedited || pedited->colorappearance.greenout) { + keyFile.set_double ("Color appearance", "Greenout", colorappearance.greenout); + } + + if (!pedited || pedited->colorappearance.ybout) { + keyFile.set_integer ("Color appearance", "Ybout", colorappearance.ybout); + } + +// if (!pedited || pedited->colorappearance.badpix) keyFile.set_boolean ("Color appearance", "Badpix", colorappearance.badpix); if (!pedited || pedited->colorappearance.datacie) { - keyFile.set_boolean ("Color appearance", "Datacie", colorappearance.datacie); + keyFile.set_boolean ("Color appearance", "Datacie", colorappearance.datacie); } if (!pedited || pedited->colorappearance.tonecie) { - keyFile.set_boolean ("Color appearance", "Tonecie", colorappearance.tonecie); + keyFile.set_boolean ("Color appearance", "Tonecie", colorappearance.tonecie); } -// if (!pedited || pedited->colorappearance.sharpcie) keyFile.set_boolean ("Color appearance", "Sharpcie", colorappearance.sharpcie); - if (!pedited || pedited->colorappearance.curveMode) { +// if (!pedited || pedited->colorappearance.sharpcie) keyFile.set_boolean ("Color appearance", "Sharpcie", colorappearance.sharpcie); + if (!pedited || pedited->colorappearance.curveMode) { Glib::ustring method; switch (colorappearance.curveMode) { @@ -2412,10 +2462,10 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Color appearance", "CurveMode", method); + keyFile.set_string ("Color appearance", "CurveMode", method); } - if (!pedited || pedited->colorappearance.curveMode2) { + if (!pedited || pedited->colorappearance.curveMode2) { Glib::ustring method; switch (colorappearance.curveMode2) { @@ -2428,10 +2478,10 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Color appearance", "CurveMode2", method); + keyFile.set_string ("Color appearance", "CurveMode2", method); } - if (!pedited || pedited->colorappearance.curveMode3) { + if (!pedited || pedited->colorappearance.curveMode3) { Glib::ustring method; switch (colorappearance.curveMode3) { @@ -2449,7 +2499,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } - keyFile.set_string ("Color appearance", "CurveMode3", method); + keyFile.set_string ("Color appearance", "CurveMode3", method); } if (!pedited || pedited->colorappearance.curve) { @@ -2469,34 +2519,34 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b - // save impulseDenoise +// save impulseDenoise if (!pedited || pedited->impulseDenoise.enabled) { - keyFile.set_boolean ("Impulse Denoising", "Enabled", impulseDenoise.enabled); + keyFile.set_boolean ("Impulse Denoising", "Enabled", impulseDenoise.enabled); } if (!pedited || pedited->impulseDenoise.thresh) { keyFile.set_integer ("Impulse Denoising", "Threshold", impulseDenoise.thresh); } - // save defringe +// save defringe if (!pedited || pedited->defringe.enabled) { - keyFile.set_boolean ("Defringing", "Enabled", defringe.enabled); + keyFile.set_boolean ("Defringing", "Enabled", defringe.enabled); } if (!pedited || pedited->defringe.radius) { - keyFile.set_double ("Defringing", "Radius", defringe.radius); + keyFile.set_double ("Defringing", "Radius", defringe.radius); } if (!pedited || pedited->defringe.threshold) { keyFile.set_integer ("Defringing", "Threshold", defringe.threshold); } - if (!pedited || pedited->defringe.huecurve) { + if (!pedited || pedited->defringe.huecurve) { Glib::ArrayHandle huecurve = defringe.huecurve; keyFile.set_double_list ("Defringing", "HueCurve", huecurve); } - // save dirpyrDenoise +// save dirpyrDenoise if (!pedited || pedited->dirpyrDenoise.enabled) { keyFile.set_boolean ("Directional Pyramid Denoising", "Enabled", dirpyrDenoise.enabled); } @@ -2509,9 +2559,9 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_boolean ("Directional Pyramid Denoising", "Median", dirpyrDenoise.median); } -// if (!pedited || pedited->dirpyrDenoise.perform) keyFile.set_boolean ("Directional Pyramid Denoising", "Perform", dirpyrDenoise.perform); +// if (!pedited || pedited->dirpyrDenoise.perform) keyFile.set_boolean ("Directional Pyramid Denoising", "Perform", dirpyrDenoise.perform); if (!pedited || pedited->dirpyrDenoise.luma) { - keyFile.set_double ("Directional Pyramid Denoising", "Luma", dirpyrDenoise.luma); + keyFile.set_double ("Directional Pyramid Denoising", "Luma", dirpyrDenoise.luma); } if (!pedited || pedited->dirpyrDenoise.Ldetail) { @@ -2519,24 +2569,24 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->dirpyrDenoise.chroma) { - keyFile.set_double ("Directional Pyramid Denoising", "Chroma", dirpyrDenoise.chroma); + keyFile.set_double ("Directional Pyramid Denoising", "Chroma", dirpyrDenoise.chroma); } if (!pedited || pedited->dirpyrDenoise.dmethod) { - keyFile.set_string ("Directional Pyramid Denoising", "Method", dirpyrDenoise.dmethod); + keyFile.set_string ("Directional Pyramid Denoising", "Method", dirpyrDenoise.dmethod); } if (!pedited || pedited->dirpyrDenoise.Lmethod) { - keyFile.set_string ("Directional Pyramid Denoising", "LMethod", dirpyrDenoise.Lmethod); + keyFile.set_string ("Directional Pyramid Denoising", "LMethod", dirpyrDenoise.Lmethod); } - // never save 'auto chroma preview mode' to pp3 +// never save 'auto chroma preview mode' to pp3 if (!pedited || pedited->dirpyrDenoise.Cmethod) { if (dirpyrDenoise.Cmethod == "PRE") { dirpyrDenoise.Cmethod = "MAN"; } - keyFile.set_string ("Directional Pyramid Denoising", "CMethod", dirpyrDenoise.Cmethod); + keyFile.set_string ("Directional Pyramid Denoising", "CMethod", dirpyrDenoise.Cmethod); } if (!pedited || pedited->dirpyrDenoise.C2method) { @@ -2544,70 +2594,70 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b dirpyrDenoise.C2method = "MANU"; } - keyFile.set_string ("Directional Pyramid Denoising", "C2Method", dirpyrDenoise.C2method); + keyFile.set_string ("Directional Pyramid Denoising", "C2Method", dirpyrDenoise.C2method); } if (!pedited || pedited->dirpyrDenoise.smethod) { - keyFile.set_string ("Directional Pyramid Denoising", "SMethod", dirpyrDenoise.smethod); + keyFile.set_string ("Directional Pyramid Denoising", "SMethod", dirpyrDenoise.smethod); } if (!pedited || pedited->dirpyrDenoise.medmethod) { - keyFile.set_string ("Directional Pyramid Denoising", "MedMethod", dirpyrDenoise.medmethod); + keyFile.set_string ("Directional Pyramid Denoising", "MedMethod", dirpyrDenoise.medmethod); } if (!pedited || pedited->dirpyrDenoise.rgbmethod) { - keyFile.set_string ("Directional Pyramid Denoising", "RGBMethod", dirpyrDenoise.rgbmethod); + keyFile.set_string ("Directional Pyramid Denoising", "RGBMethod", dirpyrDenoise.rgbmethod); } if (!pedited || pedited->dirpyrDenoise.methodmed) { - keyFile.set_string ("Directional Pyramid Denoising", "MethodMed", dirpyrDenoise.methodmed); + keyFile.set_string ("Directional Pyramid Denoising", "MethodMed", dirpyrDenoise.methodmed); } if (!pedited || pedited->dirpyrDenoise.redchro) { - keyFile.set_double ("Directional Pyramid Denoising", "Redchro", dirpyrDenoise.redchro); + keyFile.set_double ("Directional Pyramid Denoising", "Redchro", dirpyrDenoise.redchro); } if (!pedited || pedited->dirpyrDenoise.bluechro) { - keyFile.set_double ("Directional Pyramid Denoising", "Bluechro", dirpyrDenoise.bluechro); + keyFile.set_double ("Directional Pyramid Denoising", "Bluechro", dirpyrDenoise.bluechro); } if (!pedited || pedited->dirpyrDenoise.gamma) { - keyFile.set_double ("Directional Pyramid Denoising", "Gamma", dirpyrDenoise.gamma); + keyFile.set_double ("Directional Pyramid Denoising", "Gamma", dirpyrDenoise.gamma); } if (!pedited || pedited->dirpyrDenoise.passes) { - keyFile.set_integer ("Directional Pyramid Denoising", "Passes", dirpyrDenoise.passes); + keyFile.set_integer ("Directional Pyramid Denoising", "Passes", dirpyrDenoise.passes); } - if (!pedited || pedited->dirpyrDenoise.lcurve) { + if (!pedited || pedited->dirpyrDenoise.lcurve) { Glib::ArrayHandle lcurve = dirpyrDenoise.lcurve; keyFile.set_double_list ("Directional Pyramid Denoising", "LCurve", lcurve); } - if (!pedited || pedited->dirpyrDenoise.cccurve) { + if (!pedited || pedited->dirpyrDenoise.cccurve) { Glib::ArrayHandle cccurve = dirpyrDenoise.cccurve; keyFile.set_double_list ("Directional Pyramid Denoising", "CCCurve", cccurve); } - //Save epd. +// save epd. if (!pedited || pedited->epd.enabled) { keyFile.set_boolean ("EPD", "Enabled", epd.enabled); } if (!pedited || pedited->epd.strength) { - keyFile.set_double ("EPD", "Strength", epd.strength); + keyFile.set_double ("EPD", "Strength", epd.strength); } if (!pedited || pedited->epd.gamma) { - keyFile.set_double ("EPD", "Gamma", epd.gamma); + keyFile.set_double ("EPD", "Gamma", epd.gamma); } if (!pedited || pedited->epd.edgeStopping) { - keyFile.set_double ("EPD", "EdgeStopping", epd.edgeStopping); + keyFile.set_double ("EPD", "EdgeStopping", epd.edgeStopping); } if (!pedited || pedited->epd.scale) { - keyFile.set_double ("EPD", "Scale", epd.scale); + keyFile.set_double ("EPD", "Scale", epd.scale); } if (!pedited || pedited->epd.reweightingIterates) { @@ -2615,29 +2665,29 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } /* - // save lumaDenoise - if (!pedited || pedited->lumaDenoise.enabled) keyFile.set_boolean ("Luminance Denoising", "Enabled", lumaDenoise.enabled); - if (!pedited || pedited->lumaDenoise.radius) keyFile.set_double ("Luminance Denoising", "Radius", lumaDenoise.radius); - if (!pedited || pedited->lumaDenoise.edgetolerance) keyFile.set_integer ("Luminance Denoising", "EdgeTolerance", lumaDenoise.edgetolerance); + // save lumaDenoise + if (!pedited || pedited->lumaDenoise.enabled) keyFile.set_boolean ("Luminance Denoising", "Enabled", lumaDenoise.enabled); + if (!pedited || pedited->lumaDenoise.radius) keyFile.set_double ("Luminance Denoising", "Radius", lumaDenoise.radius); + if (!pedited || pedited->lumaDenoise.edgetolerance) keyFile.set_integer ("Luminance Denoising", "EdgeTolerance", lumaDenoise.edgetolerance); */ /* - // save colorDenoise - //if (!pedited || pedited->colorDenoise.enabled) keyFile.set_boolean ("Chrominance Denoising", "Enabled", colorDenoise.enabled); - if (!pedited || pedited->colorDenoise.amount) keyFile.set_integer ("Chrominance Denoising", "Amount", colorDenoise.amount); + // save colorDenoise + //if (!pedited || pedited->colorDenoise.enabled) keyFile.set_boolean ("Chrominance Denoising", "Enabled", colorDenoise.enabled); + if (!pedited || pedited->colorDenoise.amount) keyFile.set_integer ("Chrominance Denoising", "Amount", colorDenoise.amount); */ - // save sh +// save sh if (!pedited || pedited->sh.enabled) { - keyFile.set_boolean ("Shadows & Highlights", "Enabled", sh.enabled); + keyFile.set_boolean ("Shadows & Highlights", "Enabled", sh.enabled); } if (!pedited || pedited->sh.hq) { - keyFile.set_boolean ("Shadows & Highlights", "HighQuality", sh.hq); + keyFile.set_boolean ("Shadows & Highlights", "HighQuality", sh.hq); } if (!pedited || pedited->sh.highlights) { - keyFile.set_integer ("Shadows & Highlights", "Highlights", sh.highlights); + keyFile.set_integer ("Shadows & Highlights", "Highlights", sh.highlights); } if (!pedited || pedited->sh.htonalwidth) { @@ -2645,61 +2695,61 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->sh.shadows) { - keyFile.set_integer ("Shadows & Highlights", "Shadows", sh.shadows); + keyFile.set_integer ("Shadows & Highlights", "Shadows", sh.shadows); } if (!pedited || pedited->sh.stonalwidth) { - keyFile.set_integer ("Shadows & Highlights", "ShadowTonalWidth", sh.stonalwidth); + keyFile.set_integer ("Shadows & Highlights", "ShadowTonalWidth", sh.stonalwidth); } if (!pedited || pedited->sh.localcontrast) { - keyFile.set_integer ("Shadows & Highlights", "LocalContrast", sh.localcontrast); + keyFile.set_integer ("Shadows & Highlights", "LocalContrast", sh.localcontrast); } if (!pedited || pedited->sh.radius) { - keyFile.set_integer ("Shadows & Highlights", "Radius", sh.radius); + keyFile.set_integer ("Shadows & Highlights", "Radius", sh.radius); } - // save crop +// save crop if (!pedited || pedited->crop.enabled) { - keyFile.set_boolean ("Crop", "Enabled", crop.enabled); + keyFile.set_boolean ("Crop", "Enabled", crop.enabled); } if (!pedited || pedited->crop.x) { - keyFile.set_integer ("Crop", "X", crop.x); + keyFile.set_integer ("Crop", "X", crop.x); } if (!pedited || pedited->crop.y) { - keyFile.set_integer ("Crop", "Y", crop.y); + keyFile.set_integer ("Crop", "Y", crop.y); } if (!pedited || pedited->crop.w) { - keyFile.set_integer ("Crop", "W", crop.w); + keyFile.set_integer ("Crop", "W", crop.w); } if (!pedited || pedited->crop.h) { - keyFile.set_integer ("Crop", "H", crop.h); + keyFile.set_integer ("Crop", "H", crop.h); } if (!pedited || pedited->crop.fixratio) { - keyFile.set_boolean ("Crop", "FixedRatio", crop.fixratio); + keyFile.set_boolean ("Crop", "FixedRatio", crop.fixratio); } if (!pedited || pedited->crop.ratio) { - keyFile.set_string ("Crop", "Ratio", crop.ratio); + keyFile.set_string ("Crop", "Ratio", crop.ratio); } if (!pedited || pedited->crop.orientation) { - keyFile.set_string ("Crop", "Orientation", crop.orientation); + keyFile.set_string ("Crop", "Orientation", crop.orientation); } if (!pedited || pedited->crop.guide) { - keyFile.set_string ("Crop", "Guide", crop.guide); + keyFile.set_string ("Crop", "Guide", crop.guide); } - // save coarse +// save coarse if (!pedited || pedited->coarse.rotate) { - keyFile.set_integer ("Coarse Transformation", "Rotate", coarse.rotate); + keyFile.set_integer ("Coarse Transformation", "Rotate", coarse.rotate); } if (!pedited || pedited->coarse.hflip) { @@ -2707,57 +2757,57 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->coarse.vflip) { - keyFile.set_boolean ("Coarse Transformation", "VerticalFlip", coarse.vflip); + keyFile.set_boolean ("Coarse Transformation", "VerticalFlip", coarse.vflip); } - // save commonTrans +// save commonTrans if (!pedited || pedited->commonTrans.autofill) { keyFile.set_boolean ("Common Properties for Transformations", "AutoFill", commonTrans.autofill); } - // save rotate +// save rotate if (!pedited || pedited->rotate.degree) { - keyFile.set_double ("Rotation", "Degree", rotate.degree); + keyFile.set_double ("Rotation", "Degree", rotate.degree); } - // save distortion +// save distortion if (!pedited || pedited->distortion.amount) { - keyFile.set_double ("Distortion", "Amount", distortion.amount); + keyFile.set_double ("Distortion", "Amount", distortion.amount); } - // lens profile +// lens profile if (!pedited || pedited->lensProf.lcpFile) { - keyFile.set_string ("LensProfile", "LCPFile", relativePathIfInside (fname, fnameAbsolute, lensProf.lcpFile)); + keyFile.set_string ("LensProfile", "LCPFile", relativePathIfInside (fname, fnameAbsolute, lensProf.lcpFile)); } if (!pedited || pedited->lensProf.useDist) { - keyFile.set_boolean ("LensProfile", "UseDistortion", lensProf.useDist); + keyFile.set_boolean ("LensProfile", "UseDistortion", lensProf.useDist); } if (!pedited || pedited->lensProf.useVign) { - keyFile.set_boolean ("LensProfile", "UseVignette", lensProf.useVign); + keyFile.set_boolean ("LensProfile", "UseVignette", lensProf.useVign); } if (!pedited || pedited->lensProf.useCA) { - keyFile.set_boolean ("LensProfile", "UseCA", lensProf.useCA); + keyFile.set_boolean ("LensProfile", "UseCA", lensProf.useCA); } - // save perspective correction +// save perspective correction if (!pedited || pedited->perspective.horizontal) { - keyFile.set_double ("Perspective", "Horizontal", perspective.horizontal); + keyFile.set_double ("Perspective", "Horizontal", perspective.horizontal); } if (!pedited || pedited->perspective.vertical) { - keyFile.set_double ("Perspective", "Vertical", perspective.vertical); + keyFile.set_double ("Perspective", "Vertical", perspective.vertical); } - // save gradient +// save gradient if (!pedited || pedited->gradient.enabled) { keyFile.set_boolean ("Gradient", "Enabled", gradient.enabled); } if (!pedited || pedited->gradient.degree) { - keyFile.set_double ("Gradient", "Degree", gradient.degree); + keyFile.set_double ("Gradient", "Degree", gradient.degree); } if (!pedited || pedited->gradient.feather) { @@ -2765,7 +2815,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->gradient.strength) { - keyFile.set_double ("Gradient", "Strength", gradient.strength); + keyFile.set_double ("Gradient", "Strength", gradient.strength); } if (!pedited || pedited->gradient.centerX) { @@ -3151,14 +3201,15 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_integer ("Locallab", "Rewei", locallab.rewei); } - - // save post-crop vignette + + +// save post-crop vignette if (!pedited || pedited->pcvignette.enabled) { keyFile.set_boolean ("PCVignette", "Enabled", pcvignette.enabled); } if (!pedited || pedited->pcvignette.strength) { - keyFile.set_double ("PCVignette", "Strength", pcvignette.strength); + keyFile.set_double ("PCVignette", "Strength", pcvignette.strength); } if (!pedited || pedited->pcvignette.feather) { @@ -3169,16 +3220,16 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_integer ("PCVignette", "Roundness", pcvignette.roundness); } - // save C/A correction +// save C/A correction if (!pedited || pedited->cacorrection.red) { - keyFile.set_double ("CACorrection", "Red", cacorrection.red); + keyFile.set_double ("CACorrection", "Red", cacorrection.red); } if (!pedited || pedited->cacorrection.blue) { - keyFile.set_double ("CACorrection", "Blue", cacorrection.blue); + keyFile.set_double ("CACorrection", "Blue", cacorrection.blue); } - // save vignetting correction +// save vignetting correction if (!pedited || pedited->vignetting.amount) { keyFile.set_integer ("Vignetting Correction", "Amount", vignetting.amount); } @@ -3205,23 +3256,23 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->resize.scale) { - keyFile.set_double ("Resize", "Scale", resize.scale); + keyFile.set_double ("Resize", "Scale", resize.scale); } if (!pedited || pedited->resize.appliesTo) { - keyFile.set_string ("Resize", "AppliesTo", resize.appliesTo); + keyFile.set_string ("Resize", "AppliesTo", resize.appliesTo); } if (!pedited || pedited->resize.method) { - keyFile.set_string ("Resize", "Method", resize.method); + keyFile.set_string ("Resize", "Method", resize.method); } if (!pedited || pedited->resize.dataspec) { - keyFile.set_integer ("Resize", "DataSpecified", resize.dataspec); + keyFile.set_integer ("Resize", "DataSpecified", resize.dataspec); } if (!pedited || pedited->resize.width) { - keyFile.set_integer ("Resize", "Width", resize.width); + keyFile.set_integer ("Resize", "Width", resize.width); } if (!pedited || pedited->resize.height) { @@ -3229,94 +3280,94 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->prsharpening.enabled) { - keyFile.set_boolean ("PostResizeSharpening", "Enabled", prsharpening.enabled); + keyFile.set_boolean ("PostResizeSharpening", "Enabled", prsharpening.enabled); } if (!pedited || pedited->prsharpening.method) { - keyFile.set_string ("PostResizeSharpening", "Method", prsharpening.method); + keyFile.set_string ("PostResizeSharpening", "Method", prsharpening.method); } if (!pedited || pedited->prsharpening.radius) { - keyFile.set_double ("PostResizeSharpening", "Radius", prsharpening.radius); + keyFile.set_double ("PostResizeSharpening", "Radius", prsharpening.radius); } if (!pedited || pedited->prsharpening.amount) { - keyFile.set_integer ("PostResizeSharpening", "Amount", prsharpening.amount); + keyFile.set_integer ("PostResizeSharpening", "Amount", prsharpening.amount); } if (!pedited || pedited->prsharpening.threshold) { Glib::ArrayHandle thresh (prsharpening.threshold.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("PostResizeSharpening", "Threshold", thresh); + keyFile.set_integer_list ("PostResizeSharpening", "Threshold", thresh); } if (!pedited || pedited->prsharpening.edgesonly) { - keyFile.set_boolean ("PostResizeSharpening", "OnlyEdges", prsharpening.edgesonly); + keyFile.set_boolean ("PostResizeSharpening", "OnlyEdges", prsharpening.edgesonly); } if (!pedited || pedited->prsharpening.edges_radius) { - keyFile.set_double ("PostResizeSharpening", "EdgedetectionRadius", prsharpening.edges_radius); + keyFile.set_double ("PostResizeSharpening", "EdgedetectionRadius", prsharpening.edges_radius); } if (!pedited || pedited->prsharpening.edges_tolerance) { - keyFile.set_integer ("PostResizeSharpening", "EdgeTolerance", prsharpening.edges_tolerance); + keyFile.set_integer ("PostResizeSharpening", "EdgeTolerance", prsharpening.edges_tolerance); } if (!pedited || pedited->prsharpening.halocontrol) { - keyFile.set_boolean ("PostResizeSharpening", "HalocontrolEnabled", prsharpening.halocontrol); + keyFile.set_boolean ("PostResizeSharpening", "HalocontrolEnabled", prsharpening.halocontrol); } if (!pedited || pedited->prsharpening.halocontrol_amount) { - keyFile.set_integer ("PostResizeSharpening", "HalocontrolAmount", prsharpening.halocontrol_amount); + keyFile.set_integer ("PostResizeSharpening", "HalocontrolAmount", prsharpening.halocontrol_amount); } if (!pedited || pedited->prsharpening.deconvradius) { - keyFile.set_double ("PostResizeSharpening", "DeconvRadius", prsharpening.deconvradius); + keyFile.set_double ("PostResizeSharpening", "DeconvRadius", prsharpening.deconvradius); } if (!pedited || pedited->prsharpening.deconvamount) { - keyFile.set_integer ("PostResizeSharpening", "DeconvAmount", prsharpening.deconvamount); + keyFile.set_integer ("PostResizeSharpening", "DeconvAmount", prsharpening.deconvamount); } if (!pedited || pedited->prsharpening.deconvdamping) { - keyFile.set_integer ("PostResizeSharpening", "DeconvDamping", prsharpening.deconvdamping); + keyFile.set_integer ("PostResizeSharpening", "DeconvDamping", prsharpening.deconvdamping); } if (!pedited || pedited->prsharpening.deconviter) { - keyFile.set_integer ("PostResizeSharpening", "DeconvIterations", prsharpening.deconviter); + keyFile.set_integer ("PostResizeSharpening", "DeconvIterations", prsharpening.deconviter); } - // save color management settings +// save color management settings if (!pedited || pedited->icm.input) { - keyFile.set_string ("Color Management", "InputProfile", relativePathIfInside (fname, fnameAbsolute, icm.input)); + keyFile.set_string ("Color Management", "InputProfile", relativePathIfInside (fname, fnameAbsolute, icm.input)); } if (!pedited || pedited->icm.toneCurve) { - keyFile.set_boolean ("Color Management", "ToneCurve", icm.toneCurve); + keyFile.set_boolean ("Color Management", "ToneCurve", icm.toneCurve); } if (!pedited || pedited->icm.applyLookTable) { - keyFile.set_boolean ("Color Management", "ApplyLookTable", icm.applyLookTable); + keyFile.set_boolean ("Color Management", "ApplyLookTable", icm.applyLookTable); } if (!pedited || pedited->icm.applyBaselineExposureOffset) { - keyFile.set_boolean ("Color Management", "ApplyBaselineExposureOffset", icm.applyBaselineExposureOffset); + keyFile.set_boolean ("Color Management", "ApplyBaselineExposureOffset", icm.applyBaselineExposureOffset); } if (!pedited || pedited->icm.applyHueSatMap) { - keyFile.set_boolean ("Color Management", "ApplyHueSatMap", icm.applyHueSatMap); + keyFile.set_boolean ("Color Management", "ApplyHueSatMap", icm.applyHueSatMap); } if (!pedited || pedited->icm.dcpIlluminant) { - keyFile.set_integer ("Color Management", "DCPIlluminant", icm.dcpIlluminant); + keyFile.set_integer ("Color Management", "DCPIlluminant", icm.dcpIlluminant); } if (!pedited || pedited->icm.working) { - keyFile.set_string ("Color Management", "WorkingProfile", icm.working); + keyFile.set_string ("Color Management", "WorkingProfile", icm.working); } if (!pedited || pedited->icm.output) { - keyFile.set_string ("Color Management", "OutputProfile", icm.output); + keyFile.set_string ("Color Management", "OutputProfile", icm.output); } if (!pedited || pedited->icm.outputIntent) { @@ -3341,32 +3392,32 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b break; } - keyFile.set_string ("Color Management", "OutputProfileIntent", intent); + keyFile.set_string ("Color Management", "OutputProfileIntent", intent); } if (!pedited || pedited->icm.outputBPC) { - keyFile.set_boolean ("Color Management", "OutputBPC", icm.outputBPC); + keyFile.set_boolean ("Color Management", "OutputBPC", icm.outputBPC); } if (!pedited || pedited->icm.gamma) { - keyFile.set_string ("Color Management", "Gammafree", icm.gamma); + keyFile.set_string ("Color Management", "Gammafree", icm.gamma); } if (!pedited || pedited->icm.freegamma) { - keyFile.set_boolean ("Color Management", "Freegamma", icm.freegamma); + keyFile.set_boolean ("Color Management", "Freegamma", icm.freegamma); } if (!pedited || pedited->icm.gampos) { - keyFile.set_double ("Color Management", "GammaValue", icm.gampos); + keyFile.set_double ("Color Management", "GammaValue", icm.gampos); } if (!pedited || pedited->icm.slpos) { - keyFile.set_double ("Color Management", "GammaSlope", icm.slpos); + keyFile.set_double ("Color Management", "GammaSlope", icm.slpos); } - // save wavelet parameters +// save wavelet parameters if (!pedited || pedited->wavelet.enabled) { keyFile.set_boolean ("Wavelet", "Enabled", wavelet.enabled); } @@ -3384,31 +3435,31 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->wavelet.thres) { - keyFile.set_integer ("Wavelet", "MaxLev", wavelet.thres); + keyFile.set_integer ("Wavelet", "MaxLev", wavelet.thres); } if (!pedited || pedited->wavelet.Tilesmethod) { - keyFile.set_string ("Wavelet", "TilesMethod", wavelet.Tilesmethod); + keyFile.set_string ("Wavelet", "TilesMethod", wavelet.Tilesmethod); } if (!pedited || pedited->wavelet.daubcoeffmethod) { - keyFile.set_string ("Wavelet", "DaubMethod", wavelet.daubcoeffmethod); + keyFile.set_string ("Wavelet", "DaubMethod", wavelet.daubcoeffmethod); } if (!pedited || pedited->wavelet.CLmethod) { - keyFile.set_string ("Wavelet", "ChoiceLevMethod", wavelet.CLmethod); + keyFile.set_string ("Wavelet", "ChoiceLevMethod", wavelet.CLmethod); } if (!pedited || pedited->wavelet.Backmethod) { - keyFile.set_string ("Wavelet", "BackMethod", wavelet.Backmethod); + keyFile.set_string ("Wavelet", "BackMethod", wavelet.Backmethod); } if (!pedited || pedited->wavelet.Lmethod) { - keyFile.set_string ("Wavelet", "LevMethod", wavelet.Lmethod); + keyFile.set_string ("Wavelet", "LevMethod", wavelet.Lmethod); } if (!pedited || pedited->wavelet.Dirmethod) { - keyFile.set_string ("Wavelet", "DirMethod", wavelet.Dirmethod); + keyFile.set_string ("Wavelet", "DirMethod", wavelet.Dirmethod); } if (!pedited || pedited->wavelet.greenhigh) { @@ -3482,126 +3533,126 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->wavelet.sup) { - keyFile.set_integer ("Wavelet", "ContExtra", wavelet.sup); + keyFile.set_integer ("Wavelet", "ContExtra", wavelet.sup); } if (!pedited || pedited->wavelet.HSmethod) { - keyFile.set_string ("Wavelet", "HSMethod", wavelet.HSmethod); + keyFile.set_string ("Wavelet", "HSMethod", wavelet.HSmethod); } if (!pedited || pedited->wavelet.hllev) { Glib::ArrayHandle thresh (wavelet.hllev.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "HLRange", thresh); + keyFile.set_integer_list ("Wavelet", "HLRange", thresh); } if (!pedited || pedited->wavelet.bllev) { Glib::ArrayHandle thresh (wavelet.bllev.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "SHRange", thresh); + keyFile.set_integer_list ("Wavelet", "SHRange", thresh); } if (!pedited || pedited->wavelet.edgcont) { Glib::ArrayHandle thresh (wavelet.edgcont.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "Edgcont", thresh); + keyFile.set_integer_list ("Wavelet", "Edgcont", thresh); } if (!pedited || pedited->wavelet.level0noise) { Glib::ArrayHandle thresh (wavelet.level0noise.value, 2, Glib::OWNERSHIP_NONE); - keyFile.set_double_list ("Wavelet", "Level0noise", thresh); + keyFile.set_double_list ("Wavelet", "Level0noise", thresh); } if (!pedited || pedited->wavelet.level1noise) { Glib::ArrayHandle thresh (wavelet.level1noise.value, 2, Glib::OWNERSHIP_NONE); - keyFile.set_double_list ("Wavelet", "Level1noise", thresh); + keyFile.set_double_list ("Wavelet", "Level1noise", thresh); } if (!pedited || pedited->wavelet.level2noise) { Glib::ArrayHandle thresh (wavelet.level2noise.value, 2, Glib::OWNERSHIP_NONE); - keyFile.set_double_list ("Wavelet", "Level2noise", thresh); + keyFile.set_double_list ("Wavelet", "Level2noise", thresh); } if (!pedited || pedited->wavelet.level3noise) { Glib::ArrayHandle thresh (wavelet.level3noise.value, 2, Glib::OWNERSHIP_NONE); - keyFile.set_double_list ("Wavelet", "Level3noise", thresh); + keyFile.set_double_list ("Wavelet", "Level3noise", thresh); } if (!pedited || pedited->wavelet.threshold) { - keyFile.set_integer ("Wavelet", "ThresholdHighlight", wavelet.threshold); + keyFile.set_integer ("Wavelet", "ThresholdHighlight", wavelet.threshold); } if (!pedited || pedited->wavelet.threshold2) { - keyFile.set_integer ("Wavelet", "ThresholdShadow", wavelet.threshold2); + keyFile.set_integer ("Wavelet", "ThresholdShadow", wavelet.threshold2); } if (!pedited || pedited->wavelet.edgedetect) { - keyFile.set_integer ("Wavelet", "Edgedetect", wavelet.edgedetect); + keyFile.set_integer ("Wavelet", "Edgedetect", wavelet.edgedetect); } if (!pedited || pedited->wavelet.edgedetectthr) { - keyFile.set_integer ("Wavelet", "Edgedetectthr", wavelet.edgedetectthr); + keyFile.set_integer ("Wavelet", "Edgedetectthr", wavelet.edgedetectthr); } if (!pedited || pedited->wavelet.edgedetectthr2) { - keyFile.set_integer ("Wavelet", "EdgedetectthrHi", wavelet.edgedetectthr2); + keyFile.set_integer ("Wavelet", "EdgedetectthrHi", wavelet.edgedetectthr2); } if (!pedited || pedited->wavelet.edgesensi) { - keyFile.set_integer ("Wavelet", "Edgesensi", wavelet.edgesensi); + keyFile.set_integer ("Wavelet", "Edgesensi", wavelet.edgesensi); } if (!pedited || pedited->wavelet.edgeampli) { - keyFile.set_integer ("Wavelet", "Edgeampli", wavelet.edgeampli); + keyFile.set_integer ("Wavelet", "Edgeampli", wavelet.edgeampli); } if (!pedited || pedited->wavelet.chroma) { - keyFile.set_integer ("Wavelet", "ThresholdChroma", wavelet.chroma); + keyFile.set_integer ("Wavelet", "ThresholdChroma", wavelet.chroma); } if (!pedited || pedited->wavelet.CHmethod) { - keyFile.set_string ("Wavelet", "CHromaMethod", wavelet.CHmethod); + keyFile.set_string ("Wavelet", "CHromaMethod", wavelet.CHmethod); } if (!pedited || pedited->wavelet.Medgreinf) { - keyFile.set_string ("Wavelet", "Medgreinf", wavelet.Medgreinf); + keyFile.set_string ("Wavelet", "Medgreinf", wavelet.Medgreinf); } if (!pedited || pedited->wavelet.CHSLmethod) { - keyFile.set_string ("Wavelet", "CHSLromaMethod", wavelet.CHSLmethod); + keyFile.set_string ("Wavelet", "CHSLromaMethod", wavelet.CHSLmethod); } if (!pedited || pedited->wavelet.EDmethod) { - keyFile.set_string ("Wavelet", "EDMethod", wavelet.EDmethod); + keyFile.set_string ("Wavelet", "EDMethod", wavelet.EDmethod); } if (!pedited || pedited->wavelet.NPmethod) { - keyFile.set_string ("Wavelet", "NPMethod", wavelet.NPmethod); + keyFile.set_string ("Wavelet", "NPMethod", wavelet.NPmethod); } if (!pedited || pedited->wavelet.BAmethod) { - keyFile.set_string ("Wavelet", "BAMethod", wavelet.BAmethod); + keyFile.set_string ("Wavelet", "BAMethod", wavelet.BAmethod); } if (!pedited || pedited->wavelet.TMmethod) { - keyFile.set_string ("Wavelet", "TMMethod", wavelet.TMmethod); + keyFile.set_string ("Wavelet", "TMMethod", wavelet.TMmethod); } if (!pedited || pedited->wavelet.chro) { - keyFile.set_integer ("Wavelet", "ChromaLink", wavelet.chro); + keyFile.set_integer ("Wavelet", "ChromaLink", wavelet.chro); } - if (!pedited || pedited->wavelet.ccwcurve) { + if (!pedited || pedited->wavelet.ccwcurve) { Glib::ArrayHandle ccwcurve = wavelet.ccwcurve; keyFile.set_double_list ("Wavelet", "ContrastCurve", ccwcurve); } if (!pedited || pedited->wavelet.pastlev) { Glib::ArrayHandle thresh (wavelet.pastlev.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "Pastlev", thresh); + keyFile.set_integer_list ("Wavelet", "Pastlev", thresh); } if (!pedited || pedited->wavelet.satlev) { Glib::ArrayHandle thresh (wavelet.satlev.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "Satlev", thresh); + keyFile.set_integer_list ("Wavelet", "Satlev", thresh); } if (!pedited || pedited->wavelet.opacityCurveRG) { @@ -3634,7 +3685,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double_list ("Wavelet", "CHcurve", curve); } - if (!pedited || pedited->wavelet.wavclCurve) { + if (!pedited || pedited->wavelet.wavclCurve) { Glib::ArrayHandle wavclCurve = wavelet.wavclCurve; keyFile.set_double_list ("Wavelet", "WavclCurve", wavclCurve); } @@ -3660,30 +3711,30 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_boolean ("Wavelet", "Lipst", wavelet.lipst); } -// if (!pedited || pedited->wavelet.edgreinf) keyFile.set_boolean ("Wavelet", "Edgreinf", wavelet.edgreinf); +// if (!pedited || pedited->wavelet.edgreinf) keyFile.set_boolean ("Wavelet", "Edgreinf", wavelet.edgreinf); if (!pedited || pedited->wavelet.skinprotect) { keyFile.set_double ("Wavelet", "Skinprotect", wavelet.skinprotect); } if (!pedited || pedited->wavelet.hueskin) { Glib::ArrayHandle thresh (wavelet.hueskin.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "Hueskin", thresh); + keyFile.set_integer_list ("Wavelet", "Hueskin", thresh); } if (!pedited || pedited->wavelet.edgrad) { - keyFile.set_integer ("Wavelet", "Edgrad", wavelet.edgrad); + keyFile.set_integer ("Wavelet", "Edgrad", wavelet.edgrad); } if (!pedited || pedited->wavelet.edgval) { - keyFile.set_integer ("Wavelet", "Edgval", wavelet.edgval); + keyFile.set_integer ("Wavelet", "Edgval", wavelet.edgval); } if (!pedited || pedited->wavelet.edgthresh) { - keyFile.set_integer ("Wavelet", "ThrEdg", wavelet.edgthresh); + keyFile.set_integer ("Wavelet", "ThrEdg", wavelet.edgthresh); } -// if (!pedited || pedited->wavelet.strength) keyFile.set_integer ("Wavelet", "Strength", wavelet.strength); - // if (!pedited || pedited->wavelet.balance) keyFile.set_integer ("Wavelet", "Balance", wavelet.balance); +// if (!pedited || pedited->wavelet.strength) keyFile.set_integer ("Wavelet", "Strength", wavelet.strength); +// if (!pedited || pedited->wavelet.balance) keyFile.set_integer ("Wavelet", "Balance", wavelet.balance); if (!pedited || pedited->wavelet.avoid) { keyFile.set_boolean ("Wavelet", "AvoidColorShift", wavelet.avoid); @@ -3694,48 +3745,48 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->wavelet.rescon) { - keyFile.set_integer ("Wavelet", "ResidualcontShadow", wavelet.rescon); + keyFile.set_integer ("Wavelet", "ResidualcontShadow", wavelet.rescon); } if (!pedited || pedited->wavelet.resconH) { - keyFile.set_integer ("Wavelet", "ResidualcontHighlight", wavelet.resconH); + keyFile.set_integer ("Wavelet", "ResidualcontHighlight", wavelet.resconH); } if (!pedited || pedited->wavelet.thr) { - keyFile.set_integer ("Wavelet", "ThresholdResidShadow", wavelet.thr); + keyFile.set_integer ("Wavelet", "ThresholdResidShadow", wavelet.thr); } if (!pedited || pedited->wavelet.thrH) { - keyFile.set_integer ("Wavelet", "ThresholdResidHighLight", wavelet.thrH); + keyFile.set_integer ("Wavelet", "ThresholdResidHighLight", wavelet.thrH); } if (!pedited || pedited->wavelet.reschro) { - keyFile.set_integer ("Wavelet", "Residualchroma", wavelet.reschro); + keyFile.set_integer ("Wavelet", "Residualchroma", wavelet.reschro); } if (!pedited || pedited->wavelet.tmrs) { - keyFile.set_double ("Wavelet", "ResidualTM", wavelet.tmrs); + keyFile.set_double ("Wavelet", "ResidualTM", wavelet.tmrs); } if (!pedited || pedited->wavelet.gamma) { - keyFile.set_double ("Wavelet", "Residualgamma", wavelet.gamma); + keyFile.set_double ("Wavelet", "Residualgamma", wavelet.gamma); } if (!pedited || pedited->wavelet.sky) { - keyFile.set_double ("Wavelet", "HueRangeResidual", wavelet.sky); + keyFile.set_double ("Wavelet", "HueRangeResidual", wavelet.sky); } if (!pedited || pedited->wavelet.hueskin2) { Glib::ArrayHandle thresh (wavelet.hueskin2.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Wavelet", "HueRange", thresh); + keyFile.set_integer_list ("Wavelet", "HueRange", thresh); } if (!pedited || pedited->wavelet.contrast) { - keyFile.set_integer ("Wavelet", "Contrast", wavelet.contrast); + keyFile.set_integer ("Wavelet", "Contrast", wavelet.contrast); } - // save directional pyramid wavelet parameters +// save directional pyramid wavelet parameters if (!pedited || pedited->dirpyrequalizer.enabled) { keyFile.set_boolean ("Directional Pyramid Equalizer", "Enabled", dirpyrequalizer.enabled); } @@ -3745,7 +3796,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->dirpyrequalizer.cbdlMethod) { - keyFile.set_string ("Directional Pyramid Equalizer", "cbdlMethod", dirpyrequalizer.cbdlMethod); + keyFile.set_string ("Directional Pyramid Equalizer", "cbdlMethod", dirpyrequalizer.cbdlMethod); } for (int i = 0; i < 6; i++) { @@ -3765,13 +3816,13 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double ("Directional Pyramid Equalizer", "Skinprotect", dirpyrequalizer.skinprotect); } - // if (!pedited || pedited->dirpyrequalizer.algo) keyFile.set_string ("Directional Pyramid Equalizer", "Algorithm", dirpyrequalizer.algo); +// if (!pedited || pedited->dirpyrequalizer.algo) keyFile.set_string ("Directional Pyramid Equalizer", "Algorithm", dirpyrequalizer.algo); if (!pedited || pedited->dirpyrequalizer.hueskin) { Glib::ArrayHandle thresh (dirpyrequalizer.hueskin.value, 4, Glib::OWNERSHIP_NONE); - keyFile.set_integer_list ("Directional Pyramid Equalizer", "Hueskin", thresh); + keyFile.set_integer_list ("Directional Pyramid Equalizer", "Hueskin", thresh); } - // save hsv wavelet parameters +// save hsv wavelet parameters if (!pedited || pedited->hsvequalizer.hcurve) { Glib::ArrayHandle hcurve = hsvequalizer.hcurve; keyFile.set_double_list ("HSV Equalizer", "HCurve", hcurve); @@ -3787,7 +3838,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double_list ("HSV Equalizer", "VCurve", vcurve); } - //save film simulation parameters +//save film simulation parameters if ( !pedited || pedited->filmSimulation.enabled ) { keyFile.set_boolean ( "Film Simulation", "Enabled", filmSimulation.enabled ); } @@ -3802,7 +3853,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b if (!pedited || pedited->rgbCurves.lumamode) { - keyFile.set_boolean ("RGB Curves", "LumaMode", rgbCurves.lumamode); + keyFile.set_boolean ("RGB Curves", "LumaMode", rgbCurves.lumamode); } if (!pedited || pedited->rgbCurves.rcurve) { @@ -3820,13 +3871,13 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_double_list ("RGB Curves", "bCurve", RGBbcurve); } - // save Color Toning +// save Color Toning if (!pedited || pedited->colorToning.enabled) { keyFile.set_boolean ("ColorToning", "Enabled", colorToning.enabled); } if (!pedited || pedited->colorToning.method) { - keyFile.set_string ("ColorToning", "Method", colorToning.method); + keyFile.set_string ("ColorToning", "Method", colorToning.method); } if (!pedited || pedited->colorToning.lumamode) { @@ -3834,23 +3885,23 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->colorToning.twocolor) { - keyFile.set_string ("ColorToning", "Twocolor", colorToning.twocolor); + keyFile.set_string ("ColorToning", "Twocolor", colorToning.twocolor); } if (!pedited || pedited->colorToning.redlow) { - keyFile.set_double ("ColorToning", "Redlow", colorToning.redlow); + keyFile.set_double ("ColorToning", "Redlow", colorToning.redlow); } if (!pedited || pedited->colorToning.greenlow) { - keyFile.set_double ("ColorToning", "Greenlow", colorToning.greenlow); + keyFile.set_double ("ColorToning", "Greenlow", colorToning.greenlow); } if (!pedited || pedited->colorToning.bluelow) { - keyFile.set_double ("ColorToning", "Bluelow", colorToning.bluelow); + keyFile.set_double ("ColorToning", "Bluelow", colorToning.bluelow); } if (!pedited || pedited->colorToning.satlow) { - keyFile.set_double ("ColorToning", "Satlow", colorToning.satlow); + keyFile.set_double ("ColorToning", "Satlow", colorToning.satlow); } if (!pedited || pedited->colorToning.balance) { @@ -3858,31 +3909,31 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->colorToning.sathigh) { - keyFile.set_double ("ColorToning", "Sathigh", colorToning.sathigh); + keyFile.set_double ("ColorToning", "Sathigh", colorToning.sathigh); } if (!pedited || pedited->colorToning.redmed) { - keyFile.set_double ("ColorToning", "Redmed", colorToning.redmed); + keyFile.set_double ("ColorToning", "Redmed", colorToning.redmed); } if (!pedited || pedited->colorToning.greenmed) { - keyFile.set_double ("ColorToning", "Greenmed", colorToning.greenmed); + keyFile.set_double ("ColorToning", "Greenmed", colorToning.greenmed); } if (!pedited || pedited->colorToning.bluemed) { - keyFile.set_double ("ColorToning", "Bluemed", colorToning.bluemed); + keyFile.set_double ("ColorToning", "Bluemed", colorToning.bluemed); } if (!pedited || pedited->colorToning.redhigh) { - keyFile.set_double ("ColorToning", "Redhigh", colorToning.redhigh); + keyFile.set_double ("ColorToning", "Redhigh", colorToning.redhigh); } if (!pedited || pedited->colorToning.greenhigh) { - keyFile.set_double ("ColorToning", "Greenhigh", colorToning.greenhigh); + keyFile.set_double ("ColorToning", "Greenhigh", colorToning.greenhigh); } if (!pedited || pedited->colorToning.bluehigh) { - keyFile.set_double ("ColorToning", "Bluehigh", colorToning.bluehigh); + keyFile.set_double ("ColorToning", "Bluehigh", colorToning.bluehigh); } if (!pedited || pedited->colorToning.autosat) { @@ -3921,19 +3972,19 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b keyFile.set_integer_list ("ColorToning", "ShadowsColorSaturation", thresh); } - if (!pedited || pedited->colorToning.clcurve) { + if (!pedited || pedited->colorToning.clcurve) { Glib::ArrayHandle clcurve = colorToning.clcurve; keyFile.set_double_list ("ColorToning", "ClCurve", clcurve); } - if (!pedited || pedited->colorToning.cl2curve) { + if (!pedited || pedited->colorToning.cl2curve) { Glib::ArrayHandle cl2curve = colorToning.cl2curve; keyFile.set_double_list ("ColorToning", "Cl2Curve", cl2curve); } - // save raw parameters +// save raw parameters if (!pedited || pedited->raw.darkFrame) { - keyFile.set_string ("RAW", "DarkFrame", relativePathIfInside (fname, fnameAbsolute, raw.dark_frame) ); + keyFile.set_string ("RAW", "DarkFrame", relativePathIfInside (fname, fnameAbsolute, raw.dark_frame) ); } if (!pedited || pedited->raw.dfAuto) { @@ -3941,7 +3992,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.ff_file) { - keyFile.set_string ("RAW", "FlatFieldFile", relativePathIfInside (fname, fnameAbsolute, raw.ff_file) ); + keyFile.set_string ("RAW", "FlatFieldFile", relativePathIfInside (fname, fnameAbsolute, raw.ff_file) ); } if (!pedited || pedited->raw.ff_AutoSelect) { @@ -3953,7 +4004,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.ff_BlurType) { - keyFile.set_string ("RAW", "FlatFieldBlurType", raw.ff_BlurType ); + keyFile.set_string ("RAW", "FlatFieldBlurType", raw.ff_BlurType ); } if (!pedited || pedited->raw.ff_AutoClipControl) { @@ -3969,11 +4020,11 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.caRed) { - keyFile.set_double ("RAW", "CARed", raw.cared ); + keyFile.set_double ("RAW", "CARed", raw.cared ); } if (!pedited || pedited->raw.caBlue) { - keyFile.set_double ("RAW", "CABlue", raw.cablue ); + keyFile.set_double ("RAW", "CABlue", raw.cablue ); } if (!pedited || pedited->raw.hotPixelFilter) { @@ -3989,7 +4040,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.bayersensor.method) { - keyFile.set_string ("RAW Bayer", "Method", raw.bayersensor.method ); + keyFile.set_string ("RAW Bayer", "Method", raw.bayersensor.method ); } if (!pedited || pedited->raw.bayersensor.imageNum) { @@ -4001,19 +4052,19 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.bayersensor.exBlack0) { - keyFile.set_double ("RAW Bayer", "PreBlack0", raw.bayersensor.black0 ); + keyFile.set_double ("RAW Bayer", "PreBlack0", raw.bayersensor.black0 ); } if (!pedited || pedited->raw.bayersensor.exBlack1) { - keyFile.set_double ("RAW Bayer", "PreBlack1", raw.bayersensor.black1 ); + keyFile.set_double ("RAW Bayer", "PreBlack1", raw.bayersensor.black1 ); } if (!pedited || pedited->raw.bayersensor.exBlack2) { - keyFile.set_double ("RAW Bayer", "PreBlack2", raw.bayersensor.black2 ); + keyFile.set_double ("RAW Bayer", "PreBlack2", raw.bayersensor.black2 ); } if (!pedited || pedited->raw.bayersensor.exBlack3) { - keyFile.set_double ("RAW Bayer", "PreBlack3", raw.bayersensor.black3 ); + keyFile.set_double ("RAW Bayer", "PreBlack3", raw.bayersensor.black3 ); } if (!pedited || pedited->raw.bayersensor.exTwoGreen) { @@ -4161,7 +4212,7 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.xtranssensor.method) { - keyFile.set_string ("RAW X-Trans", "Method", raw.xtranssensor.method ); + keyFile.set_string ("RAW X-Trans", "Method", raw.xtranssensor.method ); } if (!pedited || pedited->raw.xtranssensor.ccSteps) { @@ -4169,35 +4220,35 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b } if (!pedited || pedited->raw.xtranssensor.exBlackRed) { - keyFile.set_double ("RAW X-Trans", "PreBlackRed", raw.xtranssensor.blackred ); + keyFile.set_double ("RAW X-Trans", "PreBlackRed", raw.xtranssensor.blackred ); } if (!pedited || pedited->raw.xtranssensor.exBlackGreen) { - keyFile.set_double ("RAW X-Trans", "PreBlackGreen", raw.xtranssensor.blackgreen ); + keyFile.set_double ("RAW X-Trans", "PreBlackGreen", raw.xtranssensor.blackgreen ); } if (!pedited || pedited->raw.xtranssensor.exBlackBlue) { - keyFile.set_double ("RAW X-Trans", "PreBlackBlue", raw.xtranssensor.blackblue ); + keyFile.set_double ("RAW X-Trans", "PreBlackBlue", raw.xtranssensor.blackblue ); } - // save raw exposition +// save raw exposition if (!pedited || pedited->raw.exPos) { - keyFile.set_double ("RAW", "PreExposure", raw.expos ); + keyFile.set_double ("RAW", "PreExposure", raw.expos ); } if (!pedited || pedited->raw.exPreser) { - keyFile.set_double ("RAW", "PrePreserv", raw.preser ); + keyFile.set_double ("RAW", "PrePreserv", raw.preser ); } - // save exif change list +// save exif change list if (!pedited || pedited->exif) { for (ExifPairs::const_iterator i = exif.begin(); i != exif.end(); ++i) { keyFile.set_string ("Exif", i->first, i->second); } } - // save iptc change list +// save iptc change list if (!pedited || pedited->iptc) { for (IPTCPairs::const_iterator i = iptc.begin(); i != iptc.end(); ++i) { Glib::ArrayHandle values = i->second; @@ -4290,24 +4341,24 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) if (keyFile.has_group ("Version")) { if (keyFile.has_key ("Version", "AppVersion")) { - appVersion = keyFile.get_string ("Version", "AppVersion"); + appVersion = keyFile.get_string ("Version", "AppVersion"); } if (keyFile.has_key ("Version", "Version")) { - ppVersion = keyFile.get_integer ("Version", "Version"); + ppVersion = keyFile.get_integer ("Version", "Version"); } } if (keyFile.has_group ("General")) { - if (keyFile.has_key ("General", "Rank")) { - rank = keyFile.get_integer ("General", "Rank"); + if (keyFile.has_key ("General", "Rank")) { + rank = keyFile.get_integer ("General", "Rank"); if (pedited) { pedited->general.rank = true; } } - if (keyFile.has_key ("General", "ColorLabel")) { + if (keyFile.has_key ("General", "ColorLabel")) { colorlabel = keyFile.get_integer ("General", "ColorLabel"); if (pedited) { @@ -4315,8 +4366,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("General", "InTrash")) { - inTrash = keyFile.get_boolean ("General", "InTrash"); + if (keyFile.has_key ("General", "InTrash")) { + inTrash = keyFile.get_boolean ("General", "InTrash"); if (pedited) { pedited->general.intrash = true; @@ -4326,57 +4377,57 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) if (keyFile.has_group ("Exposure")) { if (ppVersion < PPVERSION_AEXP) { - toneCurve.autoexp = false; // prevent execution of autoexp when opening file created with earlier verions of autoexp algorithm - } else if (keyFile.has_key ("Exposure", "Auto")) { - toneCurve.autoexp = keyFile.get_boolean ("Exposure", "Auto"); + toneCurve.autoexp = false; // prevent execution of autoexp when opening file created with earlier verions of autoexp algorithm + } else if (keyFile.has_key ("Exposure", "Auto")) { + toneCurve.autoexp = keyFile.get_boolean ("Exposure", "Auto"); if (pedited) { pedited->toneCurve.autoexp = true; } } - if (keyFile.has_key ("Exposure", "Clip")) { - toneCurve.clip = keyFile.get_double ("Exposure", "Clip"); + if (keyFile.has_key ("Exposure", "Clip")) { + toneCurve.clip = keyFile.get_double ("Exposure", "Clip"); if (pedited) { pedited->toneCurve.clip = true; } } - if (keyFile.has_key ("Exposure", "Compensation")) { - toneCurve.expcomp = keyFile.get_double ("Exposure", "Compensation"); + if (keyFile.has_key ("Exposure", "Compensation")) { + toneCurve.expcomp = keyFile.get_double ("Exposure", "Compensation"); if (pedited) { pedited->toneCurve.expcomp = true; } } - if (keyFile.has_key ("Exposure", "Brightness")) { - toneCurve.brightness = keyFile.get_integer ("Exposure", "Brightness"); + if (keyFile.has_key ("Exposure", "Brightness")) { + toneCurve.brightness = keyFile.get_integer ("Exposure", "Brightness"); if (pedited) { pedited->toneCurve.brightness = true; } } - if (keyFile.has_key ("Exposure", "Contrast")) { - toneCurve.contrast = keyFile.get_integer ("Exposure", "Contrast"); + if (keyFile.has_key ("Exposure", "Contrast")) { + toneCurve.contrast = keyFile.get_integer ("Exposure", "Contrast"); if (pedited) { pedited->toneCurve.contrast = true; } } - if (keyFile.has_key ("Exposure", "Saturation")) { - toneCurve.saturation = keyFile.get_integer ("Exposure", "Saturation"); + if (keyFile.has_key ("Exposure", "Saturation")) { + toneCurve.saturation = keyFile.get_integer ("Exposure", "Saturation"); if (pedited) { pedited->toneCurve.saturation = true; } } - if (keyFile.has_key ("Exposure", "Black")) { - toneCurve.black = keyFile.get_integer ("Exposure", "Black"); + if (keyFile.has_key ("Exposure", "Black")) { + toneCurve.black = keyFile.get_integer ("Exposure", "Black"); if (pedited) { pedited->toneCurve.black = true; @@ -4384,7 +4435,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Exposure", "HighlightCompr")) { - toneCurve.hlcompr = keyFile.get_integer ("Exposure", "HighlightCompr"); + toneCurve.hlcompr = keyFile.get_integer ("Exposure", "HighlightCompr"); if (pedited) { pedited->toneCurve.hlcompr = true; @@ -4399,23 +4450,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Exposure", "ShadowCompr")) { - toneCurve.shcompr = keyFile.get_integer ("Exposure", "ShadowCompr"); + if (keyFile.has_key ("Exposure", "ShadowCompr")) { + toneCurve.shcompr = keyFile.get_integer ("Exposure", "ShadowCompr"); if (pedited) { pedited->toneCurve.shcompr = true; } } - // load highlight recovery settings +// load highlight recovery settings if (toneCurve.shcompr > 100) { - toneCurve.shcompr = 100; // older pp3 files can have values above 100. + toneCurve.shcompr = 100; // older pp3 files can have values above 100. } - if (keyFile.has_key ("Exposure", "CurveMode")) { + if (keyFile.has_key ("Exposure", "CurveMode")) { Glib::ustring sMode = keyFile.get_string ("Exposure", "CurveMode"); - if (sMode == "Standard") { + if (sMode == "Standard") { toneCurve.curveMode = ToneCurveParams::TC_MODE_STD; } else if (sMode == "FilmLike") { toneCurve.curveMode = ToneCurveParams::TC_MODE_FILMLIKE; @@ -4434,10 +4485,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Exposure", "CurveMode2")) { + if (keyFile.has_key ("Exposure", "CurveMode2")) { Glib::ustring sMode = keyFile.get_string ("Exposure", "CurveMode2"); - if (sMode == "Standard") { + if (sMode == "Standard") { toneCurve.curveMode2 = ToneCurveParams::TC_MODE_STD; } else if (sMode == "FilmLike") { toneCurve.curveMode2 = ToneCurveParams::TC_MODE_FILMLIKE; @@ -4457,16 +4508,18 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (ppVersion > 200) { - if (keyFile.has_key ("Exposure", "Curve")) { - toneCurve.curve = keyFile.get_double_list ("Exposure", "Curve"); + if (keyFile.has_key ("Exposure", "Curve")) { + toneCurve.curve = keyFile.get_double_list ("Exposure", "Curve"); + avoidEmptyCurve (toneCurve.curve); if (pedited) { pedited->toneCurve.curve = true; } } - if (keyFile.has_key ("Exposure", "Curve2")) { - toneCurve.curve2 = keyFile.get_double_list ("Exposure", "Curve2"); + if (keyFile.has_key ("Exposure", "Curve2")) { + toneCurve.curve2 = keyFile.get_double_list ("Exposure", "Curve2"); + avoidEmptyCurve (toneCurve.curve2); if (pedited) { pedited->toneCurve.curve2 = true; @@ -4475,21 +4528,17 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - - - - if (keyFile.has_group ("HLRecovery")) { - if (keyFile.has_key ("HLRecovery", "Enabled")) { - toneCurve.hrenabled = keyFile.get_boolean ("HLRecovery", "Enabled"); + if (keyFile.has_key ("HLRecovery", "Enabled")) { + toneCurve.hrenabled = keyFile.get_boolean ("HLRecovery", "Enabled"); if (pedited) { pedited->toneCurve.hrenabled = true; } } - if (keyFile.has_key ("HLRecovery", "Method")) { - toneCurve.method = keyFile.get_string ("HLRecovery", "Method"); + if (keyFile.has_key ("HLRecovery", "Method")) { + toneCurve.method = keyFile.get_string ("HLRecovery", "Method"); if (pedited) { pedited->toneCurve.method = true; @@ -4497,7 +4546,6 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load Local Lab if (keyFile.has_group ("Locallab")) { if (keyFile.has_key ("Locallab", "Enabled")) { @@ -5223,7 +5271,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - + // load channel mixer curve if (keyFile.has_group ("Channel Mixer")) { if (keyFile.has_key ("Channel Mixer", "Red") && keyFile.has_key ("Channel Mixer", "Green") && keyFile.has_key ("Channel Mixer", "Blue")) { @@ -5232,39 +5280,39 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) const std::vector bmix = keyFile.get_integer_list ("Channel Mixer", "Blue"); if (rmix.size() == 3 && gmix.size() == 3 && bmix.size() == 3) { - memcpy (chmixer.red, rmix.data(), 3 * sizeof (int)); + memcpy (chmixer.red, rmix.data(), 3 * sizeof (int)); memcpy (chmixer.green, gmix.data(), 3 * sizeof (int)); - memcpy (chmixer.blue, bmix.data(), 3 * sizeof (int)); + memcpy (chmixer.blue, bmix.data(), 3 * sizeof (int)); } if (pedited) { - pedited->chmixer.red[0] = pedited->chmixer.red[1] = pedited->chmixer.red[2] = true; + pedited->chmixer.red[0] = pedited->chmixer.red[1] = pedited->chmixer.red[2] = true; pedited->chmixer.green[0] = pedited->chmixer.green[1] = pedited->chmixer.green[2] = true; - pedited->chmixer.blue[0] = pedited->chmixer.blue[1] = pedited->chmixer.blue[2] = true; + pedited->chmixer.blue[0] = pedited->chmixer.blue[1] = pedited->chmixer.blue[2] = true; } } } - // load black & white +// load black & white if (keyFile.has_group ("Black & White")) { - if (keyFile.has_key ("Black & White", "Enabled")) { - blackwhite.enabled = keyFile.get_boolean ("Black & White", "Enabled"); + if (keyFile.has_key ("Black & White", "Enabled")) { + blackwhite.enabled = keyFile.get_boolean ("Black & White", "Enabled"); if (pedited) { pedited->blackwhite.enabled = true; } } - if (keyFile.has_key ("Black & White", "Method")) { - blackwhite.method = keyFile.get_string ("Black & White", "Method"); + if (keyFile.has_key ("Black & White", "Method")) { + blackwhite.method = keyFile.get_string ("Black & White", "Method"); if (pedited) { pedited->blackwhite.method = true; } } - if (keyFile.has_key ("Black & White", "Auto")) { - blackwhite.autoc = keyFile.get_boolean ("Black & White", "Auto"); + if (keyFile.has_key ("Black & White", "Auto")) { + blackwhite.autoc = keyFile.get_boolean ("Black & White", "Auto"); if (pedited) { pedited->blackwhite.autoc = true; @@ -5272,62 +5320,62 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Black & White", "ComplementaryColors")) { - blackwhite.enabledcc = keyFile.get_boolean ("Black & White", "ComplementaryColors"); + blackwhite.enabledcc = keyFile.get_boolean ("Black & White", "ComplementaryColors"); if (pedited) { pedited->blackwhite.enabledcc = true; } } - if (keyFile.has_key ("Black & White", "MixerRed")) { - blackwhite.mixerRed = keyFile.get_integer ("Black & White", "MixerRed"); + if (keyFile.has_key ("Black & White", "MixerRed")) { + blackwhite.mixerRed = keyFile.get_integer ("Black & White", "MixerRed"); if (pedited) { pedited->blackwhite.mixerRed = true; } } - if (keyFile.has_key ("Black & White", "MixerOrange")) { - blackwhite.mixerOrange = keyFile.get_integer ("Black & White", "MixerOrange"); + if (keyFile.has_key ("Black & White", "MixerOrange")) { + blackwhite.mixerOrange = keyFile.get_integer ("Black & White", "MixerOrange"); if (pedited) { pedited->blackwhite.mixerOrange = true; } } - if (keyFile.has_key ("Black & White", "MixerYellow")) { - blackwhite.mixerYellow = keyFile.get_integer ("Black & White", "MixerYellow"); + if (keyFile.has_key ("Black & White", "MixerYellow")) { + blackwhite.mixerYellow = keyFile.get_integer ("Black & White", "MixerYellow"); if (pedited) { pedited->blackwhite.mixerYellow = true; } } - if (keyFile.has_key ("Black & White", "MixerGreen")) { - blackwhite.mixerGreen = keyFile.get_integer ("Black & White", "MixerGreen"); + if (keyFile.has_key ("Black & White", "MixerGreen")) { + blackwhite.mixerGreen = keyFile.get_integer ("Black & White", "MixerGreen"); if (pedited) { pedited->blackwhite.mixerGreen = true; } } - if (keyFile.has_key ("Black & White", "MixerCyan")) { - blackwhite.mixerCyan = keyFile.get_integer ("Black & White", "MixerCyan"); + if (keyFile.has_key ("Black & White", "MixerCyan")) { + blackwhite.mixerCyan = keyFile.get_integer ("Black & White", "MixerCyan"); if (pedited) { pedited->blackwhite.mixerCyan = true; } } - if (keyFile.has_key ("Black & White", "MixerBlue")) { - blackwhite.mixerBlue = keyFile.get_integer ("Black & White", "MixerBlue"); + if (keyFile.has_key ("Black & White", "MixerBlue")) { + blackwhite.mixerBlue = keyFile.get_integer ("Black & White", "MixerBlue"); if (pedited) { pedited->blackwhite.mixerBlue = true; } } - if (keyFile.has_key ("Black & White", "MixerMagenta")) { + if (keyFile.has_key ("Black & White", "MixerMagenta")) { blackwhite.mixerMagenta = keyFile.get_integer ("Black & White", "MixerMagenta"); if (pedited) { @@ -5335,55 +5383,55 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Black & White", "MixerPurple")) { - blackwhite.mixerPurple = keyFile.get_integer ("Black & White", "MixerPurple"); + if (keyFile.has_key ("Black & White", "MixerPurple")) { + blackwhite.mixerPurple = keyFile.get_integer ("Black & White", "MixerPurple"); if (pedited) { pedited->blackwhite.mixerPurple = true; } } - if (keyFile.has_key ("Black & White", "GammaRed")) { - blackwhite.gammaRed = keyFile.get_integer ("Black & White", "GammaRed"); + if (keyFile.has_key ("Black & White", "GammaRed")) { + blackwhite.gammaRed = keyFile.get_integer ("Black & White", "GammaRed"); if (pedited) { pedited->blackwhite.gammaRed = true; } } - if (keyFile.has_key ("Black & White", "GammaGreen")) { - blackwhite.gammaGreen = keyFile.get_integer ("Black & White", "GammaGreen"); + if (keyFile.has_key ("Black & White", "GammaGreen")) { + blackwhite.gammaGreen = keyFile.get_integer ("Black & White", "GammaGreen"); if (pedited) { pedited->blackwhite.gammaGreen = true; } } - if (keyFile.has_key ("Black & White", "GammaBlue")) { - blackwhite.gammaBlue = keyFile.get_integer ("Black & White", "GammaBlue"); + if (keyFile.has_key ("Black & White", "GammaBlue")) { + blackwhite.gammaBlue = keyFile.get_integer ("Black & White", "GammaBlue"); if (pedited) { pedited->blackwhite.gammaBlue = true; } } - if (keyFile.has_key ("Black & White", "Filter")) { - blackwhite.filter = keyFile.get_string ("Black & White", "Filter"); + if (keyFile.has_key ("Black & White", "Filter")) { + blackwhite.filter = keyFile.get_string ("Black & White", "Filter"); if (pedited) { pedited->blackwhite.filter = true; } } - if (keyFile.has_key ("Black & White", "Setting")) { - blackwhite.setting = keyFile.get_string ("Black & White", "Setting"); + if (keyFile.has_key ("Black & White", "Setting")) { + blackwhite.setting = keyFile.get_string ("Black & White", "Setting"); if (pedited) { pedited->blackwhite.setting = true; } } - if (keyFile.has_key ("Black & White", "LuminanceCurve")) { + if (keyFile.has_key ("Black & White", "LuminanceCurve")) { blackwhite.luminanceCurve = keyFile.get_double_list ("Black & White", "LuminanceCurve"); avoidEmptyCurve (blackwhite.luminanceCurve); @@ -5392,8 +5440,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Black & White", "BeforeCurve")) { - blackwhite.beforeCurve = keyFile.get_double_list ("Black & White", "BeforeCurve"); + if (keyFile.has_key ("Black & White", "BeforeCurve")) { + blackwhite.beforeCurve = keyFile.get_double_list ("Black & White", "BeforeCurve"); avoidEmptyCurve (blackwhite.beforeCurve); if (pedited) { @@ -5401,8 +5449,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Black & White", "Algorithm")) { - blackwhite.algo = keyFile.get_string ("Black & White", "Algorithm"); + if (keyFile.has_key ("Black & White", "Algorithm")) { + blackwhite.algo = keyFile.get_string ("Black & White", "Algorithm"); if (pedited) { pedited->blackwhite.algo = true; @@ -5412,7 +5460,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) if (keyFile.has_key ("Black & White", "BeforeCurveMode")) { Glib::ustring sMode = keyFile.get_string ("Black & White", "BeforeCurveMode"); - if (sMode == "Standard") { + if (sMode == "Standard") { blackwhite.beforeCurveMode = BlackWhiteParams::TC_MODE_STD_BW; } else if (sMode == "FilmLike") { blackwhite.beforeCurveMode = BlackWhiteParams::TC_MODE_FILMLIKE_BW; @@ -5427,8 +5475,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Black & White", "AfterCurve")) { - blackwhite.afterCurve = keyFile.get_double_list ("Black & White", "AfterCurve"); + if (keyFile.has_key ("Black & White", "AfterCurve")) { + blackwhite.afterCurve = keyFile.get_double_list ("Black & White", "AfterCurve"); avoidEmptyCurve (blackwhite.afterCurve); if (pedited) { @@ -5436,10 +5484,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Black & White", "AfterCurveMode")) { + if (keyFile.has_key ("Black & White", "AfterCurveMode")) { Glib::ustring sMode2 = keyFile.get_string ("Black & White", "AfterCurveMode"); - if (sMode2 == "Standard") { + if (sMode2 == "Standard") { blackwhite.afterCurveMode = BlackWhiteParams::TC_MODE_STD_BW; } else if (sMode2 == "WeightedStd") { blackwhite.afterCurveMode = BlackWhiteParams::TC_MODE_WEIGHTEDSTD_BW; @@ -5451,10 +5499,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - //load retinex +//load retinex if (keyFile.has_group ("Retinex")) { - if (keyFile.has_key ("Retinex", "Median")) { + if (keyFile.has_key ("Retinex", "Median")) { retinex.medianmap = keyFile.get_boolean ("Retinex", "Median"); if (pedited) { @@ -5462,24 +5510,24 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "RetinexMethod")) { - retinex.retinexMethod = keyFile.get_string ("Retinex", "RetinexMethod"); + if (keyFile.has_key ("Retinex", "RetinexMethod")) { + retinex.retinexMethod = keyFile.get_string ("Retinex", "RetinexMethod"); if (pedited) { pedited->retinex.retinexMethod = true; } } - if (keyFile.has_key ("Retinex", "mapMethod")) { - retinex.mapMethod = keyFile.get_string ("Retinex", "mapMethod"); + if (keyFile.has_key ("Retinex", "mapMethod")) { + retinex.mapMethod = keyFile.get_string ("Retinex", "mapMethod"); if (pedited) { pedited->retinex.mapMethod = true; } } - if (keyFile.has_key ("Retinex", "viewMethod")) { - retinex.viewMethod = keyFile.get_string ("Retinex", "viewMethod"); + if (keyFile.has_key ("Retinex", "viewMethod")) { + retinex.viewMethod = keyFile.get_string ("Retinex", "viewMethod"); if (pedited) { pedited->retinex.viewMethod = true; @@ -5487,23 +5535,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Retinex", "Retinexcolorspace")) { - retinex.retinexcolorspace = keyFile.get_string ("Retinex", "Retinexcolorspace"); + if (keyFile.has_key ("Retinex", "Retinexcolorspace")) { + retinex.retinexcolorspace = keyFile.get_string ("Retinex", "Retinexcolorspace"); if (pedited) { pedited->retinex.retinexcolorspace = true; } } - if (keyFile.has_key ("Retinex", "Gammaretinex")) { - retinex.gammaretinex = keyFile.get_string ("Retinex", "Gammaretinex"); + if (keyFile.has_key ("Retinex", "Gammaretinex")) { + retinex.gammaretinex = keyFile.get_string ("Retinex", "Gammaretinex"); if (pedited) { pedited->retinex.gammaretinex = true; } } - if (keyFile.has_key ("Retinex", "Enabled")) { + if (keyFile.has_key ("Retinex", "Enabled")) { retinex.enabled = keyFile.get_boolean ("Retinex", "Enabled"); if (pedited) { @@ -5511,112 +5559,112 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "Neigh")) { - retinex.neigh = keyFile.get_integer ("Retinex", "Neigh"); + if (keyFile.has_key ("Retinex", "Neigh")) { + retinex.neigh = keyFile.get_integer ("Retinex", "Neigh"); if (pedited) { pedited->retinex.neigh = true; } } - if (keyFile.has_key ("Retinex", "Str")) { - retinex.str = keyFile.get_integer ("Retinex", "Str"); + if (keyFile.has_key ("Retinex", "Str")) { + retinex.str = keyFile.get_integer ("Retinex", "Str"); if (pedited) { pedited->retinex.str = true; } } - if (keyFile.has_key ("Retinex", "Scal")) { - retinex.scal = keyFile.get_integer ("Retinex", "Scal"); + if (keyFile.has_key ("Retinex", "Scal")) { + retinex.scal = keyFile.get_integer ("Retinex", "Scal"); if (pedited) { pedited->retinex.scal = true; } } - if (keyFile.has_key ("Retinex", "Iter")) { - retinex.iter = keyFile.get_integer ("Retinex", "Iter"); + if (keyFile.has_key ("Retinex", "Iter")) { + retinex.iter = keyFile.get_integer ("Retinex", "Iter"); if (pedited) { pedited->retinex.iter = true; } } - if (keyFile.has_key ("Retinex", "Grad")) { - retinex.grad = keyFile.get_integer ("Retinex", "Grad"); + if (keyFile.has_key ("Retinex", "Grad")) { + retinex.grad = keyFile.get_integer ("Retinex", "Grad"); if (pedited) { pedited->retinex.grad = true; } } - if (keyFile.has_key ("Retinex", "Grads")) { - retinex.grads = keyFile.get_integer ("Retinex", "Grads"); + if (keyFile.has_key ("Retinex", "Grads")) { + retinex.grads = keyFile.get_integer ("Retinex", "Grads"); if (pedited) { pedited->retinex.grads = true; } } - if (keyFile.has_key ("Retinex", "Gam")) { - retinex.gam = keyFile.get_double ("Retinex", "Gam"); + if (keyFile.has_key ("Retinex", "Gam")) { + retinex.gam = keyFile.get_double ("Retinex", "Gam"); if (pedited) { pedited->retinex.gam = true; } } - if (keyFile.has_key ("Retinex", "Slope")) { - retinex.slope = keyFile.get_double ("Retinex", "Slope"); + if (keyFile.has_key ("Retinex", "Slope")) { + retinex.slope = keyFile.get_double ("Retinex", "Slope"); if (pedited) { pedited->retinex.slope = true; } } - if (keyFile.has_key ("Retinex", "Offs")) { - retinex.offs = keyFile.get_integer ("Retinex", "Offs"); + if (keyFile.has_key ("Retinex", "Offs")) { + retinex.offs = keyFile.get_integer ("Retinex", "Offs"); if (pedited) { pedited->retinex.offs = true; } } - if (keyFile.has_key ("Retinex", "Vart")) { - retinex.vart = keyFile.get_integer ("Retinex", "Vart"); + if (keyFile.has_key ("Retinex", "Vart")) { + retinex.vart = keyFile.get_integer ("Retinex", "Vart"); if (pedited) { pedited->retinex.vart = true; } } - if (keyFile.has_key ("Retinex", "Limd")) { - retinex.limd = keyFile.get_integer ("Retinex", "Limd"); + if (keyFile.has_key ("Retinex", "Limd")) { + retinex.limd = keyFile.get_integer ("Retinex", "Limd"); if (pedited) { pedited->retinex.limd = true; } } - if (keyFile.has_key ("Retinex", "highl")) { - retinex.highl = keyFile.get_integer ("Retinex", "highl"); + if (keyFile.has_key ("Retinex", "highl")) { + retinex.highl = keyFile.get_integer ("Retinex", "highl"); if (pedited) { pedited->retinex.highl = true; } } - if (keyFile.has_key ("Retinex", "skal")) { - retinex.skal = keyFile.get_integer ("Retinex", "skal"); + if (keyFile.has_key ("Retinex", "skal")) { + retinex.skal = keyFile.get_integer ("Retinex", "skal"); if (pedited) { pedited->retinex.skal = true; } } - if (keyFile.has_key ("Retinex", "CDCurve")) { - retinex.cdcurve = keyFile.get_double_list ("Retinex", "CDCurve"); + if (keyFile.has_key ("Retinex", "CDCurve")) { + retinex.cdcurve = keyFile.get_double_list ("Retinex", "CDCurve"); avoidEmptyCurve (retinex.cdcurve); if (pedited) { @@ -5624,8 +5672,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "MAPCurve")) { - retinex.mapcurve = keyFile.get_double_list ("Retinex", "MAPCurve"); + if (keyFile.has_key ("Retinex", "MAPCurve")) { + retinex.mapcurve = keyFile.get_double_list ("Retinex", "MAPCurve"); avoidEmptyCurve (retinex.mapcurve); if (pedited) { @@ -5633,8 +5681,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "CDHCurve")) { - retinex.cdHcurve = keyFile.get_double_list ("Retinex", "CDHCurve"); + if (keyFile.has_key ("Retinex", "CDHCurve")) { + retinex.cdHcurve = keyFile.get_double_list ("Retinex", "CDHCurve"); avoidEmptyCurve (retinex.cdHcurve); if (pedited) { @@ -5642,8 +5690,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "LHCurve")) { - retinex.lhcurve = keyFile.get_double_list ("Retinex", "LHCurve"); + if (keyFile.has_key ("Retinex", "LHCurve")) { + retinex.lhcurve = keyFile.get_double_list ("Retinex", "LHCurve"); avoidEmptyCurve (retinex.lhcurve); if (pedited) { @@ -5651,32 +5699,32 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Retinex", "Highlights")) { - retinex.highlights = keyFile.get_integer ("Retinex", "Highlights"); + if (keyFile.has_key ("Retinex", "Highlights")) { + retinex.highlights = keyFile.get_integer ("Retinex", "Highlights"); if (pedited) { pedited->retinex.highlights = true; } } - if (keyFile.has_key ("Retinex", "HighlightTonalWidth")) { - retinex.htonalwidth = keyFile.get_integer ("Retinex", "HighlightTonalWidth"); + if (keyFile.has_key ("Retinex", "HighlightTonalWidth")) { + retinex.htonalwidth = keyFile.get_integer ("Retinex", "HighlightTonalWidth"); if (pedited) { pedited->retinex.htonalwidth = true; } } - if (keyFile.has_key ("Retinex", "Shadows")) { - retinex.shadows = keyFile.get_integer ("Retinex", "Shadows"); + if (keyFile.has_key ("Retinex", "Shadows")) { + retinex.shadows = keyFile.get_integer ("Retinex", "Shadows"); if (pedited) { pedited->retinex.shadows = true; } } - if (keyFile.has_key ("Retinex", "ShadowTonalWidth")) { - retinex.stonalwidth = keyFile.get_integer ("Retinex", "ShadowTonalWidth"); + if (keyFile.has_key ("Retinex", "ShadowTonalWidth")) { + retinex.stonalwidth = keyFile.get_integer ("Retinex", "ShadowTonalWidth"); if (pedited) { pedited->retinex.stonalwidth = true; @@ -5684,8 +5732,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Retinex", "Radius")) { - retinex.radius = keyFile.get_integer ("Retinex", "Radius"); + if (keyFile.has_key ("Retinex", "Radius")) { + retinex.radius = keyFile.get_integer ("Retinex", "Radius"); if (pedited) { pedited->retinex.radius = true; @@ -5693,8 +5741,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Retinex", "TransmissionCurve")) { - retinex.transmissionCurve = keyFile.get_double_list ("Retinex", "TransmissionCurve"); + if (keyFile.has_key ("Retinex", "TransmissionCurve")) { + retinex.transmissionCurve = keyFile.get_double_list ("Retinex", "TransmissionCurve"); avoidEmptyCurve (retinex.transmissionCurve); if (pedited) { @@ -5703,8 +5751,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Retinex", "GainTransmissionCurve")) { - retinex.gaintransmissionCurve = keyFile.get_double_list ("Retinex", "GainTransmissionCurve"); + if (keyFile.has_key ("Retinex", "GainTransmissionCurve")) { + retinex.gaintransmissionCurve = keyFile.get_double_list ("Retinex", "GainTransmissionCurve"); avoidEmptyCurve (retinex.gaintransmissionCurve); if (pedited) { @@ -5715,18 +5763,18 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - // load luma curve +// load luma curve if (keyFile.has_group ("Luminance Curve")) { - if (keyFile.has_key ("Luminance Curve", "Brightness")) { - labCurve.brightness = keyFile.get_integer ("Luminance Curve", "Brightness"); + if (keyFile.has_key ("Luminance Curve", "Brightness")) { + labCurve.brightness = keyFile.get_integer ("Luminance Curve", "Brightness"); if (pedited) { pedited->labCurve.brightness = true; } } - if (keyFile.has_key ("Luminance Curve", "Contrast")) { - labCurve.contrast = keyFile.get_integer ("Luminance Curve", "Contrast"); + if (keyFile.has_key ("Luminance Curve", "Contrast")) { + labCurve.contrast = keyFile.get_integer ("Luminance Curve", "Contrast"); if (pedited) { pedited->labCurve.contrast = true; @@ -5734,18 +5782,18 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (ppVersion < 303) { - // transform Saturation into Chromaticity - // if Saturation == 0, should we set BWToning on? - if (keyFile.has_key ("Luminance Curve", "Saturation")) { - labCurve.chromaticity = keyFile.get_integer ("Luminance Curve", "Saturation"); +// transform Saturation into Chromaticity +// if Saturation == 0, should we set BWToning on? + if (keyFile.has_key ("Luminance Curve", "Saturation")) { + labCurve.chromaticity = keyFile.get_integer ("Luminance Curve", "Saturation"); if (pedited) { pedited->labCurve.chromaticity = true; } } - // transform AvoidColorClipping into AvoidColorShift - if (keyFile.has_key ("Luminance Curve", "AvoidColorClipping")) { +// transform AvoidColorClipping into AvoidColorShift + if (keyFile.has_key ("Luminance Curve", "AvoidColorClipping")) { labCurve.avoidcolorshift = keyFile.get_boolean ("Luminance Curve", "AvoidColorClipping"); if (pedited) { @@ -5753,10 +5801,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } } else { - if (keyFile.has_key ("Luminance Curve", "Chromaticity")) { - labCurve.chromaticity = keyFile.get_integer ("Luminance Curve", "Chromaticity"); + if (keyFile.has_key ("Luminance Curve", "Chromaticity")) { + labCurve.chromaticity = keyFile.get_integer ("Luminance Curve", "Chromaticity"); - if (ppVersion >= 303 && ppVersion < 314 && labCurve.chromaticity == -100) { + if (ppVersion >= 303 && ppVersion < 314 && labCurve.chromaticity == -100) { blackwhite.enabled = true; } @@ -5765,7 +5813,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "AvoidColorShift")) { + if (keyFile.has_key ("Luminance Curve", "AvoidColorShift")) { labCurve.avoidcolorshift = keyFile.get_boolean ("Luminance Curve", "AvoidColorShift"); if (pedited) { @@ -5774,7 +5822,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Luminance Curve", "RedAndSkinTonesProtection")) { - labCurve.rstprotection = keyFile.get_double ("Luminance Curve", "RedAndSkinTonesProtection"); + labCurve.rstprotection = keyFile.get_double ("Luminance Curve", "RedAndSkinTonesProtection"); if (pedited) { pedited->labCurve.rstprotection = true; @@ -5782,8 +5830,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "LCredsk")) { - labCurve.lcredsk = keyFile.get_boolean ("Luminance Curve", "LCredsk"); + if (keyFile.has_key ("Luminance Curve", "LCredsk")) { + labCurve.lcredsk = keyFile.get_boolean ("Luminance Curve", "LCredsk"); if (pedited) { pedited->labCurve.lcredsk = true; @@ -5792,10 +5840,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) if (ppVersion < 314) - // Backward compatibility: If BWtoning is true, Chromaticity has to be set to -100, which will produce the same effect - // and will enable the b&w toning mode ('a' & 'b' curves) +// Backward compatibility: If BWtoning is true, Chromaticity has to be set to -100, which will produce the same effect +// and will enable the b&w toning mode ('a' & 'b' curves) if (keyFile.has_key ("Luminance Curve", "BWtoning")) { - if ( keyFile.get_boolean ("Luminance Curve", "BWtoning")) { + if ( keyFile.get_boolean ("Luminance Curve", "BWtoning")) { labCurve.chromaticity = -100; if (pedited) { @@ -5804,8 +5852,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "LCurve")) { - labCurve.lcurve = keyFile.get_double_list ("Luminance Curve", "LCurve"); + if (keyFile.has_key ("Luminance Curve", "LCurve")) { + labCurve.lcurve = keyFile.get_double_list ("Luminance Curve", "LCurve"); avoidEmptyCurve (labCurve.lcurve); if (pedited) { @@ -5813,8 +5861,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "aCurve")) { - labCurve.acurve = keyFile.get_double_list ("Luminance Curve", "aCurve"); + if (keyFile.has_key ("Luminance Curve", "aCurve")) { + labCurve.acurve = keyFile.get_double_list ("Luminance Curve", "aCurve"); avoidEmptyCurve (labCurve.acurve); if (pedited) { @@ -5822,8 +5870,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "bCurve")) { - labCurve.bcurve = keyFile.get_double_list ("Luminance Curve", "bCurve"); + if (keyFile.has_key ("Luminance Curve", "bCurve")) { + labCurve.bcurve = keyFile.get_double_list ("Luminance Curve", "bCurve"); avoidEmptyCurve (labCurve.bcurve); if (pedited) { @@ -5831,8 +5879,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "ccCurve")) { - labCurve.cccurve = keyFile.get_double_list ("Luminance Curve", "ccCurve"); + if (keyFile.has_key ("Luminance Curve", "ccCurve")) { + labCurve.cccurve = keyFile.get_double_list ("Luminance Curve", "ccCurve"); avoidEmptyCurve (labCurve.cccurve); if (pedited) { @@ -5840,8 +5888,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "chCurve")) { - labCurve.chcurve = keyFile.get_double_list ("Luminance Curve", "chCurve"); + if (keyFile.has_key ("Luminance Curve", "chCurve")) { + labCurve.chcurve = keyFile.get_double_list ("Luminance Curve", "chCurve"); avoidEmptyCurve (labCurve.chcurve); if (pedited) { @@ -5849,8 +5897,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "lhCurve")) { - labCurve.lhcurve = keyFile.get_double_list ("Luminance Curve", "lhCurve"); + if (keyFile.has_key ("Luminance Curve", "lhCurve")) { + labCurve.lhcurve = keyFile.get_double_list ("Luminance Curve", "lhCurve"); avoidEmptyCurve (labCurve.lhcurve); if (pedited) { @@ -5858,8 +5906,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "hhCurve")) { - labCurve.hhcurve = keyFile.get_double_list ("Luminance Curve", "hhCurve"); + if (keyFile.has_key ("Luminance Curve", "hhCurve")) { + labCurve.hhcurve = keyFile.get_double_list ("Luminance Curve", "hhCurve"); avoidEmptyCurve (labCurve.hhcurve); if (pedited) { @@ -5867,8 +5915,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "LcCurve")) { - labCurve.lccurve = keyFile.get_double_list ("Luminance Curve", "LcCurve"); + if (keyFile.has_key ("Luminance Curve", "LcCurve")) { + labCurve.lccurve = keyFile.get_double_list ("Luminance Curve", "LcCurve"); avoidEmptyCurve (labCurve.lccurve); if (pedited) { @@ -5876,8 +5924,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Luminance Curve", "ClCurve")) { - labCurve.clcurve = keyFile.get_double_list ("Luminance Curve", "ClCurve"); + if (keyFile.has_key ("Luminance Curve", "ClCurve")) { + labCurve.clcurve = keyFile.get_double_list ("Luminance Curve", "ClCurve"); avoidEmptyCurve (labCurve.clcurve); if (pedited) { @@ -5887,33 +5935,33 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - // load sharpening +// load sharpening if (keyFile.has_group ("Sharpening")) { - if (keyFile.has_key ("Sharpening", "Enabled")) { - sharpening.enabled = keyFile.get_boolean ("Sharpening", "Enabled"); + if (keyFile.has_key ("Sharpening", "Enabled")) { + sharpening.enabled = keyFile.get_boolean ("Sharpening", "Enabled"); if (pedited) { pedited->sharpening.enabled = true; } } - if (keyFile.has_key ("Sharpening", "Radius")) { - sharpening.radius = keyFile.get_double ("Sharpening", "Radius"); + if (keyFile.has_key ("Sharpening", "Radius")) { + sharpening.radius = keyFile.get_double ("Sharpening", "Radius"); if (pedited) { pedited->sharpening.radius = true; } } - if (keyFile.has_key ("Sharpening", "Amount")) { - sharpening.amount = keyFile.get_integer ("Sharpening", "Amount"); + if (keyFile.has_key ("Sharpening", "Amount")) { + sharpening.amount = keyFile.get_integer ("Sharpening", "Amount"); if (pedited) { pedited->sharpening.amount = true; } } - if (keyFile.has_key ("Sharpening", "Threshold")) { + if (keyFile.has_key ("Sharpening", "Threshold")) { if (ppVersion < 302) { int thresh = min (keyFile.get_integer ("Sharpening", "Threshold"), 2000); sharpening.threshold.setValues (thresh, thresh, 2000, 2000); // TODO: 2000 is the maximum value and is taken of rtgui/sharpening.cc ; should be changed by the tool modularization @@ -5930,39 +5978,39 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Sharpening", "OnlyEdges")) { - sharpening.edgesonly = keyFile.get_boolean ("Sharpening", "OnlyEdges"); + if (keyFile.has_key ("Sharpening", "OnlyEdges")) { + sharpening.edgesonly = keyFile.get_boolean ("Sharpening", "OnlyEdges"); if (pedited) { pedited->sharpening.edgesonly = true; } } - if (keyFile.has_key ("Sharpening", "EdgedetectionRadius")) { - sharpening.edges_radius = keyFile.get_double ("Sharpening", "EdgedetectionRadius"); + if (keyFile.has_key ("Sharpening", "EdgedetectionRadius")) { + sharpening.edges_radius = keyFile.get_double ("Sharpening", "EdgedetectionRadius"); if (pedited) { pedited->sharpening.edges_radius = true; } } - if (keyFile.has_key ("Sharpening", "EdgeTolerance")) { - sharpening.edges_tolerance = keyFile.get_integer ("Sharpening", "EdgeTolerance"); + if (keyFile.has_key ("Sharpening", "EdgeTolerance")) { + sharpening.edges_tolerance = keyFile.get_integer ("Sharpening", "EdgeTolerance"); if (pedited) { pedited->sharpening.edges_tolerance = true; } } - if (keyFile.has_key ("Sharpening", "HalocontrolEnabled")) { - sharpening.halocontrol = keyFile.get_boolean ("Sharpening", "HalocontrolEnabled"); + if (keyFile.has_key ("Sharpening", "HalocontrolEnabled")) { + sharpening.halocontrol = keyFile.get_boolean ("Sharpening", "HalocontrolEnabled"); if (pedited) { pedited->sharpening.halocontrol = true; } } - if (keyFile.has_key ("Sharpening", "HalocontrolAmount")) { + if (keyFile.has_key ("Sharpening", "HalocontrolAmount")) { sharpening.halocontrol_amount = keyFile.get_integer ("Sharpening", "HalocontrolAmount"); if (pedited) { @@ -5970,40 +6018,40 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Sharpening", "Method")) { - sharpening.method = keyFile.get_string ("Sharpening", "Method"); + if (keyFile.has_key ("Sharpening", "Method")) { + sharpening.method = keyFile.get_string ("Sharpening", "Method"); if (pedited) { pedited->sharpening.method = true; } } - if (keyFile.has_key ("Sharpening", "DeconvRadius")) { - sharpening.deconvradius = keyFile.get_double ("Sharpening", "DeconvRadius"); + if (keyFile.has_key ("Sharpening", "DeconvRadius")) { + sharpening.deconvradius = keyFile.get_double ("Sharpening", "DeconvRadius"); if (pedited) { pedited->sharpening.deconvradius = true; } } - if (keyFile.has_key ("Sharpening", "DeconvAmount")) { - sharpening.deconvamount = keyFile.get_integer ("Sharpening", "DeconvAmount"); + if (keyFile.has_key ("Sharpening", "DeconvAmount")) { + sharpening.deconvamount = keyFile.get_integer ("Sharpening", "DeconvAmount"); if (pedited) { pedited->sharpening.deconvamount = true; } } - if (keyFile.has_key ("Sharpening", "DeconvDamping")) { - sharpening.deconvdamping = keyFile.get_integer ("Sharpening", "DeconvDamping"); + if (keyFile.has_key ("Sharpening", "DeconvDamping")) { + sharpening.deconvdamping = keyFile.get_integer ("Sharpening", "DeconvDamping"); if (pedited) { pedited->sharpening.deconvdamping = true; } } - if (keyFile.has_key ("Sharpening", "DeconvIterations")) { - sharpening.deconviter = keyFile.get_integer ("Sharpening", "DeconvIterations"); + if (keyFile.has_key ("Sharpening", "DeconvIterations")) { + sharpening.deconviter = keyFile.get_integer ("Sharpening", "DeconvIterations"); if (pedited) { pedited->sharpening.deconviter = true; @@ -6011,34 +6059,34 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load edge sharpening +// load edge sharpening if (keyFile.has_group ("SharpenEdge")) { - if (keyFile.has_key ("SharpenEdge", "Enabled")) { - sharpenEdge.enabled = keyFile.get_boolean ("SharpenEdge", "Enabled"); + if (keyFile.has_key ("SharpenEdge", "Enabled")) { + sharpenEdge.enabled = keyFile.get_boolean ("SharpenEdge", "Enabled"); if (pedited) { pedited->sharpenEdge.enabled = true; } } - if (keyFile.has_key ("SharpenEdge", "Passes")) { - sharpenEdge.passes = keyFile.get_integer ("SharpenEdge", "Passes"); + if (keyFile.has_key ("SharpenEdge", "Passes")) { + sharpenEdge.passes = keyFile.get_integer ("SharpenEdge", "Passes"); if (pedited) { pedited->sharpenEdge.passes = true; } } - if (keyFile.has_key ("SharpenEdge", "Strength")) { - sharpenEdge.amount = keyFile.get_double ("SharpenEdge", "Strength"); + if (keyFile.has_key ("SharpenEdge", "Strength")) { + sharpenEdge.amount = keyFile.get_double ("SharpenEdge", "Strength"); if (pedited) { pedited->sharpenEdge.amount = true; } } - if (keyFile.has_key ("SharpenEdge", "ThreeChannels")) { - sharpenEdge.threechannels = keyFile.get_boolean ("SharpenEdge", "ThreeChannels"); + if (keyFile.has_key ("SharpenEdge", "ThreeChannels")) { + sharpenEdge.threechannels = keyFile.get_boolean ("SharpenEdge", "ThreeChannels"); if (pedited) { pedited->sharpenEdge.threechannels = true; @@ -6046,34 +6094,34 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load micro-contrast sharpening +// load micro-contrast sharpening if (keyFile.has_group ("SharpenMicro")) { - if (keyFile.has_key ("SharpenMicro", "Enabled")) { - sharpenMicro.enabled = keyFile.get_boolean ("SharpenMicro", "Enabled"); + if (keyFile.has_key ("SharpenMicro", "Enabled")) { + sharpenMicro.enabled = keyFile.get_boolean ("SharpenMicro", "Enabled"); if (pedited) { pedited->sharpenMicro.enabled = true; } } - if (keyFile.has_key ("SharpenMicro", "Matrix")) { - sharpenMicro.matrix = keyFile.get_boolean ("SharpenMicro", "Matrix"); + if (keyFile.has_key ("SharpenMicro", "Matrix")) { + sharpenMicro.matrix = keyFile.get_boolean ("SharpenMicro", "Matrix"); if (pedited) { pedited->sharpenMicro.matrix = true; } } - if (keyFile.has_key ("SharpenMicro", "Strength")) { - sharpenMicro.amount = keyFile.get_double ("SharpenMicro", "Strength"); + if (keyFile.has_key ("SharpenMicro", "Strength")) { + sharpenMicro.amount = keyFile.get_double ("SharpenMicro", "Strength"); if (pedited) { pedited->sharpenMicro.amount = true; } } - if (keyFile.has_key ("SharpenMicro", "Uniformity")) { - sharpenMicro.uniformity = keyFile.get_double ("SharpenMicro", "Uniformity"); + if (keyFile.has_key ("SharpenMicro", "Uniformity")) { + sharpenMicro.uniformity = keyFile.get_double ("SharpenMicro", "Uniformity"); if (pedited) { pedited->sharpenMicro.uniformity = true; @@ -6081,33 +6129,33 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load vibrance +// load vibrance if (keyFile.has_group ("Vibrance")) { - if (keyFile.has_key ("Vibrance", "Enabled")) { - vibrance.enabled = keyFile.get_boolean ("Vibrance", "Enabled"); + if (keyFile.has_key ("Vibrance", "Enabled")) { + vibrance.enabled = keyFile.get_boolean ("Vibrance", "Enabled"); if (pedited) { pedited->vibrance.enabled = true; } } - if (keyFile.has_key ("Vibrance", "Pastels")) { - vibrance.pastels = keyFile.get_integer ("Vibrance", "Pastels"); + if (keyFile.has_key ("Vibrance", "Pastels")) { + vibrance.pastels = keyFile.get_integer ("Vibrance", "Pastels"); if (pedited) { pedited->vibrance.pastels = true; } } - if (keyFile.has_key ("Vibrance", "Saturated")) { - vibrance.saturated = keyFile.get_integer ("Vibrance", "Saturated"); + if (keyFile.has_key ("Vibrance", "Saturated")) { + vibrance.saturated = keyFile.get_integer ("Vibrance", "Saturated"); if (pedited) { pedited->vibrance.saturated = true; } } - if (keyFile.has_key ("Vibrance", "PSThreshold")) { + if (keyFile.has_key ("Vibrance", "PSThreshold")) { if (ppVersion < 302) { int thresh = keyFile.get_integer ("Vibrance", "PSThreshold"); vibrance.psthreshold.setValues (thresh, thresh); @@ -6124,32 +6172,32 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Vibrance", "ProtectSkins")) { - vibrance.protectskins = keyFile.get_boolean ("Vibrance", "ProtectSkins"); + if (keyFile.has_key ("Vibrance", "ProtectSkins")) { + vibrance.protectskins = keyFile.get_boolean ("Vibrance", "ProtectSkins"); if (pedited) { pedited->vibrance.protectskins = true; } } - if (keyFile.has_key ("Vibrance", "AvoidColorShift")) { - vibrance.avoidcolorshift = keyFile.get_boolean ("Vibrance", "AvoidColorShift"); + if (keyFile.has_key ("Vibrance", "AvoidColorShift")) { + vibrance.avoidcolorshift = keyFile.get_boolean ("Vibrance", "AvoidColorShift"); if (pedited) { pedited->vibrance.avoidcolorshift = true; } } - if (keyFile.has_key ("Vibrance", "PastSatTog")) { - vibrance.pastsattog = keyFile.get_boolean ("Vibrance", "PastSatTog"); + if (keyFile.has_key ("Vibrance", "PastSatTog")) { + vibrance.pastsattog = keyFile.get_boolean ("Vibrance", "PastSatTog"); if (pedited) { pedited->vibrance.pastsattog = true; } } - if (keyFile.has_key ("Vibrance", "SkinTonesCurve")) { - vibrance.skintonescurve = keyFile.get_double_list ("Vibrance", "SkinTonesCurve"); + if (keyFile.has_key ("Vibrance", "SkinTonesCurve")) { + vibrance.skintonescurve = keyFile.get_double_list ("Vibrance", "SkinTonesCurve"); avoidEmptyCurve (vibrance.skintonescurve); if (pedited) { @@ -6175,8 +6223,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) // load wb if (keyFile.has_group ("White Balance")) { - if (keyFile.has_key ("White Balance", "Setting")) { - wb.method = keyFile.get_string ("White Balance", "Setting"); + if (keyFile.has_key ("White Balance", "Setting")) { + wb.method = keyFile.get_string ("White Balance", "Setting"); if (pedited) { pedited->wb.method = true; @@ -6184,30 +6232,30 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("White Balance", "Temperature")) { - wb.temperature = keyFile.get_integer ("White Balance", "Temperature"); + wb.temperature = keyFile.get_integer ("White Balance", "Temperature"); if (pedited) { pedited->wb.temperature = true; } } - if (keyFile.has_key ("White Balance", "Green")) { - wb.green = keyFile.get_double ("White Balance", "Green"); + if (keyFile.has_key ("White Balance", "Green")) { + wb.green = keyFile.get_double ("White Balance", "Green"); if (pedited) { pedited->wb.green = true; } } - if (keyFile.has_key ("White Balance", "Equal")) { - wb.equal = keyFile.get_double ("White Balance", "Equal"); + if (keyFile.has_key ("White Balance", "Equal")) { + wb.equal = keyFile.get_double ("White Balance", "Equal"); if (pedited) { pedited->wb.equal = true; } } - if (keyFile.has_key ("White Balance", "TemperatureBias")) { + if (keyFile.has_key ("White Balance", "TemperatureBias")) { wb.tempBias = keyFile.get_double ("White Balance", "TemperatureBias"); if (pedited) { @@ -6224,23 +6272,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) // load defringe if (keyFile.has_group ("Defringing")) { - if (keyFile.has_key ("Defringing", "Enabled")) { - defringe.enabled = keyFile.get_boolean ("Defringing", "Enabled"); + if (keyFile.has_key ("Defringing", "Enabled")) { + defringe.enabled = keyFile.get_boolean ("Defringing", "Enabled"); if (pedited) { pedited->defringe.enabled = true; } } - if (keyFile.has_key ("Defringing", "Radius")) { - defringe.radius = keyFile.get_double ("Defringing", "Radius"); + if (keyFile.has_key ("Defringing", "Radius")) { + defringe.radius = keyFile.get_double ("Defringing", "Radius"); if (pedited) { pedited->defringe.radius = true; } } - if (keyFile.has_key ("Defringing", "Threshold")) { + if (keyFile.has_key ("Defringing", "Threshold")) { defringe.threshold = (float)keyFile.get_integer ("Defringing", "Threshold"); if (pedited) { @@ -6249,11 +6297,11 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (ppVersion < 310) { - defringe.threshold = sqrt (defringe.threshold * 33.f / 5.f); + defringe.threshold = sqrt (defringe.threshold * 33.f / 5.f); } - if (keyFile.has_key ("Defringing", "HueCurve")) { - defringe.huecurve = keyFile.get_double_list ("Defringing", "HueCurve"); + if (keyFile.has_key ("Defringing", "HueCurve")) { + defringe.huecurve = keyFile.get_double_list ("Defringing", "HueCurve"); avoidEmptyCurve (defringe.huecurve); if (pedited) { @@ -6262,107 +6310,107 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load colorappearance +// load colorappearance if (keyFile.has_group ("Color appearance")) { - if (keyFile.has_key ("Color appearance", "Enabled")) { - colorappearance.enabled = keyFile.get_boolean ("Color appearance", "Enabled"); + if (keyFile.has_key ("Color appearance", "Enabled")) { + colorappearance.enabled = keyFile.get_boolean ("Color appearance", "Enabled"); if (pedited) { pedited->colorappearance.enabled = true; } } - if (keyFile.has_key ("Color appearance", "Degree")) { - colorappearance.degree = keyFile.get_integer ("Color appearance", "Degree"); + if (keyFile.has_key ("Color appearance", "Degree")) { + colorappearance.degree = keyFile.get_integer ("Color appearance", "Degree"); if (pedited) { pedited->colorappearance.degree = true; } } - if (keyFile.has_key ("Color appearance", "AutoDegree")) { - colorappearance.autodegree = keyFile.get_boolean ("Color appearance", "AutoDegree"); + if (keyFile.has_key ("Color appearance", "AutoDegree")) { + colorappearance.autodegree = keyFile.get_boolean ("Color appearance", "AutoDegree"); if (pedited) { pedited->colorappearance.autodegree = true; } } - if (keyFile.has_key ("Color appearance", "Surround")) { - colorappearance.surround = keyFile.get_string ("Color appearance", "Surround"); + if (keyFile.has_key ("Color appearance", "Surround")) { + colorappearance.surround = keyFile.get_string ("Color appearance", "Surround"); if (pedited) { pedited->colorappearance.surround = true; } } -// if (keyFile.has_key ("Color appearance", "Background")) {colorappearance.backgrd = keyFile.get_integer ("Color appearance", "Background"); if (pedited) pedited->colorappearance.backgrd = true; } - if (keyFile.has_key ("Color appearance", "AdaptLum")) { - colorappearance.adaplum = keyFile.get_double ("Color appearance", "AdaptLum"); +// if (keyFile.has_key ("Color appearance", "Background")) {colorappearance.backgrd = keyFile.get_integer ("Color appearance", "Background"); if (pedited) pedited->colorappearance.backgrd = true; } + if (keyFile.has_key ("Color appearance", "AdaptLum")) { + colorappearance.adaplum = keyFile.get_double ("Color appearance", "AdaptLum"); if (pedited) { pedited->colorappearance.adaplum = true; } } - if (keyFile.has_key ("Color appearance", "Badpixsl")) { - colorappearance.badpixsl = keyFile.get_integer ("Color appearance", "Badpixsl"); + if (keyFile.has_key ("Color appearance", "Badpixsl")) { + colorappearance.badpixsl = keyFile.get_integer ("Color appearance", "Badpixsl"); if (pedited) { pedited->colorappearance.badpixsl = true; } } - if (keyFile.has_key ("Color appearance", "Model")) { - colorappearance.wbmodel = keyFile.get_string ("Color appearance", "Model"); + if (keyFile.has_key ("Color appearance", "Model")) { + colorappearance.wbmodel = keyFile.get_string ("Color appearance", "Model"); if (pedited) { pedited->colorappearance.wbmodel = true; } } - if (keyFile.has_key ("Color appearance", "Algorithm")) { - colorappearance.algo = keyFile.get_string ("Color appearance", "Algorithm"); + if (keyFile.has_key ("Color appearance", "Algorithm")) { + colorappearance.algo = keyFile.get_string ("Color appearance", "Algorithm"); if (pedited) { pedited->colorappearance.algo = true; } } - if (keyFile.has_key ("Color appearance", "J-Light")) { - colorappearance.jlight = keyFile.get_double ("Color appearance", "J-Light"); + if (keyFile.has_key ("Color appearance", "J-Light")) { + colorappearance.jlight = keyFile.get_double ("Color appearance", "J-Light"); if (pedited) { pedited->colorappearance.jlight = true; } } - if (keyFile.has_key ("Color appearance", "Q-Bright")) { - colorappearance.qbright = keyFile.get_double ("Color appearance", "Q-Bright"); + if (keyFile.has_key ("Color appearance", "Q-Bright")) { + colorappearance.qbright = keyFile.get_double ("Color appearance", "Q-Bright"); if (pedited) { pedited->colorappearance.qbright = true; } } - if (keyFile.has_key ("Color appearance", "C-Chroma")) { - colorappearance.chroma = keyFile.get_double ("Color appearance", "C-Chroma"); + if (keyFile.has_key ("Color appearance", "C-Chroma")) { + colorappearance.chroma = keyFile.get_double ("Color appearance", "C-Chroma"); if (pedited) { pedited->colorappearance.chroma = true; } } - if (keyFile.has_key ("Color appearance", "S-Chroma")) { - colorappearance.schroma = keyFile.get_double ("Color appearance", "S-Chroma"); + if (keyFile.has_key ("Color appearance", "S-Chroma")) { + colorappearance.schroma = keyFile.get_double ("Color appearance", "S-Chroma"); if (pedited) { pedited->colorappearance.schroma = true; } } - if (keyFile.has_key ("Color appearance", "M-Chroma")) { - colorappearance.mchroma = keyFile.get_double ("Color appearance", "M-Chroma"); + if (keyFile.has_key ("Color appearance", "M-Chroma")) { + colorappearance.mchroma = keyFile.get_double ("Color appearance", "M-Chroma"); if (pedited) { pedited->colorappearance.mchroma = true; @@ -6370,91 +6418,115 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Color appearance", "RSTProtection")) { - colorappearance.rstprotection = keyFile.get_double ("Color appearance", "RSTProtection"); + colorappearance.rstprotection = keyFile.get_double ("Color appearance", "RSTProtection"); if (pedited) { pedited->colorappearance.rstprotection = true; } } - if (keyFile.has_key ("Color appearance", "J-Contrast")) { - colorappearance.contrast = keyFile.get_double ("Color appearance", "J-Contrast"); + if (keyFile.has_key ("Color appearance", "J-Contrast")) { + colorappearance.contrast = keyFile.get_double ("Color appearance", "J-Contrast"); if (pedited) { pedited->colorappearance.contrast = true; } } - if (keyFile.has_key ("Color appearance", "Q-Contrast")) { - colorappearance.qcontrast = keyFile.get_double ("Color appearance", "Q-Contrast"); + if (keyFile.has_key ("Color appearance", "Q-Contrast")) { + colorappearance.qcontrast = keyFile.get_double ("Color appearance", "Q-Contrast"); if (pedited) { pedited->colorappearance.qcontrast = true; } } - if (keyFile.has_key ("Color appearance", "H-Hue")) { - colorappearance.colorh = keyFile.get_double ("Color appearance", "H-Hue"); + if (keyFile.has_key ("Color appearance", "H-Hue")) { + colorappearance.colorh = keyFile.get_double ("Color appearance", "H-Hue"); if (pedited) { pedited->colorappearance.colorh = true; } } - if (keyFile.has_key ("Color appearance", "AdaptScene")) { - colorappearance.adapscen = keyFile.get_double ("Color appearance", "AdaptScene"); + if (keyFile.has_key ("Color appearance", "AdaptScene")) { + colorappearance.adapscen = keyFile.get_double ("Color appearance", "AdaptScene"); if (pedited) { pedited->colorappearance.adapscen = true; } } - if (keyFile.has_key ("Color appearance", "AutoAdapscen")) { - colorappearance.autoadapscen = keyFile.get_boolean ("Color appearance", "AutoAdapscen"); + if (keyFile.has_key ("Color appearance", "AutoAdapscen")) { + colorappearance.autoadapscen = keyFile.get_boolean ("Color appearance", "AutoAdapscen"); if (pedited) { pedited->colorappearance.autoadapscen = true; } } - if (keyFile.has_key ("Color appearance", "SurrSource")) { - colorappearance.surrsource = keyFile.get_boolean ("Color appearance", "SurrSource"); + if (keyFile.has_key ("Color appearance", "SurrSource")) { + colorappearance.surrsource = keyFile.get_boolean ("Color appearance", "SurrSource"); if (pedited) { pedited->colorappearance.surrsource = true; } } - if (keyFile.has_key ("Color appearance", "Gamut")) { - colorappearance.gamut = keyFile.get_boolean ("Color appearance", "Gamut"); + if (keyFile.has_key ("Color appearance", "Gamut")) { + colorappearance.gamut = keyFile.get_boolean ("Color appearance", "Gamut"); if (pedited) { pedited->colorappearance.gamut = true; } } -// if (keyFile.has_key ("Color appearance", "Badpix")) {colorappearance.badpix = keyFile.get_boolean ("Color appearance", "Badpix"); if (pedited) pedited->colorappearance.badpix = true; } - if (keyFile.has_key ("Color appearance", "Datacie")) { - colorappearance.datacie = keyFile.get_boolean ("Color appearance", "Datacie"); + if (keyFile.has_key ("Color appearance", "Tempout")) { + colorappearance.tempout = keyFile.get_integer ("Color appearance", "Tempout"); + + if (pedited) { + pedited->colorappearance.tempout = true; + } + } + + if (keyFile.has_key ("Color appearance", "Greenout")) { + colorappearance.greenout = keyFile.get_double ("Color appearance", "Greenout"); + + if (pedited) { + pedited->colorappearance.greenout = true; + } + } + + if (keyFile.has_key ("Color appearance", "Ybout")) { + colorappearance.ybout = keyFile.get_integer ("Color appearance", "Ybout"); + + if (pedited) { + pedited->colorappearance.ybout = true; + } + } + +// if (keyFile.has_key ("Color appearance", "Badpix")) {colorappearance.badpix = keyFile.get_boolean ("Color appearance", "Badpix"); if (pedited) pedited->colorappearance.badpix = true; } + if (keyFile.has_key ("Color appearance", "Datacie")) { + colorappearance.datacie = keyFile.get_boolean ("Color appearance", "Datacie"); if (pedited) { pedited->colorappearance.datacie = true; } } - if (keyFile.has_key ("Color appearance", "Tonecie")) { - colorappearance.tonecie = keyFile.get_boolean ("Color appearance", "Tonecie"); + if (keyFile.has_key ("Color appearance", "Tonecie")) { + colorappearance.tonecie = keyFile.get_boolean ("Color appearance", "Tonecie"); if (pedited) { pedited->colorappearance.tonecie = true; } } -// if (keyFile.has_key ("Color appearance", "Sharpcie")) {colorappearance.sharpcie = keyFile.get_boolean ("Color appearance", "Sharpcie"); if (pedited) pedited->colorappearance.sharpcie = true; } - if (keyFile.has_key ("Color appearance", "CurveMode")) { +// if (keyFile.has_key ("Color appearance", "Sharpcie")) {colorappearance.sharpcie = keyFile.get_boolean ("Color appearance", "Sharpcie"); if (pedited) pedited->colorappearance.sharpcie = true; } + if (keyFile.has_key ("Color appearance", "CurveMode")) { Glib::ustring sMode = keyFile.get_string ("Color appearance", "CurveMode"); - if (sMode == "Lightness") { + if (sMode == "Lightness") { colorappearance.curveMode = ColorAppearanceParams::TC_MODE_LIGHT; } else if (sMode == "Brightness") { colorappearance.curveMode = ColorAppearanceParams::TC_MODE_BRIGHT; @@ -6465,10 +6537,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Color appearance", "CurveMode2")) { + if (keyFile.has_key ("Color appearance", "CurveMode2")) { Glib::ustring sMode = keyFile.get_string ("Color appearance", "CurveMode2"); - if (sMode == "Lightness") { + if (sMode == "Lightness") { colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_LIGHT; } else if (sMode == "Brightness") { colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_BRIGHT; @@ -6479,10 +6551,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Color appearance", "CurveMode3")) { + if (keyFile.has_key ("Color appearance", "CurveMode3")) { Glib::ustring sMode = keyFile.get_string ("Color appearance", "CurveMode3"); - if (sMode == "Chroma") { + if (sMode == "Chroma") { colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_CHROMA; } else if (sMode == "Saturation") { colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_SATUR; @@ -6496,8 +6568,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (ppVersion > 200) { - if (keyFile.has_key ("Color appearance", "Curve")) { - colorappearance.curve = keyFile.get_double_list ("Color appearance", "Curve"); + if (keyFile.has_key ("Color appearance", "Curve")) { + colorappearance.curve = keyFile.get_double_list ("Color appearance", "Curve"); avoidEmptyCurve (colorappearance.curve); if (pedited) { @@ -6505,8 +6577,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Color appearance", "Curve2")) { - colorappearance.curve2 = keyFile.get_double_list ("Color appearance", "Curve2"); + if (keyFile.has_key ("Color appearance", "Curve2")) { + colorappearance.curve2 = keyFile.get_double_list ("Color appearance", "Curve2"); avoidEmptyCurve (colorappearance.curve2); if (pedited) { @@ -6514,8 +6586,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Color appearance", "Curve3")) { - colorappearance.curve3 = keyFile.get_double_list ("Color appearance", "Curve3"); + if (keyFile.has_key ("Color appearance", "Curve3")) { + colorappearance.curve3 = keyFile.get_double_list ("Color appearance", "Curve3"); avoidEmptyCurve (colorappearance.curve3); if (pedited) { @@ -6526,9 +6598,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - // load impulseDenoise +// load impulseDenoise if (keyFile.has_group ("Impulse Denoising")) { - if (keyFile.has_key ("Impulse Denoising", "Enabled")) { + if (keyFile.has_key ("Impulse Denoising", "Enabled")) { impulseDenoise.enabled = keyFile.get_boolean ("Impulse Denoising", "Enabled"); if (pedited) { @@ -6537,7 +6609,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Impulse Denoising", "Threshold")) { - impulseDenoise.thresh = keyFile.get_integer ("Impulse Denoising", "Threshold"); + impulseDenoise.thresh = keyFile.get_integer ("Impulse Denoising", "Threshold"); if (pedited) { pedited->impulseDenoise.thresh = true; @@ -6545,9 +6617,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load dirpyrDenoise +// load dirpyrDenoise if (keyFile.has_group ("Directional Pyramid Denoising")) {//TODO: No longer an accurate description for FT denoise - if (keyFile.has_key ("Directional Pyramid Denoising", "Enabled")) { + if (keyFile.has_key ("Directional Pyramid Denoising", "Enabled")) { dirpyrDenoise.enabled = keyFile.get_boolean ("Directional Pyramid Denoising", "Enabled"); if (pedited) { @@ -6555,7 +6627,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Enhance")) { + if (keyFile.has_key ("Directional Pyramid Denoising", "Enhance")) { dirpyrDenoise.enhance = keyFile.get_boolean ("Directional Pyramid Denoising", "Enhance"); if (pedited) { @@ -6563,7 +6635,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Median")) { + if (keyFile.has_key ("Directional Pyramid Denoising", "Median")) { dirpyrDenoise.median = keyFile.get_boolean ("Directional Pyramid Denoising", "Median"); if (pedited) { @@ -6571,16 +6643,16 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } -// if (keyFile.has_key ("Directional Pyramid Denoising", "Perform")) { dirpyrDenoise.perform = keyFile.get_boolean ("Directional Pyramid Denoising", "Perform"); if (pedited) pedited->dirpyrDenoise.perform = true; } - if (keyFile.has_key ("Directional Pyramid Denoising", "Luma")) { - dirpyrDenoise.luma = keyFile.get_double ("Directional Pyramid Denoising", "Luma"); +// if (keyFile.has_key ("Directional Pyramid Denoising", "Perform")) { dirpyrDenoise.perform = keyFile.get_boolean ("Directional Pyramid Denoising", "Perform"); if (pedited) pedited->dirpyrDenoise.perform = true; } + if (keyFile.has_key ("Directional Pyramid Denoising", "Luma")) { + dirpyrDenoise.luma = keyFile.get_double ("Directional Pyramid Denoising", "Luma"); if (pedited) { pedited->dirpyrDenoise.luma = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Ldetail")) { + if (keyFile.has_key ("Directional Pyramid Denoising", "Ldetail")) { dirpyrDenoise.Ldetail = keyFile.get_double ("Directional Pyramid Denoising", "Ldetail"); if (pedited) { @@ -6588,45 +6660,45 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Chroma")) { - dirpyrDenoise.chroma = keyFile.get_double ("Directional Pyramid Denoising", "Chroma"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Chroma")) { + dirpyrDenoise.chroma = keyFile.get_double ("Directional Pyramid Denoising", "Chroma"); if (pedited) { pedited->dirpyrDenoise.chroma = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Method")) { - dirpyrDenoise.dmethod = keyFile.get_string ("Directional Pyramid Denoising", "Method"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Method")) { + dirpyrDenoise.dmethod = keyFile.get_string ("Directional Pyramid Denoising", "Method"); if (pedited) { pedited->dirpyrDenoise.dmethod = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "LMethod")) { - dirpyrDenoise.Lmethod = keyFile.get_string ("Directional Pyramid Denoising", "LMethod"); + if (keyFile.has_key ("Directional Pyramid Denoising", "LMethod")) { + dirpyrDenoise.Lmethod = keyFile.get_string ("Directional Pyramid Denoising", "LMethod"); if (pedited) { pedited->dirpyrDenoise.Lmethod = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "CMethod")) { - dirpyrDenoise.Cmethod = keyFile.get_string ("Directional Pyramid Denoising", "CMethod"); + if (keyFile.has_key ("Directional Pyramid Denoising", "CMethod")) { + dirpyrDenoise.Cmethod = keyFile.get_string ("Directional Pyramid Denoising", "CMethod"); if (pedited) { pedited->dirpyrDenoise.Cmethod = true; } } - // never load 'auto chroma preview mode' from pp3 +// never load 'auto chroma preview mode' from pp3 if (dirpyrDenoise.Cmethod == "PRE") { dirpyrDenoise.Cmethod = "MAN"; } - if (keyFile.has_key ("Directional Pyramid Denoising", "C2Method")) { - dirpyrDenoise.C2method = keyFile.get_string ("Directional Pyramid Denoising", "C2Method"); + if (keyFile.has_key ("Directional Pyramid Denoising", "C2Method")) { + dirpyrDenoise.C2method = keyFile.get_string ("Directional Pyramid Denoising", "C2Method"); if (pedited) { pedited->dirpyrDenoise.C2method = true; @@ -6637,40 +6709,40 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) dirpyrDenoise.C2method = "MANU"; } - if (keyFile.has_key ("Directional Pyramid Denoising", "SMethod")) { - dirpyrDenoise.smethod = keyFile.get_string ("Directional Pyramid Denoising", "SMethod"); + if (keyFile.has_key ("Directional Pyramid Denoising", "SMethod")) { + dirpyrDenoise.smethod = keyFile.get_string ("Directional Pyramid Denoising", "SMethod"); if (pedited) { pedited->dirpyrDenoise.smethod = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "MedMethod")) { - dirpyrDenoise.medmethod = keyFile.get_string ("Directional Pyramid Denoising", "MedMethod"); + if (keyFile.has_key ("Directional Pyramid Denoising", "MedMethod")) { + dirpyrDenoise.medmethod = keyFile.get_string ("Directional Pyramid Denoising", "MedMethod"); if (pedited) { pedited->dirpyrDenoise.medmethod = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "MethodMed")) { - dirpyrDenoise.methodmed = keyFile.get_string ("Directional Pyramid Denoising", "MethodMed"); + if (keyFile.has_key ("Directional Pyramid Denoising", "MethodMed")) { + dirpyrDenoise.methodmed = keyFile.get_string ("Directional Pyramid Denoising", "MethodMed"); if (pedited) { pedited->dirpyrDenoise.methodmed = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "RGBMethod")) { - dirpyrDenoise.rgbmethod = keyFile.get_string ("Directional Pyramid Denoising", "RGBMethod"); + if (keyFile.has_key ("Directional Pyramid Denoising", "RGBMethod")) { + dirpyrDenoise.rgbmethod = keyFile.get_string ("Directional Pyramid Denoising", "RGBMethod"); if (pedited) { pedited->dirpyrDenoise.rgbmethod = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "LCurve")) { - dirpyrDenoise.lcurve = keyFile.get_double_list ("Directional Pyramid Denoising", "LCurve"); + if (keyFile.has_key ("Directional Pyramid Denoising", "LCurve")) { + dirpyrDenoise.lcurve = keyFile.get_double_list ("Directional Pyramid Denoising", "LCurve"); avoidEmptyCurve (dirpyrDenoise.lcurve); if (pedited) { @@ -6678,8 +6750,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Denoising", "CCCurve")) { - dirpyrDenoise.cccurve = keyFile.get_double_list ("Directional Pyramid Denoising", "CCCurve"); + if (keyFile.has_key ("Directional Pyramid Denoising", "CCCurve")) { + dirpyrDenoise.cccurve = keyFile.get_double_list ("Directional Pyramid Denoising", "CCCurve"); avoidEmptyCurve (dirpyrDenoise.cccurve); if (pedited) { @@ -6687,32 +6759,32 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Redchro")) { - dirpyrDenoise.redchro = keyFile.get_double ("Directional Pyramid Denoising", "Redchro"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Redchro")) { + dirpyrDenoise.redchro = keyFile.get_double ("Directional Pyramid Denoising", "Redchro"); if (pedited) { pedited->dirpyrDenoise.redchro = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Bluechro")) { - dirpyrDenoise.bluechro = keyFile.get_double ("Directional Pyramid Denoising", "Bluechro"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Bluechro")) { + dirpyrDenoise.bluechro = keyFile.get_double ("Directional Pyramid Denoising", "Bluechro"); if (pedited) { pedited->dirpyrDenoise.bluechro = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Gamma")) { - dirpyrDenoise.gamma = keyFile.get_double ("Directional Pyramid Denoising", "Gamma"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Gamma")) { + dirpyrDenoise.gamma = keyFile.get_double ("Directional Pyramid Denoising", "Gamma"); if (pedited) { pedited->dirpyrDenoise.gamma = true; } } - if (keyFile.has_key ("Directional Pyramid Denoising", "Passes")) { - dirpyrDenoise.passes = keyFile.get_integer ("Directional Pyramid Denoising", "Passes"); + if (keyFile.has_key ("Directional Pyramid Denoising", "Passes")) { + dirpyrDenoise.passes = keyFile.get_integer ("Directional Pyramid Denoising", "Passes"); if (pedited) { pedited->dirpyrDenoise.passes = true; @@ -6720,9 +6792,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - //Load EPD. +//Load EPD. if (keyFile.has_group ("EPD")) { - if (keyFile.has_key ("EPD", "Enabled")) { + if (keyFile.has_key ("EPD", "Enabled")) { epd.enabled = keyFile.get_boolean ("EPD", "Enabled"); if (pedited) { @@ -6730,7 +6802,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("EPD", "Strength")) { + if (keyFile.has_key ("EPD", "Strength")) { epd.strength = keyFile.get_double ("EPD", "Strength"); if (pedited) { @@ -6738,7 +6810,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("EPD", "Gamma")) { + if (keyFile.has_key ("EPD", "Gamma")) { epd.gamma = keyFile.get_double ("EPD", "Gamma"); if (pedited) { @@ -6746,7 +6818,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("EPD", "EdgeStopping")) { + if (keyFile.has_key ("EPD", "EdgeStopping")) { epd.edgeStopping = keyFile.get_double ("EPD", "EdgeStopping"); if (pedited) { @@ -6754,7 +6826,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("EPD", "Scale")) { + if (keyFile.has_key ("EPD", "Scale")) { epd.scale = keyFile.get_double ("EPD", "Scale"); if (pedited) { @@ -6788,55 +6860,55 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) // load sh if (keyFile.has_group ("Shadows & Highlights")) { - if (keyFile.has_key ("Shadows & Highlights", "Enabled")) { - sh.enabled = keyFile.get_boolean ("Shadows & Highlights", "Enabled"); + if (keyFile.has_key ("Shadows & Highlights", "Enabled")) { + sh.enabled = keyFile.get_boolean ("Shadows & Highlights", "Enabled"); if (pedited) { pedited->sh.enabled = true; } } - if (keyFile.has_key ("Shadows & Highlights", "HighQuality")) { - sh.hq = keyFile.get_boolean ("Shadows & Highlights", "HighQuality"); + if (keyFile.has_key ("Shadows & Highlights", "HighQuality")) { + sh.hq = keyFile.get_boolean ("Shadows & Highlights", "HighQuality"); if (pedited) { pedited->sh.hq = true; } } - if (keyFile.has_key ("Shadows & Highlights", "Highlights")) { - sh.highlights = keyFile.get_integer ("Shadows & Highlights", "Highlights"); + if (keyFile.has_key ("Shadows & Highlights", "Highlights")) { + sh.highlights = keyFile.get_integer ("Shadows & Highlights", "Highlights"); if (pedited) { pedited->sh.highlights = true; } } - if (keyFile.has_key ("Shadows & Highlights", "HighlightTonalWidth")) { - sh.htonalwidth = keyFile.get_integer ("Shadows & Highlights", "HighlightTonalWidth"); + if (keyFile.has_key ("Shadows & Highlights", "HighlightTonalWidth")) { + sh.htonalwidth = keyFile.get_integer ("Shadows & Highlights", "HighlightTonalWidth"); if (pedited) { pedited->sh.htonalwidth = true; } } - if (keyFile.has_key ("Shadows & Highlights", "Shadows")) { - sh.shadows = keyFile.get_integer ("Shadows & Highlights", "Shadows"); + if (keyFile.has_key ("Shadows & Highlights", "Shadows")) { + sh.shadows = keyFile.get_integer ("Shadows & Highlights", "Shadows"); if (pedited) { pedited->sh.shadows = true; } } - if (keyFile.has_key ("Shadows & Highlights", "ShadowTonalWidth")) { - sh.stonalwidth = keyFile.get_integer ("Shadows & Highlights", "ShadowTonalWidth"); + if (keyFile.has_key ("Shadows & Highlights", "ShadowTonalWidth")) { + sh.stonalwidth = keyFile.get_integer ("Shadows & Highlights", "ShadowTonalWidth"); if (pedited) { pedited->sh.stonalwidth = true; } } - if (keyFile.has_key ("Shadows & Highlights", "LocalContrast")) { + if (keyFile.has_key ("Shadows & Highlights", "LocalContrast")) { sh.localcontrast = keyFile.get_integer ("Shadows & Highlights", "LocalContrast"); if (pedited) { @@ -6844,8 +6916,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Shadows & Highlights", "Radius")) { - sh.radius = keyFile.get_integer ("Shadows & Highlights", "Radius"); + if (keyFile.has_key ("Shadows & Highlights", "Radius")) { + sh.radius = keyFile.get_integer ("Shadows & Highlights", "Radius"); if (pedited) { pedited->sh.radius = true; @@ -6853,42 +6925,42 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load crop +// load crop if (keyFile.has_group ("Crop")) { - if (keyFile.has_key ("Crop", "Enabled")) { - crop.enabled = keyFile.get_boolean ("Crop", "Enabled"); + if (keyFile.has_key ("Crop", "Enabled")) { + crop.enabled = keyFile.get_boolean ("Crop", "Enabled"); if (pedited) { pedited->crop.enabled = true; } } - if (keyFile.has_key ("Crop", "X")) { - crop.x = keyFile.get_integer ("Crop", "X"); + if (keyFile.has_key ("Crop", "X")) { + crop.x = keyFile.get_integer ("Crop", "X"); if (pedited) { pedited->crop.x = true; } } - if (keyFile.has_key ("Crop", "Y")) { - crop.y = keyFile.get_integer ("Crop", "Y"); + if (keyFile.has_key ("Crop", "Y")) { + crop.y = keyFile.get_integer ("Crop", "Y"); if (pedited) { pedited->crop.y = true; } } - if (keyFile.has_key ("Crop", "W")) { - crop.w = std::max (keyFile.get_integer ("Crop", "W"), 1); + if (keyFile.has_key ("Crop", "W")) { + crop.w = std::max (keyFile.get_integer ("Crop", "W"), 1); if (pedited) { pedited->crop.w = true; } } - if (keyFile.has_key ("Crop", "H")) { - crop.h = std::max (keyFile.get_integer ("Crop", "H"), 1); + if (keyFile.has_key ("Crop", "H")) { + crop.h = std::max (keyFile.get_integer ("Crop", "H"), 1); if (pedited) { pedited->crop.h = true; @@ -6896,7 +6968,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Crop", "FixedRatio")) { - crop.fixratio = keyFile.get_boolean ("Crop", "FixedRatio"); + crop.fixratio = keyFile.get_boolean ("Crop", "FixedRatio"); if (pedited) { pedited->crop.fixratio = true; @@ -6904,13 +6976,13 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Crop", "Ratio")) { - crop.ratio = keyFile.get_string ("Crop", "Ratio"); + crop.ratio = keyFile.get_string ("Crop", "Ratio"); if (pedited) { pedited->crop.ratio = true; } - //backwards compatibility for crop.ratio +//backwards compatibility for crop.ratio if (crop.ratio == "DIN") { crop.ratio = "1.414 - DIN EN ISO 216"; } @@ -6924,16 +6996,16 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Crop", "Orientation")) { - crop.orientation = keyFile.get_string ("Crop", "Orientation"); + if (keyFile.has_key ("Crop", "Orientation")) { + crop.orientation = keyFile.get_string ("Crop", "Orientation"); if (pedited) { pedited->crop.orientation = true; } } - if (keyFile.has_key ("Crop", "Guide")) { - crop.guide = keyFile.get_string ("Crop", "Guide"); + if (keyFile.has_key ("Crop", "Guide")) { + crop.guide = keyFile.get_string ("Crop", "Guide"); if (pedited) { pedited->crop.guide = true; @@ -6941,9 +7013,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load coarse +// load coarse if (keyFile.has_group ("Coarse Transformation")) { - if (keyFile.has_key ("Coarse Transformation", "Rotate")) { + if (keyFile.has_key ("Coarse Transformation", "Rotate")) { coarse.rotate = keyFile.get_integer ("Coarse Transformation", "Rotate"); if (pedited) { @@ -6951,16 +7023,16 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Coarse Transformation", "HorizontalFlip")) { - coarse.hflip = keyFile.get_boolean ("Coarse Transformation", "HorizontalFlip"); + if (keyFile.has_key ("Coarse Transformation", "HorizontalFlip")) { + coarse.hflip = keyFile.get_boolean ("Coarse Transformation", "HorizontalFlip"); if (pedited) { pedited->coarse.hflip = true; } } - if (keyFile.has_key ("Coarse Transformation", "VerticalFlip")) { - coarse.vflip = keyFile.get_boolean ("Coarse Transformation", "VerticalFlip"); + if (keyFile.has_key ("Coarse Transformation", "VerticalFlip")) { + coarse.vflip = keyFile.get_boolean ("Coarse Transformation", "VerticalFlip"); if (pedited) { pedited->coarse.vflip = true; @@ -6968,9 +7040,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load rotate +// load rotate if (keyFile.has_group ("Rotation")) { - if (keyFile.has_key ("Rotation", "Degree")) { + if (keyFile.has_key ("Rotation", "Degree")) { rotate.degree = keyFile.get_double ("Rotation", "Degree"); if (pedited) { @@ -6979,9 +7051,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load commonTrans +// load commonTrans if (keyFile.has_group ("Common Properties for Transformations")) { - if (keyFile.has_key ("Common Properties for Transformations", "AutoFill")) { + if (keyFile.has_key ("Common Properties for Transformations", "AutoFill")) { commonTrans.autofill = keyFile.get_boolean ("Common Properties for Transformations", "AutoFill"); if (pedited) { @@ -6990,10 +7062,10 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load distortion +// load distortion if (keyFile.has_group ("Distortion")) { - if (keyFile.has_key ("Distortion", "Amount")) { - distortion.amount = keyFile.get_double ("Distortion", "Amount"); + if (keyFile.has_key ("Distortion", "Amount")) { + distortion.amount = keyFile.get_double ("Distortion", "Amount"); if (pedited) { pedited->distortion.amount = true; @@ -7001,7 +7073,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // lens profile +// lens profile if (keyFile.has_group ("LensProfile")) { if (keyFile.has_key ("LensProfile", "LCPFile")) { lensProf.lcpFile = expandRelativePath (fname, "", keyFile.get_string ("LensProfile", "LCPFile")); @@ -7036,9 +7108,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load perspective correction +// load perspective correction if (keyFile.has_group ("Perspective")) { - if (keyFile.has_key ("Perspective", "Horizontal")) { + if (keyFile.has_key ("Perspective", "Horizontal")) { perspective.horizontal = keyFile.get_double ("Perspective", "Horizontal"); if (pedited) { @@ -7046,8 +7118,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Perspective", "Vertical")) { - perspective.vertical = keyFile.get_double ("Perspective", "Vertical"); + if (keyFile.has_key ("Perspective", "Vertical")) { + perspective.vertical = keyFile.get_double ("Perspective", "Vertical"); if (pedited) { pedited->perspective.vertical = true; @@ -7055,26 +7127,26 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load gradient +// load gradient if (keyFile.has_group ("Gradient")) { - if (keyFile.has_key ("Gradient", "Enabled")) { - gradient.enabled = keyFile.get_boolean ("Gradient", "Enabled"); + if (keyFile.has_key ("Gradient", "Enabled")) { + gradient.enabled = keyFile.get_boolean ("Gradient", "Enabled"); if (pedited) { pedited->gradient.enabled = true; } } - if (keyFile.has_key ("Gradient", "Degree")) { - gradient.degree = keyFile.get_double ("Gradient", "Degree"); + if (keyFile.has_key ("Gradient", "Degree")) { + gradient.degree = keyFile.get_double ("Gradient", "Degree"); if (pedited) { pedited->gradient.degree = true; } } - if (keyFile.has_key ("Gradient", "Feather")) { - gradient.feather = keyFile.get_integer ("Gradient", "Feather"); + if (keyFile.has_key ("Gradient", "Feather")) { + gradient.feather = keyFile.get_integer ("Gradient", "Feather"); if (pedited) { pedited->gradient.feather = true; @@ -7082,23 +7154,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Gradient", "Strength")) { - gradient.strength = keyFile.get_double ("Gradient", "Strength"); + gradient.strength = keyFile.get_double ("Gradient", "Strength"); if (pedited) { pedited->gradient.strength = true; } } - if (keyFile.has_key ("Gradient", "CenterX")) { - gradient.centerX = keyFile.get_integer ("Gradient", "CenterX"); + if (keyFile.has_key ("Gradient", "CenterX")) { + gradient.centerX = keyFile.get_integer ("Gradient", "CenterX"); if (pedited) { pedited->gradient.centerX = true; } } - if (keyFile.has_key ("Gradient", "CenterY")) { - gradient.centerY = keyFile.get_integer ("Gradient", "CenterY"); + if (keyFile.has_key ("Gradient", "CenterY")) { + gradient.centerY = keyFile.get_integer ("Gradient", "CenterY"); if (pedited) { pedited->gradient.centerY = true; @@ -7107,8 +7179,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_group ("PCVignette")) { - if (keyFile.has_key ("PCVignette", "Enabled")) { - pcvignette.enabled = keyFile.get_boolean ("PCVignette", "Enabled"); + if (keyFile.has_key ("PCVignette", "Enabled")) { + pcvignette.enabled = keyFile.get_boolean ("PCVignette", "Enabled"); if (pedited) { pedited->pcvignette.enabled = true; @@ -7116,23 +7188,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("PCVignette", "Strength")) { - pcvignette.strength = keyFile.get_double ("PCVignette", "Strength"); + pcvignette.strength = keyFile.get_double ("PCVignette", "Strength"); if (pedited) { pedited->pcvignette.strength = true; } } - if (keyFile.has_key ("PCVignette", "Feather")) { - pcvignette.feather = keyFile.get_integer ("PCVignette", "Feather"); + if (keyFile.has_key ("PCVignette", "Feather")) { + pcvignette.feather = keyFile.get_integer ("PCVignette", "Feather"); if (pedited) { pedited->pcvignette.feather = true; } } - if (keyFile.has_key ("PCVignette", "Roundness")) { - pcvignette.roundness = keyFile.get_integer ("PCVignette", "Roundness"); + if (keyFile.has_key ("PCVignette", "Roundness")) { + pcvignette.roundness = keyFile.get_integer ("PCVignette", "Roundness"); if (pedited) { pedited->pcvignette.roundness = true; @@ -7142,8 +7214,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) // load c/a correction if (keyFile.has_group ("CACorrection")) { - if (keyFile.has_key ("CACorrection", "Red")) { - cacorrection.red = keyFile.get_double ("CACorrection", "Red"); + if (keyFile.has_key ("CACorrection", "Red")) { + cacorrection.red = keyFile.get_double ("CACorrection", "Red"); if (pedited) { pedited->cacorrection.red = true; @@ -7159,9 +7231,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load vignetting correction +// load vignetting correction if (keyFile.has_group ("Vignetting Correction")) { - if (keyFile.has_key ("Vignetting Correction", "Amount")) { + if (keyFile.has_key ("Vignetting Correction", "Amount")) { vignetting.amount = keyFile.get_integer ("Vignetting Correction", "Amount"); if (pedited) { @@ -7169,7 +7241,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Vignetting Correction", "Radius")) { + if (keyFile.has_key ("Vignetting Correction", "Radius")) { vignetting.radius = keyFile.get_integer ("Vignetting Correction", "Radius"); if (pedited) { @@ -7185,7 +7257,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Vignetting Correction", "CenterX")) { + if (keyFile.has_key ("Vignetting Correction", "CenterX")) { vignetting.centerX = keyFile.get_integer ("Vignetting Correction", "CenterX"); if (pedited) { @@ -7193,7 +7265,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Vignetting Correction", "CenterY")) { + if (keyFile.has_key ("Vignetting Correction", "CenterY")) { vignetting.centerY = keyFile.get_integer ("Vignetting Correction", "CenterY"); if (pedited) { @@ -7202,25 +7274,25 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load resize settings +// load resize settings if (keyFile.has_group ("Resize")) { - if (keyFile.has_key ("Resize", "Enabled")) { - resize.enabled = keyFile.get_boolean ("Resize", "Enabled"); + if (keyFile.has_key ("Resize", "Enabled")) { + resize.enabled = keyFile.get_boolean ("Resize", "Enabled"); if (pedited) { pedited->resize.enabled = true; } } - if (keyFile.has_key ("Resize", "Scale")) { - resize.scale = keyFile.get_double ("Resize", "Scale"); + if (keyFile.has_key ("Resize", "Scale")) { + resize.scale = keyFile.get_double ("Resize", "Scale"); if (pedited) { pedited->resize.scale = true; } } - if (keyFile.has_key ("Resize", "AppliesTo")) { + if (keyFile.has_key ("Resize", "AppliesTo")) { resize.appliesTo = keyFile.get_string ("Resize", "AppliesTo"); if (pedited) { @@ -7228,8 +7300,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Resize", "Method")) { - resize.method = keyFile.get_string ("Resize", "Method"); + if (keyFile.has_key ("Resize", "Method")) { + resize.method = keyFile.get_string ("Resize", "Method"); if (pedited) { pedited->resize.method = true; @@ -7237,23 +7309,23 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Resize", "DataSpecified")) { - resize.dataspec = keyFile.get_integer ("Resize", "DataSpecified"); + resize.dataspec = keyFile.get_integer ("Resize", "DataSpecified"); if (pedited) { pedited->resize.dataspec = true; } } - if (keyFile.has_key ("Resize", "Width")) { - resize.width = keyFile.get_integer ("Resize", "Width"); + if (keyFile.has_key ("Resize", "Width")) { + resize.width = keyFile.get_integer ("Resize", "Width"); if (pedited) { pedited->resize.width = true; } } - if (keyFile.has_key ("Resize", "Height")) { - resize.height = keyFile.get_integer ("Resize", "Height"); + if (keyFile.has_key ("Resize", "Height")) { + resize.height = keyFile.get_integer ("Resize", "Height"); if (pedited) { pedited->resize.height = true; @@ -7261,33 +7333,33 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load post resize sharpening +// load post resize sharpening if (keyFile.has_group ("PostResizeSharpening")) { - if (keyFile.has_key ("PostResizeSharpening", "Enabled")) { - prsharpening.enabled = keyFile.get_boolean ("PostResizeSharpening", "Enabled"); + if (keyFile.has_key ("PostResizeSharpening", "Enabled")) { + prsharpening.enabled = keyFile.get_boolean ("PostResizeSharpening", "Enabled"); if (pedited) { pedited->prsharpening.enabled = true; } } - if (keyFile.has_key ("PostResizeSharpening", "Radius")) { - prsharpening.radius = keyFile.get_double ("PostResizeSharpening", "Radius"); + if (keyFile.has_key ("PostResizeSharpening", "Radius")) { + prsharpening.radius = keyFile.get_double ("PostResizeSharpening", "Radius"); if (pedited) { pedited->prsharpening.radius = true; } } - if (keyFile.has_key ("PostResizeSharpening", "Amount")) { - prsharpening.amount = keyFile.get_integer ("PostResizeSharpening", "Amount"); + if (keyFile.has_key ("PostResizeSharpening", "Amount")) { + prsharpening.amount = keyFile.get_integer ("PostResizeSharpening", "Amount"); if (pedited) { pedited->prsharpening.amount = true; } } - if (keyFile.has_key ("PostResizeSharpening", "Threshold")) { + if (keyFile.has_key ("PostResizeSharpening", "Threshold")) { if (ppVersion < 302) { int thresh = min (keyFile.get_integer ("PostResizeSharpening", "Threshold"), 2000); prsharpening.threshold.setValues (thresh, thresh, 2000, 2000); // TODO: 2000 is the maximum value and is taken of rtgui/sharpening.cc ; should be changed by the tool modularization @@ -7304,39 +7376,39 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("PostResizeSharpening", "OnlyEdges")) { - prsharpening.edgesonly = keyFile.get_boolean ("PostResizeSharpening", "OnlyEdges"); + if (keyFile.has_key ("PostResizeSharpening", "OnlyEdges")) { + prsharpening.edgesonly = keyFile.get_boolean ("PostResizeSharpening", "OnlyEdges"); if (pedited) { pedited->prsharpening.edgesonly = true; } } - if (keyFile.has_key ("PostResizeSharpening", "EdgedetectionRadius")) { - prsharpening.edges_radius = keyFile.get_double ("PostResizeSharpening", "EdgedetectionRadius"); + if (keyFile.has_key ("PostResizeSharpening", "EdgedetectionRadius")) { + prsharpening.edges_radius = keyFile.get_double ("PostResizeSharpening", "EdgedetectionRadius"); if (pedited) { pedited->prsharpening.edges_radius = true; } } - if (keyFile.has_key ("PostResizeSharpening", "EdgeTolerance")) { - prsharpening.edges_tolerance = keyFile.get_integer ("PostResizeSharpening", "EdgeTolerance"); + if (keyFile.has_key ("PostResizeSharpening", "EdgeTolerance")) { + prsharpening.edges_tolerance = keyFile.get_integer ("PostResizeSharpening", "EdgeTolerance"); if (pedited) { pedited->prsharpening.edges_tolerance = true; } } - if (keyFile.has_key ("PostResizeSharpening", "HalocontrolEnabled")) { - prsharpening.halocontrol = keyFile.get_boolean ("PostResizeSharpening", "HalocontrolEnabled"); + if (keyFile.has_key ("PostResizeSharpening", "HalocontrolEnabled")) { + prsharpening.halocontrol = keyFile.get_boolean ("PostResizeSharpening", "HalocontrolEnabled"); if (pedited) { pedited->prsharpening.halocontrol = true; } } - if (keyFile.has_key ("PostResizeSharpening", "HalocontrolAmount")) { + if (keyFile.has_key ("PostResizeSharpening", "HalocontrolAmount")) { prsharpening.halocontrol_amount = keyFile.get_integer ("PostResizeSharpening", "HalocontrolAmount"); if (pedited) { @@ -7344,40 +7416,40 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("PostResizeSharpening", "Method")) { - prsharpening.method = keyFile.get_string ("PostResizeSharpening", "Method"); + if (keyFile.has_key ("PostResizeSharpening", "Method")) { + prsharpening.method = keyFile.get_string ("PostResizeSharpening", "Method"); if (pedited) { pedited->prsharpening.method = true; } } - if (keyFile.has_key ("PostResizeSharpening", "DeconvRadius")) { - prsharpening.deconvradius = keyFile.get_double ("PostResizeSharpening", "DeconvRadius"); + if (keyFile.has_key ("PostResizeSharpening", "DeconvRadius")) { + prsharpening.deconvradius = keyFile.get_double ("PostResizeSharpening", "DeconvRadius"); if (pedited) { pedited->prsharpening.deconvradius = true; } } - if (keyFile.has_key ("PostResizeSharpening", "DeconvAmount")) { - prsharpening.deconvamount = keyFile.get_integer ("PostResizeSharpening", "DeconvAmount"); + if (keyFile.has_key ("PostResizeSharpening", "DeconvAmount")) { + prsharpening.deconvamount = keyFile.get_integer ("PostResizeSharpening", "DeconvAmount"); if (pedited) { pedited->prsharpening.deconvamount = true; } } - if (keyFile.has_key ("PostResizeSharpening", "DeconvDamping")) { - prsharpening.deconvdamping = keyFile.get_integer ("PostResizeSharpening", "DeconvDamping"); + if (keyFile.has_key ("PostResizeSharpening", "DeconvDamping")) { + prsharpening.deconvdamping = keyFile.get_integer ("PostResizeSharpening", "DeconvDamping"); if (pedited) { pedited->prsharpening.deconvdamping = true; } } - if (keyFile.has_key ("PostResizeSharpening", "DeconvIterations")) { - prsharpening.deconviter = keyFile.get_integer ("PostResizeSharpening", "DeconvIterations"); + if (keyFile.has_key ("PostResizeSharpening", "DeconvIterations")) { + prsharpening.deconviter = keyFile.get_integer ("PostResizeSharpening", "DeconvIterations"); if (pedited) { pedited->prsharpening.deconviter = true; @@ -7385,51 +7457,50 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load color management settings +// load color management settings if (keyFile.has_group ("Color Management")) { - - if (keyFile.has_key ("Color Management", "InputProfile")) { - icm.input = expandRelativePath (fname, "file:", keyFile.get_string ("Color Management", "InputProfile")); + if (keyFile.has_key ("Color Management", "InputProfile")) { + icm.input = expandRelativePath (fname, "file:", keyFile.get_string ("Color Management", "InputProfile")); if (pedited) { pedited->icm.input = true; } } - if (keyFile.has_key ("Color Management", "ToneCurve")) { - icm.toneCurve = keyFile.get_boolean ("Color Management", "ToneCurve"); + if (keyFile.has_key ("Color Management", "ToneCurve")) { + icm.toneCurve = keyFile.get_boolean ("Color Management", "ToneCurve"); if (pedited) { pedited->icm.toneCurve = true; } } - if (keyFile.has_key ("Color Management", "ApplyLookTable")) { - icm.applyLookTable = keyFile.get_boolean ("Color Management", "ApplyLookTable"); + if (keyFile.has_key ("Color Management", "ApplyLookTable")) { + icm.applyLookTable = keyFile.get_boolean ("Color Management", "ApplyLookTable"); if (pedited) { pedited->icm.applyLookTable = true; } } - if (keyFile.has_key ("Color Management", "ApplyBaselineExposureOffset")) { - icm.applyBaselineExposureOffset = keyFile.get_boolean ("Color Management", "ApplyBaselineExposureOffset"); + if (keyFile.has_key ("Color Management", "ApplyBaselineExposureOffset")) { + icm.applyBaselineExposureOffset = keyFile.get_boolean ("Color Management", "ApplyBaselineExposureOffset"); if (pedited) { pedited->icm.applyBaselineExposureOffset = true; } } - if (keyFile.has_key ("Color Management", "ApplyHueSatMap")) { - icm.applyHueSatMap = keyFile.get_boolean ("Color Management", "ApplyHueSatMap"); + if (keyFile.has_key ("Color Management", "ApplyHueSatMap")) { + icm.applyHueSatMap = keyFile.get_boolean ("Color Management", "ApplyHueSatMap"); if (pedited) { pedited->icm.applyHueSatMap = true; } } - if (keyFile.has_key ("Color Management", "DCPIlluminant")) { - icm.dcpIlluminant = keyFile.get_integer ("Color Management", "DCPIlluminant"); + if (keyFile.has_key ("Color Management", "DCPIlluminant")) { + icm.dcpIlluminant = keyFile.get_integer ("Color Management", "DCPIlluminant"); if (pedited) { pedited->icm.dcpIlluminant = true; @@ -7437,22 +7508,22 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("Color Management", "WorkingProfile")) { - icm.working = keyFile.get_string ("Color Management", "WorkingProfile"); + icm.working = keyFile.get_string ("Color Management", "WorkingProfile"); if (pedited) { pedited->icm.working = true; } } - if (keyFile.has_key ("Color Management", "OutputProfile")) { - icm.output = keyFile.get_string ("Color Management", "OutputProfile"); + if (keyFile.has_key ("Color Management", "OutputProfile")) { + icm.output = keyFile.get_string ("Color Management", "OutputProfile"); if (pedited) { pedited->icm.output = true; } } - if (keyFile.has_key ("Color Management", "OutputProfileIntent")) { + if (keyFile.has_key ("Color Management", "OutputProfileIntent")) { Glib::ustring intent = keyFile.get_string ("Color Management", "OutputProfileIntent"); if (intent == "Perceptual") { @@ -7470,40 +7541,40 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Color Management", "OutputBPC")) { - icm.outputBPC = keyFile.get_boolean ("Color Management", "OutputBPC"); + if (keyFile.has_key ("Color Management", "OutputBPC")) { + icm.outputBPC = keyFile.get_boolean ("Color Management", "OutputBPC"); if (pedited) { pedited->icm.outputBPC = true; } } - if (keyFile.has_key ("Color Management", "Gammafree")) { - icm.gamma = keyFile.get_string ("Color Management", "Gammafree"); + if (keyFile.has_key ("Color Management", "Gammafree")) { + icm.gamma = keyFile.get_string ("Color Management", "Gammafree"); if (pedited) { pedited->icm.gamfree = true; } } - if (keyFile.has_key ("Color Management", "Freegamma")) { - icm.freegamma = keyFile.get_boolean ("Color Management", "Freegamma"); + if (keyFile.has_key ("Color Management", "Freegamma")) { + icm.freegamma = keyFile.get_boolean ("Color Management", "Freegamma"); if (pedited) { pedited->icm.freegamma = true; } } - if (keyFile.has_key ("Color Management", "GammaValue")) { - icm.gampos = keyFile.get_double ("Color Management", "GammaValue"); + if (keyFile.has_key ("Color Management", "GammaValue")) { + icm.gampos = keyFile.get_double ("Color Management", "GammaValue"); if (pedited) { pedited->icm.gampos = true; } } - if (keyFile.has_key ("Color Management", "GammaSlope")) { - icm.slpos = keyFile.get_double ("Color Management", "GammaSlope"); + if (keyFile.has_key ("Color Management", "GammaSlope")) { + icm.slpos = keyFile.get_double ("Color Management", "GammaSlope"); if (pedited) { pedited->icm.slpos = true; @@ -7512,9 +7583,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - // load wavelet wavelet parameters +// load wavelet wavelet parameters if (keyFile.has_group ("Wavelet")) { - if (keyFile.has_key ("Wavelet", "Enabled")) { + if (keyFile.has_key ("Wavelet", "Enabled")) { wavelet.enabled = keyFile.get_boolean ("Wavelet", "Enabled"); if (pedited) { @@ -7522,7 +7593,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Strength")) { + if (keyFile.has_key ("Wavelet", "Strength")) { wavelet.strength = keyFile.get_integer ("Wavelet", "Strength"); if (pedited) { @@ -7530,7 +7601,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Balance")) { + if (keyFile.has_key ("Wavelet", "Balance")) { wavelet.balance = keyFile.get_integer ("Wavelet", "Balance"); if (pedited) { @@ -7538,7 +7609,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Iter")) { + if (keyFile.has_key ("Wavelet", "Iter")) { wavelet.iter = keyFile.get_integer ("Wavelet", "Iter"); if (pedited) { @@ -7578,7 +7649,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBgreenhigh")) { + if (keyFile.has_key ("Wavelet", "CBgreenhigh")) { wavelet.greenhigh = keyFile.get_integer ("Wavelet", "CBgreenhigh"); if (pedited) { @@ -7586,7 +7657,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBgreenmed")) { + if (keyFile.has_key ("Wavelet", "CBgreenmed")) { wavelet.greenmed = keyFile.get_integer ("Wavelet", "CBgreenmed"); if (pedited) { @@ -7594,7 +7665,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBgreenlow")) { + if (keyFile.has_key ("Wavelet", "CBgreenlow")) { wavelet.greenlow = keyFile.get_integer ("Wavelet", "CBgreenlow"); if (pedited) { @@ -7602,7 +7673,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBbluehigh")) { + if (keyFile.has_key ("Wavelet", "CBbluehigh")) { wavelet.bluehigh = keyFile.get_integer ("Wavelet", "CBbluehigh"); if (pedited) { @@ -7610,7 +7681,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBbluemed")) { + if (keyFile.has_key ("Wavelet", "CBbluemed")) { wavelet.bluemed = keyFile.get_integer ("Wavelet", "CBbluemed"); if (pedited) { @@ -7618,7 +7689,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CBbluelow")) { + if (keyFile.has_key ("Wavelet", "CBbluelow")) { wavelet.bluelow = keyFile.get_integer ("Wavelet", "CBbluelow"); if (pedited) { @@ -7626,7 +7697,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } -// if (keyFile.has_key ("Wavelet", "Edgreinf")) {wavelet.edgreinf = keyFile.get_boolean ("Wavelet", "Edgreinf");if (pedited) pedited->wavelet.edgreinf = true;} +// if (keyFile.has_key ("Wavelet", "Edgreinf")) {wavelet.edgreinf = keyFile.get_boolean ("Wavelet", "Edgreinf");if (pedited) pedited->wavelet.edgreinf = true;} if (keyFile.has_key ("Wavelet", "Lipst")) { wavelet.lipst = keyFile.get_boolean ("Wavelet", "Lipst"); @@ -7651,296 +7722,296 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "LevMethod")) { - wavelet.Lmethod = keyFile.get_string ("Wavelet", "LevMethod"); + if (keyFile.has_key ("Wavelet", "LevMethod")) { + wavelet.Lmethod = keyFile.get_string ("Wavelet", "LevMethod"); if (pedited) { pedited->wavelet.Lmethod = true; } } - if (keyFile.has_key ("Wavelet", "ChoiceLevMethod")) { - wavelet.CLmethod = keyFile.get_string ("Wavelet", "ChoiceLevMethod"); + if (keyFile.has_key ("Wavelet", "ChoiceLevMethod")) { + wavelet.CLmethod = keyFile.get_string ("Wavelet", "ChoiceLevMethod"); if (pedited) { pedited->wavelet.CLmethod = true; } } - if (keyFile.has_key ("Wavelet", "BackMethod")) { - wavelet.Backmethod = keyFile.get_string ("Wavelet", "BackMethod"); + if (keyFile.has_key ("Wavelet", "BackMethod")) { + wavelet.Backmethod = keyFile.get_string ("Wavelet", "BackMethod"); if (pedited) { pedited->wavelet.Backmethod = true; } } - if (keyFile.has_key ("Wavelet", "TilesMethod")) { - wavelet.Tilesmethod = keyFile.get_string ("Wavelet", "TilesMethod"); + if (keyFile.has_key ("Wavelet", "TilesMethod")) { + wavelet.Tilesmethod = keyFile.get_string ("Wavelet", "TilesMethod"); if (pedited) { pedited->wavelet.Tilesmethod = true; } } - if (keyFile.has_key ("Wavelet", "DaubMethod")) { - wavelet.daubcoeffmethod = keyFile.get_string ("Wavelet", "DaubMethod"); + if (keyFile.has_key ("Wavelet", "DaubMethod")) { + wavelet.daubcoeffmethod = keyFile.get_string ("Wavelet", "DaubMethod"); if (pedited) { pedited->wavelet.daubcoeffmethod = true; } } - if (keyFile.has_key ("Wavelet", "CHromaMethod")) { - wavelet.CHmethod = keyFile.get_string ("Wavelet", "CHromaMethod"); + if (keyFile.has_key ("Wavelet", "CHromaMethod")) { + wavelet.CHmethod = keyFile.get_string ("Wavelet", "CHromaMethod"); if (pedited) { pedited->wavelet.CHmethod = true; } } - if (keyFile.has_key ("Wavelet", "Medgreinf")) { - wavelet.Medgreinf = keyFile.get_string ("Wavelet", "Medgreinf"); + if (keyFile.has_key ("Wavelet", "Medgreinf")) { + wavelet.Medgreinf = keyFile.get_string ("Wavelet", "Medgreinf"); if (pedited) { pedited->wavelet.Medgreinf = true; } } - if (keyFile.has_key ("Wavelet", "CHSLromaMethod")) { - wavelet.CHSLmethod = keyFile.get_string ("Wavelet", "CHSLromaMethod"); + if (keyFile.has_key ("Wavelet", "CHSLromaMethod")) { + wavelet.CHSLmethod = keyFile.get_string ("Wavelet", "CHSLromaMethod"); if (pedited) { pedited->wavelet.CHSLmethod = true; } } - if (keyFile.has_key ("Wavelet", "EDMethod")) { - wavelet.EDmethod = keyFile.get_string ("Wavelet", "EDMethod"); + if (keyFile.has_key ("Wavelet", "EDMethod")) { + wavelet.EDmethod = keyFile.get_string ("Wavelet", "EDMethod"); if (pedited) { pedited->wavelet.EDmethod = true; } } - if (keyFile.has_key ("Wavelet", "NPMethod")) { - wavelet.NPmethod = keyFile.get_string ("Wavelet", "NPMethod"); + if (keyFile.has_key ("Wavelet", "NPMethod")) { + wavelet.NPmethod = keyFile.get_string ("Wavelet", "NPMethod"); if (pedited) { pedited->wavelet.NPmethod = true; } } - if (keyFile.has_key ("Wavelet", "BAMethod")) { - wavelet.BAmethod = keyFile.get_string ("Wavelet", "BAMethod"); + if (keyFile.has_key ("Wavelet", "BAMethod")) { + wavelet.BAmethod = keyFile.get_string ("Wavelet", "BAMethod"); if (pedited) { pedited->wavelet.BAmethod = true; } } - if (keyFile.has_key ("Wavelet", "TMMethod")) { - wavelet.TMmethod = keyFile.get_string ("Wavelet", "TMMethod"); + if (keyFile.has_key ("Wavelet", "TMMethod")) { + wavelet.TMmethod = keyFile.get_string ("Wavelet", "TMMethod"); if (pedited) { pedited->wavelet.TMmethod = true; } } - if (keyFile.has_key ("Wavelet", "HSMethod")) { - wavelet.HSmethod = keyFile.get_string ("Wavelet", "HSMethod"); + if (keyFile.has_key ("Wavelet", "HSMethod")) { + wavelet.HSmethod = keyFile.get_string ("Wavelet", "HSMethod"); if (pedited) { pedited->wavelet.HSmethod = true; } } - if (keyFile.has_key ("Wavelet", "DirMethod")) { - wavelet.Dirmethod = keyFile.get_string ("Wavelet", "DirMethod"); + if (keyFile.has_key ("Wavelet", "DirMethod")) { + wavelet.Dirmethod = keyFile.get_string ("Wavelet", "DirMethod"); if (pedited) { pedited->wavelet.Dirmethod = true; } } - if (keyFile.has_key ("Wavelet", "ResidualcontShadow")) { - wavelet.rescon = keyFile.get_integer ("Wavelet", "ResidualcontShadow"); + if (keyFile.has_key ("Wavelet", "ResidualcontShadow")) { + wavelet.rescon = keyFile.get_integer ("Wavelet", "ResidualcontShadow"); if (pedited) { pedited->wavelet.rescon = true; } } - if (keyFile.has_key ("Wavelet", "ResidualcontHighlight")) { - wavelet.resconH = keyFile.get_integer ("Wavelet", "ResidualcontHighlight"); + if (keyFile.has_key ("Wavelet", "ResidualcontHighlight")) { + wavelet.resconH = keyFile.get_integer ("Wavelet", "ResidualcontHighlight"); if (pedited) { pedited->wavelet.resconH = true; } } - if (keyFile.has_key ("Wavelet", "Residualchroma")) { - wavelet.reschro = keyFile.get_integer ("Wavelet", "Residualchroma"); + if (keyFile.has_key ("Wavelet", "Residualchroma")) { + wavelet.reschro = keyFile.get_integer ("Wavelet", "Residualchroma"); if (pedited) { pedited->wavelet.reschro = true; } } - if (keyFile.has_key ("Wavelet", "ResidualTM")) { - wavelet.tmrs = keyFile.get_double ("Wavelet", "ResidualTM"); + if (keyFile.has_key ("Wavelet", "ResidualTM")) { + wavelet.tmrs = keyFile.get_double ("Wavelet", "ResidualTM"); if (pedited) { pedited->wavelet.tmrs = true; } } - if (keyFile.has_key ("Wavelet", "Residualgamma")) { - wavelet.gamma = keyFile.get_double ("Wavelet", "Residualgamma"); + if (keyFile.has_key ("Wavelet", "Residualgamma")) { + wavelet.gamma = keyFile.get_double ("Wavelet", "Residualgamma"); if (pedited) { pedited->wavelet.gamma = true; } } - if (keyFile.has_key ("Wavelet", "ContExtra")) { - wavelet.sup = keyFile.get_integer ("Wavelet", "ContExtra"); + if (keyFile.has_key ("Wavelet", "ContExtra")) { + wavelet.sup = keyFile.get_integer ("Wavelet", "ContExtra"); if (pedited) { pedited->wavelet.sup = true; } } - if (keyFile.has_key ("Wavelet", "HueRangeResidual")) { - wavelet.sky = keyFile.get_double ("Wavelet", "HueRangeResidual"); + if (keyFile.has_key ("Wavelet", "HueRangeResidual")) { + wavelet.sky = keyFile.get_double ("Wavelet", "HueRangeResidual"); if (pedited) { pedited->wavelet.sky = true; } } - if (keyFile.has_key ("Wavelet", "MaxLev")) { - wavelet.thres = keyFile.get_integer ("Wavelet", "MaxLev"); + if (keyFile.has_key ("Wavelet", "MaxLev")) { + wavelet.thres = keyFile.get_integer ("Wavelet", "MaxLev"); if (pedited) { pedited->wavelet.thres = true; } } - if (keyFile.has_key ("Wavelet", "ThresholdHighLight")) { - wavelet.threshold = keyFile.get_integer ("Wavelet", "ThresholdHighLight"); + if (keyFile.has_key ("Wavelet", "ThresholdHighLight")) { + wavelet.threshold = keyFile.get_integer ("Wavelet", "ThresholdHighLight"); if (pedited) { pedited->wavelet.threshold = true; } } - if (keyFile.has_key ("Wavelet", "ThresholdShadow")) { - wavelet.threshold2 = keyFile.get_integer ("Wavelet", "ThresholdShadow"); + if (keyFile.has_key ("Wavelet", "ThresholdShadow")) { + wavelet.threshold2 = keyFile.get_integer ("Wavelet", "ThresholdShadow"); if (pedited) { pedited->wavelet.threshold2 = true; } } - if (keyFile.has_key ("Wavelet", "Edgedetect")) { - wavelet.edgedetect = keyFile.get_integer ("Wavelet", "Edgedetect"); + if (keyFile.has_key ("Wavelet", "Edgedetect")) { + wavelet.edgedetect = keyFile.get_integer ("Wavelet", "Edgedetect"); if (pedited) { pedited->wavelet.edgedetect = true; } } - if (keyFile.has_key ("Wavelet", "Edgedetectthr")) { - wavelet.edgedetectthr = keyFile.get_integer ("Wavelet", "Edgedetectthr"); + if (keyFile.has_key ("Wavelet", "Edgedetectthr")) { + wavelet.edgedetectthr = keyFile.get_integer ("Wavelet", "Edgedetectthr"); if (pedited) { pedited->wavelet.edgedetectthr = true; } } - if (keyFile.has_key ("Wavelet", "EdgedetectthrHi")) { - wavelet.edgedetectthr2 = keyFile.get_integer ("Wavelet", "EdgedetectthrHi"); + if (keyFile.has_key ("Wavelet", "EdgedetectthrHi")) { + wavelet.edgedetectthr2 = keyFile.get_integer ("Wavelet", "EdgedetectthrHi"); if (pedited) { pedited->wavelet.edgedetectthr2 = true; } } - if (keyFile.has_key ("Wavelet", "Edgesensi")) { - wavelet.edgesensi = keyFile.get_integer ("Wavelet", "Edgesensi"); + if (keyFile.has_key ("Wavelet", "Edgesensi")) { + wavelet.edgesensi = keyFile.get_integer ("Wavelet", "Edgesensi"); if (pedited) { pedited->wavelet.edgesensi = true; } } - if (keyFile.has_key ("Wavelet", "Edgeampli")) { - wavelet.edgeampli = keyFile.get_integer ("Wavelet", "Edgeampli"); + if (keyFile.has_key ("Wavelet", "Edgeampli")) { + wavelet.edgeampli = keyFile.get_integer ("Wavelet", "Edgeampli"); if (pedited) { pedited->wavelet.edgeampli = true; } } - if (keyFile.has_key ("Wavelet", "ThresholdChroma")) { - wavelet.chroma = keyFile.get_integer ("Wavelet", "ThresholdChroma"); + if (keyFile.has_key ("Wavelet", "ThresholdChroma")) { + wavelet.chroma = keyFile.get_integer ("Wavelet", "ThresholdChroma"); if (pedited) { pedited->wavelet.chroma = true; } } - if (keyFile.has_key ("Wavelet", "ChromaLink")) { - wavelet.chro = keyFile.get_integer ("Wavelet", "ChromaLink"); + if (keyFile.has_key ("Wavelet", "ChromaLink")) { + wavelet.chro = keyFile.get_integer ("Wavelet", "ChromaLink"); if (pedited) { pedited->wavelet.chro = true; } } - if (keyFile.has_key ("Wavelet", "Contrast")) { - wavelet.contrast = keyFile.get_integer ("Wavelet", "Contrast"); + if (keyFile.has_key ("Wavelet", "Contrast")) { + wavelet.contrast = keyFile.get_integer ("Wavelet", "Contrast"); if (pedited) { pedited->wavelet.contrast = true; } } - if (keyFile.has_key ("Wavelet", "Edgrad")) { - wavelet.edgrad = keyFile.get_integer ("Wavelet", "Edgrad"); + if (keyFile.has_key ("Wavelet", "Edgrad")) { + wavelet.edgrad = keyFile.get_integer ("Wavelet", "Edgrad"); if (pedited) { pedited->wavelet.edgrad = true; } } - if (keyFile.has_key ("Wavelet", "Edgval")) { - wavelet.edgval = keyFile.get_integer ("Wavelet", "Edgval"); + if (keyFile.has_key ("Wavelet", "Edgval")) { + wavelet.edgval = keyFile.get_integer ("Wavelet", "Edgval"); if (pedited) { pedited->wavelet.edgval = true; } } - if (keyFile.has_key ("Wavelet", "ThrEdg")) { - wavelet.edgthresh = keyFile.get_integer ("Wavelet", "ThrEdg"); + if (keyFile.has_key ("Wavelet", "ThrEdg")) { + wavelet.edgthresh = keyFile.get_integer ("Wavelet", "ThrEdg"); if (pedited) { pedited->wavelet.edgthresh = true; } } - if (keyFile.has_key ("Wavelet", "ThresholdResidShadow")) { - wavelet.thr = keyFile.get_integer ("Wavelet", "ThresholdResidShadow"); + if (keyFile.has_key ("Wavelet", "ThresholdResidShadow")) { + wavelet.thr = keyFile.get_integer ("Wavelet", "ThresholdResidShadow"); if (pedited) { pedited->wavelet.thr = true; } } - if (keyFile.has_key ("Wavelet", "ThresholdResidHighLight")) { - wavelet.thrH = keyFile.get_integer ("Wavelet", "ThresholdResidHighLight"); + if (keyFile.has_key ("Wavelet", "ThresholdResidHighLight")) { + wavelet.thrH = keyFile.get_integer ("Wavelet", "ThresholdResidHighLight"); if (pedited) { pedited->wavelet.thrH = true; @@ -7956,7 +8027,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "OpacityCurveRG")) { + if (keyFile.has_key ("Wavelet", "OpacityCurveRG")) { wavelet.opacityCurveRG = keyFile.get_double_list ("Wavelet", "OpacityCurveRG"); avoidEmptyCurve (wavelet.opacityCurveRG); @@ -7965,7 +8036,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "OpacityCurveBY")) { + if (keyFile.has_key ("Wavelet", "OpacityCurveBY")) { wavelet.opacityCurveBY = keyFile.get_double_list ("Wavelet", "OpacityCurveBY"); avoidEmptyCurve (wavelet.opacityCurveBY); @@ -7974,7 +8045,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "OpacityCurveW")) { + if (keyFile.has_key ("Wavelet", "OpacityCurveW")) { wavelet.opacityCurveW = keyFile.get_double_list ("Wavelet", "OpacityCurveW"); avoidEmptyCurve (wavelet.opacityCurveW); @@ -7983,7 +8054,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "OpacityCurveWL")) { + if (keyFile.has_key ("Wavelet", "OpacityCurveWL")) { wavelet.opacityCurveWL = keyFile.get_double_list ("Wavelet", "OpacityCurveWL"); avoidEmptyCurve (wavelet.opacityCurveWL); @@ -7992,7 +8063,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "HHcurve")) { + if (keyFile.has_key ("Wavelet", "HHcurve")) { wavelet.hhcurve = keyFile.get_double_list ("Wavelet", "HHcurve"); avoidEmptyCurve (wavelet.hhcurve); @@ -8001,7 +8072,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "CHcurve")) { + if (keyFile.has_key ("Wavelet", "CHcurve")) { wavelet.Chcurve = keyFile.get_double_list ("Wavelet", "CHcurve"); avoidEmptyCurve (wavelet.Chcurve); @@ -8010,7 +8081,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "WavclCurve")) { + if (keyFile.has_key ("Wavelet", "WavclCurve")) { wavelet.wavclCurve = keyFile.get_double_list ("Wavelet", "WavclCurve"); avoidEmptyCurve (wavelet.wavclCurve); @@ -8019,7 +8090,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Hueskin")) { + if (keyFile.has_key ("Wavelet", "Hueskin")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "Hueskin"); if (thresh.size() >= 4) { @@ -8031,7 +8102,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "HueRange")) { + if (keyFile.has_key ("Wavelet", "HueRange")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "HueRange"); if (thresh.size() >= 4) { @@ -8043,7 +8114,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "HLRange")) { + if (keyFile.has_key ("Wavelet", "HLRange")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "HLRange"); if (thresh.size() >= 4) { @@ -8055,7 +8126,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "SHRange")) { + if (keyFile.has_key ("Wavelet", "SHRange")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "SHRange"); if (thresh.size() >= 4) { @@ -8067,7 +8138,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Edgcont")) { + if (keyFile.has_key ("Wavelet", "Edgcont")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "Edgcont"); if (thresh.size() >= 4) { @@ -8079,7 +8150,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Level0noise")) { + if (keyFile.has_key ("Wavelet", "Level0noise")) { const std::vector thresh = keyFile.get_double_list ("Wavelet", "Level0noise"); if (thresh.size() >= 2) { @@ -8091,7 +8162,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Level1noise")) { + if (keyFile.has_key ("Wavelet", "Level1noise")) { const std::vector thresh = keyFile.get_double_list ("Wavelet", "Level1noise"); if (thresh.size() >= 2) { @@ -8103,7 +8174,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Level2noise")) { + if (keyFile.has_key ("Wavelet", "Level2noise")) { const std::vector thresh = keyFile.get_double_list ("Wavelet", "Level2noise"); if (thresh.size() >= 2) { @@ -8115,7 +8186,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Level3noise")) { + if (keyFile.has_key ("Wavelet", "Level3noise")) { const std::vector thresh = keyFile.get_double_list ("Wavelet", "Level3noise"); if (thresh.size() >= 2) { @@ -8128,7 +8199,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Wavelet", "Pastlev")) { + if (keyFile.has_key ("Wavelet", "Pastlev")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "Pastlev"); if (thresh.size() >= 4) { @@ -8140,7 +8211,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Wavelet", "Satlev")) { + if (keyFile.has_key ("Wavelet", "Satlev")) { const std::vector thresh = keyFile.get_integer_list ("Wavelet", "Satlev"); if (thresh.size() >= 4) { @@ -8185,7 +8256,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) wavelet.c[i] = keyFile.get_integer ("Wavelet", ss.str()); if (pedited) { - pedited->wavelet.c[i] = true; + pedited->wavelet.c[i] = true; } } } @@ -8198,7 +8269,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) wavelet.ch[i] = keyFile.get_integer ("Wavelet", ss.str()); if (pedited) { - pedited->wavelet.ch[i] = true; + pedited->wavelet.ch[i] = true; } } } @@ -8246,9 +8317,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - // load directional pyramid equalizer parameters +// load directional pyramid equalizer parameters if (keyFile.has_group ("Directional Pyramid Equalizer")) { - if (keyFile.has_key ("Directional Pyramid Equalizer", "Enabled")) { + if (keyFile.has_key ("Directional Pyramid Equalizer", "Enabled")) { dirpyrequalizer.enabled = keyFile.get_boolean ("Directional Pyramid Equalizer", "Enabled"); if (pedited) { @@ -8256,7 +8327,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("Directional Pyramid Equalizer", "Gamutlab")) { + if (keyFile.has_key ("Directional Pyramid Equalizer", "Gamutlab")) { dirpyrequalizer.gamutlab = keyFile.get_boolean ("Directional Pyramid Equalizer", "Gamutlab"); if (pedited) { @@ -8265,8 +8336,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } - if (keyFile.has_key ("Directional Pyramid Equalizer", "cbdlMethod")) { - dirpyrequalizer.cbdlMethod = keyFile.get_string ("Directional Pyramid Equalizer", "cbdlMethod"); + if (keyFile.has_key ("Directional Pyramid Equalizer", "cbdlMethod")) { + dirpyrequalizer.cbdlMethod = keyFile.get_string ("Directional Pyramid Equalizer", "cbdlMethod"); if (pedited) { pedited->dirpyrequalizer.cbdlMethod = true; @@ -8274,8 +8345,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } -// if (keyFile.has_key ("Directional Pyramid Equalizer", "Algorithm")) { dirpyrequalizer.algo = keyFile.get_string ("Directional Pyramid Equalizer", "Algorithm"); if (pedited) pedited->dirpyrequalizer.algo = true; } - if (keyFile.has_key ("Directional Pyramid Equalizer", "Hueskin")) { +// if (keyFile.has_key ("Directional Pyramid Equalizer", "Algorithm")) { dirpyrequalizer.algo = keyFile.get_string ("Directional Pyramid Equalizer", "Algorithm"); if (pedited) pedited->dirpyrequalizer.algo = true; } + if (keyFile.has_key ("Directional Pyramid Equalizer", "Hueskin")) { const std::vector thresh = keyFile.get_integer_list ("Directional Pyramid Equalizer", "Hueskin"); if (thresh.size() >= 4) { @@ -8299,11 +8370,11 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) if (pedited) { pedited->dirpyrequalizer.threshold = true; } - } else { - dirpyrequalizer.mult[i] = keyFile.get_double ("Directional Pyramid Equalizer", ss.str()); + } else { + dirpyrequalizer.mult[i] = keyFile.get_double ("Directional Pyramid Equalizer", ss.str()); if (pedited) { - pedited->dirpyrequalizer.mult[i] = true; + pedited->dirpyrequalizer.mult[i] = true; } } } @@ -8311,21 +8382,21 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) dirpyrequalizer.mult[4] = 1.0; } else { - // 5 level wavelet + dedicated threshold parameter +// 5 level wavelet + dedicated threshold parameter for (int i = 0; i < 6; i ++) { std::stringstream ss; ss << "Mult" << i; if (keyFile.has_key ("Directional Pyramid Equalizer", ss.str())) { - dirpyrequalizer.mult[i] = keyFile.get_double ("Directional Pyramid Equalizer", ss.str()); + dirpyrequalizer.mult[i] = keyFile.get_double ("Directional Pyramid Equalizer", ss.str()); if (pedited) { - pedited->dirpyrequalizer.mult[i] = true; + pedited->dirpyrequalizer.mult[i] = true; } } } - if (keyFile.has_key ("Directional Pyramid Equalizer", "Threshold")) { + if (keyFile.has_key ("Directional Pyramid Equalizer", "Threshold")) { dirpyrequalizer.threshold = keyFile.get_double ("Directional Pyramid Equalizer", "Threshold"); if (pedited) { @@ -8343,9 +8414,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load CLUT parameters +// load CLUT parameters if ( keyFile.has_group ( "Film Simulation" ) ) { - if ( keyFile.has_key ( "Film Simulation", "Enabled" ) ) { + if ( keyFile.has_key ( "Film Simulation", "Enabled" ) ) { filmSimulation.enabled = keyFile.get_boolean ( "Film Simulation", "Enabled" ); if ( pedited ) { @@ -8361,7 +8432,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if ( keyFile.has_key ( "Film Simulation", "Strength" ) ) { + if ( keyFile.has_key ( "Film Simulation", "Strength" ) ) { if (ppVersion < 321) { filmSimulation.strength = int (keyFile.get_double ( "Film Simulation", "Strength" ) * 100 + 0.1); } else { @@ -8374,7 +8445,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load HSV wavelet parameters +// load HSV wavelet parameters if (keyFile.has_group ("HSV Equalizer")) { if (ppVersion >= 300) { if (keyFile.has_key ("HSV Equalizer", "HCurve")) { @@ -8406,9 +8477,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load RGB curves +// load RGB curves if (keyFile.has_group ("RGB Curves")) { - if (keyFile.has_key ("RGB Curves", "LumaMode")) { + if (keyFile.has_key ("RGB Curves", "LumaMode")) { rgbCurves.lumamode = keyFile.get_boolean ("RGB Curves", "LumaMode"); if (pedited) { @@ -8435,7 +8506,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("RGB Curves", "bCurve")) { - rgbCurves.bcurve = keyFile.get_double_list ("RGB Curves", "bCurve"); + rgbCurves.bcurve = keyFile.get_double_list ("RGB Curves", "bCurve"); avoidEmptyCurve (rgbCurves.bcurve); if (pedited) { @@ -8444,9 +8515,9 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load Color Toning +// load Color Toning if (keyFile.has_group ("ColorToning")) { - if (keyFile.has_key ("ColorToning", "Enabled")) { + if (keyFile.has_key ("ColorToning", "Enabled")) { colorToning.enabled = keyFile.get_boolean ("ColorToning", "Enabled"); if (pedited) { @@ -8454,7 +8525,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Method")) { + if (keyFile.has_key ("ColorToning", "Method")) { colorToning.method = keyFile.get_string ("ColorToning", "Method"); if (pedited) { @@ -8462,7 +8533,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Lumamode")) { + if (keyFile.has_key ("ColorToning", "Lumamode")) { colorToning.lumamode = keyFile.get_boolean ("ColorToning", "Lumamode"); if (pedited) { @@ -8470,7 +8541,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Twocolor")) { + if (keyFile.has_key ("ColorToning", "Twocolor")) { colorToning.twocolor = keyFile.get_string ("ColorToning", "Twocolor"); if (pedited) { @@ -8478,7 +8549,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "OpacityCurve")) { + if (keyFile.has_key ("ColorToning", "OpacityCurve")) { colorToning.opacityCurve = keyFile.get_double_list ("ColorToning", "OpacityCurve"); avoidEmptyCurve (colorToning.opacityCurve); @@ -8487,7 +8558,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "ColorCurve")) { + if (keyFile.has_key ("ColorToning", "ColorCurve")) { colorToning.colorCurve = keyFile.get_double_list ("ColorToning", "ColorCurve"); avoidEmptyCurve (colorToning.colorCurve); @@ -8496,7 +8567,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Autosat")) { + if (keyFile.has_key ("ColorToning", "Autosat")) { colorToning.autosat = keyFile.get_boolean ("ColorToning", "Autosat"); if (pedited) { @@ -8504,7 +8575,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "SatProtectionThreshold")) { + if (keyFile.has_key ("ColorToning", "SatProtectionThreshold")) { colorToning.satProtectionThreshold = keyFile.get_integer ("ColorToning", "SatProtectionThreshold"); if (pedited) { @@ -8512,7 +8583,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "SaturatedOpacity")) { + if (keyFile.has_key ("ColorToning", "SaturatedOpacity")) { colorToning.saturatedOpacity = keyFile.get_integer ("ColorToning", "SaturatedOpacity"); if (pedited) { @@ -8520,7 +8591,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Strength")) { + if (keyFile.has_key ("ColorToning", "Strength")) { colorToning.strength = keyFile.get_integer ("ColorToning", "Strength"); if (pedited) { @@ -8552,7 +8623,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "ClCurve")) { + if (keyFile.has_key ("ColorToning", "ClCurve")) { colorToning.clcurve = keyFile.get_double_list ("ColorToning", "ClCurve"); avoidEmptyCurve (colorToning.clcurve); @@ -8561,7 +8632,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Cl2Curve")) { + if (keyFile.has_key ("ColorToning", "Cl2Curve")) { colorToning.cl2curve = keyFile.get_double_list ("ColorToning", "Cl2Curve"); avoidEmptyCurve (colorToning.cl2curve); @@ -8570,7 +8641,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Redlow")) { + if (keyFile.has_key ("ColorToning", "Redlow")) { colorToning.redlow = keyFile.get_double ("ColorToning", "Redlow"); if (pedited) { @@ -8578,7 +8649,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Greenlow")) { + if (keyFile.has_key ("ColorToning", "Greenlow")) { colorToning.greenlow = keyFile.get_double ("ColorToning", "Greenlow"); if (pedited) { @@ -8586,7 +8657,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Bluelow")) { + if (keyFile.has_key ("ColorToning", "Bluelow")) { colorToning.bluelow = keyFile.get_double ("ColorToning", "Bluelow"); if (pedited) { @@ -8594,7 +8665,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Satlow")) { + if (keyFile.has_key ("ColorToning", "Satlow")) { colorToning.satlow = keyFile.get_double ("ColorToning", "Satlow"); if (pedited) { @@ -8602,7 +8673,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Balance")) { + if (keyFile.has_key ("ColorToning", "Balance")) { colorToning.balance = keyFile.get_integer ("ColorToning", "Balance"); if (pedited) { @@ -8610,7 +8681,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Sathigh")) { + if (keyFile.has_key ("ColorToning", "Sathigh")) { colorToning.sathigh = keyFile.get_double ("ColorToning", "Sathigh"); if (pedited) { @@ -8618,7 +8689,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Redmed")) { + if (keyFile.has_key ("ColorToning", "Redmed")) { colorToning.redmed = keyFile.get_double ("ColorToning", "Redmed"); if (pedited) { @@ -8626,7 +8697,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Greenmed")) { + if (keyFile.has_key ("ColorToning", "Greenmed")) { colorToning.greenmed = keyFile.get_double ("ColorToning", "Greenmed"); if (pedited) { @@ -8634,7 +8705,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Bluemed")) { + if (keyFile.has_key ("ColorToning", "Bluemed")) { colorToning.bluemed = keyFile.get_double ("ColorToning", "Bluemed"); if (pedited) { @@ -8642,7 +8713,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Redhigh")) { + if (keyFile.has_key ("ColorToning", "Redhigh")) { colorToning.redhigh = keyFile.get_double ("ColorToning", "Redhigh"); if (pedited) { @@ -8650,7 +8721,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Greenhigh")) { + if (keyFile.has_key ("ColorToning", "Greenhigh")) { colorToning.greenhigh = keyFile.get_double ("ColorToning", "Greenhigh"); if (pedited) { @@ -8658,7 +8729,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("ColorToning", "Bluehigh")) { + if (keyFile.has_key ("ColorToning", "Bluehigh")) { colorToning.bluehigh = keyFile.get_double ("ColorToning", "Bluehigh"); if (pedited) { @@ -8667,17 +8738,17 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // load raw settings +// load raw settings if (keyFile.has_group ("RAW")) { - if (keyFile.has_key ("RAW", "DarkFrame")) { - raw.dark_frame = expandRelativePath (fname, "", keyFile.get_string ("RAW", "DarkFrame" )); + if (keyFile.has_key ("RAW", "DarkFrame")) { + raw.dark_frame = expandRelativePath (fname, "", keyFile.get_string ("RAW", "DarkFrame" )); if (pedited) { pedited->raw.darkFrame = true; } } - if (keyFile.has_key ("RAW", "DarkFrameAuto")) { + if (keyFile.has_key ("RAW", "DarkFrameAuto")) { raw.df_autoselect = keyFile.get_boolean ("RAW", "DarkFrameAuto" ); if (pedited) { @@ -8685,32 +8756,32 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "FlatFieldFile")) { - raw.ff_file = expandRelativePath (fname, "", keyFile.get_string ("RAW", "FlatFieldFile" )); + if (keyFile.has_key ("RAW", "FlatFieldFile")) { + raw.ff_file = expandRelativePath (fname, "", keyFile.get_string ("RAW", "FlatFieldFile" )); if (pedited) { pedited->raw.ff_file = true; } } - if (keyFile.has_key ("RAW", "FlatFieldAutoSelect")) { - raw.ff_AutoSelect = keyFile.get_boolean ("RAW", "FlatFieldAutoSelect" ); + if (keyFile.has_key ("RAW", "FlatFieldAutoSelect")) { + raw.ff_AutoSelect = keyFile.get_boolean ("RAW", "FlatFieldAutoSelect" ); if (pedited) { pedited->raw.ff_AutoSelect = true; } } - if (keyFile.has_key ("RAW", "FlatFieldBlurRadius")) { - raw.ff_BlurRadius = keyFile.get_integer ("RAW", "FlatFieldBlurRadius" ); + if (keyFile.has_key ("RAW", "FlatFieldBlurRadius")) { + raw.ff_BlurRadius = keyFile.get_integer ("RAW", "FlatFieldBlurRadius" ); if (pedited) { pedited->raw.ff_BlurRadius = true; } } - if (keyFile.has_key ("RAW", "FlatFieldBlurType")) { - raw.ff_BlurType = keyFile.get_string ("RAW", "FlatFieldBlurType" ); + if (keyFile.has_key ("RAW", "FlatFieldBlurType")) { + raw.ff_BlurType = keyFile.get_string ("RAW", "FlatFieldBlurType" ); if (pedited) { pedited->raw.ff_BlurType = true; @@ -8718,22 +8789,22 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (keyFile.has_key ("RAW", "FlatFieldAutoClipControl")) { - raw.ff_AutoClipControl = keyFile.get_boolean ("RAW", "FlatFieldAutoClipControl" ); + raw.ff_AutoClipControl = keyFile.get_boolean ("RAW", "FlatFieldAutoClipControl" ); if (pedited) { pedited->raw.ff_AutoClipControl = true; } } - if (keyFile.has_key ("RAW", "FlatFieldClipControl")) { - raw.ff_clipControl = keyFile.get_boolean ("RAW", "FlatFieldClipControl" ); + if (keyFile.has_key ("RAW", "FlatFieldClipControl")) { + raw.ff_clipControl = keyFile.get_boolean ("RAW", "FlatFieldClipControl" ); if (pedited) { pedited->raw.ff_clipControl = true; } } - if (keyFile.has_key ("RAW", "CA")) { + if (keyFile.has_key ("RAW", "CA")) { raw.ca_autocorrect = keyFile.get_boolean ("RAW", "CA" ); if (pedited) { @@ -8741,7 +8812,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "CARed")) { + if (keyFile.has_key ("RAW", "CARed")) { raw.cared = keyFile.get_double ("RAW", "CARed" ); if (pedited) { @@ -8749,7 +8820,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "CABlue")) { + if (keyFile.has_key ("RAW", "CABlue")) { raw.cablue = keyFile.get_double ("RAW", "CABlue" ); if (pedited) { @@ -8757,8 +8828,8 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - // for compatibility to elder pp3 versions - if (keyFile.has_key ("RAW", "HotDeadPixels")) { +// for compatibility to elder pp3 versions + if (keyFile.has_key ("RAW", "HotDeadPixels")) { raw.deadPixelFilter = raw.hotPixelFilter = keyFile.get_boolean ("RAW", "HotDeadPixels" ); if (pedited) { @@ -8766,7 +8837,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "HotPixelFilter")) { + if (keyFile.has_key ("RAW", "HotPixelFilter")) { raw.hotPixelFilter = keyFile.get_boolean ("RAW", "HotPixelFilter" ); if (pedited) { @@ -8774,7 +8845,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "DeadPixelFilter")) { + if (keyFile.has_key ("RAW", "DeadPixelFilter")) { raw.deadPixelFilter = keyFile.get_boolean ("RAW", "DeadPixelFilter" ); if (pedited) { @@ -8782,7 +8853,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "HotDeadPixelThresh")) { + if (keyFile.has_key ("RAW", "HotDeadPixelThresh")) { raw.hotdeadpix_thresh = keyFile.get_integer ("RAW", "HotDeadPixelThresh" ); if (pedited) { @@ -8790,7 +8861,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreExposure")) { + if (keyFile.has_key ("RAW", "PreExposure")) { raw.expos = keyFile.get_double ("RAW", "PreExposure"); if (pedited) { @@ -8798,7 +8869,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PrePreserv")) { + if (keyFile.has_key ("RAW", "PrePreserv")) { raw.preser = keyFile.get_double ("RAW", "PrePreserv"); if (pedited) { @@ -8807,7 +8878,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } if (ppVersion < 320) { - if (keyFile.has_key ("RAW", "Method")) { + if (keyFile.has_key ("RAW", "Method")) { raw.bayersensor.method = keyFile.get_string ("RAW", "Method"); if (pedited) { @@ -8815,15 +8886,15 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "CcSteps")) { - raw.bayersensor.ccSteps = keyFile.get_integer ("RAW", "CcSteps"); + if (keyFile.has_key ("RAW", "CcSteps")) { + raw.bayersensor.ccSteps = keyFile.get_integer ("RAW", "CcSteps"); if (pedited) { pedited->raw.bayersensor.ccSteps = true; } } - if (keyFile.has_key ("RAW", "LineDenoise")) { + if (keyFile.has_key ("RAW", "LineDenoise")) { raw.bayersensor.linenoise = keyFile.get_integer ("RAW", "LineDenoise" ); if (pedited) { @@ -8839,7 +8910,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "DCBIterations")) { + if (keyFile.has_key ("RAW", "DCBIterations")) { raw.bayersensor.dcb_iterations = keyFile.get_integer ("RAW", "DCBIterations"); if (pedited) { @@ -8847,7 +8918,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "DCBEnhance")) { + if (keyFile.has_key ("RAW", "DCBEnhance")) { raw.bayersensor.dcb_enhance = keyFile.get_boolean ("RAW", "DCBEnhance"); if (pedited) { @@ -8855,7 +8926,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "LMMSEIterations")) { + if (keyFile.has_key ("RAW", "LMMSEIterations")) { raw.bayersensor.lmmse_iterations = keyFile.get_integer ("RAW", "LMMSEIterations"); if (pedited) { @@ -8863,7 +8934,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreBlackzero")) { + if (keyFile.has_key ("RAW", "PreBlackzero")) { raw.bayersensor.black0 = keyFile.get_double ("RAW", "PreBlackzero"); if (pedited) { @@ -8871,7 +8942,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreBlackone")) { + if (keyFile.has_key ("RAW", "PreBlackone")) { raw.bayersensor.black1 = keyFile.get_double ("RAW", "PreBlackone"); if (pedited) { @@ -8879,7 +8950,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreBlacktwo")) { + if (keyFile.has_key ("RAW", "PreBlacktwo")) { raw.bayersensor.black2 = keyFile.get_double ("RAW", "PreBlacktwo"); if (pedited) { @@ -8887,7 +8958,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreBlackthree")) { + if (keyFile.has_key ("RAW", "PreBlackthree")) { raw.bayersensor.black3 = keyFile.get_double ("RAW", "PreBlackthree"); if (pedited) { @@ -8895,7 +8966,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW", "PreTwoGreen")) { + if (keyFile.has_key ("RAW", "PreTwoGreen")) { raw.bayersensor.twogreen = keyFile.get_boolean ("RAW", "PreTwoGreen"); if (pedited) { @@ -8903,13 +8974,13 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - //if (keyFile.has_key ("RAW", "ALLEnhance")) { raw.bayersensor.all_enhance = keyFile.get_boolean("RAW", "ALLEnhance"); if (pedited) pedited->raw.bayersensor.allEnhance = true; } +//if (keyFile.has_key ("RAW", "ALLEnhance")) { raw.bayersensor.all_enhance = keyFile.get_boolean("RAW", "ALLEnhance"); if (pedited) pedited->raw.bayersensor.allEnhance = true; } } } // load Bayer sensors' raw settings if (keyFile.has_group ("RAW Bayer")) { - if (keyFile.has_key ("RAW Bayer", "Method")) { + if (keyFile.has_key ("RAW Bayer", "Method")) { raw.bayersensor.method = keyFile.get_string ("RAW Bayer", "Method"); if (pedited) { @@ -8917,7 +8988,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "ImageNum")) { + if (keyFile.has_key ("RAW Bayer", "ImageNum")) { raw.bayersensor.imageNum = keyFile.get_integer ("RAW Bayer", "ImageNum") - 1; if (pedited) { @@ -8925,15 +8996,15 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "CcSteps")) { - raw.bayersensor.ccSteps = keyFile.get_integer ("RAW Bayer", "CcSteps"); + if (keyFile.has_key ("RAW Bayer", "CcSteps")) { + raw.bayersensor.ccSteps = keyFile.get_integer ("RAW Bayer", "CcSteps"); if (pedited) { pedited->raw.bayersensor.ccSteps = true; } } - if (keyFile.has_key ("RAW Bayer", "PreBlack0")) { + if (keyFile.has_key ("RAW Bayer", "PreBlack0")) { raw.bayersensor.black0 = keyFile.get_double ("RAW Bayer", "PreBlack0"); if (pedited) { @@ -8941,7 +9012,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PreBlack1")) { + if (keyFile.has_key ("RAW Bayer", "PreBlack1")) { raw.bayersensor.black1 = keyFile.get_double ("RAW Bayer", "PreBlack1"); if (pedited) { @@ -8949,7 +9020,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PreBlack2")) { + if (keyFile.has_key ("RAW Bayer", "PreBlack2")) { raw.bayersensor.black2 = keyFile.get_double ("RAW Bayer", "PreBlack2"); if (pedited) { @@ -8957,7 +9028,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PreBlack3")) { + if (keyFile.has_key ("RAW Bayer", "PreBlack3")) { raw.bayersensor.black3 = keyFile.get_double ("RAW Bayer", "PreBlack3"); if (pedited) { @@ -8965,7 +9036,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PreTwoGreen")) { + if (keyFile.has_key ("RAW Bayer", "PreTwoGreen")) { raw.bayersensor.twogreen = keyFile.get_boolean ("RAW Bayer", "PreTwoGreen"); if (pedited) { @@ -8973,7 +9044,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "LineDenoise")) { + if (keyFile.has_key ("RAW Bayer", "LineDenoise")) { raw.bayersensor.linenoise = keyFile.get_integer ("RAW Bayer", "LineDenoise" ); if (pedited) { @@ -8989,7 +9060,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "DCBIterations")) { + if (keyFile.has_key ("RAW Bayer", "DCBIterations")) { raw.bayersensor.dcb_iterations = keyFile.get_integer ("RAW Bayer", "DCBIterations"); if (pedited) { @@ -8997,7 +9068,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "DCBEnhance")) { + if (keyFile.has_key ("RAW Bayer", "DCBEnhance")) { raw.bayersensor.dcb_enhance = keyFile.get_boolean ("RAW Bayer", "DCBEnhance"); if (pedited) { @@ -9005,7 +9076,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "LMMSEIterations")) { + if (keyFile.has_key ("RAW Bayer", "LMMSEIterations")) { raw.bayersensor.lmmse_iterations = keyFile.get_integer ("RAW Bayer", "LMMSEIterations"); if (pedited) { @@ -9013,7 +9084,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftMotion")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftMotion")) { raw.bayersensor.pixelShiftMotion = keyFile.get_integer ("RAW Bayer", "PixelShiftMotion"); if (pedited) { @@ -9021,7 +9092,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftMotionCorrection")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftMotionCorrection")) { raw.bayersensor.pixelShiftMotionCorrection = (RAWParams::BayerSensor::ePSMotionCorrection)keyFile.get_integer ("RAW Bayer", "PixelShiftMotionCorrection"); if (pedited) { @@ -9029,7 +9100,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftMotionCorrectionMethod")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftMotionCorrectionMethod")) { raw.bayersensor.pixelShiftMotionCorrectionMethod = (RAWParams::BayerSensor::ePSMotionCorrectionMethod)keyFile.get_integer ("RAW Bayer", "PixelShiftMotionCorrectionMethod"); if (pedited) { @@ -9037,7 +9108,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorGreen")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorGreen")) { raw.bayersensor.pixelShiftStddevFactorGreen = keyFile.get_double ("RAW Bayer", "pixelShiftStddevFactorGreen"); if (pedited) { @@ -9045,7 +9116,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorRed")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorRed")) { raw.bayersensor.pixelShiftStddevFactorRed = keyFile.get_double ("RAW Bayer", "pixelShiftStddevFactorRed"); if (pedited) { @@ -9053,7 +9124,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorBlue")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftStddevFactorBlue")) { raw.bayersensor.pixelShiftStddevFactorBlue = keyFile.get_double ("RAW Bayer", "pixelShiftStddevFactorBlue"); if (pedited) { @@ -9061,7 +9132,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftEperIso")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftEperIso")) { raw.bayersensor.pixelShiftEperIso = keyFile.get_double ("RAW Bayer", "PixelShiftEperIso"); if (pedited) { @@ -9069,7 +9140,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftNreadIso")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftNreadIso")) { raw.bayersensor.pixelShiftNreadIso = keyFile.get_double ("RAW Bayer", "PixelShiftNreadIso"); if (pedited) { @@ -9077,7 +9148,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftPrnu")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftPrnu")) { raw.bayersensor.pixelShiftPrnu = keyFile.get_double ("RAW Bayer", "PixelShiftPrnu"); if (pedited) { @@ -9085,7 +9156,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftSigma")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftSigma")) { raw.bayersensor.pixelShiftSigma = keyFile.get_double ("RAW Bayer", "PixelShiftSigma"); if (pedited) { @@ -9093,7 +9164,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftSum")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftSum")) { raw.bayersensor.pixelShiftSum = keyFile.get_double ("RAW Bayer", "PixelShiftSum"); if (pedited) { @@ -9101,7 +9172,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftRedBlueWeight")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftRedBlueWeight")) { raw.bayersensor.pixelShiftRedBlueWeight = keyFile.get_double ("RAW Bayer", "PixelShiftRedBlueWeight"); if (pedited) { @@ -9109,7 +9180,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftShowMotion")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftShowMotion")) { raw.bayersensor.pixelShiftShowMotion = keyFile.get_boolean ("RAW Bayer", "PixelShiftShowMotion"); if (pedited) { @@ -9117,7 +9188,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "PixelShiftShowMotionMaskOnly")) { + if (keyFile.has_key ("RAW Bayer", "PixelShiftShowMotionMaskOnly")) { raw.bayersensor.pixelShiftShowMotionMaskOnly = keyFile.get_boolean ("RAW Bayer", "PixelShiftShowMotionMaskOnly"); if (pedited) { @@ -9125,7 +9196,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftAutomatic")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftAutomatic")) { raw.bayersensor.pixelShiftAutomatic = keyFile.get_boolean ("RAW Bayer", "pixelShiftAutomatic"); if (pedited) { @@ -9133,7 +9204,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenHorizontal")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenHorizontal")) { raw.bayersensor.pixelShiftNonGreenHorizontal = keyFile.get_boolean ("RAW Bayer", "pixelShiftNonGreenHorizontal"); if (pedited) { @@ -9141,7 +9212,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenVertical")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenVertical")) { raw.bayersensor.pixelShiftNonGreenVertical = keyFile.get_boolean ("RAW Bayer", "pixelShiftNonGreenVertical"); if (pedited) { @@ -9149,7 +9220,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftHoleFill")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftHoleFill")) { raw.bayersensor.pixelShiftHoleFill = keyFile.get_boolean ("RAW Bayer", "pixelShiftHoleFill"); if (pedited) { @@ -9157,7 +9228,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftMedian")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftMedian")) { raw.bayersensor.pixelShiftMedian = keyFile.get_boolean ("RAW Bayer", "pixelShiftMedian"); if (pedited) { @@ -9165,7 +9236,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftMedian3")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftMedian3")) { raw.bayersensor.pixelShiftMedian3 = keyFile.get_boolean ("RAW Bayer", "pixelShiftMedian3"); if (pedited) { @@ -9173,7 +9244,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftGreen")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftGreen")) { raw.bayersensor.pixelShiftGreen = keyFile.get_boolean ("RAW Bayer", "pixelShiftGreen"); if (pedited) { @@ -9181,7 +9252,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftBlur")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftBlur")) { raw.bayersensor.pixelShiftBlur = keyFile.get_boolean ("RAW Bayer", "pixelShiftBlur"); if (pedited) { @@ -9189,7 +9260,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftSmoothFactor")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftSmoothFactor")) { raw.bayersensor.pixelShiftSmoothFactor = keyFile.get_double ("RAW Bayer", "pixelShiftSmoothFactor"); if (pedited) { @@ -9197,7 +9268,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftExp0")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftExp0")) { raw.bayersensor.pixelShiftExp0 = keyFile.get_boolean ("RAW Bayer", "pixelShiftExp0"); if (pedited) { @@ -9205,7 +9276,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftLmmse")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftLmmse")) { raw.bayersensor.pixelShiftLmmse = keyFile.get_boolean ("RAW Bayer", "pixelShiftLmmse"); if (pedited) { @@ -9213,7 +9284,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftEqualBright")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftEqualBright")) { raw.bayersensor.pixelShiftEqualBright = keyFile.get_boolean ("RAW Bayer", "pixelShiftEqualBright"); if (pedited) { @@ -9221,7 +9292,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftEqualBrightChannel")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftEqualBrightChannel")) { raw.bayersensor.pixelShiftEqualBrightChannel = keyFile.get_boolean ("RAW Bayer", "pixelShiftEqualBrightChannel"); if (pedited) { @@ -9229,7 +9300,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenCross")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenCross")) { raw.bayersensor.pixelShiftNonGreenCross = keyFile.get_boolean ("RAW Bayer", "pixelShiftNonGreenCross"); if (pedited) { @@ -9237,7 +9308,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenCross2")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenCross2")) { raw.bayersensor.pixelShiftNonGreenCross2 = keyFile.get_boolean ("RAW Bayer", "pixelShiftNonGreenCross2"); if (pedited) { @@ -9245,7 +9316,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenAmaze")) { + if (keyFile.has_key ("RAW Bayer", "pixelShiftNonGreenAmaze")) { raw.bayersensor.pixelShiftNonGreenAmaze = keyFile.get_boolean ("RAW Bayer", "pixelShiftNonGreenAmaze"); if (pedited) { @@ -9256,7 +9327,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) // load X-Trans sensors' raw settings if (keyFile.has_group ("RAW X-Trans")) { - if (keyFile.has_key ("RAW X-Trans", "Method")) { + if (keyFile.has_key ("RAW X-Trans", "Method")) { raw.xtranssensor.method = keyFile.get_string ("RAW X-Trans", "Method"); if (pedited) { @@ -9264,15 +9335,15 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW X-Trans", "CcSteps")) { - raw.xtranssensor.ccSteps = keyFile.get_integer ("RAW X-Trans", "CcSteps"); + if (keyFile.has_key ("RAW X-Trans", "CcSteps")) { + raw.xtranssensor.ccSteps = keyFile.get_integer ("RAW X-Trans", "CcSteps"); if (pedited) { pedited->raw.xtranssensor.ccSteps = true; } } - if (keyFile.has_key ("RAW X-Trans", "PreBlackRed")) { + if (keyFile.has_key ("RAW X-Trans", "PreBlackRed")) { raw.xtranssensor.blackred = keyFile.get_double ("RAW X-Trans", "PreBlackRed"); if (pedited) { @@ -9280,7 +9351,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW X-Trans", "PreBlackGreen")) { + if (keyFile.has_key ("RAW X-Trans", "PreBlackGreen")) { raw.xtranssensor.blackgreen = keyFile.get_double ("RAW X-Trans", "PreBlackGreen"); if (pedited) { @@ -9288,7 +9359,7 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited) } } - if (keyFile.has_key ("RAW X-Trans", "PreBlackBlue")) { + if (keyFile.has_key ("RAW X-Trans", "PreBlackBlue")) { raw.xtranssensor.blackblue = keyFile.get_double ("RAW X-Trans", "PreBlackBlue"); if (pedited) { @@ -9407,7 +9478,6 @@ bool operator== (const DirPyrEqualizerParams & a, const DirPyrEqualizerParams & return a.threshold == b.threshold; } - bool operator== (const LocallabParams & a, const LocallabParams & b) { if (a.enabled != b.enabled) { @@ -9575,6 +9645,9 @@ bool ProcParams::operator== (const ProcParams& other) && colorappearance.contrast == other.colorappearance.contrast && colorappearance.qcontrast == other.colorappearance.qcontrast && colorappearance.colorh == other.colorappearance.colorh + && colorappearance.tempout == other.colorappearance.tempout + && colorappearance.greenout == other.colorappearance.greenout + && colorappearance.ybout == other.colorappearance.ybout && impulseDenoise.enabled == other.impulseDenoise.enabled && impulseDenoise.thresh == other.impulseDenoise.thresh && dirpyrDenoise.enabled == other.dirpyrDenoise.enabled @@ -9739,6 +9812,7 @@ bool ProcParams::operator== (const ProcParams& other) && locallab.cccurve == other.locallab.cccurve && locallab.LHcurve == other.locallab.LHcurve && locallab.HHcurve == other.locallab.HHcurve + && pcvignette.enabled == other.pcvignette.enabled && pcvignette.strength == other.pcvignette.strength && pcvignette.feather == other.pcvignette.feather diff --git a/rtengine/procparams.h b/rtengine/procparams.h index b67eeb17e..f110d8dea 100644 --- a/rtengine/procparams.h +++ b/rtengine/procparams.h @@ -619,6 +619,10 @@ public: // bool badpix; bool datacie; bool tonecie; + int tempout; + int ybout; + double greenout; + // bool sharpcie; }; diff --git a/rtengine/refreshmap.cc b/rtengine/refreshmap.cc index d242483c9..fa42d35a4 100644 --- a/rtengine/refreshmap.cc +++ b/rtengine/refreshmap.cc @@ -589,7 +589,11 @@ int refreshmap[rtengine::NUMOFEVENTS] = { LUMINANCECURVE, //Evlocallabblack LUMINANCECURVE, //Evlocallabshcompr LUMINANCECURVE, //Evlocallabsensiex - LUMINANCECURVE //Evlocallabshape + LUMINANCECURVE, //Evlocallabshape + LUMINANCECURVE, // EvCATtempout + LUMINANCECURVE, // EvCATgreenout + LUMINANCECURVE // EvCATybout + }; diff --git a/rtgui/colorappearance.cc b/rtgui/colorappearance.cc index 59bdb4b31..af45d50b6 100644 --- a/rtgui/colorappearance.cc +++ b/rtgui/colorappearance.cc @@ -21,9 +21,99 @@ #include "guiutils.h" #include "../rtengine/color.h" +#define MINTEMP0 1500 //1200 +#define MAXTEMP0 12000 //12000 +#define CENTERTEMP0 5000 +#define MINGREEN0 0.8 +#define MAXGREEN0 1.2 + + using namespace rtengine; using namespace rtengine::procparams; +static double wbSlider2Temp (double sval) +{ + + // slider range: 0 - 10000 + double temp; + + if (sval <= 5000) { + // linear below center-temp + temp = MINTEMP0 + (sval / 5000.0) * (CENTERTEMP0 - MINTEMP0); + } else { + const double slope = (double) (CENTERTEMP0 - MINTEMP0) / (MAXTEMP0 - CENTERTEMP0); + double x = (sval - 5000) / 5000; // x 0..1 + double y = x * slope + (1.0 - slope) * pow (x, 4.0); + //double y = pow(x, 4.0); + temp = CENTERTEMP0 + y * (MAXTEMP0 - CENTERTEMP0); + } + + if (temp < MINTEMP0) { + temp = MINTEMP0; + } + + if (temp > MAXTEMP0) { + temp = MAXTEMP0; + } + + return temp; +} + +static double wbTemp2Slider (double temp) +{ + + double sval; + + if (temp <= CENTERTEMP0) { + sval = ((temp - MINTEMP0) / (CENTERTEMP0 - MINTEMP0)) * 5000.0; + } else { + const double slope = (double) (CENTERTEMP0 - MINTEMP0) / (MAXTEMP0 - CENTERTEMP0); + const double y = (temp - CENTERTEMP0) / (MAXTEMP0 - CENTERTEMP0); + double x = pow (y, 0.25); // rough guess of x, will be a little lower + double k = 0.1; + bool add = true; + + // the y=f(x) function is a mess to invert, therefore we have this trial-refinement loop instead. + // from tests, worst case is about 20 iterations, ie no problem + for (;;) { + double y1 = x * slope + (1.0 - slope) * pow (x, 4.0); + + if (5000 * fabs (y1 - y) < 0.1) { + break; + } + + if (y1 < y) { + if (!add) { + k /= 2; + } + + x += k; + add = true; + } else { + if (add) { + k /= 2; + } + + x -= k; + add = false; + } + } + + sval = 5000.0 + x * 5000.0; + } + + if (sval < 0) { + sval = 0; + } + + if (sval > 10000) { + sval = 10000; + } + + return sval; +} + + ColorAppearance::ColorAppearance () : FoldableToolPanel (this, "colorappearance", M ("TP_COLORAPP_LABEL"), false, true) { CurveListener::setMulti (true); @@ -353,6 +443,24 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel (this, "colorappearance" adaplum->set_tooltip_markup (M ("TP_COLORAPP_ADAPTVIEWING_TOOLTIP")); p3VBox->pack_start (*adaplum); + Gtk::Image* itempL = Gtk::manage (new RTImage ("ajd-wb-temp1.png")); + Gtk::Image* itempR = Gtk::manage (new RTImage ("ajd-wb-temp2.png")); + Gtk::Image* igreenL = Gtk::manage (new RTImage ("ajd-wb-green1.png")); + Gtk::Image* igreenR = Gtk::manage (new RTImage ("ajd-wb-green2.png")); +// Gtk::Image* iblueredL = Gtk::manage (new RTImage ("ajd-wb-bluered1.png")); +// Gtk::Image* iblueredR = Gtk::manage (new RTImage ("ajd-wb-bluered2.png")); + + tempout = Gtk::manage (new Adjuster (M ("TP_WBALANCE_TEMPERATURE"), MINTEMP0, MAXTEMP0, 5, CENTERTEMP0, itempR, itempL, &wbSlider2Temp, &wbTemp2Slider)); + greenout = Gtk::manage (new Adjuster (M ("TP_WBALANCE_GREEN"), MINGREEN0, MAXGREEN0, 0.001, 1.0, igreenR, igreenL)); + ybout = Gtk::manage (new Adjuster (M ("TP_COLORAPP_YB"), 5, 50, 1, 18)); + + tempout->show(); + greenout->show(); + ybout->show(); + p3VBox->pack_start (*tempout); + p3VBox->pack_start (*greenout); + p3VBox->pack_start (*ybout); + Gtk::HBox* surrHBox = Gtk::manage (new Gtk::HBox ()); surrHBox->set_spacing (2); surrHBox->set_tooltip_markup (M ("TP_COLORAPP_SURROUND_TOOLTIP")); @@ -418,6 +526,10 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel (this, "colorappearance" contrast->setAdjusterListener (this); qcontrast->setAdjusterListener (this); rstprotection->setAdjusterListener (this); + tempout->setAdjusterListener (this); + greenout->setAdjusterListener (this); + ybout->setAdjusterListener (this); + show_all(); } @@ -469,6 +581,9 @@ void ColorAppearance::read (const ProcParams* pp, const ParamsEdited* pedited) schroma->setEditedState (pedited->colorappearance.schroma ? Edited : UnEdited); mchroma->setEditedState (pedited->colorappearance.mchroma ? Edited : UnEdited); rstprotection->setEditedState (pedited->colorappearance.rstprotection ? Edited : UnEdited); + tempout->setEditedState (pedited->colorappearance.tempout ? Edited : UnEdited); + greenout->setEditedState (pedited->colorappearance.greenout ? Edited : UnEdited); + ybout->setEditedState (pedited->colorappearance.ybout ? Edited : UnEdited); contrast->setEditedState (pedited->colorappearance.contrast ? Edited : UnEdited); qcontrast->setEditedState (pedited->colorappearance.qcontrast ? Edited : UnEdited); colorh->setEditedState (pedited->colorappearance.colorh ? Edited : UnEdited); @@ -599,6 +714,9 @@ void ColorAppearance::read (const ProcParams* pp, const ParamsEdited* pedited) contrast->setValue (pp->colorappearance.contrast); qcontrast->setValue (pp->colorappearance.qcontrast); colorh->setValue (pp->colorappearance.colorh); + tempout->setValue (pp->colorappearance.tempout); + greenout->setValue (pp->colorappearance.greenout); + ybout->setValue (pp->colorappearance.ybout); tcmode3conn.block (false); tcmode2conn.block (false); @@ -642,6 +760,9 @@ void ColorAppearance::write (ProcParams* pp, ParamsEdited* pedited) pp->colorappearance.curve = shape->getCurve (); pp->colorappearance.curve2 = shape2->getCurve (); pp->colorappearance.curve3 = shape3->getCurve (); + pp->colorappearance.tempout = tempout->getValue (); + pp->colorappearance.greenout = greenout->getValue (); + pp->colorappearance.ybout = ybout->getValue (); int tcMode = toneCurveMode->get_active_row_number(); @@ -701,6 +822,10 @@ void ColorAppearance::write (ProcParams* pp, ParamsEdited* pedited) pedited->colorappearance.curveMode = toneCurveMode->get_active_row_number() != 2; pedited->colorappearance.curveMode2 = toneCurveMode2->get_active_row_number() != 2; pedited->colorappearance.curveMode3 = toneCurveMode3->get_active_row_number() != 3; + pedited->colorappearance.tempout = tempout->getEditedState (); + pedited->colorappearance.greenout = greenout->getEditedState (); + pedited->colorappearance.ybout = ybout->getEditedState (); + } if (surround->get_active_row_number() == 0) { @@ -971,6 +1096,9 @@ void ColorAppearance::setDefaults (const ProcParams* defParams, const ParamsEdit contrast->setDefault (defParams->colorappearance.contrast); qcontrast->setDefault (defParams->colorappearance.qcontrast); colorh->setDefault (defParams->colorappearance.colorh); + tempout->setDefault (defParams->colorappearance.tempout); + greenout->setDefault (defParams->colorappearance.greenout); + ybout->setDefault (defParams->colorappearance.ybout); if (pedited) { degree->setDefaultEditedState (pedited->colorappearance.degree ? Edited : UnEdited); @@ -986,6 +1114,9 @@ void ColorAppearance::setDefaults (const ProcParams* defParams, const ParamsEdit contrast->setDefaultEditedState (pedited->colorappearance.contrast ? Edited : UnEdited); qcontrast->setDefaultEditedState (pedited->colorappearance.qcontrast ? Edited : UnEdited); colorh->setDefaultEditedState (pedited->colorappearance.colorh ? Edited : UnEdited); + tempout->setDefaultEditedState (pedited->colorappearance.tempout ? Edited : UnEdited); + greenout->setDefaultEditedState (pedited->colorappearance.greenout ? Edited : UnEdited); + ybout->setDefaultEditedState (pedited->colorappearance.ybout ? Edited : UnEdited); } else { degree->setDefaultEditedState (Irrelevant); @@ -1001,6 +1132,9 @@ void ColorAppearance::setDefaults (const ProcParams* defParams, const ParamsEdit qcontrast->setDefaultEditedState (Irrelevant); rstprotection->setDefaultEditedState (Irrelevant); colorh->setDefaultEditedState (Irrelevant); + tempout->setDefaultEditedState (Irrelevant); + greenout->setDefaultEditedState (Irrelevant); + ybout->setDefaultEditedState (Irrelevant); } } @@ -1104,6 +1238,13 @@ void ColorAppearance::adjusterChanged (Adjuster* a, double newval) listener->panelChanged (EvCAThue, a->getTextValue()); } else if (a == qcontrast) { listener->panelChanged (EvCATQContrast, a->getTextValue()); + } else if (a == tempout) { + listener->panelChanged (EvCATtempout, a->getTextValue()); + } else if (a == greenout) { + listener->panelChanged (EvCATgreenout, a->getTextValue()); + } else if (a == ybout) { + listener->panelChanged (EvCATybout, a->getTextValue()); + } } @@ -1281,6 +1422,9 @@ void ColorAppearance::setBatchMode (bool batchMode) contrast->showEditedCB (); qcontrast->showEditedCB (); colorh->showEditedCB (); + tempout->showEditedCB (); + greenout->showEditedCB (); + ybout->showEditedCB (); surround->append (M ("GENERAL_UNCHANGED")); wbmodel->append (M ("GENERAL_UNCHANGED")); @@ -1337,4 +1481,8 @@ void ColorAppearance::trimValues (rtengine::procparams::ProcParams* pp) contrast->trimValue (pp->colorappearance.contrast); qcontrast->trimValue (pp->colorappearance.qcontrast); colorh->trimValue (pp->colorappearance.colorh); + tempout->trimValue (pp->colorappearance.tempout); + greenout->trimValue (pp->colorappearance.greenout); + ybout->trimValue (pp->colorappearance.ybout); + } diff --git a/rtgui/colorappearance.h b/rtgui/colorappearance.h index 80fd31675..5f433b556 100644 --- a/rtgui/colorappearance.h +++ b/rtgui/colorappearance.h @@ -101,6 +101,10 @@ private: Adjuster* contrast; Adjuster* qcontrast; Adjuster* colorh; + Adjuster* tempout; + Adjuster* greenout; + Adjuster* ybout; + MyComboBoxText* toneCurveMode; MyComboBoxText* toneCurveMode2; MyComboBoxText* toneCurveMode3; diff --git a/rtgui/options.cc b/rtgui/options.cc index 8f85988b1..9568f0383 100644 --- a/rtgui/options.cc +++ b/rtgui/options.cc @@ -46,7 +46,7 @@ Glib::ustring Options::rtdir; Glib::ustring Options::cacheBaseDir; Options options; -Glib::ustring versionString = RTVERSION; +Glib::ustring versionString = RTVERSION; Glib::ustring paramFileExtension = ".pp3"; Options::Options () @@ -648,8 +648,8 @@ void Options::setDefaults () #else rtSettings.iccDirectory = "/usr/share/color/icc"; #endif - rtSettings.viewingdevice = 0; - rtSettings.viewingdevicegrey = 3; +// rtSettings.viewingdevice = 0; +// rtSettings.viewingdevicegrey = 3; rtSettings.viewinggreySc = 1; rtSettings.leveldnv = 2; rtSettings.leveldnti = 0; @@ -782,7 +782,7 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "StartupDirectory")) { - if ( keyFile.get_string ("General", "StartupDirectory") == "home") { + if ( keyFile.get_string ("General", "StartupDirectory") == "home") { startupDir = STARTUPDIR_HOME; } else if ( keyFile.get_string ("General", "StartupDirectory") == "current") { startupDir = STARTUPDIR_CURRENT; @@ -794,19 +794,19 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "StartupPath")) { - startupPath = keyFile.get_string ("General", "StartupPath"); + startupPath = keyFile.get_string ("General", "StartupPath"); } if (keyFile.has_key ("General", "DateFormat")) { - dateFormat = keyFile.get_string ("General", "DateFormat"); + dateFormat = keyFile.get_string ("General", "DateFormat"); } if (keyFile.has_key ("General", "AdjusterMinDelay")) { - adjusterMinDelay = keyFile.get_integer ("General", "AdjusterMinDelay"); + adjusterMinDelay = keyFile.get_integer ("General", "AdjusterMinDelay"); } if (keyFile.has_key ("General", "AdjusterMaxDelay")) { - adjusterMaxDelay = keyFile.get_integer ("General", "AdjusterMaxDelay"); + adjusterMaxDelay = keyFile.get_integer ("General", "AdjusterMaxDelay"); } if (keyFile.has_key ("General", "StoreLastProfile")) { @@ -814,15 +814,15 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "MultiUser")) { - multiUser = keyFile.get_boolean ("General", "MultiUser"); + multiUser = keyFile.get_boolean ("General", "MultiUser"); } if (keyFile.has_key ("General", "Version")) { - version = keyFile.get_string ("General", "Version"); + version = keyFile.get_string ("General", "Version"); } if (keyFile.has_key ("General", "Language")) { - language = keyFile.get_string ("General", "Language"); + language = keyFile.get_string ("General", "Language"); } if (keyFile.has_key ("General", "LanguageAutoDetect")) { @@ -830,7 +830,7 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "Theme")) { - theme = keyFile.get_string ("General", "Theme"); + theme = keyFile.get_string ("General", "Theme"); } if ( keyFile.has_key ("General", "DarkFramesPath")) { @@ -846,19 +846,19 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "BotLeft")) { - rtSettings.bot_left = keyFile.get_double ("General", "BotLeft"); + rtSettings.bot_left = keyFile.get_double ("General", "BotLeft"); } if (keyFile.has_key ("General", "TopLeft")) { - rtSettings.top_left = keyFile.get_double ("General", "TopLeft"); + rtSettings.top_left = keyFile.get_double ("General", "TopLeft"); } if (keyFile.has_key ("General", "TopRight")) { - rtSettings.top_right = keyFile.get_double ("General", "TopRight"); + rtSettings.top_right = keyFile.get_double ("General", "TopRight"); } if (keyFile.has_key ("General", "BotRight")) { - rtSettings.bot_right = keyFile.get_double ("General", "BotRight"); + rtSettings.bot_right = keyFile.get_double ("General", "BotRight"); } if (keyFile.has_key ("General", "Nspot")) { @@ -883,23 +883,23 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("General", "EDdetec")) { - rtSettings.ed_detec = keyFile.get_double ("General", "EDdetec"); + rtSettings.ed_detec = keyFile.get_double ("General", "EDdetec"); } if (keyFile.has_key ("General", "EDdetecStr")) { - rtSettings.ed_detecStr = keyFile.get_double ("General", "EDdetecStr"); + rtSettings.ed_detecStr = keyFile.get_double ("General", "EDdetecStr"); } if (keyFile.has_key ("General", "EDLow")) { - rtSettings.ed_low = keyFile.get_double ("General", "EDLow"); + rtSettings.ed_low = keyFile.get_double ("General", "EDLow"); } if (keyFile.has_key ("General", "EDLipinfl")) { - rtSettings.ed_lipinfl = keyFile.get_double ("General", "EDLipinfl"); + rtSettings.ed_lipinfl = keyFile.get_double ("General", "EDLipinfl"); } if (keyFile.has_key ("General", "EDLipampl")) { - rtSettings.ed_lipampl = keyFile.get_double ("General", "EDLipampl"); + rtSettings.ed_lipampl = keyFile.get_double ("General", "EDLipampl"); } @@ -907,45 +907,45 @@ int Options::readFromFile (Glib::ustring fname) if (keyFile.has_group ("External Editor")) { if (keyFile.has_key ("External Editor", "EditorKind")) { - editorToSendTo = keyFile.get_integer ("External Editor", "EditorKind"); + editorToSendTo = keyFile.get_integer ("External Editor", "EditorKind"); } if (keyFile.has_key ("External Editor", "GimpDir")) { - gimpDir = keyFile.get_string ("External Editor", "GimpDir"); + gimpDir = keyFile.get_string ("External Editor", "GimpDir"); } if (keyFile.has_key ("External Editor", "PhotoshopDir")) { - psDir = keyFile.get_string ("External Editor", "PhotoshopDir"); + psDir = keyFile.get_string ("External Editor", "PhotoshopDir"); } if (keyFile.has_key ("External Editor", "CustomEditor")) { - customEditorProg = keyFile.get_string ("External Editor", "CustomEditor"); + customEditorProg = keyFile.get_string ("External Editor", "CustomEditor"); } } if (keyFile.has_group ("Output")) { if (keyFile.has_key ("Output", "Format")) { - saveFormat.format = keyFile.get_string ("Output", "Format"); + saveFormat.format = keyFile.get_string ("Output", "Format"); } if (keyFile.has_key ("Output", "JpegQuality")) { - saveFormat.jpegQuality = keyFile.get_integer ("Output", "JpegQuality"); + saveFormat.jpegQuality = keyFile.get_integer ("Output", "JpegQuality"); } if (keyFile.has_key ("Output", "JpegSubSamp")) { - saveFormat.jpegSubSamp = keyFile.get_integer ("Output", "JpegSubSamp"); + saveFormat.jpegSubSamp = keyFile.get_integer ("Output", "JpegSubSamp"); } if (keyFile.has_key ("Output", "PngCompression")) { - saveFormat.pngCompression = keyFile.get_integer ("Output", "PngCompression"); + saveFormat.pngCompression = keyFile.get_integer ("Output", "PngCompression"); } if (keyFile.has_key ("Output", "PngBps")) { - saveFormat.pngBits = keyFile.get_integer ("Output", "PngBps"); + saveFormat.pngBits = keyFile.get_integer ("Output", "PngBps"); } if (keyFile.has_key ("Output", "TiffBps")) { - saveFormat.tiffBits = keyFile.get_integer ("Output", "TiffBps"); + saveFormat.tiffBits = keyFile.get_integer ("Output", "TiffBps"); } if (keyFile.has_key ("Output", "TiffUncompressed")) { @@ -953,32 +953,32 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Output", "SaveProcParams")) { - saveFormat.saveParams = keyFile.get_boolean ("Output", "SaveProcParams"); + saveFormat.saveParams = keyFile.get_boolean ("Output", "SaveProcParams"); } if (keyFile.has_key ("Output", "FormatBatch")) { - saveFormatBatch.format = keyFile.get_string ("Output", "FormatBatch"); + saveFormatBatch.format = keyFile.get_string ("Output", "FormatBatch"); } if (keyFile.has_key ("Output", "JpegQualityBatch")) { - saveFormatBatch.jpegQuality = keyFile.get_integer ("Output", "JpegQualityBatch"); + saveFormatBatch.jpegQuality = keyFile.get_integer ("Output", "JpegQualityBatch"); } if (keyFile.has_key ("Output", "JpegSubSampBatch")) { - saveFormatBatch.jpegSubSamp = keyFile.get_integer ("Output", "JpegSubSampBatch"); + saveFormatBatch.jpegSubSamp = keyFile.get_integer ("Output", "JpegSubSampBatch"); } if (keyFile.has_key ("Output", "PngCompressionBatch")) { - saveFormatBatch.pngCompression = keyFile.get_integer ("Output", "PngCompressionBatch"); + saveFormatBatch.pngCompression = keyFile.get_integer ("Output", "PngCompressionBatch"); } if (keyFile.has_key ("Output", "PngBpsBatch")) { - saveFormatBatch.pngBits = keyFile.get_integer ("Output", "PngBpsBatch"); + saveFormatBatch.pngBits = keyFile.get_integer ("Output", "PngBpsBatch"); } if (keyFile.has_key ("Output", "TiffBpsBatch")) { - saveFormatBatch.tiffBits = keyFile.get_integer ("Output", "TiffBpsBatch"); + saveFormatBatch.tiffBits = keyFile.get_integer ("Output", "TiffBpsBatch"); } if (keyFile.has_key ("Output", "TiffUncompressedBatch")) { @@ -986,135 +986,135 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Output", "SaveProcParamsBatch")) { - saveFormatBatch.saveParams = keyFile.get_boolean ("Output", "SaveProcParamsBatch"); + saveFormatBatch.saveParams = keyFile.get_boolean ("Output", "SaveProcParamsBatch"); } if (keyFile.has_key ("Output", "Path")) { - savePathTemplate = keyFile.get_string ("Output", "Path"); + savePathTemplate = keyFile.get_string ("Output", "Path"); } if (keyFile.has_key ("Output", "PathTemplate")) { - savePathTemplate = keyFile.get_string ("Output", "PathTemplate"); + savePathTemplate = keyFile.get_string ("Output", "PathTemplate"); } if (keyFile.has_key ("Output", "PathFolder")) { - savePathFolder = keyFile.get_string ("Output", "PathFolder"); + savePathFolder = keyFile.get_string ("Output", "PathFolder"); } if (keyFile.has_key ("Output", "AutoSuffix")) { - autoSuffix = keyFile.get_boolean ("Output", "AutoSuffix"); + autoSuffix = keyFile.get_boolean ("Output", "AutoSuffix"); } if (keyFile.has_key ("Output", "ForceFormatOpts")) { - forceFormatOpts = keyFile.get_boolean ("Output", "ForceFormatOpts"); + forceFormatOpts = keyFile.get_boolean ("Output", "ForceFormatOpts"); } if (keyFile.has_key ("Output", "SaveMethodNum")) { - saveMethodNum = keyFile.get_integer ("Output", "SaveMethodNum"); + saveMethodNum = keyFile.get_integer ("Output", "SaveMethodNum"); } if (keyFile.has_key ("Output", "UsePathTemplate")) { - saveUsePathTemplate = keyFile.get_boolean ("Output", "UsePathTemplate"); + saveUsePathTemplate = keyFile.get_boolean ("Output", "UsePathTemplate"); } if (keyFile.has_key ("Output", "LastSaveAsPath")) { - lastSaveAsPath = keyFile.get_string ("Output", "LastSaveAsPath"); + lastSaveAsPath = keyFile.get_string ("Output", "LastSaveAsPath"); } if (keyFile.has_key ("Output", "OverwriteOutputFile")) { - overwriteOutputFile = keyFile.get_boolean ("Output", "OverwriteOutputFile"); + overwriteOutputFile = keyFile.get_boolean ("Output", "OverwriteOutputFile"); } if (keyFile.has_key ("Output", "TunnelMetaData")) { - tunnelMetaData = keyFile.get_boolean ("Output", "TunnelMetaData"); + tunnelMetaData = keyFile.get_boolean ("Output", "TunnelMetaData"); } } if (keyFile.has_group ("Profiles")) { if (keyFile.has_key ("Profiles", "Directory")) { - profilePath = keyFile.get_string ("Profiles", "Directory"); + profilePath = keyFile.get_string ("Profiles", "Directory"); } if (keyFile.has_key ("Profiles", "UseBundledProfiles")) { - useBundledProfiles = keyFile.get_boolean ("Profiles", "UseBundledProfiles"); + useBundledProfiles = keyFile.get_boolean ("Profiles", "UseBundledProfiles"); } if (keyFile.has_key ("Profiles", "LoadSaveProfilePath")) { - loadSaveProfilePath = keyFile.get_string ("Profiles", "LoadSaveProfilePath"); + loadSaveProfilePath = keyFile.get_string ("Profiles", "LoadSaveProfilePath"); } if (keyFile.has_key ("Profiles", "RawDefault")) { - defProfRaw = keyFile.get_string ("Profiles", "RawDefault"); + defProfRaw = keyFile.get_string ("Profiles", "RawDefault"); } if (keyFile.has_key ("Profiles", "ImgDefault")) { - defProfImg = keyFile.get_string ("Profiles", "ImgDefault"); + defProfImg = keyFile.get_string ("Profiles", "ImgDefault"); } if (keyFile.has_key ("Profiles", "FilledProfile")) { - filledProfile = keyFile.get_boolean ("Profiles", "FilledProfile"); + filledProfile = keyFile.get_boolean ("Profiles", "FilledProfile"); } if (keyFile.has_key ("Profiles", "SaveParamsWithFile")) { - saveParamsFile = keyFile.get_boolean ("Profiles", "SaveParamsWithFile"); + saveParamsFile = keyFile.get_boolean ("Profiles", "SaveParamsWithFile"); } if (keyFile.has_key ("Profiles", "SaveParamsToCache")) { - saveParamsCache = keyFile.get_boolean ("Profiles", "SaveParamsToCache"); + saveParamsCache = keyFile.get_boolean ("Profiles", "SaveParamsToCache"); } if (keyFile.has_key ("Profiles", "LoadParamsFromLocation")) { - paramsLoadLocation = (PPLoadLocation)keyFile.get_integer ("Profiles", "LoadParamsFromLocation"); + paramsLoadLocation = (PPLoadLocation)keyFile.get_integer ("Profiles", "LoadParamsFromLocation"); } if (keyFile.has_key ("Profiles", "CustomProfileBuilder")) { - CPBPath = keyFile.get_string ("Profiles", "CustomProfileBuilder"); // for backward compatibility only + CPBPath = keyFile.get_string ("Profiles", "CustomProfileBuilder"); // for backward compatibility only } if (keyFile.has_key ("Profiles", "CustomProfileBuilderPath")) { - CPBPath = keyFile.get_string ("Profiles", "CustomProfileBuilderPath"); + CPBPath = keyFile.get_string ("Profiles", "CustomProfileBuilderPath"); } if (keyFile.has_key ("Profiles", "CustomProfileBuilderKeys")) { - CPBKeys = (CPBKeyType)keyFile.get_integer ("Profiles", "CustomProfileBuilderKeys"); + CPBKeys = (CPBKeyType)keyFile.get_integer ("Profiles", "CustomProfileBuilderKeys"); } } if (keyFile.has_group ("File Browser")) { if (keyFile.has_key ("File Browser", "ThumbnailSize")) { - thumbSize = keyFile.get_integer ("File Browser", "ThumbnailSize"); + thumbSize = keyFile.get_integer ("File Browser", "ThumbnailSize"); } if (keyFile.has_key ("File Browser", "ThumbnailSizeTab")) { - thumbSizeTab = keyFile.get_integer ("File Browser", "ThumbnailSizeTab"); + thumbSizeTab = keyFile.get_integer ("File Browser", "ThumbnailSizeTab"); } if (keyFile.has_key ("File Browser", "ThumbnailSizeQueue")) { - thumbSizeQueue = keyFile.get_integer ("File Browser", "ThumbnailSizeQueue"); + thumbSizeQueue = keyFile.get_integer ("File Browser", "ThumbnailSizeQueue"); } if (keyFile.has_key ("File Browser", "SameThumbSize")) { - sameThumbSize = keyFile.get_integer ("File Browser", "SameThumbSize"); + sameThumbSize = keyFile.get_integer ("File Browser", "SameThumbSize"); } if (keyFile.has_key ("File Browser", "BrowseOnlyRaw")) { - fbOnlyRaw = keyFile.get_boolean ("File Browser", "BrowseOnlyRaw"); + fbOnlyRaw = keyFile.get_boolean ("File Browser", "BrowseOnlyRaw"); } if (keyFile.has_key ("File Browser", "BrowserShowsDate")) { - fbShowDateTime = keyFile.get_boolean ("File Browser", "BrowserShowsDate"); + fbShowDateTime = keyFile.get_boolean ("File Browser", "BrowserShowsDate"); } if (keyFile.has_key ("File Browser", "BrowserShowsExif")) { - fbShowBasicExif = keyFile.get_boolean ("File Browser", "BrowserShowsExif"); + fbShowBasicExif = keyFile.get_boolean ("File Browser", "BrowserShowsExif"); } if (keyFile.has_key ("File Browser", "BrowserShowsExpComp")) { - fbShowExpComp = keyFile.get_boolean ("File Browser", "BrowserShowsExpComp"); + fbShowExpComp = keyFile.get_boolean ("File Browser", "BrowserShowsExpComp"); } if (keyFile.has_key ("File Browser", "BrowserShowsHidden")) { - fbShowHidden = keyFile.get_boolean ("File Browser", "BrowserShowsHidden"); + fbShowHidden = keyFile.get_boolean ("File Browser", "BrowserShowsHidden"); } if (keyFile.has_key ("File Browser", "MaxPreviewHeight")) { @@ -1122,31 +1122,31 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("File Browser", "MaxCacheEntries")) { - maxCacheEntries = keyFile.get_integer ("File Browser", "MaxCacheEntries"); + maxCacheEntries = keyFile.get_integer ("File Browser", "MaxCacheEntries"); } if (keyFile.has_key ("File Browser", "ParseExtensions")) { - parseExtensions = keyFile.get_string_list ("File Browser", "ParseExtensions"); + parseExtensions = keyFile.get_string_list ("File Browser", "ParseExtensions"); } if (keyFile.has_key ("File Browser", "ParseExtensionsEnabled")) { - parseExtensionsEnabled = keyFile.get_integer_list ("File Browser", "ParseExtensionsEnabled"); + parseExtensionsEnabled = keyFile.get_integer_list ("File Browser", "ParseExtensionsEnabled"); } if (keyFile.has_key ("File Browser", "ThumbnailArrangement")) { - fbArrangement = keyFile.get_integer ("File Browser", "ThumbnailArrangement"); + fbArrangement = keyFile.get_integer ("File Browser", "ThumbnailArrangement"); } if (keyFile.has_key ("File Browser", "ThumbnailInterpolation")) { - thumbInterp = keyFile.get_integer ("File Browser", "ThumbnailInterpolation"); + thumbInterp = keyFile.get_integer ("File Browser", "ThumbnailInterpolation"); } if (keyFile.has_key ("File Browser", "FavoriteDirs")) { - favoriteDirs = keyFile.get_string_list ("File Browser", "FavoriteDirs"); + favoriteDirs = keyFile.get_string_list ("File Browser", "FavoriteDirs"); } if (keyFile.has_key ("File Browser", "RenameTemplates")) { - renameTemplates = keyFile.get_string_list ("File Browser", "RenameTemplates"); + renameTemplates = keyFile.get_string_list ("File Browser", "RenameTemplates"); } if (keyFile.has_key ("File Browser", "RenameUseTemplates")) { @@ -1158,7 +1158,7 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("File Browser", "OverlayedFileNames")) { - overlayedFileNames = keyFile.get_boolean ("File Browser", "OverlayedFileNames"); + overlayedFileNames = keyFile.get_boolean ("File Browser", "OverlayedFileNames"); } if (keyFile.has_key ("File Browser", "FilmStripOverlayedFileNames")) { @@ -1166,45 +1166,45 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("File Browser", "ShowFileNames")) { - showFileNames = keyFile.get_boolean ("File Browser", "ShowFileNames"); + showFileNames = keyFile.get_boolean ("File Browser", "ShowFileNames"); } if (keyFile.has_key ("File Browser", "FilmStripShowFileNames")) { - filmStripShowFileNames = keyFile.get_boolean ("File Browser", "FilmStripShowFileNames"); + filmStripShowFileNames = keyFile.get_boolean ("File Browser", "FilmStripShowFileNames"); } if (keyFile.has_key ("File Browser", "InternalThumbIfUntouched")) { - internalThumbIfUntouched = keyFile.get_boolean ("File Browser", "InternalThumbIfUntouched"); + internalThumbIfUntouched = keyFile.get_boolean ("File Browser", "InternalThumbIfUntouched"); } if (keyFile.has_key ("File Browser", "menuGroupRank")) { - menuGroupRank = keyFile.get_boolean ("File Browser", "menuGroupRank"); + menuGroupRank = keyFile.get_boolean ("File Browser", "menuGroupRank"); } if (keyFile.has_key ("File Browser", "menuGroupLabel")) { - menuGroupLabel = keyFile.get_boolean ("File Browser", "menuGroupLabel"); + menuGroupLabel = keyFile.get_boolean ("File Browser", "menuGroupLabel"); } if (keyFile.has_key ("File Browser", "menuGroupFileOperations")) { - menuGroupFileOperations = keyFile.get_boolean ("File Browser", "menuGroupFileOperations"); + menuGroupFileOperations = keyFile.get_boolean ("File Browser", "menuGroupFileOperations"); } if (keyFile.has_key ("File Browser", "menuGroupProfileOperations")) { - menuGroupProfileOperations = keyFile.get_boolean ("File Browser", "menuGroupProfileOperations"); + menuGroupProfileOperations = keyFile.get_boolean ("File Browser", "menuGroupProfileOperations"); } if (keyFile.has_key ("File Browser", "menuGroupExtProg")) { - menuGroupExtProg = keyFile.get_boolean ("File Browser", "menuGroupExtProg"); + menuGroupExtProg = keyFile.get_boolean ("File Browser", "menuGroupExtProg"); } if (keyFile.has_key ("File Browser", "MaxRecentFolders")) { - maxRecentFolders = keyFile.get_integer ("File Browser", "MaxRecentFolders"); + maxRecentFolders = keyFile.get_integer ("File Browser", "MaxRecentFolders"); } recentFolders.reserve (maxRecentFolders + 10); // reserve some more than maxRecentFolders, because at runtime it stores more than that if (keyFile.has_key ("File Browser", "RecentFolders")) { - recentFolders = keyFile.get_string_list ("File Browser", "RecentFolders"); + recentFolders = keyFile.get_string_list ("File Browser", "RecentFolders"); } } @@ -1214,29 +1214,29 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Clipping Indication", "ShadowThreshold")) { - shadowThreshold = keyFile.get_integer ("Clipping Indication", "ShadowThreshold"); + shadowThreshold = keyFile.get_integer ("Clipping Indication", "ShadowThreshold"); } if (keyFile.has_key ("Clipping Indication", "BlinkClipped")) { - blinkClipped = keyFile.get_boolean ("Clipping Indication", "BlinkClipped"); + blinkClipped = keyFile.get_boolean ("Clipping Indication", "BlinkClipped"); } } if (keyFile.has_group ("Performance")) { if (keyFile.has_key ("Performance", "RgbDenoiseThreadLimit")) { - rgbDenoiseThreadLimit = keyFile.get_integer ("Performance", "RgbDenoiseThreadLimit"); + rgbDenoiseThreadLimit = keyFile.get_integer ("Performance", "RgbDenoiseThreadLimit"); } if ( keyFile.has_key ("Performance", "NRauto")) { - rtSettings.nrauto = keyFile.get_double ("Performance", "NRauto"); + rtSettings.nrauto = keyFile.get_double ("Performance", "NRauto"); } if ( keyFile.has_key ("Performance", "NRautomax")) { - rtSettings.nrautomax = keyFile.get_double ("Performance", "NRautomax"); + rtSettings.nrautomax = keyFile.get_double ("Performance", "NRautomax"); } if ( keyFile.has_key ("Performance", "NRhigh")) { - rtSettings.nrhigh = keyFile.get_double ("Performance", "NRhigh"); + rtSettings.nrhigh = keyFile.get_double ("Performance", "NRhigh"); } if (rtSettings.nrhigh == 0.0) { //avoid crash by division by zero in noise reduction @@ -1244,23 +1244,23 @@ int Options::readFromFile (Glib::ustring fname) } if ( keyFile.has_key ("Performance", "NRWavlevel")) { - rtSettings.nrwavlevel = keyFile.get_integer ("Performance", "NRWavlevel"); + rtSettings.nrwavlevel = keyFile.get_integer ("Performance", "NRWavlevel"); } if (keyFile.has_key ("Performance", "LevNR")) { - rtSettings.leveldnv = keyFile.get_integer ("Performance", "LevNR"); + rtSettings.leveldnv = keyFile.get_integer ("Performance", "LevNR"); } if (keyFile.has_key ("Performance", "LevNRTI")) { - rtSettings.leveldnti = keyFile.get_integer ("Performance", "LevNRTI"); + rtSettings.leveldnti = keyFile.get_integer ("Performance", "LevNRTI"); } if (keyFile.has_key ("Performance", "LevNRAUT")) { - rtSettings.leveldnaut = keyFile.get_integer ("Performance", "LevNRAUT"); + rtSettings.leveldnaut = keyFile.get_integer ("Performance", "LevNRAUT"); } if (keyFile.has_key ("Performance", "LevNRLISS")) { - rtSettings.leveldnliss = keyFile.get_integer ("Performance", "LevNRLISS"); + rtSettings.leveldnliss = keyFile.get_integer ("Performance", "LevNRLISS"); } if (keyFile.has_key ("Performance", "SIMPLNRAUT")) { @@ -1268,15 +1268,15 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Performance", "ClutCacheSize")) { - clutCacheSize = keyFile.get_integer ("Performance", "ClutCacheSize"); + clutCacheSize = keyFile.get_integer ("Performance", "ClutCacheSize"); } if (keyFile.has_key ("Performance", "MaxInspectorBuffers")) { - maxInspectorBuffers = keyFile.get_integer ("Performance", "MaxInspectorBuffers"); + maxInspectorBuffers = keyFile.get_integer ("Performance", "MaxInspectorBuffers"); } if (keyFile.has_key ("Performance", "PreviewDemosaicFromSidecar")) { - prevdemo = (prevdemo_t)keyFile.get_integer ("Performance", "PreviewDemosaicFromSidecar"); + prevdemo = (prevdemo_t)keyFile.get_integer ("Performance", "PreviewDemosaicFromSidecar"); } if (keyFile.has_key ("Performance", "Localajustqual")) { @@ -1288,29 +1288,29 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Performance", "Daubechies")) { - rtSettings.daubech = keyFile.get_boolean ("Performance", "Daubechies"); + rtSettings.daubech = keyFile.get_boolean ("Performance", "Daubechies"); } if (keyFile.has_key ("Performance", "SerializeTiffRead")) { - serializeTiffRead = keyFile.get_boolean ("Performance", "SerializeTiffRead"); + serializeTiffRead = keyFile.get_boolean ("Performance", "SerializeTiffRead"); } } if (keyFile.has_group ("GUI")) { if (keyFile.has_key ("GUI", "WindowWidth")) { - windowWidth = keyFile.get_integer ("GUI", "WindowWidth"); + windowWidth = keyFile.get_integer ("GUI", "WindowWidth"); } if (keyFile.has_key ("GUI", "WindowHeight")) { - windowHeight = keyFile.get_integer ("GUI", "WindowHeight"); + windowHeight = keyFile.get_integer ("GUI", "WindowHeight"); } if (keyFile.has_key ("GUI", "WindowX")) { - windowX = keyFile.get_integer ("GUI", "WindowX"); + windowX = keyFile.get_integer ("GUI", "WindowX"); } if (keyFile.has_key ("GUI", "WindowY")) { - windowY = keyFile.get_integer ("GUI", "WindowY"); + windowY = keyFile.get_integer ("GUI", "WindowY"); } if (keyFile.has_key ("GUI", "WindowMonitor")) { @@ -1330,19 +1330,19 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "MeowWidth")) { - meowWidth = keyFile.get_integer ("GUI", "MeowWidth"); + meowWidth = keyFile.get_integer ("GUI", "MeowWidth"); } if (keyFile.has_key ("GUI", "MeowHeight")) { - meowHeight = keyFile.get_integer ("GUI", "MeowHeight"); + meowHeight = keyFile.get_integer ("GUI", "MeowHeight"); } if (keyFile.has_key ("GUI", "MeowX")) { - meowX = keyFile.get_integer ("GUI", "MeowX"); + meowX = keyFile.get_integer ("GUI", "MeowX"); } if (keyFile.has_key ("GUI", "MeowY")) { - meowY = keyFile.get_integer ("GUI", "MeowY"); + meowY = keyFile.get_integer ("GUI", "MeowY"); } if (keyFile.has_key ("GUI", "WindowMaximized")) { @@ -1350,47 +1350,47 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "DetailWindowWidth")) { - detailWindowWidth = keyFile.get_integer ("GUI", "DetailWindowWidth"); + detailWindowWidth = keyFile.get_integer ("GUI", "DetailWindowWidth"); } if (keyFile.has_key ("GUI", "DetailWindowHeight")) { - detailWindowHeight = keyFile.get_integer ("GUI", "DetailWindowHeight"); + detailWindowHeight = keyFile.get_integer ("GUI", "DetailWindowHeight"); } if (keyFile.has_key ("GUI", "DirBrowserWidth")) { - dirBrowserWidth = keyFile.get_integer ("GUI", "DirBrowserWidth"); + dirBrowserWidth = keyFile.get_integer ("GUI", "DirBrowserWidth"); } if (keyFile.has_key ("GUI", "DirBrowserHeight")) { - dirBrowserHeight = keyFile.get_integer ("GUI", "DirBrowserHeight"); + dirBrowserHeight = keyFile.get_integer ("GUI", "DirBrowserHeight"); } if (keyFile.has_key ("GUI", "SortType")) { - dirBrowserSortType = static_cast (keyFile.get_integer ("GUI", "SortType")); + dirBrowserSortType = static_cast (keyFile.get_integer ("GUI", "SortType")); } if (keyFile.has_key ("GUI", "PreferencesWidth")) { - preferencesWidth = keyFile.get_integer ("GUI", "PreferencesWidth"); + preferencesWidth = keyFile.get_integer ("GUI", "PreferencesWidth"); } if (keyFile.has_key ("GUI", "PreferencesHeight")) { - preferencesHeight = keyFile.get_integer ("GUI", "PreferencesHeight"); + preferencesHeight = keyFile.get_integer ("GUI", "PreferencesHeight"); } if (keyFile.has_key ("GUI", "SaveAsDialogWidth")) { - saveAsDialogWidth = keyFile.get_integer ("GUI", "SaveAsDialogWidth"); + saveAsDialogWidth = keyFile.get_integer ("GUI", "SaveAsDialogWidth"); } if (keyFile.has_key ("GUI", "SaveAsDialogHeight")) { - saveAsDialogHeight = keyFile.get_integer ("GUI", "SaveAsDialogHeight"); + saveAsDialogHeight = keyFile.get_integer ("GUI", "SaveAsDialogHeight"); } if (keyFile.has_key ("GUI", "ToolPanelWidth")) { - toolPanelWidth = keyFile.get_integer ("GUI", "ToolPanelWidth"); + toolPanelWidth = keyFile.get_integer ("GUI", "ToolPanelWidth"); } if (keyFile.has_key ("GUI", "BrowserToolPanelWidth")) { - browserToolPanelWidth = keyFile.get_integer ("GUI", "BrowserToolPanelWidth"); + browserToolPanelWidth = keyFile.get_integer ("GUI", "BrowserToolPanelWidth"); } if (keyFile.has_key ("GUI", "BrowserToolPanelHeight")) { @@ -1402,11 +1402,11 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "BrowserDirPanelOpened")) { - browserDirPanelOpened = keyFile.get_boolean ("GUI", "BrowserDirPanelOpened"); + browserDirPanelOpened = keyFile.get_boolean ("GUI", "BrowserDirPanelOpened"); } if (keyFile.has_key ("GUI", "EditorFilmStripOpened")) { - editorFilmStripOpened = keyFile.get_boolean ("GUI", "EditorFilmStripOpened"); + editorFilmStripOpened = keyFile.get_boolean ("GUI", "EditorFilmStripOpened"); } if (keyFile.has_key ("GUI", "HistoryPanelWidth")) { @@ -1414,39 +1414,39 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "FontFamily")) { - fontFamily = keyFile.get_string ("GUI", "FontFamily"); + fontFamily = keyFile.get_string ("GUI", "FontFamily"); } if (keyFile.has_key ("GUI", "FontSize")) { - fontSize = keyFile.get_integer ("GUI", "FontSize"); + fontSize = keyFile.get_integer ("GUI", "FontSize"); } if (keyFile.has_key ("GUI", "CPFontFamily")) { - CPFontFamily = keyFile.get_string ("GUI", "CPFontFamily"); + CPFontFamily = keyFile.get_string ("GUI", "CPFontFamily"); } if (keyFile.has_key ("GUI", "CPFontSize")) { - CPFontSize = keyFile.get_integer ("GUI", "CPFontSize"); + CPFontSize = keyFile.get_integer ("GUI", "CPFontSize"); } if (keyFile.has_key ("GUI", "LastPreviewScale")) { - lastScale = keyFile.get_integer ("GUI", "LastPreviewScale"); + lastScale = keyFile.get_integer ("GUI", "LastPreviewScale"); } if (keyFile.has_key ("GUI", "PanAccelFactor")) { - panAccelFactor = keyFile.get_integer ("GUI", "PanAccelFactor"); + panAccelFactor = keyFile.get_integer ("GUI", "PanAccelFactor"); } if (keyFile.has_key ("GUI", "RememberZoomAndPan")) { - rememberZoomAndPan = keyFile.get_boolean ("GUI", "RememberZoomAndPan"); + rememberZoomAndPan = keyFile.get_boolean ("GUI", "RememberZoomAndPan"); } if (keyFile.has_key ("GUI", "LastCropSize")) { - lastCropSize = keyFile.get_integer ("GUI", "LastCropSize"); + lastCropSize = keyFile.get_integer ("GUI", "LastCropSize"); } if (keyFile.has_key ("GUI", "ShowHistory")) { - showHistory = keyFile.get_boolean ("GUI", "ShowHistory"); + showHistory = keyFile.get_boolean ("GUI", "ShowHistory"); } if (keyFile.has_key ("GUI", "ShowFilePanelState")) { @@ -1454,11 +1454,11 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "ShowInfo")) { - showInfo = keyFile.get_boolean ("GUI", "ShowInfo"); + showInfo = keyFile.get_boolean ("GUI", "ShowInfo"); } if (keyFile.has_key ("GUI", "MainNBVertical")) { - mainNBVertical = keyFile.get_boolean ("GUI", "MainNBVertical"); + mainNBVertical = keyFile.get_boolean ("GUI", "MainNBVertical"); } if (keyFile.has_key ("GUI", "ShowClippedHighlights")) { @@ -1470,7 +1470,7 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "FrameColor")) { - bgcolor = keyFile.get_integer ("GUI", "FrameColor"); + bgcolor = keyFile.get_integer ("GUI", "FrameColor"); } if (keyFile.has_key ("GUI", "ProcessingQueueEnbled")) { @@ -1478,44 +1478,44 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "ToolPanelsExpanded")) { - tpOpen = keyFile.get_integer_list ("GUI", "ToolPanelsExpanded"); + tpOpen = keyFile.get_integer_list ("GUI", "ToolPanelsExpanded"); } if (keyFile.has_key ("GUI", "MultiDisplayMode")) { - multiDisplayMode = keyFile.get_integer ("GUI", "MultiDisplayMode"); + multiDisplayMode = keyFile.get_integer ("GUI", "MultiDisplayMode"); } - //if (keyFile.has_key ("GUI", "CurvePanelsExpanded")) crvOpen = keyFile.get_integer_list ("GUI", "CurvePanelsExpanded"); + //if (keyFile.has_key ("GUI", "CurvePanelsExpanded")) crvOpen = keyFile.get_integer_list ("GUI", "CurvePanelsExpanded"); if (keyFile.has_key ("GUI", "CutOverlayBrush")) { - cutOverlayBrush = keyFile.get_double_list ("GUI", "CutOverlayBrush"); + cutOverlayBrush = keyFile.get_double_list ("GUI", "CutOverlayBrush"); } if (keyFile.has_key ("GUI", "NavGuideBrush")) { - navGuideBrush = keyFile.get_double_list ("GUI", "NavGuideBrush"); + navGuideBrush = keyFile.get_double_list ("GUI", "NavGuideBrush"); } if (keyFile.has_key ("GUI", "HistogramPosition")) { - histogramPosition = keyFile.get_integer ("GUI", "HistogramPosition"); + histogramPosition = keyFile.get_integer ("GUI", "HistogramPosition"); } if (keyFile.has_key ("GUI", "HistogramBar")) { - histogramBar = keyFile.get_boolean ("GUI", "HistogramBar"); + histogramBar = keyFile.get_boolean ("GUI", "HistogramBar"); } if (keyFile.has_key ("GUI", "HistogramFullMode")) { - histogramFullMode = keyFile.get_boolean ("GUI", "HistogramFullMode"); + histogramFullMode = keyFile.get_boolean ("GUI", "HistogramFullMode"); } if (keyFile.has_key ("GUI", "NavigatorRGBUnit")) { - navRGBUnit = (NavigatorUnit)keyFile.get_integer ("GUI", "NavigatorRGBUnit"); + navRGBUnit = (NavigatorUnit)keyFile.get_integer ("GUI", "NavigatorRGBUnit"); } if (keyFile.has_key ("GUI", "NavigatorHSVUnit")) { - navHSVUnit = (NavigatorUnit)keyFile.get_integer ("GUI", "NavigatorHSVUnit"); + navHSVUnit = (NavigatorUnit)keyFile.get_integer ("GUI", "NavigatorHSVUnit"); } if (keyFile.has_key ("GUI", "ShowFilmStripToolBar")) { - showFilmStripToolBar = keyFile.get_boolean ("GUI", "ShowFilmStripToolBar"); + showFilmStripToolBar = keyFile.get_boolean ("GUI", "ShowFilmStripToolBar"); } if (keyFile.has_key ("GUI", "Showdelimspot")) { @@ -1527,11 +1527,11 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "HideTPVScrollbar")) { - hideTPVScrollbar = keyFile.get_boolean ("GUI", "HideTPVScrollbar"); + hideTPVScrollbar = keyFile.get_boolean ("GUI", "HideTPVScrollbar"); } if (keyFile.has_key ("GUI", "UseIconNoText")) { - UseIconNoText = keyFile.get_boolean ("GUI", "UseIconNoText"); + UseIconNoText = keyFile.get_boolean ("GUI", "UseIconNoText"); } if (keyFile.has_key ("GUI", "HistogramWorking")) { @@ -1539,35 +1539,35 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("GUI", "CurveBBoxPosition")) { - curvebboxpos = keyFile.get_integer ("GUI", "CurveBBoxPosition"); + curvebboxpos = keyFile.get_integer ("GUI", "CurveBBoxPosition"); } } if (keyFile.has_group ("Crop Settings")) { if (keyFile.has_key ("Crop Settings", "PPI")) { - cropPPI = keyFile.get_integer ("Crop Settings", "PPI"); + cropPPI = keyFile.get_integer ("Crop Settings", "PPI"); } } if (keyFile.has_group ("Color Management")) { if (keyFile.has_key ("Color Management", "ICCDirectory")) { - rtSettings.iccDirectory = keyFile.get_string ("Color Management", "ICCDirectory"); + rtSettings.iccDirectory = keyFile.get_string ("Color Management", "ICCDirectory"); } if (keyFile.has_key ("Color Management", "PrinterIntent")) { - rtSettings.printerIntent = static_cast (keyFile.get_integer ("Color Management", "PrinterIntent")); + rtSettings.printerIntent = static_cast (keyFile.get_integer ("Color Management", "PrinterIntent")); } if (keyFile.has_key ("Color Management", "PrinterBPC")) { - rtSettings.printerBPC = keyFile.get_boolean ("Color Management", "PrinterBPC"); + rtSettings.printerBPC = keyFile.get_boolean ("Color Management", "PrinterBPC"); } if (keyFile.has_key ("Color Management", "PrinterProfile")) { - rtSettings.printerProfile = keyFile.get_string ("Color Management", "PrinterProfile"); + rtSettings.printerProfile = keyFile.get_string ("Color Management", "PrinterProfile"); } if (keyFile.has_key ("Color Management", "MonitorProfile")) { - rtSettings.monitorProfile = keyFile.get_string ("Color Management", "MonitorProfile"); + rtSettings.monitorProfile = keyFile.get_string ("Color Management", "MonitorProfile"); } if (keyFile.has_key ("Color Management", "AutoMonitorProfile")) { @@ -1583,122 +1583,124 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Color Management", "Intent")) { - rtSettings.monitorIntent = static_cast (keyFile.get_integer ("Color Management", "Intent")); + rtSettings.monitorIntent = static_cast (keyFile.get_integer ("Color Management", "Intent")); } if (keyFile.has_key ("Color Management", "MonitorBPC")) { - rtSettings.monitorBPC = keyFile.get_boolean ("Color Management", "MonitorBPC"); + rtSettings.monitorBPC = keyFile.get_boolean ("Color Management", "MonitorBPC"); } if (keyFile.has_key ("Color Management", "CRI")) { - rtSettings.CRI_color = keyFile.get_integer ("Color Management", "CRI"); + rtSettings.CRI_color = keyFile.get_integer ("Color Management", "CRI"); } if (keyFile.has_key ("Color Management", "DenoiseLabgamma")) { - rtSettings.denoiselabgamma = keyFile.get_integer ("Color Management", "DenoiseLabgamma"); + rtSettings.denoiselabgamma = keyFile.get_integer ("Color Management", "DenoiseLabgamma"); } + /* if (keyFile.has_key ("Color Management", "view")) { - rtSettings.viewingdevice = keyFile.get_integer ("Color Management", "view"); + rtSettings.viewingdevice = keyFile.get_integer ("Color Management", "view"); } if (keyFile.has_key ("Color Management", "grey")) { - rtSettings.viewingdevicegrey = keyFile.get_integer ("Color Management", "grey"); + rtSettings.viewingdevicegrey = keyFile.get_integer ("Color Management", "grey"); } + */ if (keyFile.has_key ("Color Management", "greySc")) { - rtSettings.viewinggreySc = keyFile.get_integer ("Color Management", "greySc"); + rtSettings.viewinggreySc = keyFile.get_integer ("Color Management", "greySc"); } if (keyFile.has_key ("Color Management", "CBDLArtif")) { - rtSettings.artifact_cbdl = keyFile.get_double ("Color Management", "CBDLArtif"); + rtSettings.artifact_cbdl = keyFile.get_double ("Color Management", "CBDLArtif"); } if (keyFile.has_key ("Color Management", "CBDLlevel0")) { - rtSettings.level0_cbdl = keyFile.get_double ("Color Management", "CBDLlevel0"); + rtSettings.level0_cbdl = keyFile.get_double ("Color Management", "CBDLlevel0"); } if (keyFile.has_key ("Color Management", "CBDLlevel123")) { - rtSettings.level123_cbdl = keyFile.get_double ("Color Management", "CBDLlevel123"); + rtSettings.level123_cbdl = keyFile.get_double ("Color Management", "CBDLlevel123"); } -// if (keyFile.has_key ("Color Management", "Colortoningab")) rtSettings.colortoningab = keyFile.get_double("Color Management", "Colortoningab"); -// if (keyFile.has_key ("Color Management", "Decaction")) rtSettings.decaction = keyFile.get_double("Color Management", "Decaction"); + //if (keyFile.has_key ("Color Management", "Colortoningab")) rtSettings.colortoningab = keyFile.get_double("Color Management", "Colortoningab"); + //if (keyFile.has_key ("Color Management", "Decaction")) rtSettings.decaction = keyFile.get_double("Color Management", "Decaction"); if (keyFile.has_key ("Color Management", "WhiteBalanceSpotSize")) { - whiteBalanceSpotSize = keyFile.get_integer ("Color Management", "WhiteBalanceSpotSize"); + whiteBalanceSpotSize = keyFile.get_integer ("Color Management", "WhiteBalanceSpotSize"); } if ( keyFile.has_key ("Color Management", "GamutICC")) { - rtSettings.gamutICC = keyFile.get_boolean ("Color Management", "GamutICC"); + rtSettings.gamutICC = keyFile.get_boolean ("Color Management", "GamutICC"); } -// if( keyFile.has_key ("Color Management", "BWcomplement")) rtSettings.bw_complementary = keyFile.get_boolean("Color Management", "BWcomplement"); + //if ( keyFile.has_key ("Color Management", "BWcomplement")) rtSettings.bw_complementary = keyFile.get_boolean("Color Management", "BWcomplement"); if ( keyFile.has_key ("Color Management", "Ciecamfloat")) { - rtSettings.ciecamfloat = keyFile.get_boolean ("Color Management", "Ciecamfloat"); + rtSettings.ciecamfloat = keyFile.get_boolean ("Color Management", "Ciecamfloat"); } if ( keyFile.has_key ("Color Management", "AdobeRGB")) { - rtSettings.adobe = keyFile.get_string ("Color Management", "AdobeRGB"); + rtSettings.adobe = keyFile.get_string ("Color Management", "AdobeRGB"); } if ( keyFile.has_key ("Color Management", "ProPhoto")) { - rtSettings.prophoto = keyFile.get_string ("Color Management", "ProPhoto"); + rtSettings.prophoto = keyFile.get_string ("Color Management", "ProPhoto"); } if ( keyFile.has_key ("Color Management", "ProPhoto10")) { - rtSettings.prophoto10 = keyFile.get_string ("Color Management", "ProPhoto10"); + rtSettings.prophoto10 = keyFile.get_string ("Color Management", "ProPhoto10"); } if ( keyFile.has_key ("Color Management", "WideGamut")) { - rtSettings.widegamut = keyFile.get_string ("Color Management", "WideGamut"); + rtSettings.widegamut = keyFile.get_string ("Color Management", "WideGamut"); } if ( keyFile.has_key ("Color Management", "sRGB")) { - rtSettings.srgb = keyFile.get_string ("Color Management", "sRGB"); + rtSettings.srgb = keyFile.get_string ("Color Management", "sRGB"); } if ( keyFile.has_key ("Color Management", "sRGB10")) { - rtSettings.srgb10 = keyFile.get_string ("Color Management", "sRGB10"); + rtSettings.srgb10 = keyFile.get_string ("Color Management", "sRGB10"); } if ( keyFile.has_key ("Color Management", "Beta")) { - rtSettings.beta = keyFile.get_string ("Color Management", "Beta"); + rtSettings.beta = keyFile.get_string ("Color Management", "Beta"); } if ( keyFile.has_key ("Color Management", "Best")) { - rtSettings.best = keyFile.get_string ("Color Management", "Best"); + rtSettings.best = keyFile.get_string ("Color Management", "Best"); } if ( keyFile.has_key ("Color Management", "Rec2020")) { - rtSettings.rec2020 = keyFile.get_string ("Color Management", "Rec2020"); + rtSettings.rec2020 = keyFile.get_string ("Color Management", "Rec2020"); } if ( keyFile.has_key ("Color Management", "Bruce")) { - rtSettings.bruce = keyFile.get_string ("Color Management", "Bruce"); + rtSettings.bruce = keyFile.get_string ("Color Management", "Bruce"); } if ( keyFile.has_key ("Color Management", "GamutLch")) { - rtSettings.gamutLch = keyFile.get_boolean ("Color Management", "GamutLch"); + rtSettings.gamutLch = keyFile.get_boolean ("Color Management", "GamutLch"); } if ( keyFile.has_key ("Color Management", "ProtectRed")) { - rtSettings.protectred = keyFile.get_integer ("Color Management", "ProtectRed"); + rtSettings.protectred = keyFile.get_integer ("Color Management", "ProtectRed"); } if ( keyFile.has_key ("Color Management", "ProtectRedH")) { - rtSettings.protectredh = keyFile.get_double ("Color Management", "ProtectRedH"); + rtSettings.protectredh = keyFile.get_double ("Color Management", "ProtectRedH"); } if ( keyFile.has_key ("Color Management", "Amountchroma")) { - rtSettings.amchroma = keyFile.get_integer ("Color Management", "Amountchroma"); + rtSettings.amchroma = keyFile.get_integer ("Color Management", "Amountchroma"); } if ( keyFile.has_key ("Color Management", "ClutsDirectory")) { - clutsDir = keyFile.get_string ("Color Management", "ClutsDirectory"); + clutsDir = keyFile.get_string ("Color Management", "ClutsDirectory"); } -// if( keyFile.has_key ("Color Management", "Ciebadpixgauss")) rtSettings.ciebadpixgauss = keyFile.get_boolean("Color Management", "Ciebadpixgauss"); + //if( keyFile.has_key ("Color Management", "Ciebadpixgauss")) rtSettings.ciebadpixgauss = keyFile.get_boolean("Color Management", "Ciebadpixgauss"); } @@ -1710,7 +1712,7 @@ int Options::readFromFile (Glib::ustring fname) if (keyFile.has_group ("Sounds")) { if (keyFile.has_key ("Sounds", "Enable")) { - sndEnable = keyFile.get_boolean ("Sounds", "Enable"); + sndEnable = keyFile.get_boolean ("Sounds", "Enable"); } if (keyFile.has_key ("Sounds", "BatchQueueDone")) { @@ -1718,7 +1720,7 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_key ("Sounds", "LngEditProcDone")) { - sndLngEditProcDone = keyFile.get_string ("Sounds", "LngEditProcDone"); + sndLngEditProcDone = keyFile.get_string ("Sounds", "LngEditProcDone"); } if (keyFile.has_key ("Sounds", "LngEditProcDoneSecs")) { @@ -1727,163 +1729,163 @@ int Options::readFromFile (Glib::ustring fname) } if (keyFile.has_group ("Fast Export")) { - if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpening" )) { - fastexport_bypass_sharpening = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpening" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpening" )) { + fastexport_bypass_sharpening = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpening" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpenEdge" )) { - fastexport_bypass_sharpenEdge = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpenEdge" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpenEdge" )) { + fastexport_bypass_sharpenEdge = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpenEdge" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpenMicro" )) { - fastexport_bypass_sharpenMicro = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpenMicro" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_sharpenMicro" )) { + fastexport_bypass_sharpenMicro = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sharpenMicro" ); } - //if (keyFile.has_key ("Fast Export", "fastexport_bypass_lumaDenoise" )) fastexport_bypass_lumaDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_lumaDenoise" ); - //if (keyFile.has_key ("Fast Export", "fastexport_bypass_colorDenoise" )) fastexport_bypass_colorDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_colorDenoise" ); - if (keyFile.has_key ("Fast Export", "fastexport_bypass_defringe" )) { - fastexport_bypass_defringe = keyFile.get_boolean ("Fast Export", "fastexport_bypass_defringe" ); + //if (keyFile.has_key ("Fast Export", "fastexport_bypass_lumaDenoise" )) fastexport_bypass_lumaDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_lumaDenoise" ); + //if (keyFile.has_key ("Fast Export", "fastexport_bypass_colorDenoise" )) fastexport_bypass_colorDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_colorDenoise" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_defringe" )) { + fastexport_bypass_defringe = keyFile.get_boolean ("Fast Export", "fastexport_bypass_defringe" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_dirpyrDenoise" )) { - fastexport_bypass_dirpyrDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_dirpyrDenoise" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_dirpyrDenoise" )) { + fastexport_bypass_dirpyrDenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_dirpyrDenoise" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_sh_hq" )) { - fastexport_bypass_sh_hq = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sh_hq" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_sh_hq" )) { + fastexport_bypass_sh_hq = keyFile.get_boolean ("Fast Export", "fastexport_bypass_sh_hq" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_dirpyrequalizer" )) { - fastexport_bypass_dirpyrequalizer = keyFile.get_boolean ("Fast Export", "fastexport_bypass_dirpyrequalizer" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_dirpyrequalizer" )) { + fastexport_bypass_dirpyrequalizer = keyFile.get_boolean ("Fast Export", "fastexport_bypass_dirpyrequalizer" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_wavelet" )) { - fastexport_bypass_wavelet = keyFile.get_boolean ("Fast Export", "fastexport_bypass_wavelet" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_wavelet" )) { + fastexport_bypass_wavelet = keyFile.get_boolean ("Fast Export", "fastexport_bypass_wavelet" ); } - if (keyFile.has_key ("Fast Export", "fastexport_raw_dmethod" )) { - fastexport_raw_bayer_method = keyFile.get_string ("Fast Export", "fastexport_raw_dmethod" ); + if (keyFile.has_key ("Fast Export", "fastexport_raw_dmethod" )) { + fastexport_raw_bayer_method = keyFile.get_string ("Fast Export", "fastexport_raw_dmethod" ); } - if (keyFile.has_key ("Fast Export", "fastexport_raw_bayer_method" )) { - fastexport_raw_bayer_method = keyFile.get_string ("Fast Export", "fastexport_raw_bayer_method" ); + if (keyFile.has_key ("Fast Export", "fastexport_raw_bayer_method" )) { + fastexport_raw_bayer_method = keyFile.get_string ("Fast Export", "fastexport_raw_bayer_method" ); } - //if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_all_enhance" )) fastexport_bypass_raw_bayer_all_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_all_enhance" ); - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_dcb_iterations" )) { - fastexport_bypass_raw_bayer_dcb_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_dcb_iterations" ); +//if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_all_enhance" )) fastexport_bypass_raw_bayer_all_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_all_enhance" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_dcb_iterations" )) { + fastexport_bypass_raw_bayer_dcb_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_dcb_iterations" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations" )) { - fastexport_bypass_raw_bayer_dcb_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations" )) { + fastexport_bypass_raw_bayer_dcb_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_dcb_enhance" )) { - fastexport_bypass_raw_bayer_dcb_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_dcb_enhance" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_dcb_enhance" )) { + fastexport_bypass_raw_bayer_dcb_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_dcb_enhance" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance" )) { - fastexport_bypass_raw_bayer_dcb_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance" )) { + fastexport_bypass_raw_bayer_dcb_enhance = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_lmmse_iterations" )) { - fastexport_bypass_raw_bayer_lmmse_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_lmmse_iterations" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_lmmse_iterations" )) { + fastexport_bypass_raw_bayer_lmmse_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_lmmse_iterations" ); } if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_lmmse_iterations")) { - fastexport_bypass_raw_bayer_lmmse_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_lmmse_iterations"); + fastexport_bypass_raw_bayer_lmmse_iterations = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_lmmse_iterations"); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_linenoise" )) { - fastexport_bypass_raw_bayer_linenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_linenoise" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_linenoise" )) { + fastexport_bypass_raw_bayer_linenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_linenoise" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_linenoise" )) { - fastexport_bypass_raw_bayer_linenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_linenoise" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_linenoise" )) { + fastexport_bypass_raw_bayer_linenoise = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_linenoise" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_greenthresh" )) { - fastexport_bypass_raw_bayer_greenthresh = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_greenthresh" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_greenthresh" )) { + fastexport_bypass_raw_bayer_greenthresh = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_greenthresh" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_greenthresh" )) { - fastexport_bypass_raw_bayer_greenthresh = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_greenthresh" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_bayer_greenthresh" )) { + fastexport_bypass_raw_bayer_greenthresh = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_bayer_greenthresh" ); } - if (keyFile.has_key ("Fast Export", "fastexport_raw_xtrans_method" )) { - fastexport_raw_xtrans_method = keyFile.get_string ("Fast Export", "fastexport_raw_xtrans_method" ); + if (keyFile.has_key ("Fast Export", "fastexport_raw_xtrans_method" )) { + fastexport_raw_xtrans_method = keyFile.get_string ("Fast Export", "fastexport_raw_xtrans_method" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ccSteps" )) { - fastexport_bypass_raw_ccSteps = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ccSteps" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ccSteps" )) { + fastexport_bypass_raw_ccSteps = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ccSteps" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ca" )) { - fastexport_bypass_raw_ca = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ca" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ca" )) { + fastexport_bypass_raw_ca = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ca" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_df" )) { - fastexport_bypass_raw_df = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_df" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_df" )) { + fastexport_bypass_raw_df = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_df" ); } - if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ff" )) { - fastexport_bypass_raw_ff = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ff" ); + if (keyFile.has_key ("Fast Export", "fastexport_bypass_raw_ff" )) { + fastexport_bypass_raw_ff = keyFile.get_boolean ("Fast Export", "fastexport_bypass_raw_ff" ); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_input" )) { - fastexport_icm_input = keyFile.get_string ("Fast Export", "fastexport_icm_input" ); + if (keyFile.has_key ("Fast Export", "fastexport_icm_input" )) { + fastexport_icm_input = keyFile.get_string ("Fast Export", "fastexport_icm_input" ); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_working" )) { - fastexport_icm_working = keyFile.get_string ("Fast Export", "fastexport_icm_working" ); + if (keyFile.has_key ("Fast Export", "fastexport_icm_working" )) { + fastexport_icm_working = keyFile.get_string ("Fast Export", "fastexport_icm_working" ); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_output" )) { - fastexport_icm_output = keyFile.get_string ("Fast Export", "fastexport_icm_output" ); + if (keyFile.has_key ("Fast Export", "fastexport_icm_output" )) { + fastexport_icm_output = keyFile.get_string ("Fast Export", "fastexport_icm_output" ); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_output_intent" )) { - fastexport_icm_outputIntent = static_cast (keyFile.get_integer ("Fast Export", "fastexport_icm_output_intent" )); + if (keyFile.has_key ("Fast Export", "fastexport_icm_output_intent" )) { + fastexport_icm_outputIntent = static_cast (keyFile.get_integer ("Fast Export", "fastexport_icm_output_intent" )); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_output_bpc" )) { - fastexport_icm_outputBPC = keyFile.get_boolean ("Fast Export", "fastexport_icm_output_bpc" ); + if (keyFile.has_key ("Fast Export", "fastexport_icm_output_bpc" )) { + fastexport_icm_outputBPC = keyFile.get_boolean ("Fast Export", "fastexport_icm_output_bpc" ); } - if (keyFile.has_key ("Fast Export", "fastexport_icm_gamma" )) { - fastexport_icm_gamma = keyFile.get_string ("Fast Export", "fastexport_icm_gamma" ); + if (keyFile.has_key ("Fast Export", "fastexport_icm_gamma" )) { + fastexport_icm_gamma = keyFile.get_string ("Fast Export", "fastexport_icm_gamma" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_enabled" )) { - fastexport_resize_enabled = keyFile.get_boolean ("Fast Export", "fastexport_resize_enabled" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_enabled" )) { + fastexport_resize_enabled = keyFile.get_boolean ("Fast Export", "fastexport_resize_enabled" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_scale" )) { - fastexport_resize_scale = keyFile.get_double ("Fast Export", "fastexport_resize_scale" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_scale" )) { + fastexport_resize_scale = keyFile.get_double ("Fast Export", "fastexport_resize_scale" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_appliesTo" )) { - fastexport_resize_appliesTo = keyFile.get_string ("Fast Export", "fastexport_resize_appliesTo" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_appliesTo" )) { + fastexport_resize_appliesTo = keyFile.get_string ("Fast Export", "fastexport_resize_appliesTo" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_method" )) { - fastexport_resize_method = keyFile.get_string ("Fast Export", "fastexport_resize_method" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_method" )) { + fastexport_resize_method = keyFile.get_string ("Fast Export", "fastexport_resize_method" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_dataspec" )) { - fastexport_resize_dataspec = keyFile.get_integer ("Fast Export", "fastexport_resize_dataspec" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_dataspec" )) { + fastexport_resize_dataspec = keyFile.get_integer ("Fast Export", "fastexport_resize_dataspec" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_width" )) { - fastexport_resize_width = keyFile.get_integer ("Fast Export", "fastexport_resize_width" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_width" )) { + fastexport_resize_width = keyFile.get_integer ("Fast Export", "fastexport_resize_width" ); } - if (keyFile.has_key ("Fast Export", "fastexport_resize_height" )) { - fastexport_resize_height = keyFile.get_integer ("Fast Export", "fastexport_resize_height" ); + if (keyFile.has_key ("Fast Export", "fastexport_resize_height" )) { + fastexport_resize_height = keyFile.get_integer ("Fast Export", "fastexport_resize_height" ); } - if (keyFile.has_key ("Fast Export", "fastexport_use_fast_pipeline" )) { - fastexport_use_fast_pipeline = keyFile.get_integer ("Fast Export", "fastexport_use_fast_pipeline" ); + if (keyFile.has_key ("Fast Export", "fastexport_use_fast_pipeline" )) { + fastexport_use_fast_pipeline = keyFile.get_integer ("Fast Export", "fastexport_use_fast_pipeline" ); } } @@ -1982,15 +1984,15 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_string ("General", "DarkFramesPath", rtSettings.darkFramesPath); keyFile.set_string ("General", "FlatFieldsPath", rtSettings.flatFieldsPath); keyFile.set_boolean ("General", "Verbose", rtSettings.verbose); - keyFile.set_double ("General", "BotLeft", rtSettings.bot_left); - keyFile.set_double ("General", "TopLeft", rtSettings.top_left); - keyFile.set_double ("General", "TopRight", rtSettings.top_right); - keyFile.set_double ("General", "BotRight", rtSettings.bot_right); - keyFile.set_double ("General", "EDdetec", rtSettings.ed_detec); - keyFile.set_double ("General", "EDdetecStr", rtSettings.ed_detecStr); - keyFile.set_double ("General", "EDLow", rtSettings.ed_low); - keyFile.set_double ("General", "EDLipinfl", rtSettings.ed_lipinfl); - keyFile.set_double ("General", "EDLipampl", rtSettings.ed_lipampl); + keyFile.set_double ("General", "BotLeft", rtSettings.bot_left); + keyFile.set_double ("General", "TopLeft", rtSettings.top_left); + keyFile.set_double ("General", "TopRight", rtSettings.top_right); + keyFile.set_double ("General", "BotRight", rtSettings.bot_right); + keyFile.set_double ("General", "EDdetec", rtSettings.ed_detec); + keyFile.set_double ("General", "EDdetecStr", rtSettings.ed_detecStr); + keyFile.set_double ("General", "EDLow", rtSettings.ed_low); + keyFile.set_double ("General", "EDLipinfl", rtSettings.ed_lipinfl); + keyFile.set_double ("General", "EDLipampl", rtSettings.ed_lipampl); keyFile.set_integer ("General", "Nspot", rtSettings.nspot); keyFile.set_boolean ("General", "Locdelay", rtSettings.locdelay); @@ -2191,8 +2193,8 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_boolean ("Color Management", "RGBcurvesLumamode_Gamut", rtSettings.rgbcurveslumamode_gamut); keyFile.set_integer ("Color Management", "Intent", rtSettings.monitorIntent); keyFile.set_boolean ("Color Management", "MonitorBPC", rtSettings.monitorBPC); - keyFile.set_integer ("Color Management", "view", rtSettings.viewingdevice); - keyFile.set_integer ("Color Management", "grey", rtSettings.viewingdevicegrey); + //keyFile.set_integer ("Color Management", "view", rtSettings.viewingdevice); + //keyFile.set_integer ("Color Management", "grey", rtSettings.viewingdevicegrey); keyFile.set_integer ("Color Management", "greySc", rtSettings.viewinggreySc); keyFile.set_string ("Color Management", "AdobeRGB", rtSettings.adobe); @@ -2207,7 +2209,7 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_string ("Color Management", "Bruce", rtSettings.bruce); keyFile.set_integer ("Color Management", "WhiteBalanceSpotSize", whiteBalanceSpotSize); keyFile.set_boolean ("Color Management", "GamutICC", rtSettings.gamutICC); -// keyFile.set_boolean ("Color Management", "BWcomplement", rtSettings.bw_complementary); + //keyFile.set_boolean ("Color Management", "BWcomplement", rtSettings.bw_complementary); keyFile.set_boolean ("Color Management", "Ciecamfloat", rtSettings.ciecamfloat); keyFile.set_boolean ("Color Management", "GamutLch", rtSettings.gamutLch); keyFile.set_integer ("Color Management", "ProtectRed", rtSettings.protectred); @@ -2215,13 +2217,13 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_double ("Color Management", "ProtectRedH", rtSettings.protectredh); keyFile.set_integer ("Color Management", "CRI", rtSettings.CRI_color); keyFile.set_integer ("Color Management", "DenoiseLabgamma", rtSettings.denoiselabgamma); -// keyFile.set_boolean ("Color Management", "Ciebadpixgauss", rtSettings.ciebadpixgauss); - keyFile.set_double ("Color Management", "CBDLArtif", rtSettings.artifact_cbdl); - keyFile.set_double ("Color Management", "CBDLlevel0", rtSettings.level0_cbdl); - keyFile.set_double ("Color Management", "CBDLlevel123", rtSettings.level123_cbdl); -// keyFile.set_double ("Color Management", "Colortoningab", rtSettings.colortoningab); -// keyFile.set_double ("Color Management", "Decaction", rtSettings.decaction); - keyFile.set_string ("Color Management", "ClutsDirectory", clutsDir); + //keyFile.set_boolean ("Color Management", "Ciebadpixgauss", rtSettings.ciebadpixgauss); + keyFile.set_double ("Color Management", "CBDLArtif", rtSettings.artifact_cbdl); + keyFile.set_double ("Color Management", "CBDLlevel0", rtSettings.level0_cbdl); + keyFile.set_double ("Color Management", "CBDLlevel123", rtSettings.level123_cbdl); + //keyFile.set_double ("Color Management", "Colortoningab", rtSettings.colortoningab); + //keyFile.set_double ("Color Management", "Decaction", rtSettings.decaction); + keyFile.set_string ("Color Management", "ClutsDirectory", clutsDir); Glib::ArrayHandle bab = baBehav; @@ -2233,20 +2235,20 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_double ("Sounds", "LngEditProcDoneSecs", sndLngEditProcDoneSecs); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpening", fastexport_bypass_sharpening ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpenEdge", fastexport_bypass_sharpenEdge ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpenMicro", fastexport_bypass_sharpenMicro ); - //keyFile.set_boolean ("Fast Export", "fastexport_bypass_lumaDenoise" , fastexport_bypass_lumaDenoise ); - //keyFile.set_boolean ("Fast Export", "fastexport_bypass_colorDenoise" , fastexport_bypass_colorDenoise ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_defringe", fastexport_bypass_defringe ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_dirpyrDenoise", fastexport_bypass_dirpyrDenoise ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_sh_hq", fastexport_bypass_sh_hq ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_dirpyrequalizer", fastexport_bypass_dirpyrequalizer ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_wavelet", fastexport_bypass_wavelet ); - keyFile.set_string ("Fast Export", "fastexport_raw_bayer_method", fastexport_raw_bayer_method ); - //keyFile.set_boolean ("Fast Export", "fastexport_bypass_bayer_raw_all_enhance" , fastexport_bypass_raw_bayer_all_enhance ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations", fastexport_bypass_raw_bayer_dcb_iterations ); - keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance", fastexport_bypass_raw_bayer_dcb_enhance ); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpening", fastexport_bypass_sharpening); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpenEdge", fastexport_bypass_sharpenEdge); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_sharpenMicro", fastexport_bypass_sharpenMicro); + //keyFile.set_boolean ("Fast Export", "fastexport_bypass_lumaDenoise" , fastexport_bypass_lumaDenoise); + //keyFile.set_boolean ("Fast Export", "fastexport_bypass_colorDenoise" , fastexport_bypass_colorDenoise); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_defringe", fastexport_bypass_defringe); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_dirpyrDenoise", fastexport_bypass_dirpyrDenoise); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_sh_hq", fastexport_bypass_sh_hq); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_dirpyrequalizer", fastexport_bypass_dirpyrequalizer); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_wavelet", fastexport_bypass_wavelet); + keyFile.set_string ("Fast Export", "fastexport_raw_bayer_method", fastexport_raw_bayer_method); + //keyFile.set_boolean ("Fast Export", "fastexport_bypass_bayer_raw_all_enhance" , fastexport_bypass_raw_bayer_all_enhance); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_iterations", fastexport_bypass_raw_bayer_dcb_iterations); + keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_dcb_enhance", fastexport_bypass_raw_bayer_dcb_enhance); keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_lmmse_iterations", fastexport_bypass_raw_bayer_lmmse_iterations); keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_linenoise", fastexport_bypass_raw_bayer_linenoise ); keyFile.set_boolean ("Fast Export", "fastexport_bypass_raw_bayer_greenthresh", fastexport_bypass_raw_bayer_greenthresh ); diff --git a/rtgui/paramsedited.cc b/rtgui/paramsedited.cc index c4a921c3b..85ac6c351 100644 --- a/rtgui/paramsedited.cc +++ b/rtgui/paramsedited.cc @@ -204,6 +204,9 @@ void ParamsEdited::set (bool v) colorappearance.curveMode = v; colorappearance.curveMode2 = v; colorappearance.curveMode3 = v; + colorappearance.tempout = v; + colorappearance.greenout = v; + colorappearance.ybout = v; //colorBoost.amount = v; //colorBoost.avoidclip = v; @@ -820,6 +823,9 @@ void ParamsEdited::initFrom (const std::vector colorappearance.curveMode = colorappearance.curveMode && p.colorappearance.curveMode == other.colorappearance.curveMode; colorappearance.curveMode2 = colorappearance.curveMode2 && p.colorappearance.curveMode2 == other.colorappearance.curveMode2; colorappearance.curveMode3 = colorappearance.curveMode3 && p.colorappearance.curveMode3 == other.colorappearance.curveMode3; + colorappearance.tempout = colorappearance.tempout && p.colorappearance.tempout == other.colorappearance.tempout; + colorappearance.greenout = colorappearance.greenout && p.colorappearance.greenout == other.colorappearance.greenout; + colorappearance.ybout = colorappearance.ybout && p.colorappearance.ybout == other.colorappearance.ybout; //colorBoost.amount = colorBoost.amount && p.colorBoost.amount == other.colorBoost.amount; //colorBoost.avoidclip = colorBoost.avoidclip && p.colorBoost.avoidclip == other.colorBoost.avoidclip; @@ -1924,6 +1930,18 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten toEdit.colorappearance.algo = mods.colorappearance.algo; } + if (colorappearance.tempout) { + toEdit.colorappearance.tempout = mods.colorappearance.tempout; + } + + if (colorappearance.greenout) { + toEdit.colorappearance.greenout = mods.colorappearance.greenout; + } + + if (colorappearance.ybout) { + toEdit.colorappearance.ybout = mods.colorappearance.ybout; + } + if (colorappearance.jlight) { toEdit.colorappearance.jlight = dontforceSet && options.baBehav[ADDSET_CAT_LIGHT] ? toEdit.colorappearance.jlight + mods.colorappearance.jlight : mods.colorappearance.jlight; } diff --git a/rtgui/paramsedited.h b/rtgui/paramsedited.h index 015f5a31d..5ac97040d 100644 --- a/rtgui/paramsedited.h +++ b/rtgui/paramsedited.h @@ -311,6 +311,10 @@ public: bool datacie; bool tonecie; // bool sharpcie; + bool tempout; + bool greenout; + bool ybout; + }; class DirPyrDenoiseParamsEdited diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc index 0fdb194b7..cc8639eac 100644 --- a/rtgui/preferences.cc +++ b/rtgui/preferences.cc @@ -36,7 +36,7 @@ extern Glib::ustring argv0; Glib::RefPtr themecss; Glib::RefPtr fontcss; -Preferences::Preferences (RTWindow *rtwindow) +Preferences::Preferences (RTWindow *rtwindow) : Gtk::Dialog (M ("MAIN_BUTTON_PREFERENCES"), *rtwindow, true) , splash (nullptr) , rprofiles (nullptr) @@ -174,7 +174,7 @@ Gtk::Widget* Preferences::getBatchProcPanel () Gtk::TreeModel::iterator mi, ci; /* - * The TRUE/FALSE values of appendBehavList are replaced by the one defined in options.cc, + * The TRUE/FALSE values of appendBehavList are replaced by the one defined in options.cc, */ mi = behModel->append (); mi->set_value (behavColumns.label, M ("TP_EXPOSURE_LABEL")); @@ -214,25 +214,6 @@ Gtk::Widget* Preferences::getBatchProcPanel () mi->set_value (behavColumns.label, M ("TP_SHARPENING_LABEL")); appendBehavList (mi, M ("TP_SHARPENING_AMOUNT"), ADDSET_SHARP_AMOUNT, false); - mi = behModel->append (); - /* - mi->set_value (behavColumns.label, M ("TP_LOCALLAB_LABEL")); - // appendBehavList (mi, M("TP_LOCALLAB_DEGREE"), ADDSET_LOCALLAB_DEGREE, false); - appendBehavList (mi, M ("TP_LOCAL_HEIGHT"), ADDSET_LOCALLAB_LOCY, false); - appendBehavList (mi, M ("TP_LOCAL_WIDTH"), ADDSET_LOCALLAB_LOCX, false); - appendBehavList (mi, M ("TP_LOCAL_HEIGHT_T"), ADDSET_LOCALLAB_LOCYT, false); - appendBehavList (mi, M ("TP_LOCAL_WIDTH_L"), ADDSET_LOCALLAB_LOCXL, false); - appendBehavList (mi, M ("TP_LOCALLAB_CENTER_X") + ", " + M ("TP_LOCALLAB_CENTER_Y"), ADDSET_LOCALLAB_CENTER, false); - appendBehavList (mi, M ("TP_LOCALLAB_LIGHTNESS"), ADDSET_LOCALLAB_LIGHTNESS, false); - appendBehavList (mi, M ("TP_LOCALLAB_CONTRAST"), ADDSET_LOCALLAB_CONTRAST, false); - appendBehavList (mi, M ("TP_LOCALLAB_CHROMA"), ADDSET_LOCALLAB_CHROMA, false); - appendBehavList (mi, M ("TP_LOCALLAB_SENSI"), ADDSET_LOCALLAB_SENSI, false); - appendBehavList (mi, M ("TP_LOCALLAB_RADIUS"), ADDSET_LOCALLAB_RADIUS, false); - appendBehavList (mi, M ("TP_LOCALLAB_STRENGTH"), ADDSET_LOCALLAB_STRENGTH, false); - appendBehavList (mi, M ("TP_LOCALLAB_TRANSIT"), ADDSET_LOCALLAB_TRANSIT, false); - */ - - mi = behModel->append (); mi->set_value (behavColumns.label, M ("TP_SHARPENEDGE_LABEL")); appendBehavList (mi, M ("TP_SHARPENEDGE_PASSES"), ADDSET_SHARPENEDGE_PASS, false); @@ -245,7 +226,7 @@ Gtk::Widget* Preferences::getBatchProcPanel () mi = behModel->append (); mi->set_value (behavColumns.label, M ("TP_DIRPYRDENOISE_LABEL")); - // appendBehavList (mi, M("TP_DIRPYRDENOISE_LUMA")+", "+M("TP_DIRPYRDENOISE_CHROMA"), ADDSET_DIRPYRDN_CHLUM, true); + //appendBehavList (mi, M("TP_DIRPYRDENOISE_LUMA")+", "+M("TP_DIRPYRDENOISE_CHROMA"), ADDSET_DIRPYRDN_CHLUM, true); appendBehavList (mi, M ("TP_DIRPYRDENOISE_LUMA"), ADDSET_DIRPYRDN_LUMA, true); appendBehavList (mi, M ("TP_DIRPYRDENOISE_LDETAIL"), ADDSET_DIRPYRDN_LUMDET, true); appendBehavList (mi, M ("TP_DIRPYRDENOISE_CHROMA"), ADDSET_DIRPYRDN_CHROMA, true); @@ -353,7 +334,7 @@ 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_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); @@ -413,7 +394,7 @@ Gtk::Widget* Preferences::getBatchProcPanel () buttonpanel1->pack_end (*behAddAll, Gtk::PACK_SHRINK, 4); vbbeh->pack_start (*buttonpanel1, Gtk::PACK_SHRINK, 4); - chOverwriteOutputFile = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_OVERWRITEOUTPUTFILE")) ); + chOverwriteOutputFile = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_OVERWRITEOUTPUTFILE")) ); mvbpp->pack_start (*chOverwriteOutputFile, Gtk::PACK_SHRINK, 4); return mvbpp; @@ -547,10 +528,10 @@ Gtk::Widget* Preferences::getProcParamsPanel () hb42->pack_start (*darkFrameDir, Gtk::PACK_EXPAND_WIDGET, 4); dfLabel = Gtk::manage (new Gtk::Label ("Found:")); Gtk::VBox* vbdf = Gtk::manage (new Gtk::VBox ()); - vbdf->pack_start ( *hb42, Gtk::PACK_SHRINK, 4); - vbdf->pack_start ( *dfLabel, Gtk::PACK_SHRINK, 4 ); - fdf->add ( *vbdf ); - mvbpp->pack_start ( *fdf, Gtk::PACK_SHRINK, 4); + vbdf->pack_start (*hb42, Gtk::PACK_SHRINK, 4); + vbdf->pack_start (*dfLabel, Gtk::PACK_SHRINK, 4 ); + fdf->add (*vbdf ); + mvbpp->pack_start (*fdf, Gtk::PACK_SHRINK, 4); //dfconn = darkFrameDir->signal_file_set().connect ( sigc::mem_fun(*this, &Preferences::darkFrameChanged), true); dfconn = darkFrameDir->signal_selection_changed().connect ( sigc::mem_fun (*this, &Preferences::darkFrameChanged), true); @@ -564,10 +545,10 @@ Gtk::Widget* Preferences::getProcParamsPanel () hb43->pack_start (*flatFieldDir); ffLabel = Gtk::manage (new Gtk::Label ("Found:")); Gtk::VBox* vbff = Gtk::manage (new Gtk::VBox ()); - vbff->pack_start ( *hb43, Gtk::PACK_SHRINK, 4); - vbff->pack_start ( *ffLabel, Gtk::PACK_SHRINK, 4 ); - fff->add ( *vbff ); - mvbpp->pack_start ( *fff, Gtk::PACK_SHRINK, 4); + vbff->pack_start (*hb43, Gtk::PACK_SHRINK, 4); + vbff->pack_start (*ffLabel, Gtk::PACK_SHRINK, 4 ); + fff->add (*vbff ); + mvbpp->pack_start (*fff, Gtk::PACK_SHRINK, 4); //ffconn = flatFieldDir->signal_file_set().connect ( sigc::mem_fun(*this, &Preferences::flatFieldChanged), true); ffconn = flatFieldDir->signal_selection_changed().connect ( sigc::mem_fun (*this, &Preferences::flatFieldChanged), true); @@ -578,11 +559,11 @@ Gtk::Widget* Preferences::getProcParamsPanel () clutsDir = Gtk::manage (new Gtk::FileChooserButton (M ("PREFERENCES_CLUTSDIR"), Gtk::FILE_CHOOSER_ACTION_SELECT_FOLDER)); Gtk::Label *clutsDirLabel = Gtk::manage (new Gtk::Label (M ("PREFERENCES_CLUTSDIR") + ":")); Gtk::Label* clutsRestartNeeded = Gtk::manage ( new Gtk::Label (Glib::ustring (" (") + M ("PREFERENCES_APPLNEXTSTARTUP") + ")") ); - clutsDirBox->pack_start ( *clutsDirLabel, Gtk::PACK_SHRINK, 4 ); - clutsDirBox->pack_start ( *clutsDir ); - clutsDirBox->pack_start ( *clutsRestartNeeded, Gtk::PACK_SHRINK, 4 ); - clutsDirFrame->add ( *clutsDirBox ); - mvbpp->pack_start ( *clutsDirFrame, Gtk::PACK_SHRINK, 4 ); + clutsDirBox->pack_start (*clutsDirLabel, Gtk::PACK_SHRINK, 4 ); + clutsDirBox->pack_start (*clutsDir ); + clutsDirBox->pack_start (*clutsRestartNeeded, Gtk::PACK_SHRINK, 4 ); + clutsDirFrame->add (*clutsDirBox ); + mvbpp->pack_start (*clutsDirFrame, Gtk::PACK_SHRINK, 4 ); Gtk::Frame* fmd = Gtk::manage (new Gtk::Frame (M ("PREFERENCES_METADATA"))); Gtk::VBox* vbmd = Gtk::manage (new Gtk::VBox ()); @@ -639,7 +620,7 @@ Gtk::Widget* Preferences::getPerformancePanel () fclut->add (*clutCacheSizeHB); mainContainer->pack_start (*fclut, Gtk::PACK_SHRINK, 4); - Gtk::Frame* finspect = Gtk::manage ( new Gtk::Frame (M ("PREFERENCES_INSPECT_LABEL")) ); + Gtk::Frame* finspect = Gtk::manage ( new Gtk::Frame (M ("PREFERENCES_INSPECT_LABEL")) ); Gtk::HBox* maxIBuffersHB = Gtk::manage ( new Gtk::HBox () ); maxIBuffersHB->set_spacing (4); maxIBuffersHB->set_tooltip_text (M ("PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP")); @@ -648,7 +629,7 @@ Gtk::Widget* Preferences::getPerformancePanel () maxInspectorBuffersSB->set_digits (0); maxInspectorBuffersSB->set_increments (1, 5); maxInspectorBuffersSB->set_max_length (2); - maxInspectorBuffersSB->set_range (1, 12); // ... we have to set a limit, 12 seem to be enough even for systems with tons of RAM + maxInspectorBuffersSB->set_range (1, 12); // ... we have to set a limit, 12 seem to be enough even for systems with tons of RAM maxIBuffersHB->pack_start (*maxIBufferLbl, Gtk::PACK_SHRINK, 0); maxIBuffersHB->pack_end (*maxInspectorBuffersSB, Gtk::PACK_SHRINK, 0); finspect->add (*maxIBuffersHB); @@ -773,7 +754,7 @@ Gtk::Widget* Preferences::getColorManagementPanel () mvbcm->pack_start (*iccdgrid, Gtk::PACK_SHRINK); - //------------------------- MONITOR ---------------------- + //------------------------- MONITOR ---------------------- Gtk::Frame* fmonitor = Gtk::manage ( new Gtk::Frame (M ("PREFERENCES_MONITOR")) ); Gtk::Grid* gmonitor = Gtk::manage ( new Gtk::Grid () ); @@ -814,7 +795,7 @@ Gtk::Widget* Preferences::getColorManagementPanel () //#if defined(WIN32) // Auto-detection not implemented for Linux, see issue 851 cbAutoMonProfile = Gtk::manage (new Gtk::CheckButton (M ("PREFERENCES_AUTOMONPROFILE"))); setExpandAlignProperties (cbAutoMonProfile, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); - autoMonProfileConn = cbAutoMonProfile->signal_toggled().connect (sigc::mem_fun (*this, &Preferences::autoMonProfileToggled)); + autoMonProfileConn = cbAutoMonProfile->signal_toggled().connect (sigc::mem_fun (*this, &Preferences::autoMonProfileToggled)); //#endif int row = 0; @@ -844,7 +825,7 @@ Gtk::Widget* Preferences::getColorManagementPanel () mvbcm->pack_start (*fmonitor, Gtk::PACK_SHRINK); - //------------------------- PRINTER ---------------------- + //------------------------- PRINTER ---------------------- Gtk::Frame* fprinter = Gtk::manage ( new Gtk::Frame (M ("PREFERENCES_PRINTER")) ); Gtk::Grid* gprinter = Gtk::manage ( new Gtk::Grid () ); @@ -894,7 +875,8 @@ Gtk::Widget* Preferences::getColorManagementPanel () fprinter->add (*gprinter); mvbcm->pack_start (*fprinter, Gtk::PACK_SHRINK); - +/* +<<<<<<< HEAD //------------------------- CIECAM ---------------------- Gtk::Label* viewlab = Gtk::manage (new Gtk::Label (M ("PREFERENCES_VIEW") + ":", Gtk::ALIGN_START)); @@ -922,6 +904,41 @@ Gtk::Widget* Preferences::getColorManagementPanel () grey->append (M ("PREFERENCES_GREY23")); grey->append (M ("PREFERENCES_GREY30")); grey->append (M ("PREFERENCES_GREY40")); +======= +*/ + //------------------------- CIECAM ---------------------- + + /* + Gtk::Label* viewlab = Gtk::manage (new Gtk::Label (M ("PREFERENCES_VIEW") + ":", Gtk::ALIGN_START)); + setExpandAlignProperties (viewlab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); + + view = Gtk::manage (new Gtk::ComboBoxText ()); + setExpandAlignProperties (view, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER); + view->append (M("PREFERENCES_D50_MENU")); + + view->append (M ("PREFERENCES_D50")); + view->append (M("PREFERENCES_D55")); + view->append (M("PREFERENCES_D60")); + view->append (M("PREFERENCES_D65")); + view->append (M("PREFERENCES_BLACKBODY")); + view->append (M("PREFERENCES_FLUOF2")); + view->append (M("PREFERENCES_FLUOF7")); + view->append (M("PREFERENCES_FLUOF11")); + + Gtk::Label* greylab = Gtk::manage (new Gtk::Label (M ("PREFERENCES_GREY") + ":", Gtk::ALIGN_START)); + setExpandAlignProperties (greylab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); + grey = Gtk::manage (new Gtk::ComboBoxText ()); + setExpandAlignProperties (grey, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER); + grey->append (M("PREFERENCES_GREY05")); + grey->append (M("PREFERENCES_GREY10")); + grey->append (M("PREFERENCES_GREY15")); + grey->append (M ("PREFERENCES_GREY18")); + grey->append (M("PREFERENCES_GREY18_MENU")); + + grey->append (M("PREFERENCES_GREY23")); + grey->append (M("PREFERENCES_GREY30")); + grey->append (M("PREFERENCES_GREY40")); + */ Gtk::Label* greySclab = Gtk::manage (new Gtk::Label (M ("PREFERENCES_GREYSC") + ":", Gtk::ALIGN_START)); setExpandAlignProperties (greySclab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); @@ -937,13 +954,15 @@ Gtk::Widget* Preferences::getColorManagementPanel () setExpandAlignProperties (colo, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_FILL); Gtk::Label* lreloadneeded1 = Gtk::manage (new Gtk::Label (M ("PREFERENCES_IMG_RELOAD_NEEDED"), Gtk::ALIGN_START)); setExpandAlignProperties (lreloadneeded1, true, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); - colo->attach (*lreloadneeded1, 0, 0, 2, 1); - colo->attach (*viewlab, 0, 1, 1, 1); - colo->attach (*view, 1, 1, 1, 1); - colo->attach (*greylab, 0, 2, 1, 1); - colo->attach (*grey, 1, 2, 1, 1); - colo->attach (*greySclab, 0, 3, 1, 1); - colo->attach (*greySc, 1, 3, 1, 1); + colo->attach (*lreloadneeded1, 0, 0, 2, 1); + /* + colo->attach (*viewlab, 0, 1, 1, 1); + colo->attach (*view, 1, 1, 1, 1); + colo->attach (*greylab, 0, 2, 1, 1); + colo->attach (*grey, 1, 2, 1, 1); + */ + colo->attach (*greySclab, 0, 3, 1, 1); + colo->attach (*greySc, 1, 3, 1, 1); cbciecamfloat = Gtk::manage (new Gtk::CheckButton (M ("PREFERENCES_CIEART_LABEL"))); setExpandAlignProperties (cbciecamfloat, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER); colo->attach (*cbciecamfloat, 0, 4, 2, 1); @@ -1004,32 +1023,30 @@ Gtk::Widget* Preferences::getGeneralPanel () workflowGrid->attach_next_to (*curveBBoxPosC, *editorLayout, Gtk::POS_BOTTOM, 1, 1); workflowGrid->attach_next_to (*curveBBoxPosRestartL, *lNextStart, Gtk::POS_BOTTOM, 1, 1); - ckbHistogramPositionLeft = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_HISTOGRAMPOSITIONLEFT")) ); + ckbHistogramPositionLeft = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_HISTOGRAMPOSITIONLEFT")) ); setExpandAlignProperties (ckbHistogramPositionLeft, false, false, Gtk::ALIGN_START, Gtk::ALIGN_BASELINE); - ckbHistogramWorking = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_HISTOGRAMWORKING")) ); + ckbHistogramWorking = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_HISTOGRAMWORKING")) ); setExpandAlignProperties (ckbHistogramWorking, false, false, Gtk::ALIGN_START, Gtk::ALIGN_BASELINE); ckbHistogramWorking->set_tooltip_markup (M ("PREFERENCES_HISTOGRAM_TOOLTIP")); workflowGrid->attach_next_to (*ckbHistogramPositionLeft, *curveBBoxPosL, Gtk::POS_BOTTOM, 1, 1); workflowGrid->attach_next_to (*ckbHistogramWorking, *curveBBoxPosC, Gtk::POS_BOTTOM, 2, 1); - ckbFileBrowserToolbarSingleRow = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_FILEBROWSERTOOLBARSINGLEROW")) ); + ckbFileBrowserToolbarSingleRow = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_FILEBROWSERTOOLBARSINGLEROW")) ); setExpandAlignProperties (ckbFileBrowserToolbarSingleRow, false, false, Gtk::ALIGN_START, Gtk::ALIGN_START); - ckbShowFilmStripToolBar = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_SHOWFILMSTRIPTOOLBAR")) ); + ckbShowFilmStripToolBar = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_SHOWFILMSTRIPTOOLBAR")) ); setExpandAlignProperties (ckbShowFilmStripToolBar, false, false, Gtk::ALIGN_START, Gtk::ALIGN_START); workflowGrid->attach_next_to (*ckbFileBrowserToolbarSingleRow, *ckbHistogramPositionLeft, Gtk::POS_BOTTOM, 1, 1); workflowGrid->attach_next_to (*ckbShowFilmStripToolBar, *ckbHistogramWorking, Gtk::POS_BOTTOM, 2, 1); - Gtk::Label* hb4label = Gtk::manage ( new Gtk::Label (M ("PREFERENCES_TP_LABEL")) ); + Gtk::Label* hb4label = Gtk::manage ( new Gtk::Label (M ("PREFERENCES_TP_LABEL")) ); setExpandAlignProperties (hb4label, false, false, Gtk::ALIGN_START, Gtk::ALIGN_BASELINE); - ckbHideTPVScrollbar = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_TP_VSCROLLBAR")) ); + ckbHideTPVScrollbar = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_TP_VSCROLLBAR")) ); setExpandAlignProperties (ckbHideTPVScrollbar, false, false, Gtk::ALIGN_START, Gtk::ALIGN_BASELINE); - ckbUseIconNoText = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_TP_USEICONORTEXT")) ); + ckbUseIconNoText = Gtk::manage ( new Gtk::CheckButton (M ("PREFERENCES_TP_USEICONORTEXT")) ); setExpandAlignProperties (ckbUseIconNoText, false, false, Gtk::ALIGN_START, Gtk::ALIGN_BASELINE); workflowGrid->attach_next_to (*hb4label, *ckbFileBrowserToolbarSingleRow, Gtk::POS_BOTTOM, 1, 1); workflowGrid->attach_next_to (*ckbHideTPVScrollbar, *hb4label, Gtk::POS_RIGHT, 1, 1); workflowGrid->attach_next_to (*ckbUseIconNoText, *ckbHideTPVScrollbar, Gtk::POS_RIGHT, 1, 1); - - fworklflow->add (*workflowGrid); mvbsd->attach_next_to (*fworklflow, Gtk::POS_TOP, 2, 1); @@ -1082,8 +1099,7 @@ Gtk::Widget* Preferences::getGeneralPanel () langGrid->attach_next_to (*languages, *langlab, Gtk::POS_RIGHT, 1, 1); langGrid->attach_next_to (*langw, *languages, Gtk::POS_RIGHT, 1, 1); flang->add (*langGrid); -// mvbsd->attach_next_to (*flang, *fworklflow, Gtk::POS_BOTTOM, 2, 1); - mvbsd->attach_next_to (*flang, *flocal, Gtk::POS_BOTTOM, 2, 1); + mvbsd->attach_next_to (*flang, *fworklflow, Gtk::POS_BOTTOM, 2, 1); // --------------------------------------------- @@ -1296,10 +1312,10 @@ Gtk::Widget* Preferences::getFileBrowserPanel () Gtk::Frame* fsd = Gtk::manage ( new Gtk::Frame (M ("PREFERENCES_STARTUPIMDIR")) ); - sdcurrent = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRSOFTWARE")) ); - sdlast = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRLAST")) ); - sdhome = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRHOME")) ); - sdother = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIROTHER") + ": ") ); + sdcurrent = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRSOFTWARE")) ); + sdlast = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRLAST")) ); + sdhome = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIRHOME")) ); + sdother = Gtk::manage ( new Gtk::RadioButton (M ("PREFERENCES_DIROTHER") + ": ") ); startupdir = Gtk::manage ( new Gtk::Entry () ); Gtk::Button* sdselect = Gtk::manage ( new Gtk::Button () ); @@ -1502,7 +1518,7 @@ Gtk::Widget* Preferences::getSoundPanel () Gtk::VBox* pSnd = new Gtk::VBox (); ckbSndEnable = Gtk::manage ( new Gtk::CheckButton (M ("GENERAL_ENABLE"))); - sndEnableConn = ckbSndEnable->signal_toggled().connect (sigc::mem_fun (*this, &Preferences::sndEnableToggled)); + sndEnableConn = ckbSndEnable->signal_toggled().connect (sigc::mem_fun (*this, &Preferences::sndEnableToggled)); pSnd->pack_start (*ckbSndEnable, Gtk::PACK_SHRINK, 4); @@ -1517,7 +1533,7 @@ Gtk::Widget* Preferences::getSoundPanel () Gtk::Label* lSndBatchQueueDone = Gtk::manage (new Gtk::Label (M ("PREFERENCES_SND_BATCHQUEUEDONE") + Glib::ustring (":"))); pBatchQueueDone->pack_start (*lSndBatchQueueDone, Gtk::PACK_SHRINK, 4); - txtSndBatchQueueDone = Gtk::manage (new Gtk::Entry()); + txtSndBatchQueueDone = Gtk::manage (new Gtk::Entry()); pBatchQueueDone->pack_end (*txtSndBatchQueueDone, Gtk::PACK_EXPAND_WIDGET, 4); pSnd->pack_start (*pBatchQueueDone, Gtk::PACK_SHRINK, 4); @@ -1528,7 +1544,7 @@ Gtk::Widget* Preferences::getSoundPanel () Gtk::Label* lSndLngEditProcDone = Gtk::manage (new Gtk::Label (M ("PREFERENCES_SND_LNGEDITPROCDONE") + Glib::ustring (":"))); pSndLngEditProcDone->pack_start (*lSndLngEditProcDone, Gtk::PACK_SHRINK, 4); - txtSndLngEditProcDone = Gtk::manage (new Gtk::Entry()); + txtSndLngEditProcDone = Gtk::manage (new Gtk::Entry()); pSndLngEditProcDone->pack_start (*txtSndLngEditProcDone, Gtk::PACK_EXPAND_WIDGET, 4); Gtk::Label* lSndLngEditProcDoneSecs = Gtk::manage (new Gtk::Label (M ("PREFERENCES_SND_TRESHOLDSECS") + Glib::ustring (":"))); @@ -1636,36 +1652,36 @@ void Preferences::parseThemeDir (Glib::ustring dirname) void Preferences::storePreferences () { - // With the new mechanism, we can't be sure of the availability of the DEFPROFILE_RAW & DEFPROFILE_IMG profiles, - // because useBundledProfiles may be false. We're now using DEFPROFILE_INTERNAL instead, which is always available. - moptions.defProfRaw = rprofiles->getFullPathFromActiveRow(); +// With the new mechanism, we can't be sure of the availability of the DEFPROFILE_RAW & DEFPROFILE_IMG profiles, +// because useBundledProfiles may be false. We're now using DEFPROFILE_INTERNAL instead, which is always available. + moptions.defProfRaw = rprofiles->getFullPathFromActiveRow(); if (moptions.defProfRaw.empty()) { moptions.defProfRaw = DEFPROFILE_INTERNAL; } - moptions.defProfImg = iprofiles->getFullPathFromActiveRow(); + moptions.defProfImg = iprofiles->getFullPathFromActiveRow(); if (moptions.defProfImg.empty()) { moptions.defProfImg = DEFPROFILE_INTERNAL; } - moptions.dateFormat = dateformat->get_text(); - moptions.panAccelFactor = (int)panFactor->get_value(); + moptions.dateFormat = dateformat->get_text(); + moptions.panAccelFactor = (int)panFactor->get_value(); moptions.rememberZoomAndPan = rememberZoomPanCheckbutton->get_active(); - moptions.fbShowDateTime = showDateTime->get_active (); + moptions.fbShowDateTime = showDateTime->get_active (); moptions.fbShowBasicExif = showBasicExif->get_active (); - moptions.fbShowExpComp = showExpComp->get_active (); - moptions.menuGroupRank = ckbmenuGroupRank->get_active(); - moptions.menuGroupLabel = ckbmenuGroupLabel->get_active(); - moptions.menuGroupFileOperations = ckbmenuGroupFileOperations->get_active(); + moptions.fbShowExpComp = showExpComp->get_active (); + moptions.menuGroupRank = ckbmenuGroupRank->get_active(); + moptions.menuGroupLabel = ckbmenuGroupLabel->get_active(); + moptions.menuGroupFileOperations = ckbmenuGroupFileOperations->get_active(); moptions.menuGroupProfileOperations = ckbmenuGroupProfileOperations->get_active(); - moptions.menuGroupExtProg = ckbmenuGroupExtProg->get_active(); + moptions.menuGroupExtProg = ckbmenuGroupExtProg->get_active(); moptions.highlightThreshold = (int)hlThresh->get_value (); moptions.shadowThreshold = (int)shThresh->get_value (); - moptions.language = languages->get_active_text (); + moptions.language = languages->get_active_text (); moptions.languageAutoDetect = ckbLangAutoDetect->get_active (); - moptions.theme = themeFNames.at (theme->get_active_row_number ()).longFName; + moptions.theme = themeFNames.at (theme->get_active_row_number ()).longFName; Gdk::RGBA cropCol = butCropCol->get_rgba(); moptions.cutOverlayBrush[0] = cropCol.get_red(); @@ -1680,23 +1696,24 @@ void Preferences::storePreferences () moptions.navGuideBrush[3] = butNavGuideCol->get_alpha() / 65535.0; Pango::FontDescription fd (fontButton->get_font_name()); + if (newFont) { - moptions.fontFamily = fd.get_family(); - moptions.fontSize = fd.get_size() / Pango::SCALE; + moptions.fontFamily = fd.get_family(); + moptions.fontSize = fd.get_size() / Pango::SCALE; } Pango::FontDescription cpfd (colorPickerFontButton->get_font_name()); if (newCPFont) { - moptions.CPFontFamily = cpfd.get_family(); - moptions.CPFontSize = cpfd.get_size() / Pango::SCALE; + moptions.CPFontFamily = cpfd.get_family(); + moptions.CPFontSize = cpfd.get_size() / Pango::SCALE; } #ifdef WIN32 - moptions.gimpDir = gimpDir->get_filename (); - moptions.psDir = psDir->get_filename (); + moptions.gimpDir = gimpDir->get_filename (); + moptions.psDir = psDir->get_filename (); #elif defined __APPLE__ - moptions.psDir = psDir->get_filename (); + moptions.psDir = psDir->get_filename (); #endif moptions.customEditorProg = editorToSendTo->get_text (); @@ -1770,24 +1787,24 @@ void Preferences::storePreferences () moptions.rtSettings.monitorBPC = monBPC->get_active (); //#if defined(WIN32) - moptions.rtSettings.autoMonitorProfile = cbAutoMonProfile->get_active (); + moptions.rtSettings.autoMonitorProfile = cbAutoMonProfile->get_active (); //#endif #endif - moptions.rtSettings.iccDirectory = iccDir->get_filename (); - moptions.rtSettings.viewingdevice = view->get_active_row_number (); - moptions.rtSettings.viewingdevicegrey = grey->get_active_row_number (); - moptions.rtSettings.viewinggreySc = greySc->get_active_row_number (); - // moptions.rtSettings.autocielab = cbAutocielab->get_active (); - moptions.rtSettings.ciecamfloat = cbciecamfloat->get_active (); - moptions.rtSettings.HistogramWorking = ckbHistogramWorking->get_active (); - moptions.rtSettings.leveldnv = dnv->get_active_row_number (); - moptions.rtSettings.leveldnti = dnti->get_active_row_number (); - moptions.rtSettings.leveldnliss = dnliss->get_active_row_number (); - moptions.rtSettings.leveldnaut = dnaut->get_active_row_number (); - moptions.rtSettings.nrwavlevel = dnwavlev->get_active_row_number (); - moptions.rtSettings.leveldnautsimpl = dnautsimpl->get_active_row_number (); - moptions.rtSettings.daubech = cbdaubech->get_active (); + moptions.rtSettings.iccDirectory = iccDir->get_filename (); +// moptions.rtSettings.viewingdevice = view->get_active_row_number (); +// moptions.rtSettings.viewingdevicegrey = grey->get_active_row_number (); + moptions.rtSettings.viewinggreySc = greySc->get_active_row_number (); +// moptions.rtSettings.autocielab = cbAutocielab->get_active (); + moptions.rtSettings.ciecamfloat = cbciecamfloat->get_active (); + moptions.rtSettings.HistogramWorking = ckbHistogramWorking->get_active (); + moptions.rtSettings.leveldnv = dnv->get_active_row_number (); + moptions.rtSettings.leveldnti = dnti->get_active_row_number (); + moptions.rtSettings.leveldnliss = dnliss->get_active_row_number (); + moptions.rtSettings.leveldnaut = dnaut->get_active_row_number (); + moptions.rtSettings.nrwavlevel = dnwavlev->get_active_row_number (); + moptions.rtSettings.leveldnautsimpl = dnautsimpl->get_active_row_number (); + moptions.rtSettings.daubech = cbdaubech->get_active (); moptions.prevdemo = (prevdemo_t)cprevdemo->get_active_row_number (); moptions.serializeTiffRead = ctiffserialize->get_active(); @@ -1830,15 +1847,15 @@ void Preferences::storePreferences () moptions.tunnelMetaData = ckbTunnelMetaData->get_active (); - moptions.rtSettings.darkFramesPath = darkFrameDir->get_filename(); - moptions.rtSettings.flatFieldsPath = flatFieldDir->get_filename(); + moptions.rtSettings.darkFramesPath = darkFrameDir->get_filename(); + moptions.rtSettings.flatFieldsPath = flatFieldDir->get_filename(); moptions.clutsDir = clutsDir->get_filename(); moptions.baBehav.resize (ADDSET_PARAM_NUM); - for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) - for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) { + for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) + for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) { moptions.baBehav[adjs->get_value (behavColumns.addsetid)] = adjs->get_value (behavColumns.badd); } @@ -1860,11 +1877,11 @@ void Preferences::storePreferences () moptions.clutCacheSize = clutCacheSizeSB->get_value_as_int(); moptions.maxInspectorBuffers = maxInspectorBuffersSB->get_value_as_int(); - // Sounds only on Windows and Linux +// Sounds only on Windows and Linux #if defined(WIN32) || defined(__linux__) moptions.sndEnable = ckbSndEnable->get_active (); moptions.sndBatchQueueDone = txtSndBatchQueueDone->get_text (); - moptions.sndLngEditProcDone = txtSndLngEditProcDone->get_text (); + moptions.sndLngEditProcDone = txtSndLngEditProcDone->get_text (); moptions.sndLngEditProcDoneSecs = spbSndLngEditProcDoneSecs->get_value (); #endif } @@ -1938,8 +1955,8 @@ void Preferences::fillPreferences () iccDir->set_current_folder (moptions.rtSettings.iccDirectory); } - view->set_active (moptions.rtSettings.viewingdevice); - grey->set_active (moptions.rtSettings.viewingdevicegrey); +// view->set_active (moptions.rtSettings.viewingdevice); +// grey->set_active (moptions.rtSettings.viewingdevicegrey); greySc->set_active (moptions.rtSettings.viewinggreySc); dnv->set_active (moptions.rtSettings.leveldnv); dnti->set_active (moptions.rtSettings.leveldnti); @@ -2094,8 +2111,8 @@ 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++) + 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); diff --git a/rtgui/previewwindow.cc b/rtgui/previewwindow.cc index 015c30d4c..cd4e0c75c 100644 --- a/rtgui/previewwindow.cc +++ b/rtgui/previewwindow.cc @@ -216,7 +216,7 @@ bool PreviewWindow::on_motion_notify_event (GdkEventMotion* event) CursorShape newType = cursor_type; if (isMoving) { - mainCropWin->remoteMove ((int)((event->x - (double)press_x) / zoom), (int)((event->y - (double)press_y) / zoom)); + mainCropWin->remoteMove ((event->x - press_x) / zoom, (event->y - press_y) / zoom); press_x = event->x; press_y = event->y; } else if (inside) { diff --git a/rtgui/previewwindow.h b/rtgui/previewwindow.h index a7b286202..f50411170 100644 --- a/rtgui/previewwindow.h +++ b/rtgui/previewwindow.h @@ -36,7 +36,7 @@ private: ImageArea* imageArea; int imgX, imgY, imgW, imgH; double zoom; - int press_x, press_y; + double press_x, press_y; bool isMoving; bool needsUpdate; CursorShape cursor_type;