]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/richtext.i
return false from IsDoubleBuffered() if the first top level parent is not double...
[wxWidgets.git] / wxPython / src / richtext.i
index ba35f574858ad9eb5af589b78a160d4d557e39ee..9ed5a8f4c83d2f1d8c8e623a022bcf232a8c6046 100644 (file)
@@ -39,7 +39,7 @@ class wxPrinterDC;
 //----------------------------------------------------------------------
 
 %import windows.i
-%import gdi.i
+// ??  %import gdi.i
 
 %pythoncode { wx = _core }
 %pythoncode { __docfilter__ = wx.__DocFilter(globals()) }
@@ -82,6 +82,16 @@ enum {
     wxRICHTEXT_FORMATTED,
     wxRICHTEXT_UNFORMATTED,
 
+    wxRICHTEXT_SETSTYLE_NONE,
+    wxRICHTEXT_SETSTYLE_WITH_UNDO,
+    wxRICHTEXT_SETSTYLE_OPTIMIZE,
+    wxRICHTEXT_SETSTYLE_PARAGRAPHS_ONLY,
+    wxRICHTEXT_SETSTYLE_CHARACTERS_ONLY,
+
+    wxRICHTEXT_INSERT_NONE,
+    wxRICHTEXT_INSERT_WITH_PREVIOUS_PARAGRAPH_STYLE,
+
+
 
     // TODO:  Rename these to be wxRICHTEXT_* ??
 
@@ -283,6 +293,10 @@ empty range.", "");
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (RichTextRange, self.Get())
     }
+
+    %property(End, GetEnd, SetEnd, doc="See `GetEnd` and `SetEnd`");
+    %property(Length, GetLength, doc="See `GetLength`");
+    %property(Start, GetStart, SetStart, doc="See `GetStart` and `SetStart`");
 };
 
 
@@ -340,7 +354,7 @@ public:
         def SetFont(self, font):
             return self.GetFontAttributes(font)
     }
-    
+
     // setters
     void SetTextColour(const wxColour& colText);
     void SetBackgroundColour(const wxColour& colBack);
@@ -365,7 +379,8 @@ public:
     void SetBulletStyle(int style);
     void SetBulletNumber(int n);
     void SetBulletSymbol(wxChar symbol);
-
+    void SetBulletFont(const wxString& bulletFont);
+    
     const wxColour& GetTextColour() const;
     const wxColour& GetBackgroundColour() const;
     wxTextAttrAlignment GetAlignment() const;
@@ -387,8 +402,9 @@ public:
     int GetParagraphSpacingBefore() const;
     int GetLineSpacing() const;
     int GetBulletStyle() const;
-    int GetBulletNumber() const { return m_bulletNumber; }
+    int GetBulletNumber() const;
     wxChar GetBulletSymbol() const;
+    const wxString& GetBulletFont() const;
 
     // accessors
     bool HasTextColour() const;
@@ -422,6 +438,39 @@ public:
     // returns false if we have any attributes set, true otherwise
     bool IsDefault() const;
 
+
+//     // return the attribute having the valid font and colours: it uses the
+//     // attributes set in attr and falls back first to attrDefault and then to
+//     // the text control font/colours for those attributes which are not set
+//     static wxRichTextAttr Combine(const wxRichTextAttr& attr,
+//                               const wxRichTextAttr& attrDef,
+//                               const wxTextCtrlBase *text);
+
+
+    %property(Alignment, GetAlignment, SetAlignment, doc="See `GetAlignment` and `SetAlignment`");
+    %property(BackgroundColour, GetBackgroundColour, SetBackgroundColour, doc="See `GetBackgroundColour` and `SetBackgroundColour`");
+    %property(BulletFont, GetBulletFont, SetBulletFont, doc="See `GetBulletFont` and `SetBulletFont`");
+    %property(BulletNumber, GetBulletNumber, SetBulletNumber, doc="See `GetBulletNumber` and `SetBulletNumber`");
+    %property(BulletStyle, GetBulletStyle, SetBulletStyle, doc="See `GetBulletStyle` and `SetBulletStyle`");
+    %property(BulletSymbol, GetBulletSymbol, SetBulletSymbol, doc="See `GetBulletSymbol` and `SetBulletSymbol`");
+    %property(CharacterStyleName, GetCharacterStyleName, SetCharacterStyleName, doc="See `GetCharacterStyleName` and `SetCharacterStyleName`");
+    %property(Flags, GetFlags, SetFlags, doc="See `GetFlags` and `SetFlags`");
+    %property(Font, GetFont, SetFont, doc="See `GetFont` and `SetFont`");
+    %property(FontAttributes, GetFontAttributes, doc="See `GetFontAttributes`");
+    %property(FontFaceName, GetFontFaceName, SetFontFaceName, doc="See `GetFontFaceName` and `SetFontFaceName`");
+    %property(FontSize, GetFontSize, SetFontSize, doc="See `GetFontSize` and `SetFontSize`");
+    %property(FontStyle, GetFontStyle, SetFontStyle, doc="See `GetFontStyle` and `SetFontStyle`");
+    %property(FontUnderlined, GetFontUnderlined, SetFontUnderlined, doc="See `GetFontUnderlined` and `SetFontUnderlined`");
+    %property(FontWeight, GetFontWeight, SetFontWeight, doc="See `GetFontWeight` and `SetFontWeight`");
+    %property(LeftIndent, GetLeftIndent, SetLeftIndent, doc="See `GetLeftIndent` and `SetLeftIndent`");
+    %property(LeftSubIndent, GetLeftSubIndent, doc="See `GetLeftSubIndent`");
+    %property(LineSpacing, GetLineSpacing, SetLineSpacing, doc="See `GetLineSpacing` and `SetLineSpacing`");
+    %property(ParagraphSpacingAfter, GetParagraphSpacingAfter, SetParagraphSpacingAfter, doc="See `GetParagraphSpacingAfter` and `SetParagraphSpacingAfter`");
+    %property(ParagraphSpacingBefore, GetParagraphSpacingBefore, SetParagraphSpacingBefore, doc="See `GetParagraphSpacingBefore` and `SetParagraphSpacingBefore`");
+    %property(ParagraphStyleName, GetParagraphStyleName, SetParagraphStyleName, doc="See `GetParagraphStyleName` and `SetParagraphStyleName`");
+    %property(RightIndent, GetRightIndent, SetRightIndent, doc="See `GetRightIndent` and `SetRightIndent`");
+    %property(Tabs, GetTabs, SetTabs, doc="See `GetTabs` and `SetTabs`");
+    %property(TextColour, GetTextColour, SetTextColour, doc="See `GetTextColour` and `SetTextColour`");
 };
 
 
@@ -447,6 +496,7 @@ public:
 
     wxRichTextCtrl( wxWindow* parent,
                     wxWindowID id = -1,
+                    const wxString& value = wxPyEmptyString,
                     const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxDefaultSize,
                     long style = wxRE_MULTILINE );
@@ -455,6 +505,7 @@ public:
 
     bool Create( wxWindow* parent,
                  wxWindowID id = -1,
+                 const wxString& value = wxPyEmptyString,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
                  long style = wxRE_MULTILINE );
@@ -562,7 +613,7 @@ during sizing.", "");
         virtual bool , SaveFile(const wxString& file = wxPyEmptyString,
                                 int type = wxRICHTEXT_TYPE_ANY),
         "Save the contents of the document to the given filename, or if the
-empty string is passed then to the filename set with `SetFileName`.", "");
+empty string is passed then to the filename set with `SetFilename`.", "");
 
 
     // sets/clears the dirty flag
@@ -597,11 +648,26 @@ text control.", "");
         "Set the style for the text in ``range`` to ``style``", "");
 
     DocDeclStr(
-        virtual bool , GetStyle(long position, wxRichTextAttr& style) const,
+        virtual bool , SetStyleEx(const wxRichTextRange& range, const wxRichTextAttr& style,
+                                  int flags = wxRICHTEXT_SETSTYLE_WITH_UNDO),
+        "Extended style setting operation with flags including:
+RICHTEXT_SETSTYLE_WITH_UNDO, RICHTEXT_SETSTYLE_OPTIMIZE,
+RICHTEXT_SETSTYLE_PARAGRAPHS_ONLY, RICHTEXT_SETSTYLE_CHARACTERS_ONLY", "");
+    
+
+    
+    DocDeclStr(
+        virtual bool , GetStyle(long position, wxRichTextAttr& style),
         "Retrieve the style used at the given position.  Copies the style
-values at ``position`` into the ``style`` parameter returns ``True``
+values at ``position`` into the ``style`` parameter and returns ``True``
 if successful.  Returns ``False`` otherwise.", "");
 
+    DocDeclStr(
+        virtual bool , GetUncombinedStyle(long position, wxRichTextAttr& style),
+        "Get the content (uncombined) attributes for this position.  Copies the
+style values at ``position`` into the ``style`` parameter and returns
+``True`` if successful.  Returns ``False`` otherwise.", "");
+
 
     DocDeclStr(
         virtual bool , SetDefaultStyle(const wxRichTextAttr& style),
@@ -1042,16 +1108,33 @@ flag.", "");
         virtual void , SelectNone(),
         "", "");
 
+    /// Select the word at the given character position
+    DocDeclStr(
+        virtual bool , SelectWord(long position),
+        "", "");
+
 
     /// Get/set the selection range in character positions. -1, -1 means no selection.
     DocDeclStr(
-        const wxRichTextRange& , GetSelectionRange() const,
+        wxRichTextRange , GetSelectionRange() const,
         "", "");
 
     DocDeclStr(
         void , SetSelectionRange(const wxRichTextRange& range),
         "", "");
 
+    /// Get/set the selection range in character positions. -1, -1 means no selection.
+    /// The range is in internal format, i.e. a single character selection is denoted
+    /// by (n, n)
+    DocDeclStr(
+        const wxRichTextRange& , GetInternalSelectionRange() const,
+        "", "");
+
+    DocDeclStr(
+        void , SetInternalSelectionRange(const wxRichTextRange& range),
+        "", "");
+
+
 
     /// Add a new paragraph of text to the end of the buffer
     DocDeclStr(
@@ -1243,25 +1326,25 @@ flag.", "");
 
     /// Is all of the selection bold?
     DocDeclStr(
-        virtual bool , IsSelectionBold() const,
+        virtual bool , IsSelectionBold(),
         "", "");
 
 
     /// Is all of the selection italics?
     DocDeclStr(
-        virtual bool , IsSelectionItalics() const,
+        virtual bool , IsSelectionItalics(),
         "", "");
 
 
     /// Is all of the selection underlined?
     DocDeclStr(
-        virtual bool , IsSelectionUnderlined() const,
+        virtual bool , IsSelectionUnderlined(),
         "", "");
 
 
     /// Is all of the selection aligned according to the specified flag?
     DocDeclStr(
-        virtual bool , IsSelectionAligned(wxTextAttrAlignment alignment) const,
+        virtual bool , IsSelectionAligned(wxTextAttrAlignment alignment),
         "", "");
 
 
@@ -1298,8 +1381,27 @@ flag.", "");
         wxRichTextStyleSheet* , GetStyleSheet() const,
         "", "");
 
+    /// Apply the style sheet to the buffer, for example if the styles have changed.
+    DocDeclStr(
+        bool , ApplyStyleSheet(wxRichTextStyleSheet* styleSheet = NULL),
+        "", "");
 
 
+
+    %property(Buffer, GetBuffer, doc="See `GetBuffer`");
+    %property(DefaultStyle, GetDefaultStyle, SetDefaultStyle, doc="See `GetDefaultStyle` and `SetDefaultStyle`");
+    %property(DelayedLayoutThreshold, GetDelayedLayoutThreshold, SetDelayedLayoutThreshold, doc="See `GetDelayedLayoutThreshold` and `SetDelayedLayoutThreshold`");
+    %property(Filename, GetFilename, SetFilename, doc="See `GetFilename` and `SetFilename`");
+    %property(InsertionPoint, GetInsertionPoint, SetInsertionPoint, doc="See `GetInsertionPoint` and `SetInsertionPoint`");
+    %property(InternalSelectionRange, GetInternalSelectionRange, SetInternalSelectionRange, doc="See `GetInternalSelectionRange` and `SetInternalSelectionRange`");
+    %property(LastPosition, GetLastPosition, doc="See `GetLastPosition`");
+    %property(NumberOfLines, GetNumberOfLines, doc="See `GetNumberOfLines`");
+    %property(Selection, GetSelection, SetSelection, doc="See `GetSelection` and `SetSelection`");
+    %property(SelectionRange, GetSelectionRange, SetSelectionRange, doc="See `GetSelectionRange` and `SetSelectionRange`");
+    %property(StringSelection, GetStringSelection, doc="See `GetStringSelection`");
+    %property(StyleSheet, GetStyleSheet, SetStyleSheet, doc="See `GetStyleSheet` and `SetStyleSheet`");
+    %property(Value, GetValue, SetValue, doc="See `GetValue` and `SetValue`");
+
 // Implementation
 // TODO: Which of these should be exposed to Python?
 
@@ -1432,6 +1534,9 @@ public:
 
     int GetFlags() const;
     void SetFlags(int flags);
+
+    %property(Flags, GetFlags, SetFlags, doc="See `GetFlags` and `SetFlags`");
+    %property(Index, GetIndex, SetIndex, doc="See `GetIndex` and `SetIndex`");
 };
 
 //----------------------------------------------------------------------