From 4a2c28bf681bf8804b5867d1c4f33acbb5ea2919 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 9 Sep 2012 13:35:34 +0000 Subject: [PATCH] Add a test of wxFilePickerCtrl::GetValue() to the widgets sample. Make the current value of the control visible in its page. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- samples/widgets/filepicker.cpp | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/samples/widgets/filepicker.cpp b/samples/widgets/filepicker.cpp index 19944f6af1..77a0427b6e 100644 --- a/samples/widgets/filepicker.cpp +++ b/samples/widgets/filepicker.cpp @@ -60,7 +60,8 @@ enum { PickerPage_Reset = wxID_HIGHEST, PickerPage_File, - PickerPage_SetDir + PickerPage_SetDir, + PickerPage_CurrentPath }; @@ -102,6 +103,7 @@ protected: void OnCheckBox(wxCommandEvent &ev); void OnButtonReset(wxCommandEvent &ev); void OnButtonSetDir(wxCommandEvent &ev); + void OnUpdatePath(wxUpdateUIEvent &ev); // the picker @@ -117,6 +119,7 @@ protected: *m_chkFileChangeDir, *m_chkSmall; wxRadioBox *m_radioFilePickerMode; + wxStaticText *m_labelPath; wxTextCtrl *m_textInitialDir; wxBoxSizer *m_sizer; @@ -138,6 +141,8 @@ BEGIN_EVENT_TABLE(FilePickerWidgetsPage, WidgetsPage) EVT_CHECKBOX(wxID_ANY, FilePickerWidgetsPage::OnCheckBox) EVT_RADIOBOX(wxID_ANY, FilePickerWidgetsPage::OnCheckBox) + + EVT_UPDATE_UI(PickerPage_CurrentPath, FilePickerWidgetsPage::OnUpdatePath) END_EVENT_TABLE() // ============================================================================ @@ -194,15 +199,19 @@ void FilePickerWidgetsPage::CreateContent() Reset(); // set checkboxes state - // create pickers + // create the picker and the static text displaying its current value + m_labelPath = new wxStaticText(this, PickerPage_CurrentPath, ""); + m_filePicker = NULL; CreatePicker(); // right pane m_sizer = new wxBoxSizer(wxVERTICAL); - m_sizer->Add(1, 1, 1, wxGROW | wxALL, 5); // spacer - m_sizer->Add(m_filePicker, 0, wxEXPAND|wxALL, 5); - m_sizer->Add(1, 1, 1, wxGROW | wxALL, 5); // spacer + m_sizer->AddStretchSpacer(); + m_sizer->Add(m_filePicker, wxSizerFlags().Expand().Border()); + m_sizer->AddStretchSpacer(); + m_sizer->Add(m_labelPath, wxSizerFlags().Expand().Border()); + m_sizer->AddStretchSpacer(); // global pane wxSizer *sz = new wxBoxSizer(wxHORIZONTAL); @@ -331,4 +340,9 @@ void FilePickerWidgetsPage::OnCheckBox(wxCommandEvent &event) } } +void FilePickerWidgetsPage::OnUpdatePath(wxUpdateUIEvent& ev) +{ + ev.SetText( "Current path: " + m_filePicker->GetPath() ); +} + #endif // wxUSE_FILEPICKERCTRL