X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3bb70c4026e31feb396b60a02c2a36dd5f63c3f0..7512bea2cbc6285700115dc54e7c22c8c563f030:/samples/widgets/listbox.cpp diff --git a/samples/widgets/listbox.cpp b/samples/widgets/listbox.cpp index 33d578c86c..65ae57555e 100644 --- a/samples/widgets/listbox.cpp +++ b/samples/widgets/listbox.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Program: wxWindows Widgets Sample +// Program: wxWidgets Widgets Sample // Name: listbox.cpp // Purpose: Part of the widgets sample showing wxListbox // Author: Vadim Zeitlin @@ -24,6 +24,8 @@ #pragma hdrstop #endif +#if wxUSE_LISTBOX + // for all others, include the necessary headers #ifndef WX_PRECOMP #include "wx/log.h" @@ -43,7 +45,7 @@ #include "wx/checklst.h" #include "widgets.h" -#if 1 + #include "icons/listbox.xpm" // ---------------------------------------------------------------------------- @@ -179,8 +181,8 @@ BEGIN_EVENT_TABLE(ListboxWidgetsPage, WidgetsPage) EVT_LISTBOX_DCLICK(ListboxPage_Listbox, ListboxWidgetsPage::OnListboxDClick) EVT_CHECKLISTBOX(ListboxPage_Listbox, ListboxWidgetsPage::OnCheckListbox) - EVT_CHECKBOX(-1, ListboxWidgetsPage::OnCheckOrRadioBox) - EVT_RADIOBOX(-1, ListboxWidgetsPage::OnCheckOrRadioBox) + EVT_CHECKBOX(wxID_ANY, ListboxWidgetsPage::OnCheckOrRadioBox) + EVT_RADIOBOX(wxID_ANY, ListboxWidgetsPage::OnCheckOrRadioBox) END_EVENT_TABLE() // ============================================================================ @@ -215,7 +217,8 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL); // left pane - wxStaticBox *box = new wxStaticBox(this, -1, _T("&Set listbox parameters")); + wxStaticBox *box = new wxStaticBox(this, wxID_ANY, + _T("&Set listbox parameters")); wxSizer *sizerLeft = new wxStaticBoxSizer(box, wxVERTICAL); static const wxString modes[] = @@ -225,7 +228,7 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, _T("multiple"), }; - m_radioSelMode = new wxRadioBox(this, -1, _T("Selection &mode:"), + m_radioSelMode = new wxRadioBox(this, wxID_ANY, _T("Selection &mode:"), wxDefaultPosition, wxDefaultSize, WXSIZEOF(modes), modes, 1, wxRA_SPECIFY_COLS); @@ -250,7 +253,8 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, sizerLeft->Add(btn, 0, wxALIGN_CENTRE_HORIZONTAL | wxALL, 15); // middle pane - wxStaticBox *box2 = new wxStaticBox(this, -1, _T("&Change listbox contents")); + wxStaticBox *box2 = new wxStaticBox(this, wxID_ANY, + _T("&Change listbox contents")); wxSizer *sizerMiddle = new wxStaticBoxSizer(box2, wxVERTICAL); wxSizer *sizerRow = new wxBoxSizer(wxHORIZONTAL); @@ -268,14 +272,14 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, sizerRow = new wxBoxSizer(wxHORIZONTAL); btn = new wxButton(this, ListboxPage_Change, _T("C&hange current")); - m_textChange = new wxTextCtrl(this, ListboxPage_ChangeText, _T("")); + m_textChange = new wxTextCtrl(this, ListboxPage_ChangeText, wxEmptyString); sizerRow->Add(btn, 0, wxRIGHT, 5); sizerRow->Add(m_textChange, 1, wxLEFT, 5); sizerMiddle->Add(sizerRow, 0, wxALL | wxGROW, 5); sizerRow = new wxBoxSizer(wxHORIZONTAL); btn = new wxButton(this, ListboxPage_Delete, _T("&Delete this item")); - m_textDelete = new wxTextCtrl(this, ListboxPage_DeleteText, _T("")); + m_textDelete = new wxTextCtrl(this, ListboxPage_DeleteText, wxEmptyString); sizerRow->Add(btn, 0, wxRIGHT, 5); sizerRow->Add(m_textDelete, 1, wxLEFT, 5); sizerMiddle->Add(sizerRow, 0, wxALL | wxGROW, 5); @@ -304,7 +308,6 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, // final initializations Reset(); - SetAutoLayout(TRUE); SetSizer(sizerTop); sizerTop->Fit(this); @@ -317,10 +320,10 @@ ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook, void ListboxWidgetsPage::Reset() { m_radioSelMode->SetSelection(LboxSel_Single); - m_chkSort->SetValue(FALSE); - m_chkCheck->SetValue(FALSE); - m_chkHScroll->SetValue(TRUE); - m_chkVScroll->SetValue(FALSE); + m_chkSort->SetValue(false); + m_chkCheck->SetValue(false); + m_chkHScroll->SetValue(true); + m_chkVScroll->SetValue(false); } void ListboxWidgetsPage::CreateLbox() @@ -422,12 +425,12 @@ void ListboxWidgetsPage::OnButtonDeleteSel(wxCommandEvent& WXUNUSED(event)) } } -void ListboxWidgetsPage::OnButtonClear(wxCommandEvent& event) +void ListboxWidgetsPage::OnButtonClear(wxCommandEvent& WXUNUSED(event)) { m_lbox->Clear(); } -void ListboxWidgetsPage::OnButtonAdd(wxCommandEvent& event) +void ListboxWidgetsPage::OnButtonAdd(wxCommandEvent& WXUNUSED(event)) { static unsigned int s_item = 0; @@ -450,7 +453,7 @@ void ListboxWidgetsPage::OnButtonAddMany(wxCommandEvent& WXUNUSED(event)) } } -void ListboxWidgetsPage::OnButtonAddSeveral(wxCommandEvent& event) +void ListboxWidgetsPage::OnButtonAddSeveral(wxCommandEvent& WXUNUSED(event)) { wxArrayString items; items.Add(_T("First")); @@ -492,10 +495,13 @@ void ListboxWidgetsPage::OnUpdateUIAddSeveral(wxUpdateUIEvent& event) void ListboxWidgetsPage::OnListbox(wxCommandEvent& event) { - long sel = event.GetInt(); + long sel = event.GetSelection(); m_textDelete->SetValue(wxString::Format(_T("%ld"), sel)); - wxLogMessage(_T("Listbox item %ld selected"), sel); + if (event.IsSelection()) + wxLogMessage(_T("Listbox item %ld selected"), sel); + else + wxLogMessage(_T("Listbox item %ld deselected"), sel); } void ListboxWidgetsPage::OnListboxDClick(wxCommandEvent& event) @@ -508,9 +514,9 @@ void ListboxWidgetsPage::OnCheckListbox(wxCommandEvent& event) wxLogMessage( _T("Listbox item %ld toggled"), event.GetInt() ); } -void ListboxWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& event) +void ListboxWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& WXUNUSED(event)) { CreateLbox(); } -#endif +#endif // wxUSE_LISTBOX