Introducting soft-proofing and Black Point Compensation, simplify the

CMM at the end of the pipeline + sparse code refactoring
A new BPC checkbutton has been created in 'Preferences/Color Management'
and in the ICM tool. Better hanbling of widget sensitivity of the output
profile / gamma part of the ICM tool.
This commit is contained in:
Hombre
2016-08-24 22:32:06 +02:00
parent b710595335
commit 5affa18341
34 changed files with 1321 additions and 709 deletions

View File

@@ -469,6 +469,7 @@ void Options::setDefaults ()
fastexport_icm_working = "ProPhoto";
fastexport_icm_output = "RT_sRGB";
fastexport_icm_outputIntent = rtengine::RI_RELATIVE;
fastexport_icm_outputBPC = true;
fastexport_icm_gamma = "default";
fastexport_resize_enabled = true;
fastexport_resize_scale = 1;
@@ -634,6 +635,8 @@ void Options::setDefaults ()
rtSettings.monitorProfile = Glib::ustring();
rtSettings.monitorIntent = rtengine::RI_RELATIVE;
rtSettings.monitorBPC = true;
rtSettings.monitorBPC = true;
rtSettings.autoMonitorProfile = false;
rtSettings.adobe = "RT_Medium_gsRGB"; // put the name of yours profiles (here windows)
rtSettings.prophoto = "RT_Large_gBT709"; // these names appear in the menu "output profile"
@@ -1463,6 +1466,10 @@ int Options::readFromFile (Glib::ustring fname)
rtSettings.monitorIntent = static_cast<rtengine::RenderingIntent>(keyFile.get_integer("Color Management", "Intent"));
}
if (keyFile.has_key ("Color Management", "Intent")) {
rtSettings.monitorBPC = keyFile.get_boolean("Color Management", "MonitorBPC");
}
if (keyFile.has_key ("Color Management", "CRI")) {
rtSettings.CRI_color = keyFile.get_integer("Color Management", "CRI");
}
@@ -1719,6 +1726,10 @@ int Options::readFromFile (Glib::ustring fname)
fastexport_icm_outputIntent = static_cast<rtengine::RenderingIntent>(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_gamma" )) {
fastexport_icm_gamma = keyFile.get_string ("Fast Export", "fastexport_icm_gamma" );
}
@@ -2028,6 +2039,7 @@ int Options::saveToFile (Glib::ustring fname)
keyFile.set_boolean ("Color Management", "Autocielab", rtSettings.autocielab);
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", "greySc", rtSettings.viewinggreySc);
@@ -2096,6 +2108,7 @@ int Options::saveToFile (Glib::ustring fname)
keyFile.set_string ("Fast Export", "fastexport_icm_working" , fastexport_icm_working );
keyFile.set_string ("Fast Export", "fastexport_icm_output" , fastexport_icm_output );
keyFile.set_integer ("Fast Export", "fastexport_icm_output_intent" , fastexport_icm_outputIntent );
keyFile.set_integer ("Fast Export", "fastexport_icm_output_bpc" , fastexport_icm_outputBPC );
keyFile.set_string ("Fast Export", "fastexport_icm_gamma" , fastexport_icm_gamma );
keyFile.set_boolean ("Fast Export", "fastexport_resize_enabled" , fastexport_resize_enabled );
keyFile.set_double ("Fast Export", "fastexport_resize_scale" , fastexport_resize_scale );