]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/richtext/richtextprint.h
Implement wx-prefixed macros versions of DECLARE/IMPLEMENT*CLASS macros.
[wxWidgets.git] / interface / wx / richtext / richtextprint.h
index df41065a0ea13850c6f1bc548f114b77c9e50303..6344debdd4d875c5a298e063c901a27a7196617a 100644 (file)
@@ -6,28 +6,51 @@
 // Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
+
+/**
+    These are the header and footer page identifiers, passed to functions such
+    as wxRichTextHeaderFooterData::SetFooterText to specify the odd or even page
+    for the text.
+*/
+enum wxRichTextOddEvenPage {
+    wxRICHTEXT_PAGE_ODD,
+    wxRICHTEXT_PAGE_EVEN,
+    wxRICHTEXT_PAGE_ALL,
+};
+
+
+/**
+    These are the location identifiers for passing to functions such as
+    wxRichTextHeaderFooterData::SetFooterText(), to specify whether the text
+    is on the left, centre or right of the page.
+*/
+enum wxRichTextPageLocation {
+    wxRICHTEXT_PAGE_LEFT,
+    wxRICHTEXT_PAGE_CENTRE,
+    wxRICHTEXT_PAGE_RIGHT
+};
+
+
 /**
     @class wxRichTextHeaderFooterData
 
 
     This class represents header and footer data to be passed to the
-    wxRichTextPrinting and
-    wxRichTextPrintout classes.
+    wxRichTextPrinting and wxRichTextPrintout classes.
 
     Headers and footers can be specified independently for odd, even or both page
-    sides. Different text can be specified
-    for left, centre and right locations on the page, and the font and text colour
-    can also
-    be specified. You can specify the following keywords in header and footer text,
-    which will
+    sides. Different text can be specified for left, centre and right locations
+    on the page, and the font and text colour can also be specified.
+
+    You can specify the following keywords in header and footer text, which will
     be substituted for the actual values during printing and preview.
 
-     @@DATE@: the current date.
-     @@PAGESCNT@: the total number of pages.
-     @@PAGENUM@: the current page number.
-     @@TIME@: the current time.
-     @@TITLE@: the title of the document, as passed to the wxRichTextPrinting or
-    wxRichTextLayout constructor.
+    - @@DATE@: the current date.
+    - @@PAGESCNT@: the total number of pages.
+    - @@PAGENUM@: the current page number.
+    - @@TIME@: the current time.
+    - @@TITLE@: the title of the document, as passed to the wxRichTextPrinting or
+      wxRichTextLayout constructor.
 
     @library{wxrichtext}
     @category{richtext}
@@ -56,7 +79,7 @@ public:
     /**
         Returns the font specified for printing the header and footer.
     */
-    const wxFont GetFont() const;
+    const wxFont& GetFont() const;
 
     /**
         Returns the margin between the text and the footer.
@@ -97,7 +120,7 @@ public:
     /**
         Returns the text colour for drawing the header and footer.
     */
-    const wxColour GetTextColour() const;
+    const wxColour& GetTextColour() const;
 
     /**
         Initialises the object.
@@ -159,9 +182,8 @@ public:
 /**
     @class wxRichTextPrintout
 
-    This class implements print layout for wxRichTextBuffer. Instead of using it
-    directly, you
-    should normally use the wxRichTextPrinting class.
+    This class implements print layout for wxRichTextBuffer.
+    Instead of using it directly, you should normally use the wxRichTextPrinting class.
 
     @library{wxrichtext}
     @category{richtext}
@@ -170,10 +192,9 @@ class wxRichTextPrintout : public wxPrintout
 {
 public:
     /**
-        )
         Constructor.
     */
-    wxRichTextPrintout();
+    wxRichTextPrintout(const wxString& title = "Printout");
 
     /**
         Calculates scaling and text, header and footer rectangles.
@@ -185,13 +206,13 @@ public:
     /**
         Returns the header and footer data associated with the printout.
     */
-    const wxRichTextHeaderFooterData GetHeaderFooterData() const;
+    const wxRichTextHeaderFooterData& GetHeaderFooterData() const;
 
     /**
         Gets the page information.
     */
-    void GetPageInfo(int* minPage, int* maxPage, int* selPageFrom,
-                     int* selPageTo);
+    virtual void GetPageInfo(int* minPage, int* maxPage, int* selPageFrom,
+                             int* selPageTo);
 
     /**
         Returns a pointer to the buffer being rendered.
@@ -221,13 +242,12 @@ public:
     /**
         Sets margins in 10ths of millimetre. Defaults to 1 inch for margins.
     */
-    void SetMargins(int top = 252, int bottom = 252, int left = 252,
-                    int right = 252);
+    void SetMargins(int top = 254, int bottom = 254, int left = 254,
+                    int right = 254);
 
     /**
-        Sets the buffer to print. wxRichTextPrintout does not manage this pointer; it
-        should
-        be managed by the calling code, such as wxRichTextPrinting.
+        Sets the buffer to print. wxRichTextPrintout does not manage this pointer;
+        it should be managed by the calling code, such as wxRichTextPrinting.
     */
     void SetRichTextBuffer(wxRichTextBuffer* buffer);
 };
@@ -247,16 +267,17 @@ class wxRichTextPrinting : public wxObject
 {
 public:
     /**
-        , @b wxWindow*@e parentWindow = @NULL)
-        Constructor. Optionally pass a title to be used in the preview frame and
-        printing wait dialog, and
-        also a parent window for these windows.
+        Constructor.
+
+        Optionally pass a title to be used in the preview frame and printing wait
+        dialog, and also a parent window for these windows.
     */
-    wxRichTextPrinting();
+    wxRichTextPrinting(const wxString& name = "Printing",
+                       wxWindow* parentWindow = NULL);
 
     /**
-        A convenience function to get the footer text. See wxRichTextHeaderFooterData
-        for details.
+        A convenience function to get the footer text.
+        See wxRichTextHeaderFooterData for details.
     */
     wxString GetFooterText(wxRichTextOddEvenPage page = wxRICHTEXT_PAGE_EVEN,
                            wxRichTextPageLocation location = wxRICHTEXT_PAGE_CENTRE) const;
@@ -264,11 +285,11 @@ public:
     /**
         Returns the internal wxRichTextHeaderFooterData object.
     */
-    const wxRichTextHeaderFooterData GetHeaderFooterData() const;
+    const wxRichTextHeaderFooterData& GetHeaderFooterData() const;
 
     /**
-        A convenience function to get the header text. See wxRichTextHeaderFooterData
-        for details.
+        A convenience function to get the header text.
+        See wxRichTextHeaderFooterData for details.
     */
     wxString GetHeaderText(wxRichTextOddEvenPage page = wxRICHTEXT_PAGE_EVEN,
                            wxRichTextPageLocation location = wxRICHTEXT_PAGE_CENTRE) const;
@@ -279,15 +300,15 @@ public:
     wxPageSetupDialogData* GetPageSetupData();
 
     /**
-        Returns the parent window to be used for the preview window and printing wait
-        dialog.
+        Returns the parent window to be used for the preview window and printing
+        wait dialog.
     */
     wxWindow* GetParentWindow() const;
 
     /**
         Returns the dimensions to be used for the preview window.
     */
-    const wxRect GetPreviewRect() const;
+    const wxRect& GetPreviewRect() const;
 
     /**
         Returns a pointer to the internal print data.
@@ -297,7 +318,7 @@ public:
     /**
         Returns the title of the preview window or printing wait caption.
     */
-    const wxString GetTitle() const;
+    const wxString& GetTitle() const;
 
     /**
         Shows the page setup dialog.
@@ -305,33 +326,33 @@ public:
     void PageSetup();
 
     /**
-        Shows a preview window for the given buffer. The function takes its own copy of
-        @e buffer.
+        Shows a preview window for the given buffer.
+        The function takes its own copy of @a buffer.
     */
     bool PreviewBuffer(const wxRichTextBuffer& buffer);
 
     /**
-        Shows a preview window for the given file. @a richTextFile can be a text file
-        or XML file, or other file
+        Shows a preview window for the given file.
+
+        @a richTextFile can be a text file or XML file, or other file
         depending on the available file handlers.
     */
     bool PreviewFile(const wxString& richTextFile);
 
     /**
-        Prints the given buffer. The function takes its own copy of @e buffer.
+        Prints the given buffer. The function takes its own copy of @a buffer.
     */
     bool PrintBuffer(const wxRichTextBuffer& buffer);
 
     /**
-        Prints the given file. @a richTextFile can be a text file or XML file, or other
-        file
-        depending on the available file handlers.
+        Prints the given file. @a richTextFile can be a text file or XML file,
+        or other file depending on the available file handlers.
     */
     bool PrintFile(const wxString& richTextFile);
 
     /**
-        A convenience function to set the footer text. See wxRichTextHeaderFooterData
-        for details.
+        A convenience function to set the footer text.
+        See wxRichTextHeaderFooterData for details.
     */
     void SetFooterText(const wxString& text,
                        wxRichTextOddEvenPage page = wxRICHTEXT_PAGE_ALL,
@@ -353,8 +374,8 @@ public:
     void SetHeaderFooterTextColour(const wxColour& colour);
 
     /**
-        A convenience function to set the header text. See wxRichTextHeaderFooterData
-        for details.
+        A convenience function to set the header text.
+        See wxRichTextHeaderFooterData for details.
     */
     void SetHeaderText(const wxString& text,
                        wxRichTextOddEvenPage page = wxRICHTEXT_PAGE_ALL,
@@ -363,11 +384,11 @@ public:
     /**
         Sets the page setup data.
     */
-    void SetPageSetupData(const wxPageSetupData& pageSetupData);
+    void SetPageSetupData(const wxPageSetupDialogData& pageSetupData);
 
     /**
-        Sets the parent window to be used for the preview window and printing wait
-        dialog.
+        Sets the parent window to be used for the preview window and printing
+        wait dialog.
     */
     void SetParentWindow(wxWindow* parent);