X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7cdf27dc555cb8c28e529d8f8066ddd5271f0af1..bc429ce01f519f3edae182b516cb15b8d2df54a7:/samples/widgets/listbox.cpp?ds=sidebyside diff --git a/samples/widgets/listbox.cpp b/samples/widgets/listbox.cpp index 90de90af97..b189d3b22b 100644 --- a/samples/widgets/listbox.cpp +++ b/samples/widgets/listbox.cpp @@ -81,6 +81,9 @@ public: virtual wxControl *GetWidget() const { return m_lbox; } virtual void RecreateWidget() { CreateLbox(); } + // lazy creation of the content + virtual void CreateContent(); + protected: // event handlers void OnButtonReset(wxCommandEvent& event); @@ -142,7 +145,13 @@ protected: *m_chkOwnerDraw; // the listbox itself and the sizer it is in - wxListBoxBase *m_lbox; +#ifdef __WXWINCE__ + wxListBoxBase +#else + wxListBox +#endif + *m_lbox; + wxSizer *m_sizerLbox; // the text entries for "Add/change string" and "Delete" buttons @@ -205,10 +214,8 @@ IMPLEMENT_WIDGETS_PAGE(ListboxWidgetsPage, _T("Listbox"), ListboxWidgetsPage::ListboxWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist) - : WidgetsPage(book) + : WidgetsPage(book, imaglist, listbox_xpm) { - imaglist->Add(wxBitmap(listbox_xpm)); - // init everything m_radioSelMode = (wxRadioBox *)NULL; @@ -218,9 +225,13 @@ ListboxWidgetsPage::ListboxWidgetsPage(WidgetsBookCtrl *book, m_chkSort = m_chkOwnerDraw = (wxCheckBox *)NULL; - m_lbox = (wxListBoxBase *)NULL; + m_lbox = NULL; m_sizerLbox = (wxSizer *)NULL; +} + +void ListboxWidgetsPage::CreateContent() +{ /* What we create here is a frame having 3 panes: style pane is the leftmost one, in the middle the pane with buttons allowing to perform