X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/29c749b8baadae362b5739945646802f1e92da15..2c12daf99bde3012a994685e9b9499dffe804012:/samples/controls/controls.cpp diff --git a/samples/controls/controls.cpp b/samples/controls/controls.cpp index 71540feb37..4fea525155 100644 --- a/samples/controls/controls.cpp +++ b/samples/controls/controls.cpp @@ -177,12 +177,15 @@ public: void OnEnableAll(wxCommandEvent& event); void OnIdle( wxIdleEvent& event ); + void OnIconized( wxIconizeEvent& event ); + void OnMaximized( wxMaximizeEvent& event ); void OnSize( wxSizeEvent& event ); void OnMove( wxMoveEvent& event ); MyPanel *GetPanel() const { return m_panel; } private: +#if wxUSE_STATUSBAR void UpdateStatusBar(const wxPoint& pos, const wxSize& size) { if ( m_frameStatusBar ) @@ -198,6 +201,7 @@ private: SetStatusText(msg, 1); } } +#endif // wxUSE_STATUSBAR MyPanel *m_panel; @@ -639,7 +643,6 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) wxButton *button = new MyButton( panel, ID_LISTBOX_FONT, _T("Set &Italic font"), wxPoint(340,130), wxSize(140,30) ); button->SetDefault(); - button->SetForegroundColour(*wxBLUE); #if wxUSE_TOOLTIPS @@ -648,6 +651,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) m_checkbox = new wxCheckBox( panel, ID_LISTBOX_ENABLE, _T("&Disable"), wxPoint(20,170) ); m_checkbox->SetValue(false); + button->MoveAfterInTabOrder(m_checkbox); #if wxUSE_TOOLTIPS m_checkbox->SetToolTip( _T("Click here to disable the listbox") ); #endif // wxUSE_TOOLTIPS @@ -658,8 +662,8 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) #if wxUSE_CHOICE panel = new wxPanel(m_notebook); - m_choice = new wxChoice( panel, ID_CHOICE, wxPoint(10,10), wxSize(120,wxDefaultSize.y), 5, choices ); - m_choiceSorted = new wxChoice( panel, ID_CHOICE_SORTED, wxPoint(10,70), wxSize(120,wxDefaultSize.y), + m_choice = new wxChoice( panel, ID_CHOICE, wxPoint(10,10), wxSize(120,wxDefaultCoord), 5, choices ); + m_choiceSorted = new wxChoice( panel, ID_CHOICE_SORTED, wxPoint(10,70), wxSize(120,wxDefaultCoord), 5, choices, wxCB_SORT ); SetChoiceClientData(wxT("choice"), m_choice); @@ -682,7 +686,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) (void)new wxStaticBox( panel, wxID_ANY, _T("&Box around combobox"), wxPoint(5, 5), wxSize(150, 100)); m_combo = new MyComboBox( panel, ID_COMBO, _T("This"), - wxPoint(20,25), wxSize(120, wxDefaultSize.y), + wxPoint(20,25), wxSize(120, wxDefaultCoord), 5, choices, wxCB_READONLY | wxPROCESS_ENTER); m_combo->SetBackgroundColour(*wxBLUE); @@ -732,7 +736,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) m_gaugeVert = new wxGauge( panel, wxID_ANY, 100, wxPoint(195,35), wxSize(30, 90), wxGA_VERTICAL | wxGA_SMOOTH | wxNO_BORDER ); - m_slider = new wxSlider( panel, ID_SLIDER, 0, 0, 200, wxPoint(18,90), wxSize(155,wxDefaultSize.y), + m_slider = new wxSlider( panel, ID_SLIDER, 0, 0, 200, wxPoint(18,90), wxSize(155,wxDefaultCoord), wxSL_AUTOTICKS | wxSL_LABELS ); m_slider->SetTickFreq(40, 0); #if wxUSE_TOOLTIPS @@ -748,7 +752,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) (void)new wxStaticText( panel, wxID_ANY, _T("Drag the slider!"), wxPoint(250,30), - wxSize(240, wxDefaultSize.y) + wxSize(240, wxDefaultCoord) ); #else (void)new wxStaticText( panel, wxID_ANY, @@ -765,9 +769,9 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) int initialSpinValue = -5; wxString s; s << initialSpinValue; - m_spintext = new wxTextCtrl( panel, wxID_ANY, s, wxPoint(20,160), wxSize(80,wxDefaultSize.y) ); + m_spintext = new wxTextCtrl( panel, wxID_ANY, s, wxPoint(20,160), wxSize(80,wxDefaultCoord) ); #if wxUSE_SPINBTN - m_spinbutton = new wxSpinButton( panel, ID_SPIN, wxPoint(103,160), wxSize(80, wxDefaultSize.y) ); + m_spinbutton = new wxSpinButton( panel, ID_SPIN, wxPoint(103,160), wxSize(80, wxDefaultCoord) ); m_spinbutton->SetRange(-40,30); m_spinbutton->SetValue(initialSpinValue); @@ -776,7 +780,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) #endif // wxUSE_SPINBTN #if wxUSE_SPINCTRL - m_spinctrl = new wxSpinCtrl( panel, ID_SPINCTRL, _T(""), wxPoint(200, 160), wxSize(80, wxDefaultSize.y) ); + m_spinctrl = new wxSpinCtrl( panel, ID_SPINCTRL, _T(""), wxPoint(200, 160), wxSize(80, wxDefaultCoord) ); m_spinctrl->SetRange(10,30); m_spinctrl->SetValue(15); #endif // wxUSE_SPINCTRL @@ -880,15 +884,17 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h ) m_buttonSizer = new wxBoxSizer (wxVERTICAL); - m_sizerBtn1 = new wxButton(panel, wxID_ANY, _T("Test Button &1") ); + m_sizerBtn1 = new wxButton(panel, wxID_ANY, _T("Test Button &1 (tab order 1)") ); m_buttonSizer->Add( m_sizerBtn1, 0, wxALL, 10 ); - m_sizerBtn2 = new wxButton(panel, wxID_ANY, _T("Test Button &2") ); + m_sizerBtn2 = new wxButton(panel, wxID_ANY, _T("Test Button &2 (tab order 3)") ); m_buttonSizer->Add( m_sizerBtn2, 0, wxALL, 10 ); - m_sizerBtn3 = new wxButton(panel, wxID_ANY, _T("Test Button &3") ); + m_sizerBtn3 = new wxButton(panel, wxID_ANY, _T("Test Button &3 (tab order 2)") ); m_buttonSizer->Add( m_sizerBtn3, 0, wxALL, 10 ); - m_sizerBtn4 = new wxButton(panel, wxID_ANY, _T("Test Button &4") ); + m_sizerBtn4 = new wxButton(panel, wxID_ANY, _T("Test Button &4 (tab order 4)") ); m_buttonSizer->Add( m_sizerBtn4, 0, wxALL, 10 ); + m_sizerBtn3->MoveBeforeInTabOrder(m_sizerBtn2); + m_hsizer->Add (m_buttonSizer); m_hsizer->Add( 20,20, 1 ); m_bigBtn = new wxButton(panel, wxID_ANY, _T("Multiline\nbutton") ); @@ -1515,6 +1521,8 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(CONTROLS_ENABLE_ALL, MyFrame::OnEnableAll) + EVT_ICONIZE(MyFrame::OnIconized) + EVT_MAXIMIZE(MyFrame::OnMaximized) EVT_SIZE(MyFrame::OnSize) EVT_MOVE(MyFrame::OnMove) @@ -1560,7 +1568,9 @@ MyFrame::MyFrame(const wxChar *title, int x, int y) SetMenuBar(menu_bar); +#if wxUSE_STATUSBAR CreateStatusBar(2); +#endif // wxUSE_STATUSBAR m_panel = new MyPanel( this, 10, 10, 300, 100 ); @@ -1629,14 +1639,30 @@ void MyFrame::OnEnableAll(wxCommandEvent& WXUNUSED(event)) void MyFrame::OnMove( wxMoveEvent& event ) { +#if wxUSE_STATUSBAR UpdateStatusBar(event.GetPosition(), GetSize()); +#endif // wxUSE_STATUSBAR event.Skip(); } +void MyFrame::OnIconized( wxIconizeEvent& event ) +{ + wxLogMessage(_T("Frame %s"), event.Iconized() ? _T("iconized") + : _T("restored")); + event.Skip(); +} + +void MyFrame::OnMaximized( wxMaximizeEvent& WXUNUSED(event) ) +{ + wxLogMessage(_T("Frame maximized")); +} + void MyFrame::OnSize( wxSizeEvent& event ) { +#if wxUSE_STATUSBAR UpdateStatusBar(GetPosition(), event.GetSize()); +#endif // wxUSE_STATUSBAR event.Skip(); } @@ -1663,7 +1689,9 @@ void MyFrame::OnIdle( wxIdleEvent& WXUNUSED(event) ) #endif ); +#if wxUSE_STATUSBAR SetStatusText(msg); +#endif // wxUSE_STATUSBAR } }