X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bfc6fde4b1dd5bfd8ae22839ff9a69cf24eb9120..2917e9204382ec1ecc96de7fc98bd3068da2233c:/include/wx/msw/textctrl.h diff --git a/include/wx/msw/textctrl.h b/include/wx/msw/textctrl.h index 1e47cb7547..2ca8490c14 100644 --- a/include/wx/msw/textctrl.h +++ b/include/wx/msw/textctrl.h @@ -31,8 +31,8 @@ #define wxUSE_RICHEDIT 0 #endif -WXDLLEXPORT_DATA(extern const char*) wxTextCtrlNameStr; -WXDLLEXPORT_DATA(extern const char*) wxEmptyString; +WXDLLEXPORT_DATA(extern const wxChar*) wxTextCtrlNameStr; +WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString; // Single-line text item class WXDLLEXPORT wxTextCtrl : public wxControl @@ -93,6 +93,17 @@ public: virtual void Cut(); virtual void Paste(); + virtual bool CanCopy() const; + virtual bool CanCut() const; + virtual bool CanPaste() const; + + // Undo/redo + virtual void Undo(); + virtual void Redo(); + + virtual bool CanUndo() const; + virtual bool CanRedo() const; + virtual void SetInsertionPoint(long pos); virtual void SetInsertionPointEnd(); virtual long GetInsertionPoint() const ; @@ -102,6 +113,11 @@ public: virtual void SetSelection(long from, long to); virtual void SetEditable(bool editable); + // If the return values from and to are the same, there is no + // selection. + virtual void GetSelection(long* from, long* to) const; + virtual bool IsEditable() const ; + // streambuf implementation #ifndef NO_TEXT_WINDOW_STREAM int overflow(int i); @@ -136,7 +152,18 @@ public: // --------- void OnDropFiles(wxDropFilesEvent& event); void OnChar(wxKeyEvent& event); // Process 'enter' if required - void OnEraseBackground(wxEraseEvent& event); + + void OnCut(wxCommandEvent& event); + void OnCopy(wxCommandEvent& event); + void OnPaste(wxCommandEvent& event); + void OnUndo(wxCommandEvent& event); + void OnRedo(wxCommandEvent& event); + + void OnUpdateCut(wxUpdateUIEvent& event); + void OnUpdateCopy(wxUpdateUIEvent& event); + void OnUpdatePaste(wxUpdateUIEvent& event); + void OnUpdateUndo(wxUpdateUIEvent& event); + void OnUpdateRedo(wxUpdateUIEvent& event); // Implementation // -------------- @@ -163,9 +190,13 @@ protected: wxString m_fileName; + // call this to increase the size limit (will do nothing if the current + // limit is big enough) + void AdjustSpaceLimit(); + virtual void DoSetSize(int x, int y, - int width, int height, - int sizeFlags = wxSIZE_AUTO); + int width, int height, + int sizeFlags = wxSIZE_AUTO); private: DECLARE_EVENT_TABLE()