X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6038ec8eafaf9bab7adf9af4fcc7a5af61bee00a..23c06cde5df85dbfd94e92e90de225618191153f:/include/wx/generic/prntdlgg.h?ds=inline diff --git a/include/wx/generic/prntdlgg.h b/include/wx/generic/prntdlgg.h index 00848b6e82..41b4da8dd5 100644 --- a/include/wx/generic/prntdlgg.h +++ b/include/wx/generic/prntdlgg.h @@ -6,17 +6,13 @@ // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) +// Copyright: (c) Julian Smart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __PRINTDLGH_G_ #define __PRINTDLGH_G_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "prntdlgg.h" -#endif - #include "wx/defs.h" #if wxUSE_PRINTING_ARCHITECTURE @@ -25,6 +21,7 @@ #include "wx/cmndata.h" #include "wx/prntbase.h" #include "wx/printdlg.h" +#include "wx/listctrl.h" #if wxUSE_POSTSCRIPT #include "wx/dcps.h" @@ -36,14 +33,14 @@ class WXDLLEXPORT wxCheckBox; class WXDLLEXPORT wxComboBox; class WXDLLEXPORT wxStaticText; class WXDLLEXPORT wxRadioBox; -class WXDLLEXPORT wxPrintSetupData; class WXDLLEXPORT wxPageSetupData; // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- -// FIXME why all these enums start with 10 or 30? +// This is not clear why all these enums start with 10 or 30 but do not change it +// without good reason to avoid some subtle backwards compatibility breakage enum { @@ -70,7 +67,8 @@ enum wxPRINTID_ORIENTATION, wxPRINTID_COMMAND, wxPRINTID_OPTIONS, - wxPRINTID_PAPERSIZE + wxPRINTID_PAPERSIZE, + wxPRINTID_PRINTER }; #if wxUSE_POSTSCRIPT @@ -84,12 +82,13 @@ class WXDLLEXPORT wxPostScriptPrintNativeData: public wxPrintNativeDataBase public: wxPostScriptPrintNativeData(); virtual ~wxPostScriptPrintNativeData(); - + virtual bool TransferTo( wxPrintData &data ); virtual bool TransferFrom( const wxPrintData &data ); - - virtual bool Ok() const { return true; } - + + virtual bool Ok() const { return IsOk(); } + virtual bool IsOk() const { return true; } + const wxString& GetPrinterCommand() const { return m_printerCommand; } const wxString& GetPrinterOptions() const { return m_printerOptions; } const wxString& GetPreviewCommand() const { return m_previewCommand; } @@ -127,11 +126,11 @@ private: #if wxUSE_STREAMS wxOutputStream *m_outputStream; #endif - + private: DECLARE_DYNAMIC_CLASS(wxPostScriptPrintNativeData) }; - + // ---------------------------------------------------------------------------- // Simulated Print and Print Setup dialogs for non-Windows platforms (and // Windows using PostScript print/preview) @@ -155,10 +154,8 @@ public: virtual int ShowModal(); -#if wxUSE_POSTSCRIPT wxPrintData& GetPrintData() { return m_printDialogData.GetPrintData(); } -#endif // wxUSE_POSTSCRIPT wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; } wxDC *GetPrintDC(); @@ -190,48 +187,52 @@ public: // There are no configuration options for the dialog, so we // just pass the wxPrintData object (no wxPrintSetupDialogData class needed) wxGenericPrintSetupDialog(wxWindow *parent, wxPrintData* data); - wxGenericPrintSetupDialog(wxWindow *parent, wxPrintSetupData* data); virtual ~wxGenericPrintSetupDialog(); void Init(wxPrintData* data); + void OnPrinter(wxListEvent& event); + virtual bool TransferDataFromWindow(); virtual bool TransferDataToWindow(); virtual wxComboBox *CreatePaperTypeChoice(); public: + wxListCtrl* m_printerListCtrl; wxRadioBox* m_orientationRadioBox; wxTextCtrl* m_printerCommandText; wxTextCtrl* m_printerOptionsText; wxCheckBox* m_colourCheckBox; - wxComboBox* m_paperTypeChoice; + wxComboBox* m_paperTypeChoice; -#if wxUSE_POSTSCRIPT wxPrintData m_printData; wxPrintData& GetPrintData() { return m_printData; } -#endif // wxUSE_POSTSCRIPT + + // After pressing OK, write data here. + wxPrintData* m_targetData; private: + DECLARE_EVENT_TABLE() DECLARE_CLASS(wxGenericPrintSetupDialog) }; #endif // wxUSE_POSTSCRIPT -class WXDLLEXPORT wxGenericPageSetupDialog : public wxDialog +class WXDLLEXPORT wxGenericPageSetupDialog : public wxPageSetupDialogBase { public: wxGenericPageSetupDialog(wxWindow *parent = NULL, - wxPageSetupData* data = NULL); + wxPageSetupDialogData* data = NULL); virtual ~wxGenericPageSetupDialog(); virtual bool TransferDataFromWindow(); virtual bool TransferDataToWindow(); - void OnPrinter(wxCommandEvent& event); + virtual wxPageSetupDialogData& GetPageSetupDialogData(); + void OnPrinter(wxCommandEvent& event); wxComboBox *CreatePaperTypeChoice(int* x, int* y); - wxPageSetupData& GetPageSetupData() { return m_pageData; } public: wxButton* m_printerButton; @@ -242,9 +243,7 @@ public: wxTextCtrl* m_marginBottomText; wxComboBox* m_paperTypeChoice; - static bool m_pageSetupDialogCancelled; - - wxPageSetupData m_pageData; + wxPageSetupDialogData m_pageData; private: DECLARE_EVENT_TABLE() @@ -254,4 +253,4 @@ private: #endif #endif -// __PRINTDLGH_G__ +// __PRINTDLGH_G_