]>
Commit | Line | Data |
---|---|---|
2bda0e17 | 1 | ///////////////////////////////////////////////////////////////////////////// |
80fdcdb9 | 2 | // Name: wx/msw/printdlg.h |
2bda0e17 KB |
3 | // Purpose: wxPrintDialog, wxPageSetupDialog classes |
4 | // Author: Julian Smart | |
5 | // Modified by: | |
6 | // Created: 01/02/97 | |
7 | // RCS-ID: $Id$ | |
bbcdf8bc | 8 | // Copyright: (c) Julian Smart |
65571936 | 9 | // Licence: wxWindows licence |
2bda0e17 KB |
10 | ///////////////////////////////////////////////////////////////////////////// |
11 | ||
bbcdf8bc JS |
12 | #ifndef _WX_PRINTDLG_H_ |
13 | #define _WX_PRINTDLG_H_ | |
2bda0e17 | 14 | |
d427503c VZ |
15 | #if wxUSE_PRINTING_ARCHITECTURE |
16 | ||
2bda0e17 KB |
17 | #include "wx/dialog.h" |
18 | #include "wx/cmndata.h" | |
8850cbd3 | 19 | #include "wx/prntbase.h" |
c061373d | 20 | #include "wx/printdlg.h" |
2bda0e17 | 21 | |
b5dbe15d | 22 | class WXDLLIMPEXP_FWD_CORE wxDC; |
6c797d8f | 23 | class WinPrinter; |
103aec29 | 24 | |
8850cbd3 RR |
25 | //---------------------------------------------------------------------------- |
26 | // wxWindowsPrintNativeData | |
27 | //---------------------------------------------------------------------------- | |
28 | ||
53a2db12 | 29 | class WXDLLIMPEXP_CORE wxWindowsPrintNativeData: public wxPrintNativeDataBase |
8850cbd3 RR |
30 | { |
31 | public: | |
32 | wxWindowsPrintNativeData(); | |
33 | virtual ~wxWindowsPrintNativeData(); | |
03647350 | 34 | |
fd64de59 RR |
35 | virtual bool TransferTo( wxPrintData &data ); |
36 | virtual bool TransferFrom( const wxPrintData &data ); | |
03647350 | 37 | |
b7cacb43 VZ |
38 | virtual bool Ok() const { return IsOk(); } |
39 | virtual bool IsOk() const; | |
03647350 | 40 | |
6c797d8f | 41 | void InitializeDevMode(const wxString &printerName = wxEmptyString, WinPrinter* printer = NULL); |
fd64de59 RR |
42 | void* GetDevMode() const { return m_devMode; } |
43 | void SetDevMode(void* data) { m_devMode = data; } | |
44 | void* GetDevNames() const { return m_devNames; } | |
45 | void SetDevNames(void* data) { m_devNames = data; } | |
03647350 | 46 | |
8850cbd3 | 47 | private: |
fd64de59 RR |
48 | void* m_devMode; |
49 | void* m_devNames; | |
8850cbd3 | 50 | |
3168b4c3 JS |
51 | short m_customWindowsPaperId; |
52 | ||
8850cbd3 RR |
53 | private: |
54 | DECLARE_DYNAMIC_CLASS(wxWindowsPrintNativeData) | |
55 | }; | |
03647350 | 56 | |
103aec29 | 57 | // --------------------------------------------------------------------------- |
08680429 | 58 | // wxWindowsPrintDialog: the MSW dialog for printing |
103aec29 VZ |
59 | // --------------------------------------------------------------------------- |
60 | ||
53a2db12 | 61 | class WXDLLIMPEXP_CORE wxWindowsPrintDialog : public wxPrintDialogBase |
2bda0e17 | 62 | { |
7bcb11d3 | 63 | public: |
c061373d RR |
64 | wxWindowsPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL); |
65 | wxWindowsPrintDialog(wxWindow *parent, wxPrintData* data); | |
66 | virtual ~wxWindowsPrintDialog(); | |
2bda0e17 | 67 | |
103aec29 VZ |
68 | bool Create(wxWindow *parent, wxPrintDialogData* data = NULL); |
69 | virtual int ShowModal(); | |
2bda0e17 | 70 | |
103aec29 VZ |
71 | wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; } |
72 | wxPrintData& GetPrintData() { return m_printDialogData.GetPrintData(); } | |
f415cab9 | 73 | |
103aec29 | 74 | virtual wxDC *GetPrintDC(); |
7bcb11d3 | 75 | |
93c2f401 | 76 | private: |
103aec29 | 77 | wxPrintDialogData m_printDialogData; |
f415cab9 | 78 | wxPrinterDC* m_printerDC; |
103aec29 VZ |
79 | bool m_destroyDC; |
80 | wxWindow* m_dialogParent; | |
03647350 | 81 | |
93c2f401 RR |
82 | private: |
83 | bool ConvertToNative( wxPrintDialogData &data ); | |
84 | bool ConvertFromNative( wxPrintDialogData &data ); | |
03647350 | 85 | |
93c2f401 RR |
86 | // holds MSW handle |
87 | void* m_printDlg; | |
22f3361e | 88 | |
c061373d | 89 | private: |
c0c133e1 | 90 | wxDECLARE_NO_COPY_CLASS(wxWindowsPrintDialog); |
c061373d | 91 | DECLARE_CLASS(wxWindowsPrintDialog) |
2bda0e17 KB |
92 | }; |
93 | ||
08680429 | 94 | // --------------------------------------------------------------------------- |
03647350 | 95 | // wxWindowsPageSetupDialog: the MSW page setup dialog |
08680429 | 96 | // --------------------------------------------------------------------------- |
2bda0e17 | 97 | |
53a2db12 | 98 | class WXDLLIMPEXP_CORE wxWindowsPageSetupDialog: public wxPageSetupDialogBase |
08680429 | 99 | { |
103aec29 | 100 | public: |
08680429 RR |
101 | wxWindowsPageSetupDialog(); |
102 | wxWindowsPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL); | |
103 | virtual ~wxWindowsPageSetupDialog(); | |
103aec29 | 104 | |
08680429 | 105 | bool Create(wxWindow *parent, wxPageSetupDialogData *data = NULL); |
103aec29 | 106 | virtual int ShowModal(); |
23fba686 JS |
107 | bool ConvertToNative( wxPageSetupDialogData &data ); |
108 | bool ConvertFromNative( wxPageSetupDialogData &data ); | |
2bda0e17 | 109 | |
7193abfb | 110 | virtual wxPageSetupDialogData& GetPageSetupDialogData() { return m_pageSetupData; } |
2bda0e17 | 111 | |
103aec29 | 112 | private: |
08680429 RR |
113 | wxPageSetupDialogData m_pageSetupData; |
114 | wxWindow* m_dialogParent; | |
03647350 | 115 | |
08680429 RR |
116 | // holds MSW handle |
117 | void* m_pageDlg; | |
22f3361e | 118 | |
08680429 RR |
119 | private: |
120 | DECLARE_DYNAMIC_CLASS_NO_COPY(wxWindowsPageSetupDialog) | |
2bda0e17 KB |
121 | }; |
122 | ||
d427503c VZ |
123 | #endif // wxUSE_PRINTING_ARCHITECTURE |
124 | ||
2bda0e17 | 125 | #endif |
bbcdf8bc | 126 | // _WX_PRINTDLG_H_ |