X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a290fa5a7deebe9d96c0c0089d18e27d4bd9b624..0e05227246cc99b2f8133ae639f38c508351afa0:/include/wx/univ/textctrl.h diff --git a/include/wx/univ/textctrl.h b/include/wx/univ/textctrl.h index a8a044e177..667ee48b9e 100644 --- a/include/wx/univ/textctrl.h +++ b/include/wx/univ/textctrl.h @@ -12,10 +12,6 @@ #ifndef _WX_UNIV_TEXTCTRL_H_ #define _WX_UNIV_TEXTCTRL_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "univtextctrl.h" -#endif - class WXDLLEXPORT wxCaret; class WXDLLEXPORT wxTextCtrlCommandProcessor; @@ -70,13 +66,14 @@ class WXDLLEXPORT wxTextCtrlCommandProcessor; // wxTextCtrl // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTextCtrl : public wxTextCtrlBase, public wxScrollHelper +class WXDLLEXPORT wxTextCtrl : public wxTextCtrlBase, + public wxScrollHelper { public: // creation // -------- - wxTextCtrl() { Init(); } + wxTextCtrl() : wxScrollHelper(this) { Init(); } wxTextCtrl(wxWindow *parent, wxWindowID id, @@ -86,6 +83,7 @@ public: long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxTextCtrlNameStr) + : wxScrollHelper(this) { Init(); @@ -221,9 +219,6 @@ public: virtual void CalcUnscrolledPosition(int x, int y, int *xx, int *yy) const; virtual void CalcScrolledPosition(int x, int y, int *xx, int *yy) const; - // ensure we have correct default border - virtual wxBorder GetDefaultBorder() const { return wxBORDER_SUNKEN; } - // perform an action virtual bool PerformAction(const wxControlAction& action, long numArg = -1, @@ -241,7 +236,17 @@ public: // only for wxStdTextCtrlInputHandler void RefreshSelection(); + // override wxScrollHelper method to prevent (auto)scrolling beyond the end + // of line + virtual bool SendAutoScrollEvents(wxScrollWinEvent& event) const; + + // idle processing + virtual void OnInternalIdle(); + protected: + // ensure we have correct default border + virtual wxBorder GetDefaultBorder() const { return wxBORDER_SUNKEN; } + // override base class methods virtual void DoDrawBorder(wxDC& dc, const wxRect& rect); virtual void DoDraw(wxControlRenderer *renderer); @@ -427,10 +432,6 @@ protected: void OnChar(wxKeyEvent& event); void OnSize(wxSizeEvent& event); - // overrdie wxScrollHelper method to prevent (auto)scrolling beyond the end - // of line - virtual bool SendAutoScrollEvents(wxScrollWinEvent& event) const; - // return the struct containing control-type dependent data struct wxTextSingleLineData& SData() { return *m_data.sdata; } struct wxTextMultiLineData& MData() { return *m_data.mdata; } @@ -444,8 +445,6 @@ protected: bool DoCut(); bool DoPaste(); - // idle processing - virtual void OnInternalIdle(); private: // all these methods are for multiline text controls only @@ -519,6 +518,8 @@ private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxTextCtrl) + + friend class wxWrappedLineData; }; // ----------------------------------------------------------------------------