]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/textctrl.h
DC updates
[wxWidgets.git] / include / wx / msw / textctrl.h
index 00675d4c95e08ac141d67300ed7a654bb0888f5f..f233ee08f6669df15ed56cfad40d9a6861fb47af 100644 (file)
     #pragma interface "textctrl.h"
 #endif
 
-// can we use RICHEDIT class for wxTextCtrl implementation?
-#if defined(__WIN95__) && !defined(__TWIN32__) && !defined(__WXWINE__)
-    #define wxUSE_RICHEDIT 1
-#else
-    #define wxUSE_RICHEDIT 0
-#endif
-
 class WXDLLEXPORT wxTextCtrl : public wxTextCtrlBase
 {
 public:
@@ -122,15 +115,24 @@ public:
 
     virtual void Command(wxCommandEvent& event);
     virtual bool MSWCommand(WXUINT param, WXWORD id);
+    virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
+            WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
+
+    // In WIN16, need to override normal erasing because
+    // Ctl3D doesn't use the wxWindows background colour.
+#ifdef __WIN16__
+    void OnEraseBackground(wxEraseEvent& event);
+#endif
 
 #if wxUSE_RICHEDIT
     bool IsRich() const { return m_isRich; }
     void SetRichEdit(bool isRich) { m_isRich = isRich; }
-#endif // wxUSE_RICHEDIT
 
-    virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
-                                WXUINT message, WXWPARAM wParam,
-                                WXLPARAM lParam);
+    // rich edit controls are not compatible with normal ones and wem ust set
+    // the colours for them otherwise
+    virtual bool SetBackgroundColour(const wxColour& colour);
+    virtual bool SetForegroundColour(const wxColour& colour);
+#endif // wxUSE_RICHEDIT
 
     virtual void AdoptAttributesFromHWND();
     virtual void SetupColours();
@@ -162,7 +164,7 @@ protected:
     // limit is big enough)
     void AdjustSpaceLimit();
 
-    virtual wxSize DoGetBestSize();
+    virtual wxSize DoGetBestSize() const;
 
 private:
     DECLARE_EVENT_TABLE()