/////////////////////////////////////////////////////////////////////////////
-// Program: wxWindows Widgets Sample
+// Program: wxWidgets Widgets Sample
// Name: static.cpp
// Purpose: Part of the widgets sample showing various static controls
// Author: Vadim Zeitlin
// control ids
enum
{
- StaticPage_Reset = 100,
+ StaticPage_Reset = wxID_HIGHEST,
StaticPage_BoxText,
StaticPage_LabelText
};
class StaticWidgetsPage : public WidgetsPage
{
public:
- StaticWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
- virtual ~StaticWidgetsPage();
+ StaticWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist);
+ virtual ~StaticWidgetsPage(){};
+
+ virtual wxControl *GetWidget() const { return m_statText; }
+ virtual void RecreateWidget() { CreateStatic(); }
+
+ // lazy creation of the content
+ virtual void CreateContent();
protected:
// event handlers
wxStaticBox *m_staticBox;
wxStaticBoxSizer *m_sizerStatBox;
wxStaticText *m_statText;
+#if wxUSE_STATLINE
wxStaticLine *m_statLine;
+#endif // wxUSE_STATLINE
wxSizer *m_sizerStatic;
// the text entries for command parameters
// implementation
// ============================================================================
-IMPLEMENT_WIDGETS_PAGE(StaticWidgetsPage, _T("Static"));
+IMPLEMENT_WIDGETS_PAGE(StaticWidgetsPage, _T("Static"),
+ (int)wxPlatform(GENERIC_CTRLS).If(wxOS_WINDOWS,NATIVE_CTRLS)
+ );
-StaticWidgetsPage::StaticWidgetsPage(wxNotebook *notebook,
- wxImageList *imaglist)
- : WidgetsPage(notebook)
+StaticWidgetsPage::StaticWidgetsPage(WidgetsBookCtrl *book,
+ wxImageList *imaglist)
+ : WidgetsPage(book, imaglist, statbox_xpm)
{
- imaglist->Add(wxBitmap(statbox_xpm));
-
// init everything
m_chkVert =
m_chkAutoResize = (wxCheckBox *)NULL;
m_radioHAlign =
m_radioVAlign = (wxRadioBox *)NULL;
+#if wxUSE_STATLINE
m_statLine = (wxStaticLine *)NULL;
+#endif // wxUSE_STATLINE
m_statText = (wxStaticText *)NULL;
m_staticBox = (wxStaticBox *)NULL;
m_sizerStatBox = (wxStaticBoxSizer *)NULL;
m_sizerStatic = (wxSizer *)NULL;
+}
+void StaticWidgetsPage::CreateContent()
+{
wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL);
// left pane
Reset();
SetSizer(sizerTop);
-
- sizerTop->Fit(this);
-}
-
-StaticWidgetsPage::~StaticWidgetsPage()
-{
}
// ----------------------------------------------------------------------------
// delete m_sizerStatBox; -- deleted by Remove()
m_sizerStatic->Remove(m_sizerStatBox);
delete m_statText;
+#if wxUSE_STATLINE
delete m_statLine;
+#endif // wxUSE_STATLINE
}
int flagsBox = 0,
- flagsText = 0;
+ flagsText = ms_defaultFlags;
if ( !m_chkAutoResize->GetValue() )
{
wxDefaultPosition, wxDefaultSize,
flagsText);
+#if wxUSE_STATLINE
m_statLine = new wxStaticLine(this, wxID_ANY,
wxDefaultPosition, wxDefaultSize,
isVert ? wxLI_VERTICAL : wxLI_HORIZONTAL);
+#endif // wxUSE_STATLINE
m_sizerStatBox->Add(m_statText, 1, wxGROW | wxALL, 5);
+#if wxUSE_STATLINE
m_sizerStatBox->Add(m_statLine, 0, wxGROW | wxALL, 5);
+#endif // wxUSE_STATLINE
m_sizerStatBox->Add(0, 0, 1);
m_sizerStatic->Add(m_sizerStatBox, 1, wxGROW);