X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9dd96c0f6d5da873324f4013252061c69ed0d61c..f5058cd7d926d45a6b0673a0b557ca0792f60e48:/samples/widgets/spinbtn.cpp?ds=sidebyside diff --git a/samples/widgets/spinbtn.cpp b/samples/widgets/spinbtn.cpp index 801ef7417d..a1ea73f112 100644 --- a/samples/widgets/spinbtn.cpp +++ b/samples/widgets/spinbtn.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Program: wxWindows Widgets Sample +// Program: wxWidgets Widgets Sample // Name: spinbtn.cpp // Purpose: Part of the widgets sample showing wxSpinButton // Author: Vadim Zeitlin @@ -24,10 +24,13 @@ #pragma hdrstop #endif +#if wxUSE_SPINBTN + // for all others, include the necessary headers #ifndef WX_PRECOMP #include "wx/log.h" + #include "wx/bitmap.h" #include "wx/button.h" #include "wx/checkbox.h" #include "wx/radiobox.h" @@ -41,7 +44,7 @@ #include "wx/sizer.h" #include "widgets.h" -#if 1 + #include "icons/spinbtn.xpm" // ---------------------------------------------------------------------------- @@ -70,8 +73,12 @@ enum class SpinBtnWidgetsPage : public WidgetsPage { public: - SpinBtnWidgetsPage(wxNotebook *notebook, wxImageList *imaglist); - virtual ~SpinBtnWidgetsPage(); + SpinBtnWidgetsPage(wxBookCtrlBase *book, wxImageList *imaglist); + virtual ~SpinBtnWidgetsPage(){}; + + virtual wxControl *GetWidget() const { return m_spinbtn; } + virtual wxControl *GetWidget2() const { return m_spinctrl; } + virtual void RecreateWidget() { CreateSpin(); } protected: // event handlers @@ -82,10 +89,10 @@ protected: void OnCheckOrRadioBox(wxCommandEvent& event); - void OnSpinBtn(wxCommandEvent& event); - void OnSpinBtnUp(wxCommandEvent& event); - void OnSpinBtnDown(wxCommandEvent& event); - void OnSpinCtrl(wxCommandEvent& event); + void OnSpinBtn(wxSpinEvent& event); + void OnSpinBtnUp(wxSpinEvent& event); + void OnSpinBtnDown(wxSpinEvent& event); + void OnSpinCtrl(wxSpinEvent& event); void OnUpdateUIValueButton(wxUpdateUIEvent& event); void OnUpdateUIMinMaxButton(wxUpdateUIEvent& event); @@ -151,8 +158,8 @@ BEGIN_EVENT_TABLE(SpinBtnWidgetsPage, WidgetsPage) EVT_SPIN_DOWN(SpinBtnPage_SpinBtn, SpinBtnWidgetsPage::OnSpinBtnDown) EVT_SPINCTRL(SpinBtnPage_SpinCtrl, SpinBtnWidgetsPage::OnSpinCtrl) - EVT_CHECKBOX(-1, SpinBtnWidgetsPage::OnCheckOrRadioBox) - EVT_RADIOBOX(-1, SpinBtnWidgetsPage::OnCheckOrRadioBox) + EVT_CHECKBOX(wxID_ANY, SpinBtnWidgetsPage::OnCheckOrRadioBox) + EVT_RADIOBOX(wxID_ANY, SpinBtnWidgetsPage::OnCheckOrRadioBox) END_EVENT_TABLE() // ============================================================================ @@ -161,9 +168,9 @@ END_EVENT_TABLE() IMPLEMENT_WIDGETS_PAGE(SpinBtnWidgetsPage, _T("Spin")); -SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook, +SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxBookCtrlBase *book, wxImageList *imaglist) - : WidgetsPage(notebook) + : WidgetsPage(book) { m_chkVert = NULL; m_chkWrap = NULL; @@ -187,7 +194,7 @@ SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook, wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL); // left pane - wxStaticBox *box = new wxStaticBox(this, -1, _T("&Set style")); + wxStaticBox *box = new wxStaticBox(this, wxID_ANY, _T("&Set style")); wxSizer *sizerLeft = new wxStaticBoxSizer(box, wxVERTICAL); m_chkVert = CreateCheckBoxAndAddToSizer(sizerLeft, _T("&Vertical")); @@ -199,14 +206,16 @@ SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook, sizerLeft->Add(btn, 0, wxALIGN_CENTRE_HORIZONTAL | wxALL, 15); // middle pane - wxStaticBox *box2 = new wxStaticBox(this, -1, _T("&Change spinbtn value")); + wxStaticBox *box2 = new wxStaticBox(this, wxID_ANY, + _T("&Change spinbtn value")); + wxSizer *sizerMiddle = new wxStaticBoxSizer(box2, wxVERTICAL); wxTextCtrl *text; wxSizer *sizerRow = CreateSizerWithTextAndLabel(_T("Current value"), SpinBtnPage_CurValueText, &text); - text->SetEditable(FALSE); + text->SetEditable(false); sizerMiddle->Add(sizerRow, 0, wxALL | wxGROW, 5); @@ -221,7 +230,7 @@ SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook, SpinBtnPage_MinText, &m_textMin); - m_textMax = new wxTextCtrl(this, SpinBtnPage_MaxText, _T("")); + m_textMax = new wxTextCtrl(this, SpinBtnPage_MaxText, wxEmptyString); sizerRow->Add(m_textMax, 1, wxLEFT | wxALIGN_CENTRE_VERTICAL, 5); m_textMin->SetValue( wxString::Format(_T("%d"), m_min) ); @@ -243,29 +252,24 @@ SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook, sizerTop->Add(sizerRight, 1, wxGROW | (wxALL & ~wxRIGHT), 10); // final initializations - SetAutoLayout(TRUE); SetSizer(sizerTop); sizerTop->Fit(this); } -SpinBtnWidgetsPage::~SpinBtnWidgetsPage() -{ -} - // ---------------------------------------------------------------------------- // operations // ---------------------------------------------------------------------------- void SpinBtnWidgetsPage::Reset() { - m_chkVert->SetValue(TRUE); - m_chkWrap->SetValue(FALSE); + m_chkVert->SetValue(true); + m_chkWrap->SetValue(false); } void SpinBtnWidgetsPage::CreateSpin() { - int flags = 0; + int flags = ms_defaultFlags; bool isVert = m_chkVert->GetValue(); if ( isVert ) @@ -383,7 +387,7 @@ void SpinBtnWidgetsPage::OnUpdateUIResetButton(wxUpdateUIEvent& event) event.Enable( !m_chkVert->GetValue() || m_chkWrap->GetValue() ); } -void SpinBtnWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& event) +void SpinBtnWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& WXUNUSED(event)) { CreateSpin(); } @@ -393,7 +397,7 @@ void SpinBtnWidgetsPage::OnUpdateUICurValueText(wxUpdateUIEvent& event) event.SetText( wxString::Format(_T("%d"), m_spinbtn->GetValue())); } -void SpinBtnWidgetsPage::OnSpinBtn(wxCommandEvent& event) +void SpinBtnWidgetsPage::OnSpinBtn(wxSpinEvent& event) { int value = event.GetInt(); @@ -403,19 +407,19 @@ void SpinBtnWidgetsPage::OnSpinBtn(wxCommandEvent& event) wxLogMessage(_T("Spin button value changed, now %d"), value); } -void SpinBtnWidgetsPage::OnSpinBtnUp(wxCommandEvent& event) +void SpinBtnWidgetsPage::OnSpinBtnUp(wxSpinEvent& event) { - wxLogMessage( _T("Spin button value incremented, will be %ld (was %d)"), + wxLogMessage( _T("Spin button value incremented, will be %d (was %d)"), event.GetInt(), m_spinbtn->GetValue() ); } -void SpinBtnWidgetsPage::OnSpinBtnDown(wxCommandEvent& event) +void SpinBtnWidgetsPage::OnSpinBtnDown(wxSpinEvent& event) { - wxLogMessage( _T("Spin button value decremented, will be %ld (was %d)"), + wxLogMessage( _T("Spin button value decremented, will be %d (was %d)"), event.GetInt(), m_spinbtn->GetValue() ); } -void SpinBtnWidgetsPage::OnSpinCtrl(wxCommandEvent& event) +void SpinBtnWidgetsPage::OnSpinCtrl(wxSpinEvent& event) { if (!m_spinctrl) return; @@ -427,3 +431,4 @@ void SpinBtnWidgetsPage::OnSpinCtrl(wxCommandEvent& event) wxLogMessage(_T("Spin control value changed, now %d"), value); } #endif + // wxUSE_SPINBTN