1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 #ifndef _SV_JOBSET_H 25 #define _SV_JOBSET_H 26 27 #include <tools/string.hxx> 28 #include <vcl/sv.h> 29 #include <vcl/prntypes.hxx> 30 #include <hash_map> 31 #include <rtl/ustring.hxx> 32 33 // ------------------ 34 // - JobSetup-Types - 35 // ------------------ 36 37 // see com.sun.star.portal.client.JobSetupSystem.idl: 38 #define JOBSETUP_SYSTEM_DONTKNOW 0 39 #define JOBSETUP_SYSTEM_WINDOWS 1 40 #define JOBSETUP_SYSTEM_OS2 2 41 #define JOBSETUP_SYSTEM_UNIX 3 42 #define JOBSETUP_SYSTEM_MAC 4 43 #define JOBSETUP_SYSTEM_JAVA 5 44 45 // ---------------- 46 // - ImplJobSetup - 47 // ---------------- 48 49 struct ImplJobSetup 50 { 51 sal_uInt16 mnRefCount; // RefCount (only independ data) 52 sal_uInt16 mnSystem; // Sytem - JOBSETUP_SYSTEM_xxxx 53 String maPrinterName; // Printer-Name 54 String maDriver; // Driver-Name 55 Orientation meOrientation; // Orientation 56 DuplexMode meDuplexMode; // Duplex 57 sal_uInt16 mnPaperBin; // paper bin / in tray 58 Paper mePaperFormat; // paper format 59 long mnPaperWidth; // paper width (100th mm) 60 long mnPaperHeight; // paper height (100th mm) 61 sal_uIntPtr mnDriverDataLen; // length of system specific data 62 sal_uInt8* mpDriverData; // system specific data (will be streamed a byte block) 63 ::std::hash_map< ::rtl::OUString, ::rtl::OUString, ::rtl::OUStringHash > maValueMap; 64 65 ImplJobSetup(); 66 ImplJobSetup( const ImplJobSetup& rJobSetup ); 67 ~ImplJobSetup(); 68 }; 69 70 // Papierformat wird wenn PAPER_USER im unabhaengigen Teil automatisch aus 71 // Papierbreite/hoehe berechnet 72 // Papierbreite/hoehe wird wenn 0 im unabhaengigen Teil automatisch aus 73 // Papierformat berechnet, wenn dieses ungleich PAPER_USER ist 74 75 #endif // _SV_JOBSET_H 76