X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ca8f0290a44c5b1ecfaa8da0013757ea203092ea..9869c26285dc51d13607cddaa04f65ce983653a5:/include/wx/os2/textctrl.h diff --git a/include/wx/os2/textctrl.h b/include/wx/os2/textctrl.h index 175edc8ebe..cc1d8d1e05 100644 --- a/include/wx/os2/textctrl.h +++ b/include/wx/os2/textctrl.h @@ -1,10 +1,9 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: textctrl.h +// Name: wx/os2/textctrl.h // Purpose: wxTextCtrl class // Author: David Webster // Modified by: // Created: 10/17/99 -// RCS-ID: $Id$ // Copyright: (c) David Webster // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -12,12 +11,11 @@ #ifndef _WX_TEXTCTRL_H_ #define _WX_TEXTCTRL_H_ -class WXDLLEXPORT wxTextCtrl : public wxTextCtrlBase +typedef int (wxCALLBACK *wxTreeCtrlCompare)(long lItem1, long lItem2, long lSortData); + +class WXDLLIMPEXP_CORE wxTextCtrl : public wxTextCtrlBase { public: - // creation - // -------- - wxTextCtrl(); wxTextCtrl( wxWindow* pParent ,wxWindowID vId @@ -25,14 +23,13 @@ public: ,const wxPoint& rPos = wxDefaultPosition ,const wxSize& rSize = wxDefaultSize ,long lStyle = 0 -#if wxUSE_VALIDATORS ,const wxValidator& rValidator = wxDefaultValidator -#endif ,const wxString& rsName = wxTextCtrlNameStr ) { Create(pParent, vId, rsValue, rPos, rSize, lStyle, rValidator, rsName); } + virtual ~wxTextCtrl(); bool Create( wxWindow* pParent ,wxWindowID vId @@ -40,17 +37,15 @@ public: ,const wxPoint& rPos = wxDefaultPosition ,const wxSize& rSize = wxDefaultSize ,long lStyle = 0 -#if wxUSE_VALIDATORS ,const wxValidator& rValidator = wxDefaultValidator -#endif ,const wxString& rsName = wxTextCtrlNameStr ); - // implement base class pure virtuals + // + // Implement base class pure virtuals // ---------------------------------- - + // virtual wxString GetValue(void) const; - virtual void SetValue(const wxString& rsValue); virtual int GetLineLength(long nLineNo) const; virtual wxString GetLineText(long nLineNo) const; @@ -59,15 +54,13 @@ public: virtual bool IsModified(void) const; virtual bool IsEditable(void) const; - // If the return values from and to are the same, there is no selection. virtual void GetSelection( long* pFrom ,long* pTo ) const; - - // operations + // + // Operations // ---------- - - // editing + // virtual void Clear(void); virtual void Replace( long lFrom ,long lTo @@ -77,20 +70,19 @@ public: ,long lTo ); - // load the controls contents from the file - virtual bool LoadFile(const wxString& rsFile); + virtual bool DoLoadFile(const wxString& rsFile, int fileType); - // clears the dirty flag + virtual void MarkDirty(); virtual void DiscardEdits(void); - // writing text inserts it at the current position, appending always - // inserts it at the end virtual void WriteText(const wxString& rsText); virtual void AppendText(const wxString& rsText); + virtual bool EmulateKeyPress(const wxKeyEvent& rEvent); - // translate between the position (which is just an index in the text ctrl - // considering all its contents as a single strings) and (x, y) coordinates - // which represent column and line. + virtual bool SetStyle( long lStart + ,long lEnd + ,const wxTextAttr& rStyle + ); virtual long XYToPosition( long lX ,long lY ) const; @@ -101,7 +93,6 @@ public: virtual void ShowPosition(long lPos); - // Clipboard operations virtual void Copy(void); virtual void Cut(void); virtual void Paste(void); @@ -110,23 +101,22 @@ public: virtual bool CanCut(void) const; virtual bool CanPaste(void) const; - // Undo/redo virtual void Undo(void); virtual void Redo(void); virtual bool CanUndo(void) const; virtual bool CanRedo(void) const; - // Insertion point virtual void SetInsertionPoint(long lPos); virtual void SetInsertionPointEnd(void); virtual long GetInsertionPoint(void) const; - virtual long GetLastPosition(void) const; + virtual wxTextPos GetLastPosition(void) const; virtual void SetSelection( long lFrom ,long lTo ); virtual void SetEditable(bool bEditable); + virtual void SetWindowStyleFlag(long lStyle); // // Implementation from now on @@ -162,12 +152,16 @@ public: void OnPaste(wxCommandEvent& rEvent); void OnUndo(wxCommandEvent& rEvent); void OnRedo(wxCommandEvent& rEvent); + void OnDelete(wxCommandEvent& rEvent); + void OnSelectAll(wxCommandEvent& rEvent); void OnUpdateCut(wxUpdateUIEvent& rEvent); void OnUpdateCopy(wxUpdateUIEvent& rEvent); void OnUpdatePaste(wxUpdateUIEvent& rEvent); void OnUpdateUndo(wxUpdateUIEvent& rEvent); void OnUpdateRedo(wxUpdateUIEvent& rEvent); + void OnUpdateDelete(wxUpdateUIEvent& rEvent); + void OnUpdateSelectAll(wxUpdateUIEvent& rEvent); inline bool IsMLE(void) {return m_bIsMLE;} inline void SetMLE(bool bIsMLE) {m_bIsMLE = bIsMLE;} @@ -179,8 +173,21 @@ protected: // void AdjustSpaceLimit(void); virtual wxSize DoGetBestSize(void) const; + virtual bool OS2ShouldPreProcessMessage(WXMSG* pMsg); + + virtual WXDWORD OS2GetStyle( long lStyle + ,WXDWORD* dwExstyle + ) const; + + virtual void DoSetValue(const wxString &value, int flags = 0); + + bool m_bSkipUpdate; private: + // implement wxTextEntry pure virtual: it implements all the operations for + // the simple EDIT controls + virtual WXHWND GetEditHWND() const { return m_hWnd; } + bool m_bIsMLE; DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxTextCtrl)