Blend CMS with matrix feature

see issue 951
This commit is contained in:
Oliver Duis
2011-08-31 19:49:00 +02:00
parent f89fcd56ba
commit d76f3c38c5
11 changed files with 74 additions and 18 deletions

View File

@@ -217,6 +217,7 @@ void ProcParams::setDefaults () {
icm.input = "";
icm.gammaOnInput = false;
icm.blendCMSMatrix = false;
icm.working = "sRGB";
icm.output = "sRGB";
icm.gamma = "default";
@@ -461,6 +462,7 @@ int ProcParams::save (Glib::ustring fname, Glib::ustring fname2) const {
// save color management settings
keyFile.set_string ("Color Management", "InputProfile", icm.input);
keyFile.set_boolean ("Color Management", "ApplyGammaBeforeInputProfile", icm.gammaOnInput);
keyFile.set_boolean ("Color Management", "BlendCMSMatrix", icm.blendCMSMatrix);
keyFile.set_string ("Color Management", "WorkingProfile", icm.working);
keyFile.set_string ("Color Management", "OutputProfile", icm.output);
keyFile.set_string ("Color Management", "Gammafree", icm.gamma);
@@ -812,6 +814,7 @@ if (keyFile.has_group ("Resize")) {
if (keyFile.has_group ("Color Management")) {
if (keyFile.has_key ("Color Management", "InputProfile")) icm.input = keyFile.get_string ("Color Management", "InputProfile");
if (keyFile.has_key ("Color Management", "ApplyGammaBeforeInputProfile")) icm.gammaOnInput = keyFile.get_boolean ("Color Management", "ApplyGammaBeforeInputProfile");
if (keyFile.has_key ("Color Management", "BlendCMSMatrix")) icm.blendCMSMatrix = keyFile.get_boolean ("Color Management", "BlendCMSMatrix");
if (keyFile.has_key ("Color Management", "WorkingProfile")) icm.working = keyFile.get_string ("Color Management", "WorkingProfile");
if (keyFile.has_key ("Color Management", "OutputProfile")) icm.output = keyFile.get_string ("Color Management", "OutputProfile");
if (keyFile.has_key ("Color Management", "Gammafree")) icm.gamma = keyFile.get_string ("Color Management", "Gammafree");
@@ -1061,6 +1064,7 @@ bool ProcParams::operator== (const ProcParams& other) {
&& raw.linenoise == other.raw.linenoise
&& icm.input == other.icm.input
&& icm.gammaOnInput == other.icm.gammaOnInput
&& icm.blendCMSMatrix == other.icm.blendCMSMatrix
&& icm.working == other.icm.working
&& icm.output == other.icm.output
&& icm.gamma == other.icm.gamma