Auto disable of "ICC standard profile" when non is available

see issue 938 (should have committed this before 4.0.3 :-( )
This commit is contained in:
Oliver Duis
2011-09-19 18:04:00 +02:00
parent e65d2bbf24
commit a744c9de6e
3 changed files with 8 additions and 6 deletions

View File

@@ -408,14 +408,14 @@ void ICMPanel::opChanged () {
listener->panelChanged (EvOProfile, onames->get_active_text()); listener->panelChanged (EvOProfile, onames->get_active_text());
} }
void ICMPanel::setRaw (bool raw) { void ICMPanel::setRawMeta (bool raw, const rtengine::ImageData* pMeta) {
disableListener (); disableListener ();
icamera->set_active (raw); icamera->set_active (raw);
iembedded->set_active (!raw); iembedded->set_active (!raw);
icamera->set_sensitive (raw); icamera->set_sensitive (raw);
icameraICC->set_sensitive (raw); icameraICC->set_sensitive (raw && iccStore->getStdProfile(pMeta->getCamera()) != NULL);
iembedded->set_sensitive (!raw); iembedded->set_sensitive (!raw);
enableListener (); enableListener ();

View File

@@ -24,6 +24,7 @@
#include <guiutils.h> #include <guiutils.h>
#include <toolpanel.h> #include <toolpanel.h>
#include <imagedata.h>
class ICMPanelListener { class ICMPanelListener {
@@ -82,7 +83,7 @@ class ICMPanel : public Gtk::VBox, public AdjusterListener, public FoldableToolP
void ipSelectionChanged (); void ipSelectionChanged ();
void iccTogglesChanged(); void iccTogglesChanged();
void setRaw (bool raw); void setRawMeta (bool raw, const rtengine::ImageData* pMeta);
void saveReferencePressed (); void saveReferencePressed ();
void setICMPanelListener (ICMPanelListener* ipl) { icmplistener = ipl; } void setICMPanelListener (ICMPanelListener* ipl) { icmplistener = ipl; }

View File

@@ -310,8 +310,9 @@ void ToolPanelCoordinator::initImage (rtengine::StagedImageProcessor* ipc_, bool
toneCurve->enableAll (); toneCurve->enableAll ();
toneCurve->enableListener (); toneCurve->enableListener ();
exifpanel->setImageData (ipc->getInitialImage()->getMetaData()); const rtengine::ImageMetaData* pMetaData=ipc->getInitialImage()->getMetaData();
iptcpanel->setImageData (ipc->getInitialImage()->getMetaData()); exifpanel->setImageData (pMetaData);
iptcpanel->setImageData (pMetaData);
if (ipc) { if (ipc) {
ipc->setAutoExpListener (toneCurve); ipc->setAutoExpListener (toneCurve);
@@ -319,7 +320,7 @@ void ToolPanelCoordinator::initImage (rtengine::StagedImageProcessor* ipc_, bool
ipc->setSizeListener (resize); ipc->setSizeListener (resize);
} }
icm->setRaw (raw); icm->setRawMeta (raw, (const rtengine::ImageData*)pMetaData);
hlrecovery->setRaw (raw); hlrecovery->setRaw (raw);
hasChanged = true; hasChanged = true;
} }