diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais
index e8549975b..b46d66b8a 100644
--- a/rtdata/languages/Francais
+++ b/rtdata/languages/Francais
@@ -861,6 +861,7 @@ PREFERENCES_CLIPPINGIND;Indication du dépassement de plage dynamique
PREFERENCES_CLUTSCACHE;Cache HaldCLUT
PREFERENCES_CLUTSCACHE_LABEL;Nombre maximum de chache CLUT
PREFERENCES_CLUTSDIR;Dossier HaldCLUT
+PREFERENCES_CMMBPC;Compensation du point noir
PREFERENCES_CURVEBBOXPOS;Position des boutons copier/coller des courbes
PREFERENCES_CURVEBBOXPOS_ABOVE;Au-dessus
PREFERENCES_CURVEBBOXPOS_BELOW;En-dessous
@@ -926,8 +927,8 @@ PREFERENCES_GREYSC;Luminance Yb de la scène (%)
PREFERENCES_GREYSC18;Yb=18 CIE L#50
PREFERENCES_GREYSCA;Automatique
PREFERENCES_HISTOGRAMPOSITIONLEFT;Histogramme dans le panneau de gauche
-PREFERENCES_HISTOGRAMWORKING;Utiliser le profile de travail pour l'histograme principal et le Navigateur
-PREFERENCES_HISTOGRAM_TOOLTIP;Si activé, le profile couleur de travail est utilisé pour les données d'histograme et le panneau Navigateur, sinon le profil de travail de sortie "gamma-corrigé" est utilisé.
+PREFERENCES_HISTOGRAMWORKING;Utiliser le profil de travail pour l'histograme principal et le Navigateur
+PREFERENCES_HISTOGRAM_TOOLTIP;Si activé, le profil couleur de travail est utilisé pour les données d'histograme et le panneau Navigateur, sinon le profil de travail de sortie "gamma-corrigé" est utilisé.
PREFERENCES_HLTHRESHOLD;Seuil pour le dépassement de domaine supérieur
PREFERENCES_ICCDIR;Dossier des profils ICC
PREFERENCES_IMG_RELOAD_NEEDED;Ces changements nécessitent un rechargement de l'image (ou l'ouverture d'une autre image) pour prendre effet.
@@ -955,8 +956,9 @@ PREFERENCES_MENUGROUPRANK;Classement
PREFERENCES_MENUOPTIONS;Options du menu
PREFERENCES_METADATA;Metadonnées
PREFERENCES_MIN;Mini (100x115)
-PREFERENCES_MONBPC;Compensation du Point Noir
+PREFERENCES_MONINTENT;Intention de rendu par défaut
PREFERENCES_MONITOR;Moniteur
+PREFERENCES_MONPROFILE;Profil couleur par défaut
PREFERENCES_MONPROFILE_WARNOSX;Due à des limitations de MacOS, seul sRGB est supporté.
PREFERENCES_MULTITAB;Éditeurs multiple
PREFERENCES_MULTITABDUALMON;Éditeurs multiple, si possible sur un second moniteur
@@ -980,7 +982,7 @@ PREFERENCES_PREVDEMO;Méthode de Dématriçage de l'Aperçu
PREFERENCES_PREVDEMO_FAST;Rapide
PREFERENCES_PREVDEMO_LABEL;Méthode de dématriçage utilisé pour l'aperçu à un zoom <100%:
PREFERENCES_PREVDEMO_SIDECAR;Idem PP3
-PREFERENCES_PRINTER;Imprimante (épreuvage écran)
+PREFERENCES_PRINTER;Imprimante (Épreuvage Écran)
PREFERENCES_PROFILEHANDLING;Gestionnaire des profils de traitement
PREFERENCES_PROFILELOADPR;Priorité de chargement des profils
PREFERENCES_PROFILEPRCACHE;Profil dans le Cache
@@ -988,9 +990,8 @@ PREFERENCES_PROFILEPRFILE;Profil accolé au fichier d'entrée
PREFERENCES_PROFILESAVECACHE;Enregistrer la paramètres de traitement dans le Cache
PREFERENCES_PROFILESAVEINPUT;Enregistrer la paramètres de traitement accolé au fichier d'entrée
PREFERENCES_PROPERTY;Propriété
-PREFERENCES_PRTBPC;Compensation du Point Noir
PREFERENCES_PRTINTENT;Intention de rendu
-PREFERENCES_PRTPROFILE;Profile couleur
+PREFERENCES_PRTPROFILE;Profil couleur
PREFERENCES_PSPATH;Dossier d'installation d'Adobe Photoshop
PREFERENCES_REMEMBERZOOMPAN;Se souvenir de niveau de zoom et de la position de l'image
PREFERENCES_REMEMBERZOOMPAN_TOOLTIP;Retient le niveau de zoom et la position de l'image courante lors de l'ouverture d'une nouvelle image.\n\nCette option ne fonctionne que dans le mode "Éditeur unique" et quand "Méthode de dématriçage utilisé pour l'aperçu à un zoom <100%" is set to "Idem PP3".
@@ -1091,8 +1092,8 @@ SAVEDLG_SUBSAMP_3;Meilleure qualité
SAVEDLG_TIFFUNCOMPRESSED;TIFF non compressé
SAVEDLG_WARNFILENAME;Le fichier sera nommé
SHCSELECTOR_TOOLTIP;Cliquez le bouton droit de la souris\npour réinitialiser la position de ces 3 curseurs
-SOFTPROOF_GAMUTCHECK_TOOLTIP;Si activé, indique en gris les pixels dont la couleurs est en dehors du gamut du profile de sortie
-SOFTPROOF_TOOLTIP;Épreuvage écran\nSi activé, simule le rendu généré par le profiles de sortie de l'outil ICM. Particulièrement utile pour simuler le rendu en sortie d'imprimante.
+SOFTPROOF_GAMUTCHECK_TOOLTIP;Si activé, indique en gris les pixels dont la couleurs est en dehors du gamut du profil de sortie
+SOFTPROOF_TOOLTIP;Épreuvage écran\nSi activé, simule le rendu généré par le profile de sortie de l'outil ICM. Particulièrement utile pour simuler le rendu en sortie d'imprimante.
THRESHOLDSELECTOR_B;Bas
THRESHOLDSELECTOR_BL;Bas-gauche
THRESHOLDSELECTOR_BR;Bas-droite
@@ -1469,7 +1470,7 @@ TP_ICM_DCPILLUMINANT;Illuminant
TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolé
TP_ICM_DCPILLUMINANT_TOOLTIP;Sélectionne quel illuminant DCP inclus utiliser. La valeur par défaut est "Interpolé", qui est un mix entre les 2 profils inclus basé sur la Balance des Blancs choisie. Ce paramètre n'est actif que si un fichier DCP Bi-Illuminant avec support de l'interpolation est choisi.
TP_ICM_INPUTCAMERA;Celui de l'appareil photo
-TP_ICM_INPUTCAMERAICC;Sél. auto du profile de l'APN
+TP_ICM_INPUTCAMERAICC;Sél. auto du profil de l'APN
TP_ICM_INPUTCAMERAICC_TOOLTIP;Utilise les profils d'entrée DCP ou ICC spécifiques à RawTherapee, qui sont plus précis qu'une simple matrice.\nDisponible pour certains appareils photo, ces profils sont stoqués dans le dossier /iccprofiles/input.\nCelui dont le nom de fichier correspond au champ EXIF "Modèle" (de l'appareil) est automatiquement sélectionné.
TP_ICM_INPUTCAMERA_TOOLTIP;Par ordre de préférence, utilise les matrices de couleur incluses dans le fichier RAW, les matrices de couleur simple fournies par RawTherapee ou celles de DCRaw
TP_ICM_INPUTCUSTOM;Personnel
@@ -1935,8 +1936,6 @@ ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: -
!MONITOR_PROFILE_SYSTEM;System default
!PARTIALPASTE_PRSHARPENING;Post-resize sharpening
!PARTIALPASTE_RETINEX;Retinex
-!PREFERENCES_MONINTENT;Default monitor intent
-!PREFERENCES_MONPROFILE;Default monitor profile
!PREFERENCES_PARSEDEXTDOWNHINT;Move selected extension down in the list.
!PREFERENCES_PARSEDEXTUPHINT;Move selected extension up in the list.
!PREFERENCES_PROFILE_NONE;None
diff --git a/rtdata/languages/default b/rtdata/languages/default
index 04b263c5b..aca4e6507 100644
--- a/rtdata/languages/default
+++ b/rtdata/languages/default
@@ -907,6 +907,7 @@ PREFERENCES_CLIPPINGIND;Clipping Indication
PREFERENCES_CLUTSCACHE;HaldCLUT Cache
PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs
PREFERENCES_CLUTSDIR;HaldCLUT directory
+PREFERENCES_CMMBPC;Black point compensation
PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons
PREFERENCES_CURVEBBOXPOS_ABOVE;Above
PREFERENCES_CURVEBBOXPOS_BELOW;Below
@@ -1001,10 +1002,9 @@ PREFERENCES_MENUGROUPRANK;Group "Rank"
PREFERENCES_MENUOPTIONS;Context Menu Options
PREFERENCES_METADATA;Metadata
PREFERENCES_MIN;Mini (100x115)
-PREFERENCES_MONBPC;Black Point Compensation
-PREFERENCES_MONITOR;Monitor
PREFERENCES_MONINTENT;Default rendering intent
-PREFERENCES_MONPROFILE;Default profile
+PREFERENCES_MONITOR;Monitor
+PREFERENCES_MONPROFILE;Default color profile
PREFERENCES_MONPROFILE_WARNOSX;Due to MacOS limitations, only sRGB is supported.
PREFERENCES_MULTITAB;Multiple Editor Tabs Mode
PREFERENCES_MULTITABDUALMON;Multiple Editor Tabs In Own Window Mode
@@ -1030,7 +1030,7 @@ PREFERENCES_PREVDEMO;Preview Demosaic Method
PREFERENCES_PREVDEMO_FAST;Fast
PREFERENCES_PREVDEMO_LABEL;Demosaicing method used for the preview at <100% zoom:
PREFERENCES_PREVDEMO_SIDECAR;As in PP3
-PREFERENCES_PRINTER;Printer (soft-proofing)
+PREFERENCES_PRINTER;Printer (Soft-Proofing)
PREFERENCES_PROFILEHANDLING;Processing Profile Handling
PREFERENCES_PROFILELOADPR;Processing profile loading priority
PREFERENCES_PROFILEPRCACHE;Profile in cache
@@ -1039,7 +1039,6 @@ PREFERENCES_PROFILESAVECACHE;Save processing profile to the cache
PREFERENCES_PROFILESAVEINPUT;Save processing profile next to the input file
PREFERENCES_PROFILE_NONE;None
PREFERENCES_PROPERTY;Property
-PREFERENCES_PRTBPC;Black Point Compensation
PREFERENCES_PRTINTENT;Rendering intent
PREFERENCES_PRTPROFILE;Color profile
PREFERENCES_PSPATH;Adobe Photoshop installation directory
diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc
index 2847b5824..821bdf2dc 100644
--- a/rtgui/editorpanel.cc
+++ b/rtgui/editorpanel.cc
@@ -44,7 +44,8 @@ private:
PopUpButton intentBox;
Gtk::ToggleButton softProof;
Gtk::ToggleButton spGamutCheck;
- sigc::connection profileConn, intentConn;
+ sigc::connection profileConn, intentConn, softproofConn;
+ bool canSProof;
rtengine::StagedImageProcessor* const& processor;
@@ -89,6 +90,7 @@ private:
softProof.set_tooltip_markup(M("SOFTPROOF_TOOLTIP"));
softProof.set_active(false);
+ softProof.set_sensitive(canSProof);
softProof.show ();
Gtk::Image *spGamutCheckImage = Gtk::manage (new RTImage ("spGamutCheck.png"));
@@ -174,8 +176,8 @@ private:
intentBox.setItemSensitivity(0, supportsPerceptual);
intentBox.setItemSensitivity(1, supportsRelativeColorimetric);
intentBox.setItemSensitivity(2, supportsAbsoluteColorimetric);
- softProof.set_sensitive(true);
- spGamutCheck.set_sensitive(true);
+ softProof.set_sensitive(canSProof);
+ spGamutCheck.set_sensitive(canSProof);
} else {
intentBox.setItemSensitivity(0, true);
intentBox.setItemSensitivity(1, true);
@@ -219,7 +221,14 @@ private:
void updateSoftProofParameters (bool noEvent = false)
{
- spGamutCheck.set_sensitive(softProof.get_active());
+ if (!canSProof) {
+ ConnectionBlocker profileBlocker (softproofConn);
+ softProof.set_active(false);
+ softProof.set_sensitive(false);
+ } else {
+ softProof.set_sensitive(profileBox.get_active_row_number () > 0);
+ }
+ spGamutCheck.set_sensitive(softProof.get_sensitive() && softProof.get_active());
#if !defined(__APPLE__) // monitor profile not supported on apple
if (profileBox.get_active_row_number () > 0) {
@@ -239,6 +248,7 @@ private:
public:
explicit ColorManagementToolbar (rtengine::StagedImageProcessor* const& ipc) :
intentBox (Glib::ustring (), true),
+ canSProof(!options.rtSettings.printerProfile.empty() && options.rtSettings.printerProfile != "None"), // assuming the printer profile exist!
processor (ipc)
{
#if !defined(__APPLE__) // monitor profile not supported on apple
@@ -249,8 +259,8 @@ public:
reset ();
- softProof.signal_toggled().connect(sigc::mem_fun (this, &ColorManagementToolbar::softProofToggled));
- spGamutCheck.signal_toggled().connect(sigc::mem_fun (this, &ColorManagementToolbar::spGamutCheckToggled));;
+ softproofConn = softProof.signal_toggled().connect(sigc::mem_fun (this, &ColorManagementToolbar::softProofToggled));
+ spGamutCheck.signal_toggled().connect(sigc::mem_fun (this, &ColorManagementToolbar::spGamutCheckToggled));
#if !defined(__APPLE__) // monitor profile not supported on apple
profileConn = profileBox.signal_changed ().connect (sigc::mem_fun (this, &ColorManagementToolbar::profileBoxChanged));
#endif
@@ -267,6 +277,12 @@ public:
#endif
}
+ void canSoftProof(bool canSP)
+ {
+ canSProof = canSP;
+ updateSoftProofParameters();
+ }
+
void updateProcessor()
{
if (processor) {
@@ -2039,6 +2055,11 @@ void EditorPanel::tbShowHideSidePanels_managestate()
ShowHideSidePanelsconn.block (false);
}
+void EditorPanel::updateProfiles(const Glib::ustring &printerProfile, rtengine::RenderingIntent printerIntent, bool printerBPC)
+{
+ colorMgmtToolBar->canSoftProof(!printerProfile.empty() && printerProfile != "None");
+}
+
void EditorPanel::updateTPVScrollbar (bool hide)
{
tpc->updateTPVScrollbar (hide);
diff --git a/rtgui/editorpanel.h b/rtgui/editorpanel.h
index ac2be9566..def9e9145 100644
--- a/rtgui/editorpanel.h
+++ b/rtgui/editorpanel.h
@@ -208,6 +208,7 @@ public:
{
return isProcessing;
}
+ void updateProfiles(const Glib::ustring &printerProfile, rtengine::RenderingIntent printerIntent, bool printerBPC);
void updateTPVScrollbar (bool hide);
void updateTabsUsesIcons (bool useIcons);
void updateHistogramPosition (int oldPosition, int newPosition);
diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc
index 31c1fce70..265af04bb 100644
--- a/rtgui/preferences.cc
+++ b/rtgui/preferences.cc
@@ -728,7 +728,7 @@ Gtk::Widget* Preferences::getColorManagementPanel ()
monIntent->set_active (1);
monIntent->set_size_request(80, -1);
- monBPC = Gtk::manage (new Gtk::CheckButton (M("PREFERENCES_MONBPC")));
+ monBPC = Gtk::manage (new Gtk::CheckButton (M("PREFERENCES_CMMBPC")));
monBPC->set_active (true);
#if defined(WIN32) // Auto-detection not implemented for Linux, see issue 851
@@ -791,7 +791,7 @@ Gtk::Widget* Preferences::getColorManagementPanel ()
prtIntent->set_active (1);
prtIntent->set_size_request(80, -1);
- prtBPC = Gtk::manage (new Gtk::CheckButton (M("PREFERENCES_PRTBPC")));
+ prtBPC = Gtk::manage (new Gtk::CheckButton (M("PREFERENCES_CMMBPC")));
prtBPC->set_active (true);
Gtk::Table* coltp = Gtk::manage (new Gtk::Table (2, 2));
@@ -2209,6 +2209,14 @@ void Preferences::workflowUpdate ()
parent->updateHistogramPosition(options.histogramPosition, moptions.histogramPosition);
}
+ if( moptions.rtSettings.printerProfile != options.rtSettings.printerProfile
+ ||moptions.rtSettings.printerBPC != options.rtSettings.printerBPC
+ ||moptions.rtSettings.printerIntent != options.rtSettings.printerIntent)
+ {
+ // Update the position of the Histogram
+ parent->updateProfiles(moptions.rtSettings.printerProfile, moptions.rtSettings.printerIntent, moptions.rtSettings.printerBPC);
+ }
+
}
void Preferences::switchFontTo(Glib::ustring newFont)
diff --git a/rtgui/rtwindow.cc b/rtgui/rtwindow.cc
index de5bbee43..21bfb0886 100644
--- a/rtgui/rtwindow.cc
+++ b/rtgui/rtwindow.cc
@@ -795,15 +795,22 @@ void RTWindow::MoveFileBrowserToEditor()
}
}
+void RTWindow::updateProfiles(const Glib::ustring &printerProfile, rtengine::RenderingIntent printerIntent, bool printerBPC)
+{
+ epanel->updateProfiles(printerProfile, printerIntent, printerBPC);
+
+ for(auto panel : epanels) {
+ panel.second->updateProfiles(printerProfile, printerIntent, printerBPC);
+ }
+}
+
void RTWindow::updateTPVScrollbar (bool hide)
{
fpanel->updateTPVScrollbar (hide);
epanel->updateTPVScrollbar (hide);
- std::map::const_iterator itr;
-
- for(itr = epanels.begin(); itr != epanels.end(); ++itr) {
- ((*itr).second)->updateTPVScrollbar (hide);
+ for(auto panel : epanels) {
+ panel.second->updateTPVScrollbar (hide);
}
}
@@ -812,10 +819,8 @@ void RTWindow::updateTabsUsesIcons (bool useIcons)
fpanel->updateTabsUsesIcons (useIcons);
epanel->updateTabsUsesIcons (useIcons);
- std::map::const_iterator itr;
-
- for(itr = epanels.begin(); itr != epanels.end(); ++itr) {
- ((*itr).second)->updateTabsUsesIcons (useIcons);
+ for(auto panel : epanels) {
+ panel.second->updateTabsUsesIcons (useIcons);
}
}
@@ -833,10 +838,8 @@ void RTWindow::updateHistogramPosition (int oldPosition, int newPosition)
{
epanel->updateHistogramPosition (oldPosition, newPosition);
- std::map::const_iterator itr;
-
- for(itr = epanels.begin(); itr != epanels.end(); ++itr) {
- ((*itr).second)->updateHistogramPosition (oldPosition, newPosition);
+ for(auto panel : epanels) {
+ panel.second->updateHistogramPosition (oldPosition, newPosition);
}
}
diff --git a/rtgui/rtwindow.h b/rtgui/rtwindow.h
index 70e80de4d..a8d8aa7c4 100644
--- a/rtgui/rtwindow.h
+++ b/rtgui/rtwindow.h
@@ -104,6 +104,7 @@ public:
void MoveFileBrowserToEditor();
void MoveFileBrowserToMain();
+ void updateProfiles (const Glib::ustring &printerProfile, rtengine::RenderingIntent printerIntent, bool printerBPC);
void updateTPVScrollbar (bool hide);
void updateHistogramPosition (int oldPosition, int newPosition);
void updateTabsUsesIcons (bool useIcons);