X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/aac7e7fe7be275176ef78258d703a734550a0343..b5b49e42939fd7ef098241733648b534f71b526c:/include/wx/msw/textctrl.h diff --git a/include/wx/msw/textctrl.h b/include/wx/msw/textctrl.h index bd11cae249..c5e03295f3 100644 --- a/include/wx/msw/textctrl.h +++ b/include/wx/msw/textctrl.h @@ -50,6 +50,8 @@ public: virtual wxString GetValue() const; virtual void SetValue(const wxString& value); + virtual wxString GetRange(long from, long to) const; + virtual int GetLineLength(long lineNo) const; virtual wxString GetLineText(long lineNo) const; virtual int GetNumberOfLines() const; @@ -58,7 +60,6 @@ public: virtual bool IsEditable() const; virtual void GetSelection(long* from, long* to) const; - virtual wxString GetStringSelection() const; // operations // ---------- @@ -81,6 +82,10 @@ public: virtual void WriteText(const wxString& text); virtual void AppendText(const wxString& text); +#ifdef __WIN32__ + virtual bool EmulateKeyPress(const wxKeyEvent& event); +#endif // __WIN32__ + #if wxUSE_RICHEDIT // apply text attribute to the range of text (only works with richedit // controls) @@ -123,6 +128,8 @@ public: // Implementation from now on // -------------------------- + virtual void SetWindowStyleFlag(long style); + virtual void Command(wxCommandEvent& event); virtual bool MSWCommand(WXUINT param, WXWORD id); virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor, @@ -170,6 +177,9 @@ protected: // common part of all ctors void Init(); + // intercept WM_GETDLGCODE + virtual long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); + // call this to increase the size limit (will do nothing if the current // limit is big enough) // @@ -178,17 +188,30 @@ protected: bool AdjustSpaceLimit(); #if wxUSE_RICHEDIT - // replace the selection with the given text in the specified encoding - bool StreamIn(const wxString& value, wxFontEncoding encoding); + // 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); #endif // wxUSE_RICHEDIT + // replace the contents of the selection or of the entire control with the + // given text + void DoWriteText(const wxString& text, bool selectionOnly = TRUE); + // set the selection possibly without scrolling the caret into view void DoSetSelection(long from, long to, bool scrollCaret = TRUE); + // get the length of the line containing the character at the given + // position + long GetLengthOfLineContainingPos(long pos) const; + // override some base class virtuals virtual bool MSWShouldPreProcessMessage(WXMSG* pMsg); virtual wxSize DoGetBestSize() const; + virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; + #if wxUSE_RICHEDIT // we're using RICHEDIT (and not simple EDIT) control if this field is not // 0, it also gives the version of the RICHEDIT control being used (1, 2 or