]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_textctrl.i
bitwise vs. logical operator
[wxWidgets.git] / wxPython / src / _textctrl.i
index e54457e723087e78df3d7c9ab0d688608640ad76..f6755ef430df22c01dad78ea8f9f118dc8597c97 100644 (file)
@@ -52,17 +52,25 @@ enum {
     // doesn't have focus - use this style to force it to always show it
     wxTE_NOHIDESEL,
 
-    // use wxHSCROLL to not wrap text at all, wxTE_LINEWRAP to wrap it at any
-    // position and wxTE_WORDWRAP to wrap at words boundary
+    // use wxHSCROLL (wxTE_DONTWRAP) to not wrap text at all, wxTE_CHARWRAP to
+    // wrap it at any position and wxTE_WORDWRAP to wrap at words boundary
+    //
+    // if no wrapping style is given at all, the control wraps at word boundary
     wxTE_DONTWRAP,
-    wxTE_LINEWRAP,
+    wxTE_CHARWRAP,
     wxTE_WORDWRAP,
+    wxTE_BESTWRAP,
 
     // force using RichEdit version 2.0 or 3.0 instead of 1.0 (default) for
     // wxTE_RICH controls - can be used together with or instead of wxTE_RICH
     wxTE_RICH2,
+
+    wxTE_CAPITALIZE,
 };
 
+%pythoncode { TE_LINEWRAP = TE_CHARWRAP }
+
+
 
 enum wxTextAttrAlignment
 {
@@ -99,6 +107,14 @@ enum wxTextCtrlHitTestResult
     wxTE_HT_BEYOND          // after [the end of line]
 };
 
+
+enum {
+    wxOutOfRangeTextCoord,
+    wxInvalidTextCoord,
+
+    wxTEXT_TYPE_ANY
+};
+
 //---------------------------------------------------------------------------
 
 // wxTextAttr: a structure containing the visual attributes of a text
@@ -114,6 +130,16 @@ public:
     // operations
     void Init();
 
+    // merges the attributes of the base and the overlay objects and returns
+    // the result; the parameter attributes take precedence
+    //
+    // WARNING: the order of arguments is the opposite of Combine()
+    static wxTextAttr Merge(const wxTextAttr& base, const wxTextAttr& overlay);
+    
+//     // merges the attributes of this object and overlay
+//     void Merge(const wxTextAttr& overlay);
+
+    
     // setters
     void SetTextColour(const wxColour& colText);
     void SetBackgroundColour(const wxColour& colBack);
@@ -153,6 +179,16 @@ public:
     static wxTextAttr Combine(const wxTextAttr& attr,
                               const wxTextAttr& attrDef,
                               const wxTextCtrl *text);
+
+    %property(Alignment, GetAlignment, SetAlignment, doc="See `GetAlignment` and `SetAlignment`");
+    %property(BackgroundColour, GetBackgroundColour, SetBackgroundColour, doc="See `GetBackgroundColour` and `SetBackgroundColour`");
+    %property(Flags, GetFlags, SetFlags, doc="See `GetFlags` and `SetFlags`");
+    %property(Font, GetFont, SetFont, doc="See `GetFont` and `SetFont`");
+    %property(LeftIndent, GetLeftIndent, SetLeftIndent, doc="See `GetLeftIndent` and `SetLeftIndent`");
+    %property(LeftSubIndent, GetLeftSubIndent, doc="See `GetLeftSubIndent`");
+    %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`");
 };
 
 //---------------------------------------------------------------------------
@@ -174,7 +210,7 @@ public:
                long style = 0,
                const wxValidator& validator = wxDefaultValidator,
                const wxString& name = wxPyTextCtrlNameStr);
-    %name(PreTextCtrl)wxTextCtrl();
+    %RenameCtor(PreTextCtrl, wxTextCtrl());
 
     // Turn it back on again
     %typemap(out) wxTextCtrl* { $result = wxPyMake_wxObject($1, $owner); }
@@ -191,6 +227,10 @@ public:
     virtual wxString GetValue() const;
     virtual void SetValue(const wxString& value);
 
+    virtual bool IsEmpty() const;
+
+    virtual void ChangeValue(const wxString &value);
+    
     virtual wxString GetRange(long from, long to) const;
 
     virtual int GetLineLength(long lineNo) const;
@@ -219,13 +259,14 @@ public:
     virtual void Remove(long from, long to);
 
     // load/save the controls contents from/to the file
-    virtual bool LoadFile(const wxString& file);
-    virtual bool SaveFile(const wxString& file = wxPyEmptyString);
+    virtual bool LoadFile(const wxString& file, int fileType = wxTEXT_TYPE_ANY);
+    virtual bool SaveFile(const wxString& file = wxPyEmptyString, int fileType = wxTEXT_TYPE_ANY);
 
     // sets/clears the dirty flag
     virtual void MarkDirty();
     virtual void DiscardEdits();
-
+    void SetModified(bool modified);
+    
     // set the max number of characters which may be entered in a single line
     // text control
     virtual void SetMaxLength(unsigned long len);
@@ -261,7 +302,7 @@ public:
     DocDeclAStr(
         virtual wxTextCtrlHitTestResult, HitTest(const wxPoint& pt,
                                                  long* OUTPUT, long* OUTPUT) const,
-        "HitTest(Point pt) -> (result, row, col)",
+        "HitTest(Point pt) -> (result, col, row)",
         "Find the row, col coresponding to the character at the point given in
 pixels. NB: pt is in device coords but is not adjusted for the client
 area origin nor scrolling.", "");
@@ -302,10 +343,21 @@ the client area origin nor scrolling. ", "",
     virtual void SetSelection(long from, long to);
     virtual void SelectAll();
     virtual void SetEditable(bool editable);
+    
+#ifdef __WXMAC__
+    virtual void MacCheckSpelling(bool check);
+#else
+    %extend {
+        void MacCheckSpelling(bool check) {}
+    }
+#endif
+
+    // generate the wxEVT_COMMAND_TEXT_UPDATED event, like SetValue() does
+    void SendTextUpdatedEvent();
 
 #ifdef __WXMSW__
     // Caret handling (Windows only)
-    bool ShowNativeCaret(bool show = True);
+    bool ShowNativeCaret(bool show = true);
     bool HideNativeCaret();
 #endif
 
@@ -325,6 +377,14 @@ the client area origin nor scrolling. ", "",
 
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    %property(DefaultStyle, GetDefaultStyle, SetDefaultStyle, doc="See `GetDefaultStyle` and `SetDefaultStyle`");
+    %property(InsertionPoint, GetInsertionPoint, SetInsertionPoint, doc="See `GetInsertionPoint` and `SetInsertionPoint`");
+    %property(LastPosition, GetLastPosition, doc="See `GetLastPosition`");
+    %property(NumberOfLines, GetNumberOfLines, doc="See `GetNumberOfLines`");
+    %property(Selection, GetSelection, SetSelection, doc="See `GetSelection` and `SetSelection`");
+    %property(StringSelection, GetStringSelection, doc="See `GetStringSelection`");
+    %property(Value, GetValue, SetValue, doc="See `GetValue` and `SetValue`");
 };
 
 //---------------------------------------------------------------------------
@@ -350,6 +410,10 @@ public:
 
     // get the end of the URL
     long GetURLEnd() const;
+    
+    %property(MouseEvent, GetMouseEvent, doc="See `GetMouseEvent`");
+    %property(URLEnd, GetURLEnd, doc="See `GetURLEnd`");
+    %property(URLStart, GetURLStart, doc="See `GetURLStart`");
 };