]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/richtext/richtextstyles.h
Disable test for setting the creation time under Unix.
[wxWidgets.git] / interface / wx / richtext / richtextstyles.h
index 23cba9b4a752cee4a30897a6cc7132b71c94961b..6ac41a0b4d726cec942e907d9a451b58d5eb6a33 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxRichTextStyleListCtrl
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Purpose:     interface of wxRichTextStyleListCtrl
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
 /////////////////////////////////////////////////////////////////////////////
 
 /**
@@ -134,31 +134,31 @@ public:
     /**
         Returns the style on which this style is based.
     */
     /**
         Returns the style on which this style is based.
     */
-    const wxString GetBaseStyle() const;
+    const wxString& GetBaseStyle() const;
 
     /**
         Returns the style's description.
     */
 
     /**
         Returns the style's description.
     */
-    const wxString GetDescription() const;
+    const wxString& GetDescription() const;
 
     /**
         Returns the style name.
     */
 
     /**
         Returns the style name.
     */
-    const wxString GetName() const;
+    const wxString& GetName() const;
 
     //@{
     /**
         Returns the attributes associated with this style.
     */
 
     //@{
     /**
         Returns the attributes associated with this style.
     */
-    wxTextAttr GetStyle() const;
-    const wxTextAttr GetStyle() const;
+    wxRichTextAttr GetStyle() const;
+    const wxRichTextAttr GetStyle() const;
     //@}
 
     /**
         Returns the style attributes combined with the attributes of the specified base
         style, if any. This function works recursively.
     */
     //@}
 
     /**
         Returns the style attributes combined with the attributes of the specified base
         style, if any. This function works recursively.
     */
-    wxTextAttr GetStyleMergedWithBase(wxRichTextStyleSheet* sheet) const;
+    virtual wxRichTextAttr GetStyleMergedWithBase(const wxRichTextStyleSheet* sheet) const;
 
     /**
         Sets the name of the style that this style is based on.
 
     /**
         Sets the name of the style that this style is based on.
@@ -178,7 +178,22 @@ public:
     /**
         Sets the attributes for this style.
     */
     /**
         Sets the attributes for this style.
     */
-    void SetStyle(const wxTextAttr& style);
+    void SetStyle(const wxRichTextAttr& style);
+
+    /**
+        Returns the definition's properties.
+    */
+    wxRichTextProperties& GetProperties();
+
+    /**
+        Returns the definition's properties.
+    */
+    const wxRichTextProperties& GetProperties() const;
+
+    /**
+        Sets the definition's properties.
+    */
+    void SetProperties(const wxRichTextProperties& props);
 };
 
 
 };
 
 
@@ -208,7 +223,7 @@ public:
     /**
         Returns the style that should normally follow this style.
     */
     /**
         Returns the style that should normally follow this style.
     */
-    const wxString GetNextStyle() const;
+    const wxString& GetNextStyle() const;
 
     /**
         Sets the style that should normally follow this style.
 
     /**
         Sets the style that should normally follow this style.
@@ -234,6 +249,17 @@ public:
 class wxRichTextStyleListBox : public wxHtmlListBox
 {
 public:
 class wxRichTextStyleListBox : public wxHtmlListBox
 {
 public:
+
+    /// Which type of style definition is currently showing?
+    enum wxRichTextStyleType
+    {
+        wxRICHTEXT_STYLE_ALL,
+        wxRICHTEXT_STYLE_PARAGRAPH,
+        wxRICHTEXT_STYLE_CHARACTER,
+        wxRICHTEXT_STYLE_LIST,
+        wxRICHTEXT_STYLE_BOX
+    };
+
     /**
         Constructor.
     */
     /**
         Constructor.
     */
@@ -289,22 +315,12 @@ public:
     */
     wxRichTextStyleListBox::wxRichTextStyleType GetStyleType() const;
 
     */
     wxRichTextStyleListBox::wxRichTextStyleType GetStyleType() const;
 
-    /**
-        Returns the HTML for this item.
-    */
-    virtual wxString OnGetItem(size_t n) const;
-
     /**
         Implements left click behaviour, applying the clicked style to the
         wxRichTextCtrl.
     */
     void OnLeftDown(wxMouseEvent& event);
 
     /**
         Implements left click behaviour, applying the clicked style to the
         wxRichTextCtrl.
     */
     void OnLeftDown(wxMouseEvent& event);
 
-    /**
-        Reacts to selection.
-    */
-    void OnSelect(wxCommandEvent& event);
-
     /**
         If @a applyOnSelection is @true, clicking on a style name in the list will
         immediately apply the style to the associated rich text control.
     /**
         If @a applyOnSelection is @true, clicking on a style name in the list will
         immediately apply the style to the associated rich text control.
@@ -334,6 +350,13 @@ public:
         Updates the list from the associated style sheet.
     */
     void UpdateStyles();
         Updates the list from the associated style sheet.
     */
     void UpdateStyles();
+
+protected:
+
+    /**
+        Returns the HTML for this item.
+    */
+    virtual wxString OnGetItem(size_t n) const;
 };
 
 
 };
 
 
@@ -462,8 +485,8 @@ public:
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
-    wxTextAttr CombineWithParagraphStyle(int indent,
-                                         const wxTextAttr& paraStyle,
+    wxRichTextAttr CombineWithParagraphStyle(int indent,
+                                         const wxRichTextAttr& paraStyle,
                                          wxRichTextStyleSheet* styleSheet = NULL);
 
     /**
                                          wxRichTextStyleSheet* styleSheet = NULL);
 
     /**
@@ -479,8 +502,8 @@ public:
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
-    wxTextAttr GetCombinedStyle(int indent,
-                                wxRichTextStyleSheet* styleSheet = NULL) const;
+    wxRichTextAttr GetCombinedStyle(int indent,
+                                wxRichTextStyleSheet* styleSheet = NULL);
 
     /**
         This function combines the list style's base attributes and the style for the
 
     /**
         This function combines the list style's base attributes and the style for the
@@ -489,13 +512,14 @@ public:
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
         If @a styleSheet is specified, the base style for this definition will also be
         included in the result.
     */
-    wxTextAttr GetCombinedStyleLevel(int level,
-                                     wxRichTextStyleSheet* styleSheet = NULL) const;
+
+    wxRichTextAttr GetCombinedStyleForLevel(int level,
+                                     wxRichTextStyleSheet* styleSheet = NULL);
 
     /**
         Returns the style for the given level. @a level is a number between 0 and 9.
     */
 
     /**
         Returns the style for the given level. @a level is a number between 0 and 9.
     */
-    const wxTextAttr* GetLevelAttributes(int level) const;
+    const wxRichTextAttr* GetLevelAttributes(int level) const;
 
     /**
         Returns the number of levels. This is hard-wired to 10.
 
     /**
         Returns the number of levels. This is hard-wired to 10.
@@ -506,20 +530,14 @@ public:
     /**
         Returns @true if the given level has numbered list attributes.
     */
     /**
         Returns @true if the given level has numbered list attributes.
     */
-    int IsNumbered(int level) const;
+    bool IsNumbered(int level) const;
 
 
-    //@{
     /**
         Sets the style for the given level. @a level is a number between 0 and 9.
         The first and most flexible form uses a wxTextAttr object, while the second
         form is for convenient setting of the most commonly-used attributes.
     */
     /**
         Sets the style for the given level. @a level is a number between 0 and 9.
         The first and most flexible form uses a wxTextAttr object, while the second
         form is for convenient setting of the most commonly-used attributes.
     */
-    void SetLevelAttributes(int level, const wxTextAttr& attr);
-    void SetLevelAttributes(int level, int leftIndent,
-                            int leftSubIndent,
-                            int bulletStyle,
-                            const wxString& bulletSymbol = wxEmptyString);
-    //@}
+    void SetLevelAttributes(int level, const wxRichTextAttr& attr);
 };
 
 
 };
 
 
@@ -577,17 +595,20 @@ public:
     /**
         Finds a character definition by name.
     */
     /**
         Finds a character definition by name.
     */
-    wxRichTextCharacterStyleDefinition* FindCharacterStyle(const wxString& name) const;
+    wxRichTextCharacterStyleDefinition* FindCharacterStyle(const wxString& name,
+                                                           bool recurse = true) const;
 
     /**
         Finds a list definition by name.
     */
 
     /**
         Finds a list definition by name.
     */
-    wxRichTextListStyleDefinition* FindListStyle(const wxString& name) const;
+    wxRichTextListStyleDefinition* FindListStyle(const wxString& name,
+                                                 bool recurse = true) const;
 
     /**
         Finds a paragraph definition by name.
     */
 
     /**
         Finds a paragraph definition by name.
     */
-    wxRichTextParagraphStyleDefinition* FindParagraphStyle(const wxString& name) const;
+    wxRichTextParagraphStyleDefinition* FindParagraphStyle(const wxString& name,
+                                                           bool recurse = true) const;
 
     /**
         Finds a style definition by name.
 
     /**
         Finds a style definition by name.
@@ -607,7 +628,7 @@ public:
     /**
         Returns the style sheet's description.
     */
     /**
         Returns the style sheet's description.
     */
-    const wxString GetDescription() const;
+    const wxString& GetDescription() const;
 
     /**
         Returns the @e nth list style.
 
     /**
         Returns the @e nth list style.
@@ -622,7 +643,7 @@ public:
     /**
         Returns the style sheet's name.
     */
     /**
         Returns the style sheet's name.
     */
-    const wxString GetName() const;
+    const wxString& GetName() const;
 
     /**
         Returns the @e nth paragraph style.
 
     /**
         Returns the @e nth paragraph style.
@@ -667,5 +688,20 @@ public:
         Sets the style sheet's name.
     */
     void SetName(const wxString& name);
         Sets the style sheet's name.
     */
     void SetName(const wxString& name);
+
+    /**
+        Returns the sheet's properties.
+    */
+    wxRichTextProperties& GetProperties();
+
+    /**
+        Returns the sheet's properties.
+    */
+    const wxRichTextProperties& GetProperties() const;
+
+    /**
+        Sets the sheet's properties.
+    */
+    void SetProperties(const wxRichTextProperties& props);
 };
 
 };