1 /*
2 For general Scribus (>=1.3.2) copyright and licensing information please refer
3 to the COPYING file provided with the program. Following this notice may exist
4 a copyright and/or license notice that predates the release of Scribus 1.3.2
5 for which a new license (GPL+exception) is in place.
6 */
7 /***************************************************************************
8 * Copyright (C) 2006 by Craig Bradney *
9 * mrb@scribus.info *
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 * This program is distributed in the hope that it will be useful, *
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
19 * GNU General Public License for more details. *
20 * *
21 * You should have received a copy of the GNU General Public License *
22 * along with this program; if not, write to the *
23 * Free Software Foundation, Inc., *
24 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
25 ***************************************************************************/
26
27 #include "cmsettings.h"
28 #include "scribusdoc.h"
29
CMSettings(ScribusDoc * doc,const QString & profileName,eRenderIntent intent)30 CMSettings::CMSettings(ScribusDoc* doc, const QString& profileName, eRenderIntent intent) :
31 m_Doc(doc),
32 m_ProfileName(profileName),
33 m_Intent(intent)
34 {
35 }
36
37 CMSettings::~CMSettings() = default;
38
useColorManagement() const39 bool CMSettings::useColorManagement() const
40 {
41 if (m_Doc)
42 return (m_Doc->HasCMS && m_colorManagementAllowed);
43 return false;
44 }
45
defaultMonitorProfile() const46 QString CMSettings::defaultMonitorProfile() const
47 {
48 if (m_Doc)
49 return m_Doc->cmsSettings().DefaultMonitorProfile;
50 return QString();
51 }
52
defaultPrinterProfile() const53 QString CMSettings::defaultPrinterProfile() const
54 {
55 if (m_Doc)
56 return m_Doc->cmsSettings().DefaultPrinterProfile;
57 return QString();
58 }
59
defaultImageRGBProfile() const60 QString CMSettings::defaultImageRGBProfile() const
61 {
62 if (m_Doc)
63 return m_Doc->cmsSettings().DefaultImageRGBProfile;
64 return QString();
65 }
66
defaultImageCMYKProfile() const67 QString CMSettings::defaultImageCMYKProfile() const
68 {
69 if (m_Doc)
70 return m_Doc->cmsSettings().DefaultImageCMYKProfile;
71 return QString();
72 }
73
defaultSolidColorRGBProfile() const74 QString CMSettings::defaultSolidColorRGBProfile() const
75 {
76 if (m_Doc)
77 return m_Doc->cmsSettings().DefaultSolidColorRGBProfile;
78 return QString();
79 }
80
defaultSolidColorCMYKProfile() const81 QString CMSettings::defaultSolidColorCMYKProfile() const
82 {
83 if (m_Doc)
84 return m_Doc->cmsSettings().DefaultSolidColorCMYKProfile;
85 return QString();
86 }
87
colorRenderingIntent() const88 eRenderIntent CMSettings::colorRenderingIntent() const
89 {
90 if (m_Doc)
91 return m_Doc->IntentColors;
92 return Intent_Relative_Colorimetric; // Use relative colorimetric by default
93 }
94
imageRenderingIntent() const95 eRenderIntent CMSettings::imageRenderingIntent() const
96 {
97 if (m_Doc)
98 return m_Doc->IntentImages;
99 return Intent_Perceptual; // Use perceptual by default
100 }
101
useBlackPoint() const102 bool CMSettings::useBlackPoint() const
103 {
104 if (m_Doc)
105 return m_Doc->cmsSettings().BlackPoint;
106 return false;
107 }
108
doSoftProofing() const109 bool CMSettings::doSoftProofing() const
110 {
111 if (m_Doc)
112 return (m_Doc->cmsSettings().SoftProofOn && m_softProofingAllowed);
113 return false;
114 }
115
doGamutCheck() const116 bool CMSettings::doGamutCheck() const
117 {
118 if (m_Doc)
119 return (m_Doc->cmsSettings().GamutCheck && m_softProofingAllowed);
120 return false;
121 }
122
monitorProfile() const123 ScColorProfile CMSettings::monitorProfile() const
124 {
125 if (m_Doc)
126 return m_Doc->DocDisplayProf;
127 return ScColorProfile();
128 }
129
printerProfile() const130 ScColorProfile CMSettings::printerProfile() const
131 {
132 if (m_Doc)
133 return m_Doc->DocPrinterProf;
134 return ScColorProfile();
135 }
136
outputProfile() const137 ScColorProfile CMSettings::outputProfile() const
138 {
139 return m_outputProfile;
140 }
141
rgbColorDisplayTransform() const142 ScColorTransform CMSettings::rgbColorDisplayTransform() const // stdTransRGBMonG
143 {
144 if (m_Doc)
145 return m_Doc->stdTransRGBMon;
146 return ScColorTransform();
147 }
148
rgbColorProofingTransform() const149 ScColorTransform CMSettings::rgbColorProofingTransform() const // stdProofG
150 {
151 if (m_Doc)
152 return m_Doc->stdProof;
153 return ScColorTransform();
154 }
155
rgbImageDisplayTransform() const156 ScColorTransform CMSettings::rgbImageDisplayTransform() const // stdTransImgG
157 {
158 if (m_Doc)
159 return m_Doc->stdTransImg;
160 return ScColorTransform();
161 }
162
rgbImageProofingTransform() const163 ScColorTransform CMSettings::rgbImageProofingTransform() const // stdProofImgG
164 {
165 if (m_Doc)
166 return m_Doc->stdProofImg;
167 return ScColorTransform();
168 }
169
rgbToCymkColorTransform() const170 ScColorTransform CMSettings::rgbToCymkColorTransform() const // stdTransCMYKG
171 {
172 if (m_Doc)
173 return m_Doc->stdTransCMYK;
174 return ScColorTransform();
175 }
176
rgbGamutCheckTransform() const177 ScColorTransform CMSettings::rgbGamutCheckTransform() const // stdProofGCG
178 {
179 if (m_Doc)
180 return m_Doc->stdProofGC;
181 return ScColorTransform();
182 }
183
cmykColorDisplayTransform() const184 ScColorTransform CMSettings::cmykColorDisplayTransform() const // stdTransCMYKMonG
185 {
186 if (m_Doc)
187 return m_Doc->stdTransCMYKMon;
188 return ScColorTransform();
189 }
190
cmykColorProofingTransform() const191 ScColorTransform CMSettings::cmykColorProofingTransform() const // stdProofCMYKG
192 {
193 if (m_Doc)
194 return m_Doc->stdProofCMYK;
195 return ScColorTransform();
196 }
197
cmykImageProofingTransform() const198 ScColorTransform CMSettings::cmykImageProofingTransform() const // stdProofImgCMYK
199 {
200 if (m_Doc)
201 return m_Doc->stdProofImgCMYK;
202 return ScColorTransform();
203 }
204
cmykToRgbColorTransform() const205 ScColorTransform CMSettings::cmykToRgbColorTransform() const // stdTransRGBG
206 {
207 if (m_Doc)
208 return m_Doc->stdTransRGB;
209 return ScColorTransform();
210 }
211
cmykGamutCheckTransform() const212 ScColorTransform CMSettings::cmykGamutCheckTransform() const //stdProofCMYKGCG
213 {
214 if (m_Doc)
215 return m_Doc->stdProofCMYKGC;
216 return ScColorTransform();
217 }
218