diff options
| author | Carl Hetherington <cth@carlh.net> | 2019-11-30 22:34:19 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2019-11-30 22:34:19 +0100 |
| commit | d9e6b138e84e7a8504075b8581cca4d0fabfbc40 (patch) | |
| tree | c86ea8f3d4a92c424c4e946be5524ea5e28d2cac /src/wx/file_picker_ctrl.cc | |
| parent | 2ed188232e575e42d13cbc3aaab3b055c7ff26af (diff) | |
Try to improve the checking for overwrite of export files a little
on Linux; I think we need to do it ourselves rather than relying
on wxFileDialog.
Diffstat (limited to 'src/wx/file_picker_ctrl.cc')
| -rw-r--r-- | src/wx/file_picker_ctrl.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/wx/file_picker_ctrl.cc b/src/wx/file_picker_ctrl.cc index 47b5dbca0..47211a269 100644 --- a/src/wx/file_picker_ctrl.cc +++ b/src/wx/file_picker_ctrl.cc @@ -29,11 +29,12 @@ using namespace std; using namespace boost; -FilePickerCtrl::FilePickerCtrl (wxWindow* parent, wxString prompt, wxString wildcard, bool open) +FilePickerCtrl::FilePickerCtrl (wxWindow* parent, wxString prompt, wxString wildcard, bool open, bool warn_overwrite) : wxPanel (parent) , _prompt (prompt) , _wildcard (wildcard) , _open (open) + , _warn_overwrite (warn_overwrite) { _sizer = new wxBoxSizer (wxHORIZONTAL); @@ -72,7 +73,11 @@ FilePickerCtrl::GetPath () const void FilePickerCtrl::browse_clicked () { - wxFileDialog* d = new wxFileDialog (this, _prompt, wxEmptyString, wxEmptyString, _wildcard, _open ? wxFD_OPEN : wxFD_SAVE | wxFD_OVERWRITE_PROMPT); + long style = _open ? wxFD_OPEN : wxFD_SAVE; + if (_warn_overwrite) { + style |= wxFD_OVERWRITE_PROMPT; + } + wxFileDialog* d = new wxFileDialog (this, _prompt, wxEmptyString, wxEmptyString, _wildcard, style); d->SetPath (_path); if (d->ShowModal () == wxID_OK) { SetPath (d->GetPath ()); |
