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