X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fadc2df6823d988f7a264b94e69a7e1bbcac1337..d3fa4bc22e84e3ca4d88cc1772f2d414140a1017:/interface/wx/odcombo.h diff --git a/interface/wx/odcombo.h b/interface/wx/odcombo.h index 93ca6bc2d5..0e639178c5 100644 --- a/interface/wx/odcombo.h +++ b/interface/wx/odcombo.h @@ -3,7 +3,7 @@ // Purpose: interface of wxOwnerDrawnComboBox // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -22,6 +22,27 @@ enum wxOwnerDrawnComboBoxPaintingFlags wxODCB_PAINTING_SELECTED = 0x0002 }; + +/** + New window styles for wxOwnerDrawnComboBox +*/ +enum +{ + /** + Double-clicking cycles item if wxCB_READONLY is also used. + */ + wxODCB_DCLICK_CYCLES = wxCC_SPECIAL_DCLICK, + + /** + If used, control itself is not custom paint using callback. + Even if this is not used, writable combo is never custom paint + until SetCustomPaintWidth is called + */ + wxODCB_STD_CONTROL_PAINT = 0x1000 +}; + + + /** @class wxOwnerDrawnComboBox @@ -45,9 +66,9 @@ enum wxOwnerDrawnComboBoxPaintingFlags @see wxComboCtrl window styles and @ref overview_windowstyles. - @beginEventTable{wxCommandEvent} + @beginEventEmissionTable{wxCommandEvent} @event{EVT_COMBOBOX(id, func)} - Process a wxEVT_COMMAND_COMBOBOX_SELECTED event, when an item on + Process a wxEVT_COMBOBOX event, when an item on the list is selected. Note that calling GetValue() returns the new value of selection. @endEventTable @@ -56,11 +77,11 @@ enum wxOwnerDrawnComboBoxPaintingFlags @library{wxadv} @category{ctrl} - @appearance{ownerdrawncombobox.png} + @appearance{ownerdrawncombobox} @see wxComboCtrl, wxComboBox, wxVListBox, wxCommandEvent */ -class wxOwnerDrawnComboBox : public wxComboCtrl +class wxOwnerDrawnComboBox : public wxComboCtrl, public wxItemContainer { public: /** @@ -68,7 +89,6 @@ public: */ wxOwnerDrawnComboBox(); - //@{ /** Constructor, creating and showing a owner-drawn combobox. @@ -97,11 +117,11 @@ public: @see Create(), wxValidator */ wxOwnerDrawnComboBox(wxWindow* parent, wxWindowID id, - const wxString& value = "", + const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, int n = 0, - const wxString[] choices = NULL, + const wxString choices[] = NULL, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = "comboBox"); @@ -138,7 +158,6 @@ public: long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = "comboBox"); - //@} /** Destructor, destroying the owner-drawn combobox. @@ -152,22 +171,33 @@ public: @remarks Derived classes should call or replace this function. */ - bool Create(wxWindow* parent, wxWindowID id, - const wxString& value = "", + bool Create(wxWindow *parent, + wxWindowID id, + const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - int n, const wxString choices[], long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = "comboBox"); - bool Create(wxWindow* parent, wxWindowID id, + const wxString& name = wxComboBoxNameStr); + bool Create(wxWindow *parent, + wxWindowID id, + const wxString& value, + const wxPoint& pos, + const wxSize& size, + int n, + const wxString choices[], + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxComboBoxNameStr); + bool Create(wxWindow *parent, + wxWindowID id, const wxString& value, const wxPoint& pos, const wxSize& size, const wxArrayString& choices, long style = 0, const wxValidator& validator = wxDefaultValidator, - const wxString& name = "comboBox"); + const wxString& name = wxComboBoxNameStr); //@} /** @@ -180,6 +210,8 @@ public: */ virtual int GetWidestItemWidth(); +protected: + /** This method is used to draw the items background and, maybe, a border around it.