X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3bfa7be9771e14a164116fa2081171bcab17814f..f4f5d5697dc5e34a5582061dbd857d1cd4326f91:/samples/widgets/radiobox.cpp diff --git a/samples/widgets/radiobox.cpp b/samples/widgets/radiobox.cpp index ddb8456084..d0729c6f10 100644 --- a/samples/widgets/radiobox.cpp +++ b/samples/widgets/radiobox.cpp @@ -51,7 +51,7 @@ // control ids enum { - RadioPage_Reset = 100, + RadioPage_Reset = wxID_HIGHEST, RadioPage_Update, RadioPage_Selection, RadioPage_Label, @@ -83,10 +83,14 @@ static const int TEST_BUTTON = 1; class RadioWidgetsPage : public WidgetsPage { public: - RadioWidgetsPage(wxBookCtrlBase *book, wxImageList *imaglist); + RadioWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist); virtual ~RadioWidgetsPage(){}; virtual wxControl *GetWidget() const { return m_radio; } + virtual void RecreateWidget() { CreateRadio(); } + + // lazy creation of the content + virtual void CreateContent(); protected: // event handlers @@ -172,14 +176,20 @@ END_EVENT_TABLE() // implementation // ============================================================================ -IMPLEMENT_WIDGETS_PAGE(RadioWidgetsPage, _T("Radio")); +#if defined(__WXUNIVERSAL__) + #define FAMILY_CTRLS UNIVERSAL_CTRLS +#else + #define FAMILY_CTRLS NATIVE_CTRLS +#endif + +IMPLEMENT_WIDGETS_PAGE(RadioWidgetsPage, _T("Radio"), + FAMILY_CTRLS | WITH_ITEMS_CTRLS + ); -RadioWidgetsPage::RadioWidgetsPage(wxBookCtrlBase *book, +RadioWidgetsPage::RadioWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist) - : WidgetsPage(book) + : WidgetsPage(book, imaglist, radio_xpm) { - imaglist->Add(wxBitmap(radio_xpm)); - // init everything m_chkVert = (wxCheckBox *)NULL; m_chkEnableItem = (wxCheckBox *)NULL; @@ -192,7 +202,10 @@ RadioWidgetsPage::RadioWidgetsPage(wxBookCtrlBase *book, m_radio = m_radioDir = (wxRadioBox *)NULL; m_sizerRadio = (wxSizer *)NULL; +} +void RadioWidgetsPage::CreateContent() +{ wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL); // left pane @@ -289,8 +302,6 @@ RadioWidgetsPage::RadioWidgetsPage(wxBookCtrlBase *book, // final initializations SetSizer(sizerTop); - - sizerTop->Fit(this); } // ---------------------------------------------------------------------------- @@ -356,6 +367,8 @@ void RadioWidgetsPage::CreateRadio() int flags = m_chkVert->GetValue() ? wxRA_VERTICAL : wxRA_HORIZONTAL; + flags |= ms_defaultFlags; + #ifdef wxRA_LEFTTORIGHT switch ( m_radioDir->GetSelection() ) {