X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9ff4b6ccd9c918a4b7b83a6ed263a7d545bb32fb..438959cca892a7651634cc3a7aad4819ac49b23c:/include/wx/odcombo.h diff --git a/include/wx/odcombo.h b/include/wx/odcombo.h index 026720bcee..2d5439f186 100644 --- a/include/wx/odcombo.h +++ b/include/wx/odcombo.h @@ -93,6 +93,7 @@ public: virtual void OnComboCharEvent( wxKeyEvent& event ); virtual void OnComboDoubleClick(); virtual bool LazyCreate(); + virtual bool FindItem(const wxString& item, wxString* trueItem); // Item management void SetSelection( int item ); @@ -164,7 +165,6 @@ protected: // filter mouse move events happening outside the list box // move selection with cursor void OnMouseMove(wxMouseEvent& event); - void OnMouseWheel(wxMouseEvent& event); void OnKey(wxKeyEvent& event); void OnChar(wxKeyEvent& event); void OnLeftClick(wxMouseEvent& event); @@ -233,15 +233,15 @@ private: // the wxComboCtrl. // ---------------------------------------------------------------------------- -class WXDLLIMPEXP_ADV wxOwnerDrawnComboBox : public wxComboCtrl, - public wxItemContainer +class WXDLLIMPEXP_ADV wxOwnerDrawnComboBox : + public wxWindowWithItems { //friend class wxComboPopupWindow; friend class wxVListBoxComboPopup; public: // ctors and such - wxOwnerDrawnComboBox() : wxComboCtrl() { Init(); } + wxOwnerDrawnComboBox() { Init(); } wxOwnerDrawnComboBox(wxWindow *parent, wxWindowID id, @@ -253,7 +253,6 @@ public: long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxComboBoxNameStr) - : wxComboCtrl() { Init(); @@ -272,11 +271,11 @@ public: wxOwnerDrawnComboBox(wxWindow *parent, wxWindowID id, - const wxString& value, - const wxPoint& pos, - const wxSize& size, - const wxArrayString& choices, - long style, + const wxString& value = wxEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + const wxArrayString& choices = wxArrayString(), + long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxComboBoxNameStr); @@ -317,8 +316,9 @@ public: virtual void Select(int n); virtual int GetSelection() const; - // Override this just to maintain consistency with virtual methods + // Override these just to maintain consistency with virtual methods // between classes. + virtual void Clear(); virtual void GetSelection(long *from, long *to) const; virtual void SetSelection(int n) { Select(n); } @@ -338,8 +338,6 @@ public: virtual bool IsSorted() const { return HasFlag(wxCB_SORT); } - wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST - protected: virtual void DoClear(); virtual void DoDeleteOneItem(unsigned int n); @@ -357,6 +355,10 @@ protected: // Callback for item width, or -1 for default/undetermined virtual wxCoord OnMeasureItemWidth( size_t item ) const; + // override base implementation so we can return the size for the + // largest item + virtual wxSize DoGetBestSize() const; + // Callback for background drawing. Flags are same as with // OnDrawItem. virtual void OnDrawBackground( wxDC& dc, const wxRect& rect, int item, int flags ) const;