]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/print.h
Recognize VC12 (a.k.a. MSVS 2013) and define __VISUALC12__ for it.
[wxWidgets.git] / interface / wx / print.h
index 4713bf32eb80fb136ad9b66126a5489058189d48..ba1f43c81737947d1f9ea02de785b199390d7679 100644 (file)
@@ -6,6 +6,37 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+enum wxPrinterError
+{
+    wxPRINTER_NO_ERROR = 0,
+    wxPRINTER_CANCELLED,
+    wxPRINTER_ERROR
+};
+
+#define wxPREVIEW_PRINT        1
+#define wxPREVIEW_PREVIOUS     2
+#define wxPREVIEW_NEXT         4
+#define wxPREVIEW_ZOOM         8
+#define wxPREVIEW_FIRST       16
+#define wxPREVIEW_LAST        32
+#define wxPREVIEW_GOTO        64
+
+#define wxPREVIEW_DEFAULT  (wxPREVIEW_PREVIOUS|wxPREVIEW_NEXT|wxPREVIEW_ZOOM\
+                            |wxPREVIEW_FIRST|wxPREVIEW_GOTO|wxPREVIEW_LAST)
+
+// Ids for controls
+#define wxID_PREVIEW_CLOSE      1
+#define wxID_PREVIEW_NEXT       2
+#define wxID_PREVIEW_PREVIOUS   3
+#define wxID_PREVIEW_PRINT      4
+#define wxID_PREVIEW_ZOOM       5
+#define wxID_PREVIEW_FIRST      6
+#define wxID_PREVIEW_LAST       7
+#define wxID_PREVIEW_GOTO       8
+#define wxID_PREVIEW_ZOOM_IN    9
+#define wxID_PREVIEW_ZOOM_OUT   10
+
+
 /**
     @class wxPreviewControlBar
 
 /**
     @class wxPreviewControlBar
 
@@ -15,7 +46,7 @@
     You can derive a new class from this and override some or all member functions
     to change the behaviour and appearance; or you can leave it as it is.
 
     You can derive a new class from this and override some or all member functions
     to change the behaviour and appearance; or you can leave it as it is.
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see wxPreviewFrame, wxPreviewCanvas, wxPrintPreview
     @category{printing}
 
     @see wxPreviewFrame, wxPreviewCanvas, wxPrintPreview
@@ -89,7 +120,7 @@ public:
     A preview canvas is the default canvas used by the print preview
     system to display the preview.
 
     A preview canvas is the default canvas used by the print preview
     system to display the preview.
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see wxPreviewFrame, wxPreviewControlBar, wxPrintPreview
     @category{printing}
 
     @see wxPreviewFrame, wxPreviewControlBar, wxPrintPreview
@@ -152,7 +183,7 @@ enum wxPreviewFrameModalityKind
     Member functions may be overridden to replace functionality, or the
     class may be used without derivation.
 
     Member functions may be overridden to replace functionality, or the
     class may be used without derivation.
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see wxPreviewCanvas, wxPreviewControlBar, wxPrintPreview
     @category{printing}
 
     @see wxPreviewCanvas, wxPreviewControlBar, wxPrintPreview
@@ -262,7 +293,7 @@ public:
     affected. It is recommended to use native preview functionality on
     platforms that offer it (OS X, GTK+).
 
     affected. It is recommended to use native preview functionality on
     platforms that offer it (OS X, GTK+).
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPrintout, wxPrinter,
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPrintout, wxPrinter,
@@ -282,8 +313,8 @@ public:
         the preview frame so that the user can print directly from the preview interface.
 
         @remarks
         the preview frame so that the user can print directly from the preview interface.
 
         @remarks
-        Do not explicitly delete the printout objects once this destructor has been
-        called, since they will be deleted in the wxPrintPreview constructor.
+        Do not explicitly delete the printout objects once this constructor has been
+        called, since they will be deleted in the wxPrintPreview destructor.
         The same does not apply to the @a data argument.
 
         Use IsOk() to check whether the wxPrintPreview object was created correctly.
         The same does not apply to the @a data argument.
 
         Use IsOk() to check whether the wxPrintPreview object was created correctly.
@@ -291,6 +322,9 @@ public:
     wxPrintPreview(wxPrintout* printout,
                    wxPrintout* printoutForPrinting = NULL,
                    wxPrintDialogData* data = NULL);
     wxPrintPreview(wxPrintout* printout,
                    wxPrintout* printoutForPrinting = NULL,
                    wxPrintDialogData* data = NULL);
+    wxPrintPreview(wxPrintout* printout,
+                   wxPrintout* printoutForPrinting,
+                   wxPrintData* data);
 
     /**
         Destructor.
 
     /**
         Destructor.
@@ -298,7 +332,7 @@ public:
         Deletes both print preview objects, so do not destroy these objects
         in your application.
     */
         Deletes both print preview objects, so do not destroy these objects
         in your application.
     */
-    ~wxPrinter();
+    ~wxPrintPreview();
 
     /**
         Gets the preview window used for displaying the print preview image.
 
     /**
         Gets the preview window used for displaying the print preview image.
@@ -410,7 +444,7 @@ public:
     but this and associated classes provide a more convenient and general method
     of printing.
 
     but this and associated classes provide a more convenient and general method
     of printing.
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPrintout, wxPrintPreview
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPrintout, wxPrintPreview
@@ -431,7 +465,7 @@ public:
     /**
         Creates the default printing abort window, with a cancel button.
     */
     /**
         Creates the default printing abort window, with a cancel button.
     */
-    virtual wxWindow* CreateAbortWindow(wxWindow* parent, wxPrintout* printout);
+    virtual wxPrintAbortDialog* CreateAbortWindow(wxWindow* parent, wxPrintout* printout);
 
     /**
         Returns @true if the user has aborted the print job.
 
     /**
         Returns @true if the user has aborted the print job.
@@ -528,7 +562,7 @@ public:
     to create the print preview image, and to create the printed paper image, and
     achieve a common appearance to the preview image and the printed page.
 
     to create the print preview image, and to create the printed paper image, and
     achieve a common appearance to the preview image and the printed page.
 
-    @library{wxbase}
+    @library{wxcore}
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPageSetupDialog,
     @category{printing}
 
     @see @ref overview_printing, wxPrinterDC, wxPrintDialog, wxPageSetupDialog,
@@ -641,10 +675,6 @@ public:
         Or you can just use the FitThisSizeToXXX() and MapScreenSizeToXXX routines below,
         which do most of the scaling calculations for you.
 
         Or you can just use the FitThisSizeToXXX() and MapScreenSizeToXXX routines below,
         which do most of the scaling calculations for you.
 
-        @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).
         @beginWxPerlOnly
         In wxPerl this method takes no arguments and returns a
         2-element list (w, h).
@@ -661,10 +691,6 @@ public:
         If you are doing your own scaling, remember to multiply this by a scaling
         factor to take the preview DC size into account.
 
         If you are doing your own scaling, remember to multiply this by a scaling
         factor to take the preview DC size into account.
 
-        @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).
         @beginWxPerlOnly
         In wxPerl this method takes no arguments and returns a
         2-element list (w, h).
@@ -682,12 +708,6 @@ public:
 
         @a minPage must be greater than zero and @a maxPage must be greater
         than @a minPage.
 
         @a minPage must be greater than zero and @a maxPage must be greater
         than @a minPage.
-
-        @beginWxPythonOnly
-        When this method is implemented in a derived Python class, it should be designed
-        to take no parameters (other than the self reference) and to return a tuple of
-        four integers.
-        @endWxPythonOnly
     */
     virtual void GetPageInfo(int* minPage, int* maxPage, int* pageFrom,
                              int* pageTo);
     */
     virtual void GetPageInfo(int* minPage, int* maxPage, int* pageFrom,
                              int* pageTo);
@@ -695,10 +715,6 @@ public:
     /**
         Returns the size of the printer page in millimetres.
 
     /**
         Returns the size of the printer page in millimetres.
 
-        @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).
         @beginWxPerlOnly
         In wxPerl this method takes no arguments and returns a
         2-element list (w, h).
@@ -715,15 +731,6 @@ public:
         previewing, a memory device context is used, which uses a bitmap size reflecting
         the current preview zoom. The application must take this discrepancy into
         account if previewing is to be supported.
         previewing, a memory device context is used, which uses a bitmap size reflecting
         the current preview zoom. The application must take this discrepancy into
         account if previewing is to be supported.
-
-        @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) const;
 
     */
     void GetPageSizePixels(int* w, int* h) const;
 
@@ -846,11 +853,6 @@ public:
         @remarks
         The base OnBeginDocument() must be called (and the return value
         checked) from within the overridden function, since it calls wxDC::StartDoc().
         @remarks
         The base OnBeginDocument() must be called (and the return value
         checked) from within the overridden function, since it calls wxDC::StartDoc().
-
-        @beginWxPythonOnly
-         If this method is overridden in a Python class then the base class version can
-         be called by using the method <tt>base_OnBeginDocument(startPage, endPage)</tt>.
-        @endWxPythonOnly
     */
     virtual bool OnBeginDocument(int startPage, int endPage);
 
     */
     virtual bool OnBeginDocument(int startPage, int endPage);
 
@@ -903,3 +905,23 @@ public:
     void SetLogicalOrigin(wxCoord x, wxCoord y);
 };
 
     void SetLogicalOrigin(wxCoord x, wxCoord y);
 };
 
+
+/**
+   @class wxPrintAbortDialog
+
+   The dialog created by default by the print framework that enables aborting
+   the printing process.
+ */
+class wxPrintAbortDialog: public wxDialog
+{
+public:
+    wxPrintAbortDialog(wxWindow *parent,
+                       const wxString& documentTitle,
+                       const wxPoint& pos = wxDefaultPosition,
+                       const wxSize& size = wxDefaultSize,
+                       long style = wxDEFAULT_DIALOG_STYLE,
+                       const wxString& name = "dialog");
+
+    void SetProgress(int currentPage, int totalPages,
+                     int currentCopy, int totalCopies);
+};