diff --git a/rtdata/images/Dark/actions/intent-absolute.png b/rtdata/images/Dark/actions/intent-absolute.png
index bb7e1a85d..7732eba53 100644
Binary files a/rtdata/images/Dark/actions/intent-absolute.png and b/rtdata/images/Dark/actions/intent-absolute.png differ
diff --git a/rtdata/images/Dark/actions/intent-perceptual.png b/rtdata/images/Dark/actions/intent-perceptual.png
index d41e59458..821a714ae 100644
Binary files a/rtdata/images/Dark/actions/intent-perceptual.png and b/rtdata/images/Dark/actions/intent-perceptual.png differ
diff --git a/rtdata/images/Dark/actions/intent-relative.png b/rtdata/images/Dark/actions/intent-relative.png
index c1fb040a9..117806ddb 100644
Binary files a/rtdata/images/Dark/actions/intent-relative.png and b/rtdata/images/Dark/actions/intent-relative.png differ
diff --git a/rtdata/images/Dark/actions/intent-saturation.png b/rtdata/images/Dark/actions/intent-saturation.png
index cabbb2dad..0654f78b6 100644
Binary files a/rtdata/images/Dark/actions/intent-saturation.png and b/rtdata/images/Dark/actions/intent-saturation.png differ
diff --git a/rtdata/images/Dark/actions/softProof.png b/rtdata/images/Dark/actions/softProof.png
index 2ff09b7f7..5f17df3ea 100644
Binary files a/rtdata/images/Dark/actions/softProof.png and b/rtdata/images/Dark/actions/softProof.png differ
diff --git a/rtdata/images/Light/actions/intent-absolute.png b/rtdata/images/Light/actions/intent-absolute.png
index 1396e3785..7a507e0f5 100644
Binary files a/rtdata/images/Light/actions/intent-absolute.png and b/rtdata/images/Light/actions/intent-absolute.png differ
diff --git a/rtdata/images/Light/actions/intent-perceptual.png b/rtdata/images/Light/actions/intent-perceptual.png
index be281333b..88de7b5e9 100644
Binary files a/rtdata/images/Light/actions/intent-perceptual.png and b/rtdata/images/Light/actions/intent-perceptual.png differ
diff --git a/rtdata/images/Light/actions/intent-relative.png b/rtdata/images/Light/actions/intent-relative.png
index 538b3d900..f0e641bac 100644
Binary files a/rtdata/images/Light/actions/intent-relative.png and b/rtdata/images/Light/actions/intent-relative.png differ
diff --git a/rtdata/images/Light/actions/intent-saturation.png b/rtdata/images/Light/actions/intent-saturation.png
index d2aac5b7f..92908b030 100644
Binary files a/rtdata/images/Light/actions/intent-saturation.png and b/rtdata/images/Light/actions/intent-saturation.png differ
diff --git a/rtdata/images/Light/actions/softProof.png b/rtdata/images/Light/actions/softProof.png
index 2c12e216f..3e5eb2f18 100644
Binary files a/rtdata/images/Light/actions/softProof.png and b/rtdata/images/Light/actions/softProof.png differ
diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc
index 621c088e3..f27e27467 100644
--- a/rtgui/editorpanel.cc
+++ b/rtgui/editorpanel.cc
@@ -81,6 +81,7 @@ private:
intentBox = Gtk::manage(bt);
intentBox->addEntry("intent-relative.png", M("PREFERENCES_INTENT_RELATIVE"));
intentBox->addEntry("intent-perceptual.png", M("PREFERENCES_INTENT_PERCEPTUAL"));
+ intentBox->addEntry("intent-absolute.png", M("PREFERENCES_INTENT_ABSOLUTE"));
intentBox->setSelected(0);
intentConn = intentBox->signal_changed().connect (sigc::mem_fun (this, &MonitorProfileSelector::updateIntent));
intentBox->show();
@@ -135,9 +136,12 @@ private:
std::uint8_t supportedIntents = rtengine::iccStore->getProofIntents (profile);
const bool supportsPerceptual = supportedIntents & 1 << INTENT_PERCEPTUAL;
const bool supportsRelativeColorimetric = supportedIntents & 1 << INTENT_RELATIVE_COLORIMETRIC;
+ const bool supportsAbsoluteColorimetric = supportedIntents & 1 << INTENT_ABSOLUTE_COLORIMETRIC;
- if (supportsPerceptual && supportsRelativeColorimetric) {
+ if (supportsPerceptual && (supportsRelativeColorimetric || supportsAbsoluteColorimetric)) {
intentBox->set_sensitive (true);
+ intentBox->setItemSensitivity(0, supportsRelativeColorimetric);
+ intentBox->setItemSensitivity(2, supportsAbsoluteColorimetric);
}
else {
bool wasBlocked = intentConn.block(true);
@@ -148,7 +152,7 @@ private:
softProof->set_sensitive(true);
}
- rtengine::eRenderingIntent intent = intentBox->getSelected() > 0 ? rtengine::RI_PERCEPTUAL : rtengine::RI_RELATIVE;
+ rtengine::eRenderingIntent intent = intentBox->getSelected() > 0 ? (intentBox->getSelected() == 1 ? rtengine::RI_PERCEPTUAL : rtengine::RI_ABSOLUTE) : rtengine::RI_RELATIVE;
if (!processor) {
return;
@@ -206,7 +210,7 @@ public:
profileConn.block(wasBlocked);
#endif
wasBlocked = intentConn.block(true);
- intentBox->setSelected(options.rtSettings.monitorIntent == rtengine::RI_PERCEPTUAL ? 0 : 1);
+ intentBox->setSelected(options.rtSettings.monitorIntent == rtengine::RI_RELATIVE ? 0 : options.rtSettings.monitorIntent == rtengine::RI_PERCEPTUAL ? 1 : 2);
intentConn.block(wasBlocked);
updateParameters();
diff --git a/rtgui/popupcommon.h b/rtgui/popupcommon.h
index 04044fb2d..b5cb757f4 100644
--- a/rtgui/popupcommon.h
+++ b/rtgui/popupcommon.h
@@ -54,6 +54,7 @@ public:
void setButtonHint();
void show ();
void set_tooltip_text (const Glib::ustring &text);
+ void setItemSensitivity (int i, bool isSensitive);
private:
type_signal_changed message;
@@ -69,7 +70,6 @@ private:
bool hasMenu;
void showMenu(GdkEventButton* event);
- void setItemSensitivity (int i, bool isSensitive);
protected:
void entrySelected (int i);
diff --git a/tools/source_icons/scalable/intent-absolute.svg b/tools/source_icons/scalable/intent-absolute.svg
index 497ce9c66..799deffc0 100644
--- a/tools/source_icons/scalable/intent-absolute.svg
+++ b/tools/source_icons/scalable/intent-absolute.svg
@@ -28,8 +28,8 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.28397906"
- inkscape:cx="443.36338"
- inkscape:cy="-4.6332449"
+ inkscape:cx="497.94487"
+ inkscape:cy="-71.539587"
inkscape:document-units="px"
inkscape:current-layer="svg2"
showguides="true"
@@ -1294,6 +1294,24 @@
y1="1004.7048"
x2="1694.8438"
y2="1004.7048" />
+
+
+
+
+
+
@@ -1303,7 +1321,7 @@
image/svg+xml
-
+
@@ -1329,50 +1347,56 @@
inkscape:groupmode="layer"
id="layer1"
transform="translate(464.16179,164.03236)" />
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/tools/source_icons/scalable/intent-perceptual.svg b/tools/source_icons/scalable/intent-perceptual.svg
index ab34b86b7..3c949c91e 100644
--- a/tools/source_icons/scalable/intent-perceptual.svg
+++ b/tools/source_icons/scalable/intent-perceptual.svg
@@ -15,7 +15,7 @@
id="svg2"
sodipodi:version="0.32"
inkscape:version="0.91 r13725"
- sodipodi:docname="intent-relative.svg"
+ sodipodi:docname="intent-perceptual.svg"
inkscape:export-filename="/home/philippe/devel/rawtherapee/icons/NewIcons/distorsion.png"
inkscape:export-xdpi="1.98"
inkscape:export-ydpi="1.98"
@@ -28,8 +28,8 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.28397906"
- inkscape:cx="443.36338"
- inkscape:cy="-4.6332449"
+ inkscape:cx="-22.166458"
+ inkscape:cy="-89.632823"
inkscape:document-units="px"
inkscape:current-layer="svg2"
showguides="true"
@@ -1329,38 +1329,34 @@
inkscape:groupmode="layer"
id="layer1"
transform="translate(464.16179,164.03236)" />
-
-
-
-
-
-
-
+
+
+
+
+
diff --git a/tools/source_icons/scalable/intent-relative.svg b/tools/source_icons/scalable/intent-relative.svg
index 31a2fb342..1cd7135f2 100644
--- a/tools/source_icons/scalable/intent-relative.svg
+++ b/tools/source_icons/scalable/intent-relative.svg
@@ -15,7 +15,7 @@
id="svg2"
sodipodi:version="0.32"
inkscape:version="0.91 r13725"
- sodipodi:docname="intent-perceptual.svg"
+ sodipodi:docname="intent-relative.svg"
inkscape:export-filename="/home/philippe/devel/rawtherapee/icons/NewIcons/distorsion.png"
inkscape:export-xdpi="1.98"
inkscape:export-ydpi="1.98"
@@ -27,9 +27,9 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="0.28397906"
- inkscape:cx="443.36338"
- inkscape:cy="-4.6332449"
+ inkscape:zoom="0.20080352"
+ inkscape:cx="1490.3375"
+ inkscape:cy="469.77917"
inkscape:document-units="px"
inkscape:current-layer="svg2"
showguides="true"
@@ -1294,6 +1294,16 @@
y1="1004.7048"
x2="1694.8438"
y2="1004.7048" />
+
+
+
@@ -1307,6 +1317,13 @@
+
-
diff --git a/tools/source_icons/scalable/intent-saturation.svg b/tools/source_icons/scalable/intent-saturation.svg
index 638df39f2..1af08f4f2 100644
--- a/tools/source_icons/scalable/intent-saturation.svg
+++ b/tools/source_icons/scalable/intent-saturation.svg
@@ -27,9 +27,9 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="0.10040176"
- inkscape:cx="2047.3204"
- inkscape:cy="-1169.7659"
+ inkscape:zoom="0.28397906"
+ inkscape:cx="432.87769"
+ inkscape:cy="408.60409"
inkscape:document-units="px"
inkscape:current-layer="svg2"
showguides="true"
@@ -1303,7 +1303,7 @@
image/svg+xml
-
+
@@ -1329,38 +1329,34 @@
inkscape:groupmode="layer"
id="layer1"
transform="translate(464.16179,164.03236)" />
-
-
-
-
-
-
-
+
+
+
+
+
diff --git a/tools/source_icons/scalable/softProof.svg b/tools/source_icons/scalable/softProof.svg
index 7d142fc4c..d09f316a2 100644
--- a/tools/source_icons/scalable/softProof.svg
+++ b/tools/source_icons/scalable/softProof.svg
@@ -1337,7 +1337,7 @@
image/svg+xml
-
+
@@ -1369,7 +1369,7 @@
d="m 95.191608,588.78944 0,-496.118075"
style="opacity:0.7;fill:none;fill-rule:evenodd;stroke:#2a7fff;stroke-width:30;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4687)" />