15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef PRINTING_PRINT_JOB_CONSTANTS_H_
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PRINTING_PRINT_JOB_CONSTANTS_H_
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "build/build_config.h"
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "printing/printing_export.h"
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace printing {
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kIsFirstRequest[];
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kPreviewRequestID[];
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kPreviewUIID[];
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingCloudPrintId[];
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingCloudPrintDialog[];
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingCollate[];
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingColor[];
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingSetColorAsDefault[];
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingContentHeight[];
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingContentWidth[];
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingCopies[];
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingDeviceName[];
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingDuplexMode[];
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingFitToPageEnabled[];
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingGenerateDraftData[];
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingHeaderFooterEnabled[];
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const float kSettingHeaderFooterInterstice;
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingHeaderFooterDate[];
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingHeaderFooterTitle[];
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingHeaderFooterURL[];
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingLandscape[];
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginBottom[];
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginLeft[];
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginRight[];
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginTop[];
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginsCustom[];
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingMarginsType[];
402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)PRINTING_EXPORT extern const char kSettingPreviewPageCount[];
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPageRange[];
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPageRangeFrom[];
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPageRangeTo[];
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPreviewModifiable[];
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrintableAreaX[];
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrintableAreaY[];
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrintableAreaWidth[];
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrintableAreaHeight[];
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrinterName[];
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingPrintToPDF[];
512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)PRINTING_EXPORT extern const char kSettingShouldPrintBackgrounds[];
522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)PRINTING_EXPORT extern const char kSettingShouldPrintSelectionOnly[];
535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const int FIRST_PAGE_INDEX;
555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const int COMPLETE_PREVIEW_DOCUMENT_INDEX;
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX)
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kSettingOpenPDFInPreview[];
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // defined(OS_MACOSX)
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (USE_CUPS)
625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Printer color models
635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kBlack[];
645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kCMYK[];
655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kKCMY[];
665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kCMY_K[];
675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kCMY[];
685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kColor[];
695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kGray[];
705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kGrayscale[];
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kGreyscale[];
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kMonochrome[];
735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kNormal[];
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kNormalGray[];
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kRGB[];
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kRGBA[];
775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PRINTING_EXPORT extern const char kRGB16[];
785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Print job duplex mode values.
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum DuplexMode {
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  UNKNOWN_DUPLEX_MODE = -1,
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SIMPLEX,
845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  LONG_EDGE,
855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SHORT_EDGE,
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Specifies the horizontal alignment of the headers and footers.
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum HorizontalHeaderFooterPosition {
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  LEFT,
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CENTER,
925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RIGHT
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Specifies the vertical alignment of the Headers and Footers.
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum VerticalHeaderFooterPosition {
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TOP,
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  BOTTOM
995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Print job color mode values.
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum ColorModels {
1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  UNKNOWN_COLOR_MODEL,
1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GRAY,
1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  COLOR,
1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CMYK,
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CMY,
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  KCMY,
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CMY_K,  // CMY_K represents CMY+K.
1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  BLACK,
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GRAYSCALE,
1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RGB,
1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RGB16,
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RGBA,
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  COLORMODE_COLOR,  // Used in samsung printer ppds.
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  COLORMODE_MONOCHROME,  // Used in samsung printer ppds.
1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  HP_COLOR_COLOR,  // Used in HP color printer ppds.
1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  HP_COLOR_BLACK,  // Used in HP color printer ppds.
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PRINTOUTMODE_NORMAL,  // Used in foomatic ppds.
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PRINTOUTMODE_NORMAL_GRAY,  // Used in foomatic ppds.
1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PROCESSCOLORMODEL_CMYK,  // Used in canon printer ppds.
1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PROCESSCOLORMODEL_GREYSCALE,  // Used in canon printer ppds.
1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PROCESSCOLORMODEL_RGB,  // Used in canon printer ppds
1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// What kind of margins to use.
1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum MarginType {
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  DEFAULT_MARGINS,  // Default varies depending on headers being enabled or not
1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  NO_MARGINS,
1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PRINTABLE_AREA_MARGINS,
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CUSTOM_MARGINS,
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace printing
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // PRINTING_PRINT_JOB_CONSTANTS_H_
137