Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(250)

Side by Side Diff: printing/print_job_constants.cc

Issue 8138020: PrintPreview: Fix printer color settings issues based on printer ppd/schema information. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: '' Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "printing/print_job_constants.h" 5 #include "printing/print_job_constants.h"
6 6
7 namespace printing { 7 namespace printing {
8 8
9 // True if this is the first preview request. 9 // True if this is the first preview request.
10 const char kIsFirstRequest[] = "isFirstRequest"; 10 const char kIsFirstRequest[] = "isFirstRequest";
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 // Printer name. 114 // Printer name.
115 const char kSettingPrinterName[] = "printerName"; 115 const char kSettingPrinterName[] = "printerName";
116 116
117 // Print to PDF option: true if selected, false if not. 117 // Print to PDF option: true if selected, false if not.
118 const char kSettingPrintToPDF[] = "printToPDF"; 118 const char kSettingPrintToPDF[] = "printToPDF";
119 119
120 // Indices used to represent first preview page and complete preview document. 120 // Indices used to represent first preview page and complete preview document.
121 const int FIRST_PAGE_INDEX = 0; 121 const int FIRST_PAGE_INDEX = 0;
122 const int COMPLETE_PREVIEW_DOCUMENT_INDEX = -1; 122 const int COMPLETE_PREVIEW_DOCUMENT_INDEX = -1;
123 123
124 #if defined (USE_CUPS)
125 const char kBlack[] = "Black";
126 const char kCMYK[] = "CMYK";
127 const char kKCMY[] = "KCMY";
128 const char kCMY_K[] = "CMY+K";
129 const char kCMY[] = "CMY";
130 const char kColor[] = "Color";
131 const char kGray[] = "Gray";
132 const char kGrayscale[] = "Grayscale";
133 const char kGreyscale[] = "Greyscale";
134 const char kMonochrome[] = "Monochrome";
135 const char kNormal[] = "Normal";
136 const char kNormalGray[] = "Normal.Gray";
137 const char kRGB[] = "RGB";
138 const char kRGBA[] = "RGBA";
139 const char kRGB16[] = "RGB16";
140
141 void GetColorModelForMode(
142 int color_mode, std::string* color_setting_name, std::string* color_value) {
143 #if defined(OS_MACOSX)
144 const char kCUPSColorMode[] = "ColorMode";
145 const char kCUPSColorModel[] = "ColorModel";
146 const char kCUPSPrintoutMode[] = "PrintoutMode";
147 const char kCUPSProcessColorModel[] = "ProcessColorModel";
148 #else
149 const char kCUPSColorMode[] = "cups-ColorMode";
150 const char kCUPSColorModel[] = "cups-ColorModel";
151 const char kCUPSPrintoutMode[] = "cups-PrintoutMode";
152 const char kCUPSProcessColorModel[] = "cups-ProcessColorModel";
153 #endif
154
155 color_setting_name->assign(kCUPSColorModel);
156 switch (color_mode) {
157 case printing::COLOR:
158 color_value->assign(printing::kColor);
159 break;
160 case printing::CMYK:
161 color_value->assign(printing::kCMYK);
162 break;
163 case printing::PRINTOUTMODE_NORMAL:
164 color_value->assign(printing::kNormal);
165 color_setting_name->assign(kCUPSPrintoutMode);
166 break;
167 case printing::PRINTOUTMODE_NORMAL_GRAY:
168 color_value->assign(printing::kNormalGray);
169 color_setting_name->assign(kCUPSPrintoutMode);
170 break;
171 case printing::RGB16:
172 color_value->assign(printing::kRGB16);
173 break;
174 case printing::RGBA:
175 color_value->assign(printing::kRGBA);
176 break;
177 case printing::RGB:
178 color_value->assign(printing::kRGB);
179 break;
180 case printing::CMY:
181 color_value->assign(printing::kCMY);
182 break;
183 case printing::CMY_K:
184 color_value->assign(printing::kCMY_K);
185 break;
186 case printing::BLACK:
187 color_value->assign(printing::kBlack);
188 break;
189 case printing::GRAY:
190 color_value->assign(printing::kGray);
191 break;
192 case printing::COLORMODE_COLOR:
193 color_setting_name->assign(kCUPSColorMode);
194 color_value->assign(printing::kColor);
195 break;
196 case printing::COLORMODE_MONOCHROME:
197 color_setting_name->assign(kCUPSColorMode);
198 color_value->assign(printing::kMonochrome);
199 break;
200 case printing::HP_COLOR_COLOR:
201 color_setting_name->assign(kColor);
202 color_value->assign(printing::kColor);
203 break;
204 case printing::HP_COLOR_BLACK:
205 color_setting_name->assign(kColor);
206 color_value->assign(printing::kBlack);
207 break;
208 case printing::PROCESSCOLORMODEL_CMYK:
209 color_setting_name->assign(kCUPSProcessColorModel);
210 color_value->assign(printing::kCMYK);
211 break;
212 case printing::PROCESSCOLORMODEL_GREYSCALE:
213 color_setting_name->assign(kCUPSProcessColorModel);
214 color_value->assign(printing::kGreyscale);
215 break;
216 case printing::PROCESSCOLORMODEL_RGB:
217 color_setting_name->assign(kCUPSProcessColorModel);
218 color_value->assign(printing::kRGB);
219 break;
220 default:
221 color_value->assign(printing::kGrayscale);
222 break;
223 }
224 }
225 #endif
226
227 bool isColorModelSelected(int model) {
228 return (model != printing::GRAY &&
229 model != printing::BLACK &&
230 model != printing::PRINTOUTMODE_NORMAL_GRAY &&
231 model != printing::COLORMODE_MONOCHROME &&
232 model != printing::PROCESSCOLORMODEL_GREYSCALE &&
233 model != printing::HP_COLOR_BLACK);
234 }
235
124 } // namespace printing 236 } // namespace printing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698