X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/235751501d3bb4141424cc08a7d88dd506746d18..50b2d5444664827e97c637b3921500ea22b4fd45:/include/wx/editlbox.h diff --git a/include/wx/editlbox.h b/include/wx/editlbox.h index 1e8a2e61ab..212028b716 100644 --- a/include/wx/editlbox.h +++ b/include/wx/editlbox.h @@ -25,6 +25,9 @@ class WXDLLEXPORT wxListEvent; #define wxEL_ALLOW_EDIT 0x0200 #define wxEL_ALLOW_DELETE 0x0400 #define wxEL_NO_REORDER 0x0800 +#define wxEL_DEFAULT_STYLE (wxEL_ALLOW_NEW | wxEL_ALLOW_EDIT | wxEL_ALLOW_DELETE) + +extern WXDLLIMPEXP_DATA_ADV(const wxChar) wxEditableListBoxNameStr[]; // This class provides a composite control that lets the // user easily enter list of strings @@ -32,12 +35,25 @@ class WXDLLEXPORT wxListEvent; class WXDLLIMPEXP_ADV wxEditableListBox : public wxPanel { public: + wxEditableListBox() { Init(); } + wxEditableListBox(wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxEL_ALLOW_NEW | wxEL_ALLOW_EDIT | wxEL_ALLOW_DELETE, - const wxString& name = wxT("editableListBox")); + long style = wxEL_DEFAULT_STYLE, + const wxString& name = wxEditableListBoxNameStr) + { + Init(); + Create(parent, id, label, pos, size, style, name); + } + + bool Create(wxWindow *parent, wxWindowID id, + const wxString& label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxEL_DEFAULT_STYLE, + const wxString& name = wxEditableListBoxNameStr); void SetStrings(const wxArrayString& strings); void GetStrings(wxArrayString& strings) const; @@ -55,6 +71,14 @@ protected: int m_selection; long m_style; + void Init() + { + m_style = 0; + m_selection = 0; + m_bEdit = m_bNew = m_bDel = m_bUp = m_bDown = NULL; + m_listCtrl = NULL; + } + void OnItemSelected(wxListEvent& event); void OnEndLabelEdit(wxListEvent& event); void OnNewItem(wxCommandEvent& event);