]> git.saurik.com Git - wxWidgets.git/blame - include/wx/mac/carbon/private/print.h
Now calculates clipping region from actual child HWNDs and not
[wxWidgets.git] / include / wx / mac / carbon / private / print.h
CommitLineData
52479aef
SC
1/////////////////////////////////////////////////////////////////////////////
2// Name: print.h
3// Purpose: private implementation for printing on MacOS
4// Author: Stefan Csomor
5// Modified by:
6// Created: 03/02/99
7// RCS-ID: $Id:
8// Copyright: (c) Stefan Csomor
65571936 9// Licence: wxWindows licence
52479aef
SC
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_MAC_PRIVATE_PRINT_H_
13#define _WX_MAC_PRIVATE_PRINT_H_
14
15#include "wx/cmndata.h"
16#include "wx/mac/private.h"
17
18#if TARGET_CARBON && !defined(__DARWIN__)
19# include <PMApplication.h>
20#endif
21
22#ifndef __DARWIN__
23# include "Printing.h"
24#endif
25
52479aef
SC
26#if !PM_USE_SESSION_APIS
27#error "only Carbon Printing Session API is supported"
28#endif
52479aef
SC
29
30class wxNativePrintData
31{
32public :
33 wxNativePrintData() {}
34 virtual ~wxNativePrintData() {}
35
36 virtual void TransferFrom( wxPrintData * ) = 0 ;
37 virtual void TransferTo( wxPrintData * ) = 0 ;
38
39 virtual void TransferFrom( wxPageSetupDialogData * ) = 0 ;
40 virtual void TransferTo( wxPageSetupDialogData * ) = 0 ;
41
42 virtual void TransferFrom( wxPrintDialogData * ) = 0 ;
43 virtual void TransferTo( wxPrintDialogData * ) = 0 ;
44
45 virtual void CopyFrom( wxNativePrintData * ) = 0;
46
47 virtual int ShowPrintDialog() = 0 ;
48 virtual int ShowPageSetupDialog() = 0 ;
49
50 static wxNativePrintData* Create() ;
51} ;
52
52479aef
SC
53class wxMacCarbonPrintData : public wxNativePrintData
54{
55public :
56 wxMacCarbonPrintData() ;
57 ~wxMacCarbonPrintData() ;
58
59 virtual void TransferFrom( wxPrintData * ) ;
60 virtual void TransferTo( wxPrintData * ) ;
61
62 virtual void TransferFrom( wxPageSetupDialogData * ) ;
63 virtual void TransferTo( wxPageSetupDialogData * ) ;
64
65 virtual void TransferFrom( wxPrintDialogData * ) ;
66 virtual void TransferTo( wxPrintDialogData * ) ;
67
68 virtual void CopyFrom( wxNativePrintData * ) ;
69 virtual int ShowPrintDialog() ;
70 virtual int ShowPageSetupDialog() ;
71private :
72 virtual void ValidateOrCreate() ;
73public :
74 PMPrintSession m_macPrintSession ;
75 PMPageFormat m_macPageFormat ;
76 PMPrintSettings m_macPrintSettings ;
77} ;
78
52479aef 79#endif