]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/richtext/richtextprint.h
Add new sample project files.
[wxWidgets.git] / interface / wx / richtext / richtextprint.h
index 2c70bdbf5d224bab0aabb8e921e384a1dfba564c..9a6c185c8ce8bb7ab26dd1ca2f0f1b8fad8cdb5d 100644 (file)
@@ -3,32 +3,54 @@
 // Purpose:     interface of wxRichTextHeaderFooterData
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+
+/**
+    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
-    @headerfile richtextprint.h wx/richtext/richtextprint.h
 
 
     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}
@@ -57,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.
@@ -98,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,11 +181,9 @@ public:
 
 /**
     @class wxRichTextPrintout
-    @headerfile richtextprint.h wx/richtext/richtextprint.h
 
-    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}
@@ -172,10 +192,9 @@ class wxRichTextPrintout : public wxPrintout
 {
 public:
     /**
-        )
         Constructor.
     */
-    wxRichTextPrintout();
+    wxRichTextPrintout(const wxString& title = "Printout");
 
     /**
         Calculates scaling and text, header and footer rectangles.
@@ -187,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.
@@ -203,17 +222,17 @@ public:
     /**
         Returns @true if the given page exists in the printout.
     */
-    bool HasPage(int page);
+    virtual bool HasPage(int page);
 
     /**
         Prepares for printing, laying out the buffer and calculating pagination.
     */
-    void OnPreparePrinting();
+    virtual void OnPreparePrinting();
 
     /**
         Does the actual printing for this page.
     */
-    bool OnPrintPage(int page);
+    virtual bool OnPrintPage(int page);
 
     /**
         Sets the header and footer data associated with the printout.
@@ -223,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);
 };
@@ -238,7 +256,6 @@ public:
 
 /**
     @class wxRichTextPrinting
-    @headerfile richtextprint.h wx/richtext/richtextprint.h
 
     This class provides a simple interface for performing wxRichTextBuffer printing
     and previewing. It uses wxRichTextPrintout for layout and rendering.
@@ -250,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;
@@ -267,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;
@@ -282,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.
@@ -300,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.
@@ -308,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,
@@ -356,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,
@@ -366,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);