Branch libreoffice-5-0-4
[LibreOffice.git] / include / vcl / prntypes.hxx
blobb077117b8ee800ac98cb35e9e673f8381fd9eed3
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_VCL_PRNTYPES_HXX
21 #define INCLUDED_VCL_PRNTYPES_HXX
23 #include <tools/solar.h>
24 #include <i18nutil/paper.hxx>
25 #include <o3tl/typed_flags_set.hxx>
28 // - Duplex Mode -
31 enum DuplexMode { DUPLEX_UNKNOWN, DUPLEX_OFF, DUPLEX_LONGEDGE, DUPLEX_SHORTEDGE };
34 // - Orientation -
37 enum Orientation { ORIENTATION_PORTRAIT, ORIENTATION_LANDSCAPE };
40 // - QueueInfo-Types -
42 enum class PrintQueueFlags
44 NONE = 0x00000000,
45 Ready = 0x00000001,
46 Paused = 0x00000002,
47 PendingDeletion = 0x00000004,
48 Busy = 0x00000008,
49 Initializing = 0x00000010,
50 Waiting = 0x00000020,
51 WarmingUp = 0x00000040,
52 Processing = 0x00000080,
53 Printing = 0x00000100,
54 Offline = 0x00000200,
55 Error = 0x00000400,
56 StatusUnknown = 0x00000800,
57 PaperJam = 0x00001000,
58 PaperOut = 0x00002000,
59 ManualFeed = 0x00004000,
60 PaperProblem = 0x00008000,
61 IOActive = 0x00010000,
62 OutputBinFull = 0x00020000,
63 TonerLow = 0x00040000,
64 NoToner = 0x00080000,
65 PagePunt = 0x00100000,
66 UserIntervention = 0x00200000,
67 OutOfMemory = 0x00400000,
68 DoorOpen = 0x00800000,
69 PowerSave = 0x01000000,
71 namespace o3tl
73 template<> struct typed_flags<PrintQueueFlags> : is_typed_flags<PrintQueueFlags, 0x01ffffff> {};
76 #define QUEUE_JOBS_DONTKNOW ((sal_uLong)0xFFFFFFFF)
79 // - Printer-Types -
82 #define PRINTER_CAPABILITIES_SUPPORTDIALOG ((sal_uInt16)1)
83 #define PRINTER_CAPABILITIES_COPIES ((sal_uInt16)2)
84 #define PRINTER_CAPABILITIES_COLLATECOPIES ((sal_uInt16)3)
85 #define PRINTER_CAPABILITIES_SETORIENTATION ((sal_uInt16)4)
86 #define PRINTER_CAPABILITIES_SETPAPERBIN ((sal_uInt16)5)
87 #define PRINTER_CAPABILITIES_SETPAPERSIZE ((sal_uInt16)6)
88 #define PRINTER_CAPABILITIES_SETPAPER ((sal_uInt16)7)
89 #define PRINTER_CAPABILITIES_FAX ((sal_uInt16)8)
90 #define PRINTER_CAPABILITIES_PDF ((sal_uInt16)9)
91 #define PRINTER_CAPABILITIES_EXTERNALDIALOG ((sal_uInt16)10)
92 #define PRINTER_CAPABILITIES_SETDUPLEX ((sal_uInt16)11)
93 #define PRINTER_CAPABILITIES_USEPULLMODEL ((sal_uInt16)12)
95 #endif // INCLUDED_VCL_PRNTYPES_HXX
97 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */