print_job_constants.h revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef PRINTING_PRINT_JOB_CONSTANTS_H_
6#define PRINTING_PRINT_JOB_CONSTANTS_H_
7
8#include "build/build_config.h"
9#include "printing/printing_export.h"
10
11namespace printing {
12
13PRINTING_EXPORT extern const char kIsFirstRequest[];
14PRINTING_EXPORT extern const char kPreviewRequestID[];
15PRINTING_EXPORT extern const char kPreviewUIID[];
16PRINTING_EXPORT extern const char kSettingCloudPrintId[];
17PRINTING_EXPORT extern const char kSettingCloudPrintDialog[];
18PRINTING_EXPORT extern const char kSettingCollate[];
19PRINTING_EXPORT extern const char kSettingColor[];
20PRINTING_EXPORT extern const char kSettingSetColorAsDefault[];
21PRINTING_EXPORT extern const char kSettingContentHeight[];
22PRINTING_EXPORT extern const char kSettingContentWidth[];
23PRINTING_EXPORT extern const char kSettingCopies[];
24PRINTING_EXPORT extern const char kSettingDeviceName[];
25PRINTING_EXPORT extern const char kSettingDuplexMode[];
26PRINTING_EXPORT extern const char kSettingFitToPageEnabled[];
27PRINTING_EXPORT extern const char kSettingGenerateDraftData[];
28PRINTING_EXPORT extern const char kSettingHeaderFooterEnabled[];
29PRINTING_EXPORT extern const float kSettingHeaderFooterInterstice;
30PRINTING_EXPORT extern const char kSettingHeaderFooterDate[];
31PRINTING_EXPORT extern const char kSettingHeaderFooterTitle[];
32PRINTING_EXPORT extern const char kSettingHeaderFooterURL[];
33PRINTING_EXPORT extern const char kSettingLandscape[];
34PRINTING_EXPORT extern const char kSettingMarginBottom[];
35PRINTING_EXPORT extern const char kSettingMarginLeft[];
36PRINTING_EXPORT extern const char kSettingMarginRight[];
37PRINTING_EXPORT extern const char kSettingMarginTop[];
38PRINTING_EXPORT extern const char kSettingMarginsCustom[];
39PRINTING_EXPORT extern const char kSettingMarginsType[];
40PRINTING_EXPORT extern const char kSettingPreviewPageCount[];
41PRINTING_EXPORT extern const char kSettingPageRange[];
42PRINTING_EXPORT extern const char kSettingPageRangeFrom[];
43PRINTING_EXPORT extern const char kSettingPageRangeTo[];
44PRINTING_EXPORT extern const char kSettingPageWidth[];
45PRINTING_EXPORT extern const char kSettingPageHeight[];
46PRINTING_EXPORT extern const char kSettingPreviewModifiable[];
47PRINTING_EXPORT extern const char kSettingPrintableAreaX[];
48PRINTING_EXPORT extern const char kSettingPrintableAreaY[];
49PRINTING_EXPORT extern const char kSettingPrintableAreaWidth[];
50PRINTING_EXPORT extern const char kSettingPrintableAreaHeight[];
51PRINTING_EXPORT extern const char kSettingPrinterName[];
52PRINTING_EXPORT extern const char kSettingPrintToPDF[];
53PRINTING_EXPORT extern const char kSettingPrintWithPrivet[];
54PRINTING_EXPORT extern const char kSettingTicket[];
55PRINTING_EXPORT extern const char kSettingShouldPrintBackgrounds[];
56PRINTING_EXPORT extern const char kSettingShouldPrintSelectionOnly[];
57
58PRINTING_EXPORT extern const int FIRST_PAGE_INDEX;
59PRINTING_EXPORT extern const int COMPLETE_PREVIEW_DOCUMENT_INDEX;
60PRINTING_EXPORT extern const char kSettingOpenPDFInPreview[];
61
62#if defined (USE_CUPS)
63// Printer color models
64PRINTING_EXPORT extern const char kBlack[];
65PRINTING_EXPORT extern const char kCMYK[];
66PRINTING_EXPORT extern const char kKCMY[];
67PRINTING_EXPORT extern const char kCMY_K[];
68PRINTING_EXPORT extern const char kCMY[];
69PRINTING_EXPORT extern const char kColor[];
70PRINTING_EXPORT extern const char kGray[];
71PRINTING_EXPORT extern const char kGrayscale[];
72PRINTING_EXPORT extern const char kGreyscale[];
73PRINTING_EXPORT extern const char kMonochrome[];
74PRINTING_EXPORT extern const char kNormal[];
75PRINTING_EXPORT extern const char kNormalGray[];
76PRINTING_EXPORT extern const char kRGB[];
77PRINTING_EXPORT extern const char kRGBA[];
78PRINTING_EXPORT extern const char kRGB16[];
79#endif
80
81// Print job duplex mode values.
82enum DuplexMode {
83  UNKNOWN_DUPLEX_MODE = -1,
84  SIMPLEX,
85  LONG_EDGE,
86  SHORT_EDGE,
87};
88
89// Specifies the horizontal alignment of the headers and footers.
90enum HorizontalHeaderFooterPosition {
91  LEFT,
92  CENTER,
93  RIGHT
94};
95
96// Specifies the vertical alignment of the Headers and Footers.
97enum VerticalHeaderFooterPosition {
98  TOP,
99  BOTTOM
100};
101
102// Print job color mode values.
103enum ColorModel {
104  UNKNOWN_COLOR_MODEL,
105  GRAY,
106  COLOR,
107  CMYK,
108  CMY,
109  KCMY,
110  CMY_K,  // CMY_K represents CMY+K.
111  BLACK,
112  GRAYSCALE,
113  RGB,
114  RGB16,
115  RGBA,
116  COLORMODE_COLOR,  // Used in samsung printer ppds.
117  COLORMODE_MONOCHROME,  // Used in samsung printer ppds.
118  HP_COLOR_COLOR,  // Used in HP color printer ppds.
119  HP_COLOR_BLACK,  // Used in HP color printer ppds.
120  PRINTOUTMODE_NORMAL,  // Used in foomatic ppds.
121  PRINTOUTMODE_NORMAL_GRAY,  // Used in foomatic ppds.
122  PROCESSCOLORMODEL_CMYK,  // Used in canon printer ppds.
123  PROCESSCOLORMODEL_GREYSCALE,  // Used in canon printer ppds.
124  PROCESSCOLORMODEL_RGB,  // Used in canon printer ppds
125};
126
127// What kind of margins to use.
128enum MarginType {
129  DEFAULT_MARGINS,  // Default varies depending on headers being enabled or not
130  NO_MARGINS,
131  PRINTABLE_AREA_MARGINS,
132  CUSTOM_MARGINS,
133  MARGIN_TYPE_LAST = CUSTOM_MARGINS
134};
135
136}  // namespace printing
137
138#endif  // PRINTING_PRINT_JOB_CONSTANTS_H_
139