X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9a83f860948059b0273b5cc6d9e43fadad3ebfca..a7689c49fe02c0c065facf736ab28b19f5997b7c:/include/wx/univ/combobox.h diff --git a/include/wx/univ/combobox.h b/include/wx/univ/combobox.h index 7fef4303bf..ac63fd63c3 100644 --- a/include/wx/univ/combobox.h +++ b/include/wx/univ/combobox.h @@ -31,7 +31,11 @@ class WXDLLIMPEXP_FWD_CORE wxListBox; // wxComboBox: a combination of text control and a listbox // ---------------------------------------------------------------------------- -class WXDLLIMPEXP_CORE wxComboBox : public wxComboCtrl, public wxComboBoxBase +// NB: Normally we'd like wxComboBox to inherit from wxComboBoxBase, but here +// we can't really do that since both wxComboBoxBase and wxComboCtrl inherit +// from wxTextCtrl. +class WXDLLIMPEXP_CORE wxComboBox : + public wxWindowWithItems { public: // ctors and such @@ -118,6 +122,17 @@ public: virtual bool CanUndo() const; virtual bool CanRedo() const; + // override these methods to disambiguate between two base classes versions + virtual void Clear() + { + wxComboCtrl::Clear(); + wxItemContainer::Clear(); + } + + // See wxComboBoxBase discussion of IsEmpty(). + bool IsListEmpty() const { return wxItemContainer::IsEmpty(); } + bool IsTextEmpty() const { return wxTextEntry::IsEmpty(); } + // wxControlWithItems methods virtual void DoClear(); virtual void DoDeleteOneItem(unsigned int n); @@ -129,8 +144,6 @@ public: virtual int GetSelection() const; virtual wxString GetStringSelection() const; - wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST - // we have our own input handler and our own actions // (but wxComboCtrl already handled Popup/Dismiss) /*