]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/richtext/richtextformatdlg.h
Use explicit wxPGPropertyFlags enum type with wxPGProperty::SetFlag() and similar...
[wxWidgets.git] / interface / wx / richtext / richtextformatdlg.h
index c5d00abc7aad1bd5c863dd3b88a16902da889189..21d215d1ccdb26707ec89698d27e9ca4c91aa20e 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        richtext/richtextformatdlg.h
-// Purpose:     interface of wxRichTextFormattingDialogFactory
+// Purpose:     interface of wxRichTextFormattingDialog*
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Licence:     wxWindows license
@@ -8,19 +8,18 @@
 
 /**
     @class wxRichTextFormattingDialogFactory
-    @headerfile richtextformatdlg.h wx/richtext/richtextformatdlg.h
 
     This class provides pages for wxRichTextFormattingDialog, and allows other
     customization of the dialog.
-    A default instance of this class is provided automatically. If you wish to
-    change the behaviour of the
-    formatting dialog (for example add or replace a page), you may derive from this
-    class,
-    override one or more functions, and call the static function
+
+    A default instance of this class is provided automatically.
+    If you wish to change the behaviour of the formatting dialog (for example add
+    or replace a page), you may derive from this class, override one or more
+    functions, and call the static function
     wxRichTextFormattingDialog::SetFormattingDialogFactory.
 
     @library{wxrichtext}
-    @category{FIXME}
+    @category{richtext}
 */
 class wxRichTextFormattingDialogFactory : public wxObject
 {
@@ -33,7 +32,7 @@ public:
     /**
         Destructor.
     */
-    ~wxRichTextFormattingDialogFactory();
+    virtual ~wxRichTextFormattingDialogFactory();
 
     /**
         Creates the main dialog buttons.
@@ -47,7 +46,7 @@ public:
                                 wxRichTextFormattingDialog* dialog);
 
     /**
-        Creates all pages under the dialog's book control, also calling AddPage.
+        Creates all pages under the dialog's book control, also calling AddPage().
     */
     virtual bool CreatePages(long pages,
                              wxRichTextFormattingDialog* dialog);
@@ -82,25 +81,32 @@ public:
 
 
 
+#define wxRICHTEXT_FORMAT_STYLE_EDITOR      0x0001
+#define wxRICHTEXT_FORMAT_FONT              0x0002
+#define wxRICHTEXT_FORMAT_TABS              0x0004
+#define wxRICHTEXT_FORMAT_BULLETS           0x0008
+#define wxRICHTEXT_FORMAT_INDENTS_SPACING   0x0010
+
 /**
     @class wxRichTextFormattingDialog
-    @headerfile richtextformatdlg.h wx/richtext/richtextformatdlg.h
 
     This dialog allows the user to edit a character and/or paragraph style.
 
-    In the constructor, specify the pages that will be created. Use GetStyle
-    to retrieve the common style for a given range, and then use ApplyStyle
-    to apply the user-selected formatting to a control. For example:
+    In the constructor, specify the pages that will be created.
+    Use wxRichTextFormattingDialog::GetStyle() to retrieve the common style
+    for a given range, and then use wxRichTextFormattingDialog::ApplyStyle()
+    to apply the user-selected formatting to a control.
 
+    For example:
     @code
-    wxRichTextRange range;
+        wxRichTextRange range;
         if (m_richTextCtrl-HasSelection())
             range = m_richTextCtrl-GetSelectionRange();
         else
             range = wxRichTextRange(0, m_richTextCtrl-GetLastPosition()+1);
 
-        int pages =
-    wxRICHTEXT_FORMAT_FONT|wxRICHTEXT_FORMAT_INDENTS_SPACING|wxRICHTEXT_FORMAT_TABS|wxRICHTEXT_FORMAT_BULLETS;
+        int pages = wxRICHTEXT_FORMAT_FONT|wxRICHTEXT_FORMAT_INDENTS_SPACING| \
+                    wxRICHTEXT_FORMAT_TABS|wxRICHTEXT_FORMAT_BULLETS;
 
         wxRichTextFormattingDialog formatDlg(pages, this);
         formatDlg.GetStyle(m_richTextCtrl, range);
@@ -117,80 +123,81 @@ public:
 class wxRichTextFormattingDialog : public wxPropertySheetDialog
 {
 public:
-    //@{
+    /**
+        Default ctor.
+    */
+    wxRichTextFormattingDialog();
+
     /**
         Constructors.
-        
+
         @param flags
             The pages to show.
         @param parent
             The dialog's parent.
-        @param id
-            The dialog's identifier.
         @param title
-            The dialog's caption.
+            The dialog's title.
+        @param id
+            The dialog's ID.
         @param pos
             The dialog's position.
-        @param size
+        @param sz
             The dialog's size.
         @param style
             The dialog's window style.
     */
-    wxRichTextFormattingDialog(long flags, wxWindow* parent);
-    const wxPoint& pos = wxDefaultPosition, const wxSize& sz = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE)
-    wxRichTextFormattingDialog();
-    //@}
+    wxRichTextFormattingDialog(long flags, wxWindow* parent, const wxString& title = "Formatting",
+                               wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition,
+                               const wxSize& sz = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE);
 
     /**
         Destructor.
     */
-    ~wxRichTextFormattingDialog();
+    virtual ~wxRichTextFormattingDialog();
 
     /**
-        Apply attributes to the given range, only changing attributes that need to be
-        changed.
+        Apply attributes to the given range, only changing attributes that
+        need to be changed.
     */
-    bool ApplyStyle(wxRichTextCtrl* ctrl,
-                    const wxRichTextRange& range,
-                    int flags = wxRICHTEXT_SETSTYLE_WITH_UNDO|wxRICHTEXT_SETSTYLE_OPTIMIZE);
+    virtual bool ApplyStyle(wxRichTextCtrl* ctrl, const wxRichTextRange& range,
+                            int flags = wxRICHTEXT_SETSTYLE_WITH_UNDO|wxRICHTEXT_SETSTYLE_OPTIMIZE);
 
     /**
-        Creation: see @ref overview_wxrichtextformattingdialog "the constructor" for
+        Creation: see wxRichTextFormattingDialog() "the constructor" for
         details about the parameters.
     */
-    bool Create(long flags, wxWindow* parent, const wxString& title,
-                wxWindowID id,
-                const wxPoint& pos = wxDefaultPosition,
-                                     const wxSize& sz = wxDefaultSize,
-                                                        long style = wxDEFAULT_DIALOG_STYLE);
+    bool Create(long flags, wxWindow* parent,
+                const wxString& title = wxGetTranslation("Formatting"), wxWindowID id = wxID_ANY,
+                const wxPoint& pos = wxDefaultPosition, const wxSize& sz = wxDefaultSize,
+                long style = wxDEFAULT_DIALOG_STYLE);
 
     //@{
     /**
         Gets the attributes being edited.
     */
-    const wxTextAttr GetAttributes();
-    const wxTextAttr&  GetAttributes();
+    const wxTextAttr& GetAttributes() const;
+    wxTextAttr& GetAttributes();
     //@}
 
     /**
         Helper for pages to get the top-level dialog.
     */
-    wxRichTextFormattingDialog* GetDialog(wxWindow* win);
+    static wxRichTextFormattingDialog* GetDialog(wxWindow* win);
 
     /**
         Helper for pages to get the attributes.
     */
-    wxTextAttr* GetDialogAttributes(wxWindow* win);
+    static wxTextAttr* GetDialogAttributes(wxWindow* win);
 
     /**
         Helper for pages to get the style.
     */
-    wxRichTextStyleDefinition* GetDialogStyleDefinition(wxWindow* win);
+    static wxRichTextStyleDefinition* GetDialogStyleDefinition(wxWindow* win);
 
     /**
         Returns the object to be used to customize the dialog and provide pages.
     */
-    wxRichTextFormattingDialogFactory* GetFormattingDialogFactory();
+    static wxRichTextFormattingDialogFactory* GetFormattingDialogFactory();
 
     /**
         Returns the image list associated with the dialog, used for example if showing
@@ -199,21 +206,21 @@ public:
     wxImageList* GetImageList() const;
 
     /**
-        Gets common attributes from the given range and calls SetAttributes. Attributes
-        that do not have common values in the given range
+        Gets common attributes from the given range and calls SetAttributes().
+        Attributes that do not have common values in the given range
         will be omitted from the style's flags.
     */
-    bool GetStyle(wxRichTextCtrl* ctrl, const wxRichTextRange& range);
+    virtual bool GetStyle(wxRichTextCtrl* ctrl, const wxRichTextRange& range);
 
     /**
         Gets the associated style definition, if any.
     */
-    wxRichTextStyleDefinition* GetStyleDefinition() const;
+    virtual wxRichTextStyleDefinition* GetStyleDefinition() const;
 
     /**
         Gets the associated style sheet, if any.
     */
-    wxRichTextStyleSheet* GetStyleSheet() const;
+    virtual wxRichTextStyleSheet* GetStyleSheet() const;
 
     /**
         Sets the attributes to be edited.
@@ -223,9 +230,10 @@ public:
     /**
         Sets the formatting factory object to be used for customization and page
         creation.
+
         It deletes the existing factory object.
     */
-    void SetFormattingDialogFactory(wxRichTextFormattingDialogFactory* factory);
+    static void SetFormattingDialogFactory(wxRichTextFormattingDialogFactory* factory);
 
     /**
         Sets the image list associated with the dialog's property sheet.
@@ -235,19 +243,19 @@ public:
     /**
         Sets the attributes and optionally updates the display, if @a update is @true.
     */
-    bool SetStyle(const wxTextAttr& style, bool update = true);
+    virtual bool SetStyle(const wxTextAttr& style, bool update = true);
 
     /**
-        Sets the style definition and optionally update the display, if @a update is @c
-        @true.
+        Sets the style definition and optionally update the display,
+        if @a update is @true.
     */
-    bool SetStyleDefinition(const wxRichTextStyleDefinition& styleDef,
-                            wxRichTextStyleSheet* sheet,
-                            bool update = true);
+    virtual bool SetStyleDefinition(const wxRichTextStyleDefinition& styleDef,
+                                    wxRichTextStyleSheet* sheet,
+                                    bool update = true);
 
     /**
         Updates the display.
     */
-    bool UpdateDisplay();
+    virtual bool UpdateDisplay();
 };