X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a7156681007c718be299389f68326b1c71486878..5fe7fce4929cf3f7d342fa2b2c6918f5891437cd:/samples/widgets/dirctrl.cpp diff --git a/samples/widgets/dirctrl.cpp b/samples/widgets/dirctrl.cpp index 0698b926de..ff3b96cf3e 100644 --- a/samples/widgets/dirctrl.cpp +++ b/samples/widgets/dirctrl.cpp @@ -112,6 +112,7 @@ protected: void OnStdPath(wxCommandEvent& event); void OnCheckBox(wxCommandEvent& event); void OnRadioBox(wxCommandEvent& event); + void OnSelChanged(wxTreeEvent& event); // reset the control parameters void Reset(); @@ -134,6 +135,7 @@ protected: wxCheckBox *m_chkDirOnly, *m_chk3D, *m_chkFirst, + *m_chkFilters, *m_chkLabels, *m_chkMulti; @@ -154,6 +156,7 @@ BEGIN_EVENT_TABLE(DirCtrlWidgetsPage, WidgetsPage) EVT_BUTTON(DirCtrlPage_SetPath, DirCtrlWidgetsPage::OnButtonSetPath) EVT_CHECKBOX(wxID_ANY, DirCtrlWidgetsPage::OnCheckBox) EVT_RADIOBOX(wxID_ANY, DirCtrlWidgetsPage::OnRadioBox) + EVT_DIRCTRL_CHANGED(DirCtrlPage_Ctrl, DirCtrlWidgetsPage::OnSelChanged) END_EVENT_TABLE() // ============================================================================ @@ -168,6 +171,7 @@ DirCtrlWidgetsPage::DirCtrlWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist) :WidgetsPage(book, imaglist, dirctrl_xpm) { + m_dirCtrl = NULL; } void DirCtrlWidgetsPage::CreateContent() @@ -187,6 +191,7 @@ void DirCtrlWidgetsPage::CreateContent() m_chkDirOnly = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_DIR_ONLY")); m_chk3D = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_3D_INTERNAL")); m_chkFirst = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_SELECT_FIRST")); + m_chkFilters = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_SHOW_FILTERS")); m_chkLabels = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_EDIT_LABELS")); m_chkMulti = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_MULTIPLE")); sizerLeft->Add(sizerUseFlags, wxSizerFlags().Expand().Border()); @@ -249,6 +254,7 @@ void DirCtrlWidgetsPage::CreateDirCtrl() ( m_chkDirOnly->IsChecked() ? wxDIRCTRL_DIR_ONLY : 0 ) | ( m_chk3D->IsChecked() ? wxDIRCTRL_3D_INTERNAL : 0 ) | ( m_chkFirst->IsChecked() ? wxDIRCTRL_SELECT_FIRST : 0 ) | + ( m_chkFilters->IsChecked() ? wxDIRCTRL_SHOW_FILTERS : 0 ) | ( m_chkLabels->IsChecked() ? wxDIRCTRL_EDIT_LABELS : 0 ) | ( m_chkMulti->IsChecked() ? wxDIRCTRL_MULTIPLE : 0) ); @@ -360,4 +366,15 @@ void DirCtrlWidgetsPage::OnRadioBox(wxCommandEvent& WXUNUSED(event)) } } +void DirCtrlWidgetsPage::OnSelChanged(wxTreeEvent& event) +{ + if ( m_dirCtrl ) + { + wxLogMessage("Selection changed to \"%s\"", + m_dirCtrl->GetPath(event.GetItem())); + } + + event.Skip(); +} + #endif // wxUSE_DIRDLG