Use conf.fatal for fatal configuration errors
[ardour.git] / gtk2_ardour / save_as_dialog.cc
index bb4f3de2c8623e2b9bd70a1b7ea575e7ada90016..f2dc4d9b9deb62ac2f6bd52d5e178c10aff9199d 100644 (file)
@@ -1,29 +1,31 @@
 /*
-    Copyright (C) 2015 Paul Davis
-
-    This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
+ * Copyright (C) 2015-2016 Paul Davis <paul@linuxaudiosystems.com>
+ * Copyright (C) 2015-2019 Robin Gareus <robin@gareus.org>
+ *
* This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
 
 #include <gtkmm/stock.h>
 
 #include "ardour/session.h"
 
+#include "gtkmm2ext/utils.h"
+
 #include "save_as_dialog.h"
 
-#include "i18n.h"
+#include "pbd/i18n.h"
 
 using namespace std;
 using namespace Gtk;
@@ -39,7 +41,7 @@ SaveAsDialog::SaveAsDialog ()
        VBox* vbox = get_vbox();
 
        vbox->set_spacing (6);
-       
+
        HBox* hbox;
        Label* label;
 
@@ -62,7 +64,7 @@ SaveAsDialog::SaveAsDialog ()
        VBox* sub_vbox = manage (new VBox);
        HBox* sub_hbox = manage (new HBox);
        HBox* empty = manage (new HBox);
-       
+
        sub_vbox->pack_start (copy_media_button, false, false);
        sub_vbox->pack_start (copy_external_button, false, false);
 
@@ -73,19 +75,21 @@ SaveAsDialog::SaveAsDialog ()
 
        vbox->pack_start (no_include_media_button, false, false);
        vbox->pack_start (*sub_hbox, false, false);
-       
+
        switch_to_button.set_active (true);
        copy_media_button.set_active (true);
-       
+
        vbox->show_all ();
 
        add_button (Stock::CANCEL, RESPONSE_CANCEL);
        add_button (Stock::OK, RESPONSE_OK);
 
        no_include_media_button.signal_toggled ().connect (sigc::mem_fun (*this, &SaveAsDialog::no_include_toggled));
-       
+
+       Gtkmm2ext::add_volume_shortcuts (new_parent_folder_selector);
        new_parent_folder_selector.set_action (FILE_CHOOSER_ACTION_SELECT_FOLDER);
-       new_parent_folder_selector.set_current_folder (Glib::get_home_dir()); // Why $HOME and not poor_mans_glob (Config->get_default_session_parent_dir ()) ??
+       new_parent_folder_selector.set_current_folder (Config->get_default_session_parent_dir ());
+
        new_name_entry.signal_changed().connect (sigc::mem_fun (*this, &SaveAsDialog::name_entry_changed));
        new_parent_folder_selector.signal_current_folder_changed().connect (sigc::mem_fun (*this, &SaveAsDialog::name_entry_changed));
        new_parent_folder_selector.signal_selection_changed().connect (sigc::mem_fun (*this, &SaveAsDialog::name_entry_changed));