X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6762286db6cf974817dead5b88bebf0e390dbb7e..b02dd12239c8a59b9a545d9fcb04974f8ad02c6b:/include/wx/osx/textctrl.h diff --git a/include/wx/osx/textctrl.h b/include/wx/osx/textctrl.h index df6967f9ab..c983eee964 100644 --- a/include/wx/osx/textctrl.h +++ b/include/wx/osx/textctrl.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: wx/mac/carbon/textctrl.h +// Name: wx/osx/textctrl.h // Purpose: wxTextCtrl class // Author: Stefan Csomor // Modified by: @@ -26,9 +26,6 @@ #include "wx/control.h" #include "wx/textctrl.h" -// forward decl for wxListWidgetImpl implementation type. -class WXDLLIMPEXP_FWD_CORE wxTextWidgetImpl; - class WXDLLIMPEXP_CORE wxTextCtrl: public wxTextCtrlBase { DECLARE_DYNAMIC_CLASS(wxTextCtrl) @@ -63,46 +60,33 @@ public: // accessors // --------- - virtual wxString GetValue() const; virtual int GetLineLength(long lineNo) const; virtual wxString GetLineText(long lineNo) const; virtual int GetNumberOfLines() const; virtual bool IsModified() const; - virtual bool IsEditable() const; - - // If the return values from and to are the same, there is no selection. - virtual void GetSelection(long* from, long* to) const; // operations // ---------- - // editing - virtual void Clear(); - virtual void Replace(long from, long to, const wxString& value); - virtual void Remove(long from, long to); // sets/clears the dirty flag virtual void MarkDirty(); virtual void DiscardEdits(); - // set the max number of characters which may be entered - // in a single line text control - virtual void SetMaxLength(unsigned long len); + // set the grayed out hint text + virtual bool SetHint(const wxString& hint); + virtual wxString GetHint() const; // text control under some platforms supports the text styles: these // methods apply the given text style to the given selection or to // set/get the style which will be used for all appended text virtual bool SetFont( const wxFont &font ); + virtual bool GetStyle(long position, wxTextAttr& style); virtual bool SetStyle(long start, long end, const wxTextAttr& style); virtual bool SetDefaultStyle(const wxTextAttr& style); - // writing text inserts it at the current position; - // appending always inserts it at the end - virtual void WriteText(const wxString& text); - virtual void AppendText(const wxString& text); - // translate between the position (which is just an index into the textctrl // considering all its contents as a single strings) and (x, y) coordinates // which represent column and line. @@ -111,31 +95,11 @@ public: virtual void ShowPosition(long pos); - // Clipboard operations + // overrides so that we can send text updated events virtual void Copy(); 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; - - // Insertion point - virtual void SetInsertionPoint(long pos); - virtual void SetInsertionPointEnd(); - virtual long GetInsertionPoint() const; - virtual wxTextPos GetLastPosition() const; - - virtual void SetSelection(long from, long to); - virtual void SetEditable(bool editable); - // Implementation // -------------- virtual void Command(wxCommandEvent& event); @@ -145,6 +109,7 @@ public: // callbacks void OnDropFiles(wxDropFilesEvent& event); void OnChar(wxKeyEvent& event); // Process 'enter' if required + void OnKeyDown(wxKeyEvent& event); // Process clipboard shortcuts void OnCut(wxCommandEvent& event); void OnCopy(wxCommandEvent& event); @@ -170,39 +135,26 @@ public: virtual void MacSuperChangedPosition(); virtual void MacCheckSpelling(bool check); - wxTextWidgetImpl * GetTextPeer() const; protected: // common part of all ctors void Init(); virtual wxSize DoGetBestSize() const; - virtual void DoSetValue(const wxString& value, int flags = 0); - - bool m_editable; - // flag is set to true when the user edits the controls contents bool m_dirty; - // need to make this public because of the current implementation via callbacks - unsigned long m_maxLength; - - bool GetTriggerOnSetValue() const + virtual void EnableTextChangedEvents(bool WXUNUSED(enable)) { - return m_triggerOnSetValue; + // nothing to do here as the events are never generated when we change + // the controls value programmatically anyhow } - void SetTriggerOnSetValue(bool trigger) - { - m_triggerOnSetValue = trigger; - } - - bool m_triggerOnSetValue ; - private : - wxMenu *m_privateContextMenu; + wxMenu *m_privateContextMenu; + wxString m_hintString; - DECLARE_EVENT_TABLE() + DECLARE_EVENT_TABLE() }; #endif // _WX_TEXTCTRL_H_