X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9467bdb7f5bfde9f99331097daacb93564ca122e..51181d291194b7ae616cfb17c984fd8927e4a977:/include/wx/univ/combobox.h?ds=sidebyside diff --git a/include/wx/univ/combobox.h b/include/wx/univ/combobox.h index 383582c06f..2b26eb5180 100644 --- a/include/wx/univ/combobox.h +++ b/include/wx/univ/combobox.h @@ -15,7 +15,7 @@ #include "wx/combo.h" -class WXDLLEXPORT wxListBox; +class WXDLLIMPEXP_FWD_CORE wxListBox; // ---------------------------------------------------------------------------- // NB: some actions supported by this control are in wx/generic/combo.h @@ -31,7 +31,7 @@ class WXDLLEXPORT wxListBox; // wxComboBox: a combination of text control and a listbox // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxComboBox : public wxComboCtrl, public wxComboBoxBase +class WXDLLIMPEXP_CORE wxComboBox : public wxComboCtrl, public wxComboBoxBase { public: // ctors and such @@ -93,6 +93,7 @@ public: // wxTextCtrl methods virtual wxString GetValue() const; virtual void SetValue(const wxString& value); + virtual void WriteText(const wxString& value); virtual void Copy(); virtual void Cut(); virtual void Paste(); @@ -103,6 +104,7 @@ public: virtual void Replace(long from, long to, const wxString& value); virtual void Remove(long from, long to); virtual void SetSelection(long from, long to); + virtual void GetSelection(long *from, long *to) const; virtual void SetEditable(bool editable); virtual bool IsEditable() const; @@ -117,14 +119,15 @@ public: virtual bool CanRedo() const; // wxControlWithItems methods - virtual void Clear(); - virtual void Delete(unsigned int n); + virtual void DoClear(); + virtual void DoDeleteOneItem(unsigned int n); virtual unsigned int GetCount() const; virtual wxString GetString(unsigned int n) const; virtual void SetString(unsigned int n, const wxString& s); virtual int FindString(const wxString& s, bool bCase = false) const; virtual void SetSelection(int n); virtual int GetSelection() const; + virtual wxString GetStringSelection() const; wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST @@ -142,13 +145,19 @@ public: return GetStdInputHandler(handlerDef); } + // we delegate our client data handling to wxListBox which we use for the + // items, so override this and other methods dealing with the client data + virtual wxClientDataType GetClientDataType() const; + virtual void SetClientDataType(wxClientDataType clientDataItemsType); + protected: - virtual int DoAppend(const wxString& item); - virtual int DoInsert(const wxString& item, unsigned int pos); + virtual int DoInsertItems(const wxArrayStringsAdapter& items, + unsigned int pos, + void **clientData, wxClientDataType type); + virtual void DoSetItemClientData(unsigned int n, void* clientData); virtual void* DoGetItemClientData(unsigned int n) const; - virtual void DoSetItemClientObject(unsigned int n, wxClientData* clientData); - virtual wxClientData* DoGetItemClientObject(unsigned int n) const; + // common part of all ctors void Init();