X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c02e5a31c5bd451fd3c82c7b6359a01c68352907..c543817b3280c560d53307c0fa98e7a99aa00bf9:/samples/widgets/listbox.cpp?ds=sidebyside diff --git a/samples/widgets/listbox.cpp b/samples/widgets/listbox.cpp index dc87d04c5b..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() @@ -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) @@ -513,4 +519,4 @@ void ListboxWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& WXUNUSED(event)) CreateLbox(); } -#endif +#endif // wxUSE_LISTBOX