LCOV - code coverage report
Current view: top level - include/vcl - jobdata.hxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 4 6 66.7 %
Date: 2015-06-13 12:38:46 Functions: 3 4 75.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       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/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      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 .
      18             :  */
      19             : 
      20             : #ifndef INCLUDED_VCL_JOBDATA_HXX
      21             : #define INCLUDED_VCL_JOBDATA_HXX
      22             : 
      23             : #include <vcl/ppdparser.hxx>
      24             : 
      25             : namespace psp {
      26             : 
      27             : namespace orientation {
      28             : enum type {
      29             :     Portrait,
      30             :     Landscape
      31             : };
      32             : }
      33             : 
      34        1620 : struct VCL_DLLPUBLIC JobData
      35             : {
      36             :     int                     m_nCopies;
      37             :     bool                    m_bCollate;
      38             :     int                     m_nLeftMarginAdjust;
      39             :     int                     m_nRightMarginAdjust;
      40             :     int                     m_nTopMarginAdjust;
      41             :     int                     m_nBottomMarginAdjust;
      42             :     // user overrides for PPD
      43             :     int                     m_nColorDepth;
      44             :     int                     m_nPSLevel;     // 0: no override, else languagelevel to use
      45             :     int                     m_nColorDevice; // 0: no override, -1 grey scale, +1 color
      46             :     int                     m_nPDFDevice;   // 0: no override, -1 PostScript, +1: Automatically PDF, +2: Explicitly PDF
      47             :     orientation::type       m_eOrientation;
      48             :     OUString         m_aPrinterName;
      49             :     const PPDParser*        m_pParser;
      50             :     PPDContext              m_aContext;
      51             : 
      52        1354 :     JobData() :
      53             :             m_nCopies( 1 ),
      54             :             m_bCollate(false),
      55             :             m_nLeftMarginAdjust( 0 ),
      56             :             m_nRightMarginAdjust( 0 ),
      57             :             m_nTopMarginAdjust( 0 ),
      58             :             m_nBottomMarginAdjust( 0 ),
      59             :             m_nColorDepth( 24 ),
      60             :             m_nPSLevel( 0 ),
      61             :             m_nColorDevice( 0 ),
      62             :             m_nPDFDevice( 0 ),
      63             :             m_eOrientation( orientation::Portrait ),
      64        1354 :             m_pParser( NULL ) {}
      65             : 
      66             :     JobData& operator=(const psp::JobData& rRight);
      67             : 
      68         430 :     JobData( const JobData& rData ) { *this = rData; }
      69             : 
      70             :     void setCollate( bool bCollate );
      71             :     bool setPaper( int nWidth, int nHeight ); // dimensions in pt
      72             :     bool setPaperBin( int nPaperBin );
      73             :     void resolveDefaultBackend();
      74             :     void setDefaultBackend(bool bUsePDF);
      75             : 
      76             :     // creates a new buffer using new
      77             :     // it is up to the user to delete it again
      78             :     bool getStreamBuffer( void*& pData, int& bytes );
      79             :     static bool constructFromStreamBuffer( void* pData, int bytes, JobData& rJobData );
      80             : };
      81             : 
      82             : bool operator==(const psp::JobData& rLeft, const psp::JobData& rRight);
      83           0 : inline bool operator!=(const psp::JobData& rLeft, const psp::JobData& rRight)
      84             : {
      85           0 :     return !( rLeft == rRight );
      86             : }
      87             : 
      88             : } // namespace
      89             : 
      90             : 
      91             : #endif // PSPRINT_JOBDATA_HXX
      92             : 
      93             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11