]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/textctrl.h
Made icons configurable via a wxMApp virtual function. Tested on wxGTK only,
[wxWidgets.git] / include / wx / gtk / textctrl.h
index 061e82e3bd0e86f48a66fd5c94d31fe770e63420..a930d772d485e1c9eac7f25da4ab5e083f403bd2 100644 (file)
 #include "wx/string.h"
 #include "wx/control.h"
 
+#if wxUSE_STD_IOSTREAM
+
 #if wxUSE_IOSTREAMH
 #include <iostream.h>
 #else
 #include <iostream>
 #endif
 
+#endif
+
 //-----------------------------------------------------------------------------
 // classes
 //-----------------------------------------------------------------------------
@@ -43,7 +47,11 @@ extern const char *wxTextCtrlNameStr;
 //  wxTextCtrl
 //-----------------------------------------------------------------------------
 
+#if wxUSE_STD_IOSTREAM
 class wxTextCtrl: public wxControl, public streambuf
+#else
+class wxTextCtrl: public wxControl
+#endif
 {
   DECLARE_EVENT_TABLE()
   DECLARE_DYNAMIC_CLASS(wxTextCtrl);
@@ -61,6 +69,7 @@ class wxTextCtrl: public wxControl, public streambuf
     wxString GetValue() const;
     void SetValue( const wxString &value );
     void WriteText( const wxString &text );
+    void AppendText( const wxString &text );
 
     bool LoadFile( const wxString &file );
     bool SaveFile( const wxString &file );
@@ -87,11 +96,41 @@ class wxTextCtrl: public wxControl, public streambuf
     void Paste();
     void Clear();
 
+    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;
+
+    // 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 ;
+
     void OnChar( wxKeyEvent &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);
+
+#if wxUSE_STD_IOSTREAM
     int overflow(int i);
     int sync();
     int underflow();
+#endif
 
     wxTextCtrl& operator<<(const wxString& s);
     wxTextCtrl& operator<<(int i);
@@ -100,9 +139,9 @@ class wxTextCtrl: public wxControl, public streambuf
     wxTextCtrl& operator<<(double d);
     wxTextCtrl& operator<<(const char c);
 
-    void SetFont( const wxFont &font );
-    void SetForegroundColour(const wxColour &colour);
-    void SetBackgroundColour(const wxColour &colour);
+    bool SetFont( const wxFont &font );
+    bool SetForegroundColour(const wxColour &colour);
+    bool SetBackgroundColour(const wxColour &colour);
 
   // implementation