Impress Remote 1.0.5, tag sdremote-1.0.5
[LibreOffice.git] / vcl / inc / jobset.h
blob529855895cecaa226b5ceeeb5946f05168ccdf5d
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 _SV_JOBSET_H
21 #define _SV_JOBSET_H
23 #include <tools/solar.h>
24 #include <vcl/prntypes.hxx>
25 #include <boost/unordered_map.hpp>
26 #include <rtl/ustring.hxx>
28 // ------------------
29 // - JobSetup-Types -
30 // ------------------
32 // see com.sun.star.portal.client.JobSetupSystem.idl:
33 #define JOBSETUP_SYSTEM_DONTKNOW 0
34 #define JOBSETUP_SYSTEM_WINDOWS 1
35 #define JOBSETUP_SYSTEM_OS2 2
36 #define JOBSETUP_SYSTEM_UNIX 3
37 #define JOBSETUP_SYSTEM_MAC 4
38 #define JOBSETUP_SYSTEM_JAVA 5
40 // ----------------
41 // - ImplJobSetup -
42 // ----------------
44 struct ImplJobSetup
46 sal_uInt16 mnRefCount; // RefCount (only independ data)
47 sal_uInt16 mnSystem; // Sytem - JOBSETUP_SYSTEM_xxxx
48 rtl::OUString maPrinterName; // Printer-Name
49 rtl::OUString maDriver; // Driver-Name
50 Orientation meOrientation; // Orientation
51 DuplexMode meDuplexMode; // Duplex
52 sal_uInt16 mnPaperBin; // paper bin / in tray
53 Paper mePaperFormat; // paper format
54 long mnPaperWidth; // paper width (100th mm)
55 long mnPaperHeight; // paper height (100th mm)
56 sal_uIntPtr mnDriverDataLen; // length of system specific data
57 sal_uInt8* mpDriverData; // system specific data (will be streamed a byte block)
58 ::boost::unordered_map< ::rtl::OUString, ::rtl::OUString, ::rtl::OUStringHash > maValueMap;
60 ImplJobSetup();
61 ImplJobSetup( const ImplJobSetup& rJobSetup );
62 ~ImplJobSetup();
65 // Papierformat wird wenn PAPER_USER im unabhaengigen Teil automatisch aus
66 // Papierbreite/hoehe berechnet
67 // Papierbreite/hoehe wird wenn 0 im unabhaengigen Teil automatisch aus
68 // Papierformat berechnet, wenn dieses ungleich PAPER_USER ist
70 #endif // _SV_JOBSET_H
72 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */