]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/textctrl.h
No real changes, just make wxWindow::CanScroll() virtual.
[wxWidgets.git] / include / wx / gtk / textctrl.h
index 57d52e3b80ae211a29e6fc84b85f224c287e0e43..9fefd91975f82fca43a2b5d9bf7a0f66d01250f9 100644 (file)
@@ -3,7 +3,6 @@
 // Purpose:
 // Author:      Robert Roebling
 // Created:     01/02/97
-// Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
@@ -63,6 +62,7 @@ public:
     virtual void DiscardEdits();
 
     virtual bool SetStyle(long start, long end, const wxTextAttr& style);
+    virtual bool GetStyle(long position, wxTextAttr& style);
 
     // translate between the position (which is just an index in the text ctrl
     // considering all its contents as a single strings) and (x, y) coordinates
@@ -121,11 +121,6 @@ public:
 
     void SetUpdateFont(bool WXUNUSED(update)) { }
 
-    // GTK+ textctrl is so dumb that you need to freeze/thaw it manually to
-    // avoid horrible flicker/scrolling back and forth
-    virtual void Freeze();
-    virtual void Thaw();
-
     // implementation only from now on
 
     // tell the control to ignore next text changed signal
@@ -148,22 +143,16 @@ public:
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
 
-    // has the control been frozen by Freeze()?
-    bool IsFrozen() const { return m_freezeCount > 0; }
-
 protected:
-    // wxGTK-specific: called recursively by Enable,
-    // to give widgets an oppprtunity to correct their colours after they
-    // have been changed by Enable
-    virtual void OnEnabled(bool enable);
-
     // overridden wxWindow virtual methods
     virtual wxSize DoGetBestSize() const;
     virtual void DoApplyWidgetStyle(GtkRcStyle *style);
     virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const;
 
-    // common part of all ctors
-    void Init();
+    virtual wxSize DoGetSizeFromTextSize(int xlen, int ylen = -1) const;
+
+    virtual void DoFreeze();
+    virtual void DoThaw();
 
     // Widgets that use the style->base colour for the BG colour should
     // override this and return true.
@@ -171,18 +160,27 @@ protected:
 
     virtual void DoSetValue(const wxString &value, int flags = 0);
 
+    // Override this to use either GtkEntry or GtkTextView IME depending on the
+    // kind of control we are.
+    virtual int GTKIMFilterKeypress(GdkEventKey* event) const;
+
+    virtual wxPoint DoPositionToCoords(long pos) const;
+
     // wrappers hiding the differences between functions doing the same thing
     // for GtkTextView and GtkEntry (all of them use current window style to
     // set the given characteristic)
     void GTKSetEditable();
     void GTKSetVisibility();
+    void GTKSetActivatesDefault();
     void GTKSetWrapMode();
     void GTKSetJustification();
 
 private:
+    void Init();
+
     // overridden wxTextEntry virtual methods
-    virtual const wxWindow *GetEditableWindow() const { return this; }
     virtual GtkEditable *GetEditable() const;
+    virtual GtkEntry *GetEntry() const;
     virtual void EnableTextChangedEvents(bool enable);
 
     // change the font for everything in this control
@@ -199,8 +197,8 @@ private:
     // both
     void *GetTextObject() const
     {
-        return IsMultiLine() ? wx_static_cast(void *, m_buffer)
-                             : wx_static_cast(void *, m_text);
+        return IsMultiLine() ? static_cast<void *>(m_buffer)
+                             : static_cast<void *>(m_text);
     }
 
 
@@ -216,14 +214,11 @@ private:
     // a dummy one when frozen
     GtkTextBuffer *m_buffer;
 
-    // number of calls to Freeze() minus number of calls to Thaw()
-    unsigned m_freezeCount;
     GtkTextMark* m_showPositionOnThaw;
+    GSList* m_anonymousMarkList;
 
     // For wxTE_AUTO_URL
     void OnUrlMouseEvent(wxMouseEvent&);
-    GdkCursor *m_gdkHandCursor;
-    GdkCursor *m_gdkXTermCursor;
 
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxTextCtrl)