summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2007-10-05 04:11:50 +0000
committerjoncruz <joncruz@users.sourceforge.net>2007-10-05 04:11:50 +0000
commit93e6bd86ee87fbc9a558ee581b71596d797b52d5 (patch)
tree4e9db7b5e457d934662d77ff54f70c8b175b6299
parentEnabled custom out of gamut warning color (diff)
downloadinkscape-93e6bd86ee87fbc9a558ee581b71596d797b52d5.tar.gz
inkscape-93e6bd86ee87fbc9a558ee581b71596d797b52d5.zip
Guards for lcms < 1.15
(bzr r3837)
-rw-r--r--src/color-profile.cpp10
-rw-r--r--src/ui/dialog/inkscape-preferences.cpp14
2 files changed, 22 insertions, 2 deletions
diff --git a/src/color-profile.cpp b/src/color-profile.cpp
index eb8f7754c..614fdfd6d 100644
--- a/src/color-profile.cpp
+++ b/src/color-profile.cpp
@@ -551,7 +551,9 @@ int errorHandlerCB(int ErrorCode, const char *ErrorText)
static bool gamutWarn = false;
static Gdk::Color lastGamutColor("#00ff00");
static bool lastBPC = false;
+#if defined(cmsFLAGS_PRESERVEBLACK)
static bool lastPreserveBlack = false;
+#endif // defined(cmsFLAGS_PRESERVEBLACK)
static int lastIntent = INTENT_PERCEPTUAL;
static int lastProofIntent = INTENT_PERCEPTUAL;
static cmsHTRANSFORM transf = 0;
@@ -686,7 +688,9 @@ cmsHTRANSFORM Inkscape::colorprofile_get_display_transform()
int intent = prefs_get_int_attribute_limited( "options.displayprofile", "intent", 0, 0, 3 );
int proofIntent = prefs_get_int_attribute_limited( "options.softproof", "intent", 0, 0, 3 );
bool bpc = prefs_get_int_attribute_limited( "options.softproof", "bpc", 0, 0, 1 );
+#if defined(cmsFLAGS_PRESERVEBLACK)
bool preserveBlack = prefs_get_int_attribute_limited( "options.softproof", "preserveblack", 0, 0, 1 );
+#endif //defined(cmsFLAGS_PRESERVEBLACK)
gchar const* colorStr = prefs_get_string_attribute("options.softproof", "gamutcolor");
Gdk::Color gamutColor( (colorStr && colorStr[0]) ? colorStr : "#00ff00");
@@ -694,7 +698,9 @@ cmsHTRANSFORM Inkscape::colorprofile_get_display_transform()
|| (lastIntent != intent)
|| (lastProofIntent != proofIntent)
|| (bpc != lastBPC)
+#if defined(cmsFLAGS_PRESERVEBLACK)
|| (preserveBlack != lastPreserveBlack)
+#endif // defined(cmsFLAGS_PRESERVEBLACK)
|| (gamutColor != lastGamutColor)
) {
gamutWarn = warn;
@@ -705,7 +711,9 @@ cmsHTRANSFORM Inkscape::colorprofile_get_display_transform()
lastIntent = intent;
lastProofIntent = proofIntent;
lastBPC = bpc;
+#if defined(cmsFLAGS_PRESERVEBLACK)
lastPreserveBlack = preserveBlack;
+#endif // defined(cmsFLAGS_PRESERVEBLACK)
lastGamutColor = gamutColor;
}
@@ -726,9 +734,11 @@ cmsHTRANSFORM Inkscape::colorprofile_get_display_transform()
if ( bpc ) {
dwFlags |= cmsFLAGS_BLACKPOINTCOMPENSATION;
}
+#if defined(cmsFLAGS_PRESERVEBLACK)
if ( preserveBlack ) {
dwFlags |= cmsFLAGS_PRESERVEBLACK;
}
+#endif // defined(cmsFLAGS_PRESERVEBLACK)
transf = cmsCreateProofingTransform( srcprof, TYPE_RGB_8, hprof, TYPE_RGB_8, proofProf, intent, proofIntent, dwFlags );
} else if ( hprof ) {
transf = cmsCreateTransform( srcprof, TYPE_RGB_8, hprof, TYPE_RGB_8, intent, 0 );
diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp
index 9ca4b54cb..8878f21ed 100644
--- a/src/ui/dialog/inkscape-preferences.cpp
+++ b/src/ui/dialog/inkscape-preferences.cpp
@@ -723,8 +723,18 @@ void InkscapePreferences::initPageCMS()
_("Enables black point compensation."), false);
_cms_proof_preserveblack.init( _("Preserve black."), "options.softproof", "preserveblack", false);
- _page_cms.add_line( false, "", _cms_proof_preserveblack, "",
- "", false);
+ _page_cms.add_line( false, "", _cms_proof_preserveblack,
+#if defined(cmsFLAGS_PRESERVEBLACK)
+ "",
+#else
+ _("(LittleCMS 1.15 or later required)"),
+#endif // defined(cmsFLAGS_PRESERVEBLACK)
+ _("Preserve K channel on CMYK -> CMYK transforms"), false);
+
+#if !defined(cmsFLAGS_PRESERVEBLACK)
+ _cms_proof_preserveblack.set_sensitive( false );
+#endif // !defined(cmsFLAGS_PRESERVEBLACK)
+
#if ENABLE_LCMS
{