X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/78a17075019ea5bed5085d3afeb822c47d77a82c..438959cca892a7651634cc3a7aad4819ac49b23c:/include/wx/osx/cocoa/private/textimpl.h?ds=inline diff --git a/include/wx/osx/cocoa/private/textimpl.h b/include/wx/osx/cocoa/private/textimpl.h index 21a60a40c9..6f8d963af5 100644 --- a/include/wx/osx/cocoa/private/textimpl.h +++ b/include/wx/osx/cocoa/private/textimpl.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: textimpl.h +// Name: wx/osx/cocoa/private/textimpl.h // Purpose: textcontrol implementation classes that have to be exposed // Author: Stefan Csomor // Modified by: @@ -20,9 +20,17 @@ class wxNSTextFieldControl : public wxWidgetCocoaImpl, public wxTextWidgetImpl { public : - wxNSTextFieldControl( wxWindow *wxPeer, WXWidget w ); + // wxNSTextFieldControl must always be associated with a wxTextEntry. If + // it's associated with a wxTextCtrl then we can get the associated entry + // from it but otherwise the second ctor should be used to explicitly pass + // us the entry. + wxNSTextFieldControl( wxTextCtrl *text, WXWidget w ); + wxNSTextFieldControl( wxWindow *wxPeer, wxTextEntry *entry, WXWidget w ); virtual ~wxNSTextFieldControl(); + virtual bool CanClipMaxLength() const { return true; } + virtual void SetMaxLength(unsigned long len); + virtual wxString GetStringValue() const ; virtual void SetStringValue( const wxString &str) ; virtual void Copy() ; @@ -34,12 +42,22 @@ public : virtual void SetSelection( long from , long to ); virtual void WriteText(const wxString& str) ; virtual bool HasOwnContextMenu() const { return true; } + virtual bool SetHint(const wxString& hint); virtual void controlAction(WXWidget slf, void* _cmd, void *sender); + virtual bool becomeFirstResponder(WXWidget slf, void *_cmd); + virtual bool resignFirstResponder(WXWidget slf, void *_cmd); + + virtual void SetInternalSelection( long from , long to ); + protected : NSTextField* m_textField; long m_selStart; long m_selEnd; + +private: + // Common part of both ctors. + void Init(WXWidget w); }; class wxNSTextViewControl : public wxWidgetCocoaImpl, public wxTextWidgetImpl @@ -59,14 +77,14 @@ public: virtual void SetSelection( long from , long to ); virtual void WriteText(const wxString& str) ; virtual void SetFont( const wxFont & font , const wxColour& foreground , long windowStyle, bool ignoreBlack = true ); - + virtual bool GetStyle(long position, wxTextAttr& style); virtual void SetStyle(long start, long end, const wxTextAttr& style); - + virtual bool CanFocus() const; - + virtual bool HasOwnContextMenu() const { return true; } - + virtual void CheckSpelling(bool check); virtual wxSize GetBestSize() const; @@ -78,22 +96,25 @@ protected: class wxNSComboBoxControl : public wxNSTextFieldControl, public wxComboWidgetImpl { public : - wxNSComboBoxControl( wxWindow *wxPeer, WXWidget w ); + wxNSComboBoxControl( wxComboBox *wxPeer, WXWidget w ); virtual ~wxNSComboBoxControl(); - + virtual int GetSelectedItem() const; virtual void SetSelectedItem(int item); - + virtual int GetNumberOfItems() const; - + virtual void InsertItem(int pos, const wxString& item); virtual void RemoveItem(int pos); - + virtual void Clear(); - + virtual wxString GetStringAtIndex(int pos) const; - + virtual int FindString(const wxString& text) const; + virtual void Popup(); + virtual void Dismiss(); + private: NSComboBox* m_comboBox; };