tweak startup dialog a bit to correctly save ardour.rc when need; get PROGRAM_NAME...
authorPaul Davis <paul@linuxaudiosystems.com>
Mon, 22 Mar 2010 03:46:09 +0000 (03:46 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Mon, 22 Mar 2010 03:46:09 +0000 (03:46 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@6781 d708f5d6-7413-0410-9779-e7cbd77b26cf

gtk2_ardour/ardour_ui.cc
gtk2_ardour/startup.cc
gtk2_ardour/startup.h

index 1a5daf08c39ac1e4b77333ca755228069b8f9091..a6236b2038f5099d0a5a92f91a663caad7190211 100644 (file)
@@ -115,7 +115,7 @@ sigc::signal<void,nframes_t, bool, nframes_t> ARDOUR_UI::Clock;
 
 ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
 
-       : Gtkmm2ext::UI (X_("gui"), argcp, argvp),
+       : Gtkmm2ext::UI (PROGRAM_NAME, argcp, argvp),
 
          primary_clock (X_("primary"), false, X_("TransportClockDisplay"), true, true, false, true),
          secondary_clock (X_("secondary"), false, X_("SecondaryClockDisplay"), true, true, false, true),
index 62f57e140c468f303026d66d47356b27afa72c12..fb3e950ba2d84c744a008d35348c7fc04a420b05 100644 (file)
@@ -261,6 +261,12 @@ void
 ArdourStartup::default_dir_changed ()
 {
        Config->set_default_session_parent_dir (default_dir_chooser->get_current_folder());
+        config_changed ();
+}
+
+void
+ArdourStartup::config_changed ()
+{
        config_modified = true;
 }
 
@@ -355,6 +361,15 @@ ArdourStartup::setup_monitor_section_choice_page ()
        VBox* vbox = manage (new VBox);
        RadioButton::Group g (use_monitor_section_button.get_group());
        no_monitor_section_button.set_group (g);
+
+        if (Config->get_use_monitor_bus()) {
+                use_monitor_section_button.set_active (true);
+        } else {
+                no_monitor_section_button.set_active (true);
+        }
+
+        use_monitor_section_button.signal_toggled().connect (sigc::mem_fun (*this, &ArdourStartup::config_changed));
+        no_monitor_section_button.signal_toggled().connect (sigc::mem_fun (*this, &ArdourStartup::config_changed));
         
        monitor_section_label.set_markup("\
 When connecting speakers to Ardour, would you prefer to use a monitor bus,\n\
@@ -503,6 +518,8 @@ ArdourStartup::on_apply ()
                        Config->set_monitoring_model (SoftwareMonitoring);
                }
 
+                Config->set_use_monitor_bus (use_monitor_section_button.get_active());
+
                Config->save_state ();
        }
 
index ae4b17b1632d5acf876b6229369d9144b120cbfb..d2aadd62b1f99a57e2d77dc9289895372ebb1157 100644 (file)
@@ -80,6 +80,7 @@ class ArdourStartup : public Gtk::Assistant {
        bool splash_expose (GdkEventExpose* ev);
 
        void setup_first_time_config_page ();
+        void config_changed ();
 
        /* first page */
        Gtk::FileChooserButton* default_dir_chooser;