]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/textctrl.h
Commited region iterator fix.
[wxWidgets.git] / include / wx / gtk / textctrl.h
index 9f1c6eddd2c594d4f736b5b8f63e752f49bebca1..6d73a76004ecabb36ed44924bfb0c85eb5003dee 100644 (file)
@@ -28,7 +28,7 @@ public:
                const wxValidator& validator = wxDefaultValidator,
                const wxString &name = wxTextCtrlNameStr);
 
-    ~wxTextCtrl();
+    virtual ~wxTextCtrl();
 
     bool Create(wxWindow *parent,
                 wxWindowID id,
@@ -43,7 +43,7 @@ public:
     // ----------------------------------
 
     virtual wxString GetValue() const;
-    virtual void SetValue(const wxString& value);
+    virtual bool IsEmpty() const;
 
     virtual int GetLineLength(long lineNo) const;
     virtual wxString GetLineText(long lineNo) const;
@@ -155,7 +155,7 @@ public:
     virtual void OnParentEnable( bool enable ) ;
 
     // tell the control to ignore next text changed signal
-    void IgnoreNextTextUpdate() { m_ignoreNextUpdate = true; }
+    void IgnoreNextTextUpdate(int n = 1) { m_countUpdatesToIgnore = n; }
 
     // should we ignore the changed signal? always resets the flag
     bool IgnoreTextUpdate();
@@ -167,10 +167,16 @@ public:
     // should we mark the control as dirty? always resets the flag
     bool MarkDirtyOnChange();
 
+    // always let GTK have mouse release events for multiline controls
+    virtual bool GTKProcessEvent(wxEvent& event) const;
+
 
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
 
+    // has the control been frozen by Freeze()?
+    bool IsFrozen() const { return m_frozenness > 0; }
+
 protected:
     virtual wxSize DoGetBestSize() const;
     virtual void DoApplyWidgetStyle(GtkRcStyle *style);
@@ -183,8 +189,7 @@ protected:
     // override this and return true.
     virtual bool UseGTKStyleBase() const { return true; }
 
-    // has the control been frozen by Freeze()?
-    bool IsFrozen() const { return m_frozenness > 0; }
+    virtual void DoSetValue(const wxString &value, int flags = 0);
 
 private:
     // change the font for everything in this control
@@ -200,9 +205,10 @@ private:
     GtkWidget  *m_text;
 
     bool        m_modified:1;
-    bool        m_ignoreNextUpdate:1;
     bool        m_dontMarkDirty:1;
 
+    int         m_countUpdatesToIgnore;
+
     // Our text buffer. Convenient, and holds the buffer while using
     // a dummy one when m_frozenness > 0
     GtkTextBuffer *m_buffer;