X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b7bfef380642a8afd3606ac1e6835bb3fb475051..9869c26285dc51d13607cddaa04f65ce983653a5:/include/wx/msw/combobox.h diff --git a/include/wx/msw/combobox.h b/include/wx/msw/combobox.h index e96d4d95c4..8649187c09 100644 --- a/include/wx/msw/combobox.h +++ b/include/wx/msw/combobox.h @@ -4,7 +4,6 @@ // Author: Julian Smart // Modified by: // Created: 01/02/97 -// RCS-ID: $Id$ // Copyright: (c) Julian Smart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -75,6 +74,10 @@ public: const wxValidator& validator = wxDefaultValidator, const wxString& name = wxComboBoxNameStr); + // See wxComboBoxBase discussion of IsEmpty(). + bool IsListEmpty() const { return wxItemContainer::IsEmpty(); } + bool IsTextEmpty() const { return wxTextEntry::IsEmpty(); } + // resolve ambiguities among virtual functions inherited from both base // classes virtual void Clear(); @@ -82,11 +85,13 @@ public: virtual void SetValue(const wxString& value); virtual wxString GetStringSelection() const { return wxChoice::GetStringSelection(); } - + virtual void Popup() { MSWDoPopupOrDismiss(true); } + virtual void Dismiss() { MSWDoPopupOrDismiss(false); } virtual void SetSelection(int n) { wxChoice::SetSelection(n); } virtual void SetSelection(long from, long to) { wxTextEntry::SetSelection(from, to); } virtual int GetSelection() const { return wxChoice::GetSelection(); } + virtual bool ContainsHWND(WXHWND hWnd) const; virtual void GetSelection(long *from, long *to) const; virtual bool IsEditable() const; @@ -116,11 +121,18 @@ public: virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; +#if wxUSE_UXTHEME + // override wxTextEntry method to work around Windows bug + virtual bool SetHint(const wxString& hint); +#endif // wxUSE_UXTHEME + protected: #if wxUSE_TOOLTIPS virtual void DoSetToolTip(wxToolTip *tip); #endif + virtual wxSize DoGetSizeFromTextSize(int xlen, int ylen = -1) const; + // this is the implementation of GetEditHWND() which can also be used when // we don't have the edit control, it simply returns NULL then // @@ -136,8 +148,9 @@ protected: } private: - // this is the overridden wxTextEntry method which should only be called - // when we do have an edit control so it asserts if this is not the case + // there are the overridden wxTextEntry methods which should only be called + // when we do have an edit control so they assert if this is not the case + virtual wxWindow *GetEditableWindow(); virtual WXHWND GetEditHWND() const; // common part of all ctors