X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0ec1179b86dac6c87ad9f2cd126f87e92642c62c..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/combobox.h diff --git a/include/wx/combobox.h b/include/wx/combobox.h index bc33a141c7..93b3699553 100644 --- a/include/wx/combobox.h +++ b/include/wx/combobox.h @@ -4,7 +4,6 @@ // Author: Vadim Zeitlin // Modified by: // Created: 24.12.00 -// RCS-ID: $Id$ // Copyright: (c) 1996-2000 wxWidgets team // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -16,7 +15,11 @@ #if wxUSE_COMBOBOX -extern WXDLLEXPORT_DATA(const wxChar) wxComboBoxNameStr[]; +// For compatibility with 2.8 include this header to allow using wxTE_XXX +// styles with wxComboBox without explicitly including it in the user code. +#include "wx/textctrl.h" + +extern WXDLLIMPEXP_DATA_CORE(const char) wxComboBoxNameStr[]; // ---------------------------------------------------------------------------- // wxComboBoxBase: this interface defines the methods wxComboBox must implement @@ -25,17 +28,25 @@ extern WXDLLEXPORT_DATA(const wxChar) wxComboBoxNameStr[]; #include "wx/ctrlsub.h" #include "wx/textentry.h" -class WXDLLEXPORT wxComboBoxBase : public wxItemContainer, - public wxTextEntry +class WXDLLIMPEXP_CORE wxComboBoxBase : public wxItemContainer, + public wxTextEntry { public: - // override this to disambiguate between two base classes versions + // override these methods to disambiguate between two base classes versions virtual void Clear() { wxTextEntry::Clear(); wxItemContainer::Clear(); } + // IsEmpty() is ambiguous because we inherit it from both wxItemContainer + // and wxTextEntry, and even if defined it here to help the compiler with + // choosing one of them, it would still be confusing for the human users of + // this class. So instead define the clearly named methods below and leave + // IsEmpty() ambiguous to trigger a compilation error if it's used. + bool IsListEmpty() const { return wxItemContainer::IsEmpty(); } + bool IsTextEmpty() const { return wxTextEntry::IsEmpty(); } + // also bring in GetSelection() versions of both base classes in scope // // NB: GetSelection(from, to) could be already implemented in wxTextEntry @@ -45,6 +56,9 @@ public: virtual int GetSelection() const = 0; virtual void GetSelection(long *from, long *to) const = 0; + virtual void Popup() { wxFAIL_MSG( wxT("Not implemented") ); } + virtual void Dismiss() { wxFAIL_MSG( wxT("Not implemented") ); } + // may return value different from GetSelection() when the combobox // dropdown is shown and the user selected, but not yet accepted, a value // different from the old one in it @@ -66,7 +80,7 @@ public: #elif defined(__WXGTK__) #include "wx/gtk1/combobox.h" #elif defined(__WXMAC__) - #include "wx/mac/combobox.h" + #include "wx/osx/combobox.h" #elif defined(__WXCOCOA__) #include "wx/cocoa/combobox.h" #elif defined(__WXPM__)