From 6162cbd77d8d4f3a4478b15cbfb700b79fe994d0 Mon Sep 17 00:00:00 2001 From: Hombre Date: Mon, 27 Feb 2017 01:12:40 +0100 Subject: [PATCH] Adding more profiles to the Output color profile combobox in ICM You can now select output profiles of the "OUTPUT" device class, but only if they have an RGB color-space. --- rtengine/iccstore.cc | 12 +++++++++--- rtengine/improccoordinator.cc | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/rtengine/iccstore.cc b/rtengine/iccstore.cc index 16ae455b6..52dd25573 100644 --- a/rtengine/iccstore.cc +++ b/rtengine/iccstore.cc @@ -173,9 +173,15 @@ std::vector ICCStore::getProfiles (const ProfileType type) const std::vector res; for (const auto profile : fileProfiles) { - if ( (type==ICCStore::ProfileType::MONITOR && cmsGetDeviceClass(profile.second) == cmsSigDisplayClass && cmsGetColorSpace (profile.second) == cmsSigRgbData) - || (type==ICCStore::ProfileType::PRINTER && cmsGetDeviceClass(profile.second) == cmsSigOutputClass) - || (type==ICCStore::ProfileType::OUTPUT && cmsGetDeviceClass(profile.second) == cmsSigDisplayClass && cmsGetColorSpace (profile.second) == cmsSigRgbData) ) + if ( (type==ICCStore::ProfileType::MONITOR + && cmsGetDeviceClass(profile.second) == cmsSigDisplayClass + && cmsGetColorSpace (profile.second) == cmsSigRgbData) + || (type==ICCStore::ProfileType::PRINTER + && cmsGetDeviceClass(profile.second) == cmsSigOutputClass) + || (type==ICCStore::ProfileType::OUTPUT + && (cmsGetDeviceClass(profile.second) == cmsSigDisplayClass || cmsGetDeviceClass(profile.second) == cmsSigOutputClass) + && cmsGetColorSpace (profile.second) == cmsSigRgbData) + ) { res.push_back (profile.first); } diff --git a/rtengine/improccoordinator.cc b/rtengine/improccoordinator.cc index f02ddf14e..b36a9f9a2 100644 --- a/rtengine/improccoordinator.cc +++ b/rtengine/improccoordinator.cc @@ -801,7 +801,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall) MyMutex::MyLock prevImgLock(previmg->getMutex()); try { - // Computing the preview image, i.e. converting from WCS->Monitor color space (soft-proofing disabled) or WCS->Output profile->Monitor color space (soft-proofing enabled) + // Computing the preview image, i.e. converting from WCS->Monitor color space (soft-proofing disabled) or WCS->Printer profile->Monitor color space (soft-proofing enabled) ipf.lab2monitorRgb (nprevl, previmg); // Computing the internal image for analysis, i.e. conversion from WCS->Output profile