📄 prntdlgg.h
字号:
/////////////////////////////////////////////////////////////////////////////// Name: prntdlgg.h// Purpose: wxGenericPrintDialog, wxGenericPrintSetupDialog,// wxGenericPageSetupDialog// Author: Julian Smart// Modified by:// Created: 01/02/97// RCS-ID: $Id: prntdlgg.h,v 1.30 2006/10/08 21:55:26 VZ Exp $// Copyright: (c) Julian Smart// Licence: wxWindows licence/////////////////////////////////////////////////////////////////////////////#ifndef __PRINTDLGH_G_#define __PRINTDLGH_G_#include "wx/defs.h"#if wxUSE_PRINTING_ARCHITECTURE#include "wx/dialog.h"#include "wx/cmndata.h"#include "wx/prntbase.h"#include "wx/printdlg.h"#include "wx/listctrl.h"#if wxUSE_POSTSCRIPT #include "wx/dcps.h"#endifclass WXDLLEXPORT wxTextCtrl;class WXDLLEXPORT wxButton;class WXDLLEXPORT wxCheckBox;class WXDLLEXPORT wxComboBox;class WXDLLEXPORT wxStaticText;class WXDLLEXPORT wxRadioBox;class WXDLLEXPORT wxPageSetupData;// ----------------------------------------------------------------------------// constants// ----------------------------------------------------------------------------// 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 breakageenum{ wxPRINTID_STATIC = 10, wxPRINTID_RANGE, wxPRINTID_FROM, wxPRINTID_TO, wxPRINTID_COPIES, wxPRINTID_PRINTTOFILE, wxPRINTID_SETUP};enum{ wxPRINTID_LEFTMARGIN = 30, wxPRINTID_RIGHTMARGIN, wxPRINTID_TOPMARGIN, wxPRINTID_BOTTOMMARGIN};enum{ wxPRINTID_PRINTCOLOUR = 10, wxPRINTID_ORIENTATION, wxPRINTID_COMMAND, wxPRINTID_OPTIONS, wxPRINTID_PAPERSIZE, wxPRINTID_PRINTER};#if wxUSE_POSTSCRIPT//----------------------------------------------------------------------------// wxPostScriptNativeData//----------------------------------------------------------------------------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 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; } const wxString& GetFontMetricPath() const { return m_afmPath; } double GetPrinterScaleX() const { return m_printerScaleX; } double GetPrinterScaleY() const { return m_printerScaleY; } long GetPrinterTranslateX() const { return m_printerTranslateX; } long GetPrinterTranslateY() const { return m_printerTranslateY; } void SetPrinterCommand(const wxString& command) { m_printerCommand = command; } void SetPrinterOptions(const wxString& options) { m_printerOptions = options; } void SetPreviewCommand(const wxString& command) { m_previewCommand = command; } void SetFontMetricPath(const wxString& path) { m_afmPath = path; } void SetPrinterScaleX(double x) { m_printerScaleX = x; } void SetPrinterScaleY(double y) { m_printerScaleY = y; } void SetPrinterScaling(double x, double y) { m_printerScaleX = x; m_printerScaleY = y; } void SetPrinterTranslateX(long x) { m_printerTranslateX = x; } void SetPrinterTranslateY(long y) { m_printerTranslateY = y; } void SetPrinterTranslation(long x, long y) { m_printerTranslateX = x; m_printerTranslateY = y; }#if wxUSE_STREAMS wxOutputStream *GetOutputStream() { return m_outputStream; } void SetOutputStream( wxOutputStream *output ) { m_outputStream = output; }#endifprivate: wxString m_printerCommand; wxString m_previewCommand; wxString m_printerOptions; wxString m_afmPath; double m_printerScaleX; double m_printerScaleY; long m_printerTranslateX; long m_printerTranslateY;#if wxUSE_STREAMS wxOutputStream *m_outputStream;#endifprivate: DECLARE_DYNAMIC_CLASS(wxPostScriptPrintNativeData)};// ----------------------------------------------------------------------------// Simulated Print and Print Setup dialogs for non-Windows platforms (and// Windows using PostScript print/preview)// ----------------------------------------------------------------------------class WXDLLEXPORT wxGenericPrintDialog : public wxPrintDialogBase{public: wxGenericPrintDialog(wxWindow *parent, wxPrintDialogData* data = (wxPrintDialogData*)NULL); wxGenericPrintDialog(wxWindow *parent, wxPrintData* data); virtual ~wxGenericPrintDialog(); void OnSetup(wxCommandEvent& event); void OnRange(wxCommandEvent& event); void OnOK(wxCommandEvent& event); virtual bool TransferDataFromWindow(); virtual bool TransferDataToWindow(); virtual int ShowModal(); wxPrintData& GetPrintData() { return m_printDialogData.GetPrintData(); } wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; } wxDC *GetPrintDC();public:// wxStaticText* m_printerMessage; wxButton* m_setupButton;// wxButton* m_helpButton; wxRadioBox* m_rangeRadioBox; wxTextCtrl* m_fromText; wxTextCtrl* m_toText; wxTextCtrl* m_noCopiesText; wxCheckBox* m_printToFileCheckBox;// wxCheckBox* m_collateCopiesCheckBox; wxPrintDialogData m_printDialogData;protected: void Init(wxWindow *parent);private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxGenericPrintDialog)};class WXDLLEXPORT wxGenericPrintSetupDialog : public wxDialog{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); 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; wxPrintData m_printData; wxPrintData& GetPrintData() { return m_printData; } // After pressing OK, write data here. wxPrintData* m_targetData;private: DECLARE_EVENT_TABLE() DECLARE_CLASS(wxGenericPrintSetupDialog)};#endif // wxUSE_POSTSCRIPTclass WXDLLEXPORT wxGenericPageSetupDialog : public wxPageSetupDialogBase{public: wxGenericPageSetupDialog(wxWindow *parent = NULL, wxPageSetupDialogData* data = NULL); virtual ~wxGenericPageSetupDialog(); virtual bool TransferDataFromWindow(); virtual bool TransferDataToWindow(); virtual wxPageSetupDialogData& GetPageSetupDialogData(); void OnPrinter(wxCommandEvent& event); wxComboBox *CreatePaperTypeChoice(int* x, int* y);public: wxButton* m_printerButton; wxRadioBox* m_orientationRadioBox; wxTextCtrl* m_marginLeftText; wxTextCtrl* m_marginTopText; wxTextCtrl* m_marginRightText; wxTextCtrl* m_marginBottomText; wxComboBox* m_paperTypeChoice; wxPageSetupDialogData m_pageData;private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS_NO_COPY(wxGenericPageSetupDialog)};#endif#endif// __PRINTDLGH_G_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -