// control ids
enum
{
- RadioPage_Reset = 100,
+ RadioPage_Reset = wxID_HIGHEST,
RadioPage_Update,
RadioPage_Selection,
RadioPage_Label,
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
// 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;
m_radio =
m_radioDir = (wxRadioBox *)NULL;
m_sizerRadio = (wxSizer *)NULL;
+}
+void RadioWidgetsPage::CreateContent()
+{
wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL);
// left pane
int flags = m_chkVert->GetValue() ? wxRA_VERTICAL
: wxRA_HORIZONTAL;
+ flags |= ms_defaultFlags;
+
#ifdef wxRA_LEFTTORIGHT
switch ( m_radioDir->GetSelection() )
{