X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c23a0b01b3fb667ec41fc8271ce1ee5b5aa4e19..438e3558adf77a68f56b6e4d30b359f8361facac:/include/wx/stubs/textctrl.h diff --git a/include/wx/stubs/textctrl.h b/include/wx/stubs/textctrl.h index a4efeba67c..09c11e063e 100644 --- a/include/wx/stubs/textctrl.h +++ b/include/wx/stubs/textctrl.h @@ -18,7 +18,7 @@ #include "wx/control.h" -#if USE_IOSTREAMH +#if wxUSE_IOSTREAMH #include #else #include @@ -30,9 +30,7 @@ WXDLLEXPORT_DATA(extern const char*) wxEmptyString; // Single-line text item class WXDLLEXPORT wxTextCtrl: public wxControl -// 16-bit Borland 4.0 doesn't seem to allow multiple inheritance with wxWindow and streambuf: -// it complains about deriving a huge class from the huge class streambuf. !! -// Also, can't use streambuf if making or using a DLL :-( +// TODO Some platforms/compilers don't like inheritance from streambuf. #if (defined(__BORLANDC__) && !defined(__WIN32__)) || defined(__MWERKS__) #define NO_TEXT_WINDOW_STREAM @@ -87,6 +85,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 ; @@ -95,7 +104,12 @@ public: virtual void Remove(long from, long to); 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); @@ -113,6 +127,7 @@ public: virtual bool LoadFile(const wxString& file); virtual bool SaveFile(const wxString& file); virtual void WriteText(const wxString& text); + virtual void AppendText(const wxString& text); virtual void DiscardEdits(); virtual bool IsModified() const; @@ -124,15 +139,26 @@ public: // callbacks // --------- void OnDropFiles(wxDropFilesEvent& event); - void OnChar(wxKeyEvent& event); // Process 'enter' if required - void OnEraseBackground(wxEraseEvent& 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 // -------------- virtual void Command(wxCommandEvent& event); protected: - wxString fileName; + wxString m_fileName; DECLARE_EVENT_TABLE() };