From f3ba7adfbdf847f8c3b78ceb73a20cee516448fd Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 30 May 2013 14:12:36 +0100 Subject: [PATCH] Keep track of the directory to put new films in across uses of the dialog (#143). --- src/wx/new_film_dialog.cc | 9 ++++++++- src/wx/new_film_dialog.h | 4 +++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/wx/new_film_dialog.cc b/src/wx/new_film_dialog.cc index 90c2d727e..737b07fbb 100644 --- a/src/wx/new_film_dialog.cc +++ b/src/wx/new_film_dialog.cc @@ -29,6 +29,8 @@ using namespace std; using namespace boost; +string NewFilmDialog::_directory = Config::instance()->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir())); + NewFilmDialog::NewFilmDialog (wxWindow* parent) : wxDialog (parent, wxID_ANY, _("New Film")) { @@ -49,7 +51,7 @@ NewFilmDialog::NewFilmDialog (wxWindow* parent) #else _folder = new wxDirPickerCtrl (this, wxDD_DIR_MUST_EXIST); #endif - _folder->SetPath (std_to_wx (Config::instance()->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir())))); + _folder->SetPath (std_to_wx (_directory)); table->Add (_folder, 1, wxEXPAND); wxSizer* buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL); @@ -61,6 +63,11 @@ NewFilmDialog::NewFilmDialog (wxWindow* parent) overall_sizer->SetSizeHints (this); } +NewFilmDialog::~NewFilmDialog () +{ + _directory = wx_to_std (_folder->GetPath ()); +} + string NewFilmDialog::get_path () const { diff --git a/src/wx/new_film_dialog.h b/src/wx/new_film_dialog.h index 3d1253ecc..715f71f51 100644 --- a/src/wx/new_film_dialog.h +++ b/src/wx/new_film_dialog.h @@ -26,6 +26,7 @@ class NewFilmDialog : public wxDialog { public: NewFilmDialog (wxWindow *); + ~NewFilmDialog (); std::string get_path () const; @@ -35,5 +36,6 @@ private: DirPickerCtrl* _folder; #else wxDirPickerCtrl* _folder; -#endif +#endif + static std::string _directory; }; -- 2.30.2