]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/printdlg.h
Commit wxComboCtrl clipping patch from J. Salli
[wxWidgets.git] / include / wx / msw / printdlg.h
CommitLineData
2bda0e17
KB
1/////////////////////////////////////////////////////////////////////////////
2// Name: printdlg.h
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
2bda0e17 22class WXDLLEXPORT wxDC;
103aec29 23
8850cbd3
RR
24//----------------------------------------------------------------------------
25// wxWindowsPrintNativeData
26//----------------------------------------------------------------------------
27
28class WXDLLEXPORT wxWindowsPrintNativeData: public wxPrintNativeDataBase
29{
30public:
31 wxWindowsPrintNativeData();
32 virtual ~wxWindowsPrintNativeData();
33
fd64de59
RR
34 virtual bool TransferTo( wxPrintData &data );
35 virtual bool TransferFrom( const wxPrintData &data );
8850cbd3
RR
36
37 virtual bool Ok() const;
38
fd64de59
RR
39 void* GetDevMode() const { return m_devMode; }
40 void SetDevMode(void* data) { m_devMode = data; }
41 void* GetDevNames() const { return m_devNames; }
42 void SetDevNames(void* data) { m_devNames = data; }
aa96f01c 43
8850cbd3 44private:
fd64de59
RR
45 void* m_devMode;
46 void* m_devNames;
8850cbd3 47
3168b4c3
JS
48 short m_customWindowsPaperId;
49
8850cbd3
RR
50private:
51 DECLARE_DYNAMIC_CLASS(wxWindowsPrintNativeData)
52};
53
103aec29 54// ---------------------------------------------------------------------------
08680429 55// wxWindowsPrintDialog: the MSW dialog for printing
103aec29
VZ
56// ---------------------------------------------------------------------------
57
c061373d 58class WXDLLEXPORT wxWindowsPrintDialog : public wxPrintDialogBase
2bda0e17 59{
7bcb11d3 60public:
c061373d
RR
61 wxWindowsPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL);
62 wxWindowsPrintDialog(wxWindow *parent, wxPrintData* data);
63 virtual ~wxWindowsPrintDialog();
2bda0e17 64
103aec29
VZ
65 bool Create(wxWindow *parent, wxPrintDialogData* data = NULL);
66 virtual int ShowModal();
2bda0e17 67
103aec29
VZ
68 wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; }
69 wxPrintData& GetPrintData() { return m_printDialogData.GetPrintData(); }
70 virtual wxDC *GetPrintDC();
7bcb11d3 71
93c2f401 72private:
103aec29
VZ
73 wxPrintDialogData m_printDialogData;
74 wxDC* m_printerDC;
75 bool m_destroyDC;
76 wxWindow* m_dialogParent;
93c2f401
RR
77
78private:
79 bool ConvertToNative( wxPrintDialogData &data );
80 bool ConvertFromNative( wxPrintDialogData &data );
81
82 // holds MSW handle
83 void* m_printDlg;
22f3361e 84
c061373d
RR
85private:
86 DECLARE_NO_COPY_CLASS(wxWindowsPrintDialog)
87 DECLARE_CLASS(wxWindowsPrintDialog)
2bda0e17
KB
88};
89
08680429
RR
90// ---------------------------------------------------------------------------
91// wxWindowsPageSetupDialog: the MSW page setup dialog
92// ---------------------------------------------------------------------------
2bda0e17 93
08680429
RR
94class WXDLLEXPORT wxWindowsPageSetupDialog: public wxPageSetupDialogBase
95{
103aec29 96public:
08680429
RR
97 wxWindowsPageSetupDialog();
98 wxWindowsPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL);
99 virtual ~wxWindowsPageSetupDialog();
103aec29 100
08680429 101 bool Create(wxWindow *parent, wxPageSetupDialogData *data = NULL);
103aec29 102 virtual int ShowModal();
23fba686
JS
103 bool ConvertToNative( wxPageSetupDialogData &data );
104 bool ConvertFromNative( wxPageSetupDialogData &data );
2bda0e17 105
08680429 106 virtual wxPageSetupData& GetPageSetupDialogData() { return m_pageSetupData; }
2bda0e17 107
103aec29 108private:
08680429
RR
109 wxPageSetupDialogData m_pageSetupData;
110 wxWindow* m_dialogParent;
111
112 // holds MSW handle
113 void* m_pageDlg;
22f3361e 114
08680429
RR
115private:
116 DECLARE_DYNAMIC_CLASS_NO_COPY(wxWindowsPageSetupDialog)
2bda0e17
KB
117};
118
d427503c
VZ
119#endif // wxUSE_PRINTING_ARCHITECTURE
120
2bda0e17 121#endif
bbcdf8bc 122 // _WX_PRINTDLG_H_