X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..7ca106e860dd06773f1b1d286cccfeb69d78468e:/interface/wx/print.h diff --git a/interface/wx/print.h b/interface/wx/print.h index 8ad4c4512b..343dbb5b81 100644 --- a/interface/wx/print.h +++ b/interface/wx/print.h @@ -8,7 +8,6 @@ /** @class wxPreviewControlBar - @wxheader{print.h} This is the default implementation of the preview control bar, a panel with buttons and a zoom control. @@ -56,29 +55,29 @@ public: /** Destructor. */ - ~wxPreviewControlBar(); + virtual ~wxPreviewControlBar(); /** Creates buttons, according to value of the button style flags. @todo which flags?? */ - void CreateButtons(); + virtual void CreateButtons(); /** Gets the print preview object associated with the control bar. */ - wxPrintPreview* GetPrintPreview(); + virtual wxPrintPreviewBase* GetPrintPreview() const; /** Gets the current zoom setting in percent. */ - int GetZoomControl(); + virtual int GetZoomControl(); /** Sets the zoom control. */ - void SetZoomControl(int percent); + virtual void SetZoomControl(int percent); }; @@ -86,7 +85,6 @@ public: /** @class wxPreviewCanvas - @wxheader{print.h} A preview canvas is the default canvas used by the print preview system to display the preview. @@ -111,7 +109,7 @@ public: /** Destructor. */ - ~wxPreviewCanvas(); + virtual ~wxPreviewCanvas(); /** Calls wxPrintPreview::PaintPage() to refresh the canvas. @@ -123,7 +121,6 @@ public: /** @class wxPreviewFrame - @wxheader{print.h} This class provides the default method of managing the print preview interface. Member functions may be overridden to replace functionality, or the @@ -143,17 +140,17 @@ public: Pass a print preview object plus other normal frame arguments. The print preview object will be destroyed by the frame when it closes. */ - wxPreviewFrame(wxPrintPreview* preview, wxWindow* parent, - const wxString& title, + wxPreviewFrame(wxPrintPreviewBase* preview, wxWindow* parent, + const wxString& title = "Print Preview", const wxPoint& pos = wxDefaultPosition, - const wxSize& size size = wxDefaultSize, + const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - const wxString& name = "frame"); + const wxString& name = wxFrameNameStr); /** Destructor. */ - ~wxPreviewFrame(); + virtual ~wxPreviewFrame(); /** Creates a wxPreviewCanvas. @@ -161,7 +158,7 @@ public: Override this function to allow a user-defined preview canvas object to be created. */ - void CreateCanvas(); + virtual void CreateCanvas(); /** Creates a wxPreviewControlBar. @@ -169,7 +166,7 @@ public: Override this function to allow a user-defined preview control bar object to be created. */ - void CreateControlBar(); + virtual void CreateControlBar(); /** Creates the preview canvas and control bar, and calls wxWindow::MakeModal(@true) @@ -177,7 +174,7 @@ public: This function should be called by the application prior to showing the frame. */ - void Initialize(); + virtual void Initialize(); /** Enables the other frames in the application, and deletes the print preview @@ -191,7 +188,6 @@ public: /** @class wxPrintPreview - @wxheader{print.h} Objects of this class manage the print preview process. The object is passed a wxPrintout object, and the wxPrintPreview object itself is passed to @@ -235,8 +231,8 @@ public: Use IsOk() to check whether the wxPrintPreview object was created correctly. */ wxPrintPreview(wxPrintout* printout, - wxPrintout* printoutForPrinting, - wxPrintData* data = NULL); + wxPrintout* printoutForPrinting = NULL, + wxPrintDialogData* data = NULL); /** Destructor. @@ -249,40 +245,40 @@ public: /** Gets the preview window used for displaying the print preview image. */ - wxPreviewCanvas* GetCanvas(); + virtual wxPreviewCanvas* GetCanvas() const; /** Gets the page currently being previewed. */ - int GetCurrentPage(); + virtual int GetCurrentPage() const; /** Gets the frame used for displaying the print preview canvas and control bar. */ - wxFrame* GetFrame(); + virtual wxFrame* GetFrame() const; /** Returns the maximum page number. */ - int GetMaxPage(); + virtual int GetMaxPage() const; /** Returns the minimum page number. */ - int GetMinPage(); + virtual int GetMinPage() const; /** Gets the preview printout object associated with the wxPrintPreview object. */ - wxPrintout* GetPrintout(); + virtual wxPrintout* GetPrintout() const; /** Gets the printout object to be used for printing from within the preview interface, or @NULL if none exists. */ - wxPrintout* GetPrintoutForPrinting(); + virtual wxPrintout* GetPrintoutForPrinting() const; /** Returns @true if the wxPrintPreview is valid, @false otherwise. @@ -290,7 +286,7 @@ public: It could return @false if there was a problem initializing the printer device context (current printer not set, for example). */ - bool IsOk(); + virtual bool IsOk() const; /** This refreshes the preview window with the preview image. @@ -299,7 +295,7 @@ public: The implementation simply blits the preview bitmap onto the canvas, creating a new preview bitmap if none exists. */ - bool PaintPage(wxPreviewCanvas* canvas, wxDC dc); + virtual bool PaintPage(wxPreviewCanvas* canvas, wxDC& dc); /** Invokes the print process using the second wxPrintout object @@ -310,45 +306,44 @@ public: Returns @false in case of error -- call wxPrinter::GetLastError() to get detailed information about the kind of the error. */ - bool Print(bool prompt); + virtual bool Print(bool prompt); /** Renders a page into a wxMemoryDC. Used internally by wxPrintPreview. */ - bool RenderPage(int pageNum); + virtual bool RenderPage(int pageNum); /** Sets the window to be used for displaying the print preview image. */ - void SetCanvas(wxPreviewCanvas* window); + virtual void SetCanvas(wxPreviewCanvas* window); /** Sets the current page to be previewed. */ - void SetCurrentPage(int pageNum); + virtual bool SetCurrentPage(int pageNum); /** Sets the frame to be used for displaying the print preview canvas and control bar. */ - void SetFrame(wxFrame* frame); + virtual void SetFrame(wxFrame* frame); /** Associates a printout object with the wxPrintPreview object. */ - void SetPrintout(wxPrintout* printout); + virtual void SetPrintout(wxPrintout* printout); /** Sets the percentage preview zoom, and refreshes the preview canvas accordingly. */ - void SetZoom(int percent); + virtual void SetZoom(int percent); }; /** @class wxPrinter - @wxheader{print.h} This class represents the Windows or PostScript printer, and is the vehicle through which printing may be launched by an application. @@ -378,12 +373,12 @@ public: /** Creates the default printing abort window, with a cancel button. */ - void CreateAbortWindow(wxWindow* parent, wxPrintout* printout); + virtual wxWindow* CreateAbortWindow(wxWindow* parent, wxPrintout* printout); /** Returns @true if the user has aborted the print job. */ - bool GetAbort(); + bool GetAbort() const; /** Return last error. Valid after calling Print(), PrintDialog() or @@ -405,7 +400,7 @@ public: Returns the @ref overview_printing_printdata "print data" associated with the printer object. */ - wxPrintDialogData& GetPrintDialogData(); + virtual wxPrintDialogData& GetPrintDialogData() const; /** Starts the printing process. Provide a parent window, a user-defined wxPrintout @@ -416,8 +411,8 @@ public: context (current printer not set, for example) or the user cancelled printing. Call GetLastError() to get detailed information about the kind of the error. */ - bool Print(wxWindow* parent, wxPrintout* printout, - bool prompt = true); + virtual bool Print(wxWindow* parent, wxPrintout* printout, + bool prompt = true); /** Invokes the print dialog. @@ -429,13 +424,13 @@ public: @remarks The application must delete this device context to avoid a memory leak. */ - wxDC* PrintDialog(wxWindow* parent); + virtual wxDC* PrintDialog(wxWindow* parent); /** Default error-reporting function. */ - void ReportError(wxWindow* parent, wxPrintout* printout, - const wxString& message); + virtual void ReportError(wxWindow* parent, wxPrintout* printout, + const wxString& message); /** Invokes the print setup dialog. @@ -444,14 +439,13 @@ public: The setup dialog is obsolete from Windows 95, though retained for backward compatibility. */ - bool Setup(wxWindow* parent); + virtual bool Setup(wxWindow* parent); }; /** @class wxPrintout - @wxheader{print.h} This class encapsulates the functionality of printing out an application document. @@ -496,7 +490,7 @@ public: /** Destructor. */ - ~wxPrintout(); + virtual ~wxPrintout(); /** Set the user scale and device origin of the wxDC associated with this wxPrintout @@ -550,7 +544,7 @@ public: This will be a wxPrinterDC if printing under Windows or Mac, a wxPostScriptDC if printing on other platforms, and a wxMemoryDC if previewing. */ - wxDC* GetDC(); + wxDC* GetDC() const; /** Return the rectangle corresponding to the page margins specified by the given @@ -560,7 +554,7 @@ public: The page margins are specified with respect to the edges of the paper on all platforms. */ - wxRect GetLogicalPageMarginsRect(const wxPageSetupDialogData& pageSetupData); + wxRect GetLogicalPageMarginsRect(const wxPageSetupDialogData& pageSetupData) const; /** Return the rectangle corresponding to the page in the associated wxDC 's @@ -570,13 +564,13 @@ public: On other platforms and PostScript printing, this will be the full paper rectangle. */ - wxRect GetLogicalPageRect(); + wxRect GetLogicalPageRect() const; /** Return the rectangle corresponding to the paper in the associated wxDC 's logical coordinates for the current user scale and device origin. */ - wxRect GetLogicalPaperRect(); + wxRect GetLogicalPaperRect() const; /** Returns the number of pixels per logical inch of the printer device context. @@ -592,8 +586,13 @@ public: @beginWxPythonOnly This method returns the output-only parameters as a tuple. @endWxPythonOnly + + @beginWxPerlOnly + In wxPerl this method takes no arguments and returns a + 2-element list (w, h). + @endWxPerlOnly */ - void GetPPIPrinter(int* w, int* h); + void GetPPIPrinter(int* w, int* h) const; /** Returns the number of pixels per logical inch of the screen device context. @@ -607,8 +606,13 @@ public: @beginWxPythonOnly This method returns the output-only parameters as a tuple. @endWxPythonOnly + + @beginWxPerlOnly + In wxPerl this method takes no arguments and returns a + 2-element list (w, h). + @endWxPerlOnly */ - void GetPPIScreen(int* w, int* h); + void GetPPIScreen(int* w, int* h) const; /** Called by the framework to obtain information from the application about minimum @@ -627,8 +631,8 @@ public: four integers. @endWxPythonOnly */ - void GetPageInfo(int* minPage, int* maxPage, int* pageFrom, - int* pageTo); + virtual void GetPageInfo(int* minPage, int* maxPage, int* pageFrom, + int* pageTo); /** Returns the size of the printer page in millimetres. @@ -636,8 +640,13 @@ public: @beginWxPythonOnly This method returns the output-only parameters as a tuple. @endWxPythonOnly + + @beginWxPerlOnly + In wxPerl this method takes no arguments and returns a + 2-element list (w, h). + @endWxPerlOnly */ - void GetPageSizeMM(int* w, int* h); + void GetPageSizeMM(int* w, int* h) const; /** Returns the size of the printer page in pixels, called the page rectangle. @@ -652,8 +661,13 @@ public: @beginWxPythonOnly This method returns the output-only parameters as a tuple. @endWxPythonOnly + + @beginWxPerlOnly + In wxPerl this method takes no arguments and returns a + 2-element list (w, h). + @endWxPerlOnly */ - void GetPageSizePixels(int* w, int* h); + void GetPageSizePixels(int* w, int* h) const; /** Returns the rectangle that corresponds to the entire paper in pixels, called the @@ -674,14 +688,14 @@ public: area were printable, so this function will return the same rectangle as the page rectangle. */ - wxRect GetPaperRectPixels(); + wxRect GetPaperRectPixels() const; /** Returns the title of the printout. @todo the python note here was wrong */ - wxString GetTitle(); + virtual wxString GetTitle() const; /** Should be overridden to return @true if the document has this page, or @false @@ -690,12 +704,12 @@ public: Returning @false signifies the end of the document. By default, HasPage behaves as if the document has only one page. */ - bool HasPage(int pageNum); + virtual bool HasPage(int pageNum); /** Returns @true if the printout is currently being used for previewing. */ - bool IsPreview(); + virtual bool IsPreview() const; /** Set the user scale and device origin of the wxDC associated with this wxPrintout @@ -763,7 +777,7 @@ public: be called by using the method base_OnBeginDocument(startPage, endPage). @endWxPythonOnly */ - bool OnBeginDocument(int startPage, int endPage); + virtual bool OnBeginDocument(int startPage, int endPage); /** Called by the framework at the start of printing. @@ -771,7 +785,7 @@ public: OnBeginPrinting() is called once for every print job (regardless of how many copies are being printed). */ - void OnBeginPrinting(); + virtual void OnBeginPrinting(); /** Called by the framework at the end of document printing. @@ -782,7 +796,7 @@ public: The base OnEndDocument() must be called from within the overridden function, since it calls wxDC::EndDoc(). */ - void OnEndDocument(); + virtual void OnEndDocument(); /** Called by the framework at the end of printing. @@ -790,7 +804,7 @@ public: OnEndPrinting is called once for every print job (regardless of how many copies are being printed). */ - void OnEndPrinting(); + virtual void OnEndPrinting(); /** Called once by the framework before any other demands are made of the @@ -799,13 +813,13 @@ public: This gives the object an opportunity to calculate the number of pages in the document, for example. */ - void OnPreparePrinting(); + virtual void OnPreparePrinting(); /** Called by the framework when a page should be printed. Returning @false cancels the print job. */ - bool OnPrintPage(int pageNum); + virtual bool OnPrintPage(int pageNum) = 0; /** Set the device origin of the associated wxDC so that the current logical point