+ // common part of all ctors
+ void Init();
+
+ // creates the control of appropriate class (plain or rich edit) with the
+ // styles corresponding to m_windowStyle
+ //
+ // this is used by ctor/Create() and when we need to recreate the control
+ // later
+ bool MSWCreateText(const wxString& value,
+ const wxPoint& pos,
+ const wxSize& size);
+
+ virtual void DoSetValue(const wxString &value, int flags = 0);
+
+ // implement wxTextEntry pure virtual: it implements all the operations for
+ // the simple EDIT controls
+ virtual WXHWND GetEditHWND() const { return m_hWnd; }
+
+ // return true if this control has a user-set limit on amount of text (i.e.
+ // the limit is due to a previous call to SetMaxLength() and not built in)
+ bool HasSpaceLimit(unsigned int *len) const;
+
+ // call this to increase the size limit (will do nothing if the current
+ // limit is big enough)
+ //
+ // returns true if we increased the limit to allow entering more text,
+ // false if we hit the limit set by SetMaxLength() and so didn't change it
+ bool AdjustSpaceLimit();
+
+#if wxUSE_RICHEDIT && (!wxUSE_UNICODE || wxUSE_UNICODE_MSLU)
+ // replace the selection or the entire control contents with the given text
+ // in the specified encoding
+ bool StreamIn(const wxString& value, wxFontEncoding encoding, bool selOnly);
+
+ // get the contents of the control out as text in the given encoding
+ wxString StreamOut(wxFontEncoding encoding, bool selOnly = false) const;
+#endif // wxUSE_RICHEDIT
+
+ // replace the contents of the selection or of the entire control with the
+ // given text
+ void DoWriteText(const wxString& text,
+ int flags = SetValue_SendEvent | SetValue_SelectionOnly);
+
+ // set the selection (possibly without scrolling the caret into view)
+ void DoSetSelection(long from, long to, int flags);
+
+ // get the length of the line containing the character at the given
+ // position
+ long GetLengthOfLineContainingPos(long pos) const;
+
+ // send TEXT_UPDATED event, return true if it was handled, false otherwise
+ bool SendUpdateEvent();
+
+ virtual wxSize DoGetBestSize() const;
+