summaryrefslogtreecommitdiff
path: root/src/wx/file_picker_ctrl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/wx/file_picker_ctrl.cc')
-rw-r--r--src/wx/file_picker_ctrl.cc16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/wx/file_picker_ctrl.cc b/src/wx/file_picker_ctrl.cc
index 4e2f97618..8de1596a9 100644
--- a/src/wx/file_picker_ctrl.cc
+++ b/src/wx/file_picker_ctrl.cc
@@ -34,14 +34,16 @@ FilePickerCtrl::FilePickerCtrl (wxWindow* parent, wxString prompt, wxString wild
{
_sizer = new wxBoxSizer (wxHORIZONTAL);
- _file = new wxStaticText (this, wxID_ANY, wxT ("This is the length of the file label"));
+ wxClientDC dc (parent);
+ wxSize size = dc.GetTextExtent (wxT ("This is the length of the file label it should be quite long"));
+ size.SetHeight (-1);
+
+ _file = new wxButton (this, wxID_ANY, _("(None)"), wxDefaultPosition, size, wxBU_LEFT);
_sizer->Add (_file, 1, wxEXPAND | wxALL, 6);
- _browse = new wxButton (this, wxID_ANY, _("Browse..."));
- _sizer->Add (_browse, 0);
SetSizerAndFit (_sizer);
- _browse->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&FilePickerCtrl::browse_clicked, this));
+ _file->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&FilePickerCtrl::browse_clicked, this));
}
void
@@ -49,7 +51,11 @@ FilePickerCtrl::SetPath (wxString p)
{
_path = p;
- _file->SetLabel (std_to_wx (filesystem::path (wx_to_std (_path)).leaf().string()));
+ if (!_path.IsEmpty ()) {
+ _file->SetLabel (std_to_wx (filesystem::path (wx_to_std (_path)).leaf().string()));
+ } else {
+ _file->SetLabel (_("(None)"));
+ }
wxCommandEvent ev (wxEVT_COMMAND_FILEPICKER_CHANGED, wxID_ANY);
GetEventHandler()->ProcessEvent (ev);