From 140ce4daec246ac056313b7232698f91fddce6ee Mon Sep 17 00:00:00 2001 From: Tim Mayberry Date: Mon, 12 Jun 2017 23:59:11 +1000 Subject: [PATCH] Restore the state of the autoplay button in the import dialog --- gtk2_ardour/sfdb_ui.cc | 19 +++++++++++++++++++ gtk2_ardour/sfdb_ui.h | 3 +++ gtk2_ardour/ui_config_vars.h | 1 + 3 files changed, 23 insertions(+) diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc index 01fb044e63..e9000fa096 100644 --- a/gtk2_ardour/sfdb_ui.cc +++ b/gtk2_ardour/sfdb_ui.cc @@ -237,6 +237,9 @@ SoundFileBox::SoundFileBox (bool /*persistent*/) play_btn.signal_clicked().connect (sigc::mem_fun (*this, &SoundFileBox::audition)); stop_btn.signal_clicked().connect (sigc::mem_fun (*this, &SoundFileBox::stop_audition)); + update_autoplay (); + autoplay_btn.signal_toggled().connect(sigc::mem_fun (*this, &SoundFileBox::autoplay_toggled)); + stop_btn.set_sensitive (false); channels_value.set_alignment (0.0f, 0.5f); @@ -433,6 +436,22 @@ SoundFileBox::setup_labels (const string& filename) return true; } +void +SoundFileBox::update_autoplay () +{ + const bool config_autoplay = UIConfiguration::instance().get_autoplay_files(); + + if (autoplay_btn.get_active() != config_autoplay) { + autoplay_btn.set_active (config_autoplay); + } +} + +void +SoundFileBox::autoplay_toggled() +{ + UIConfiguration::instance().set_autoplay_files(autoplay_btn.get_active()); +} + bool SoundFileBox::autoplay() const { diff --git a/gtk2_ardour/sfdb_ui.h b/gtk2_ardour/sfdb_ui.h index c0d7eb3aa0..d7eb80ecca 100644 --- a/gtk2_ardour/sfdb_ui.h +++ b/gtk2_ardour/sfdb_ui.h @@ -115,6 +115,9 @@ class SoundFileBox : public Gtk::VBox, public ARDOUR::SessionHandlePtr, public P void audition_active(bool); void audition_progress(ARDOUR::framecnt_t, ARDOUR::framecnt_t); + void update_autoplay (); + void autoplay_toggled (); + bool tags_entry_left (GdkEventFocus* event); void tags_changed (); void save_tags (const std::vector&); diff --git a/gtk2_ardour/ui_config_vars.h b/gtk2_ardour/ui_config_vars.h index 1d2e5a1bb0..19147c305a 100644 --- a/gtk2_ardour/ui_config_vars.h +++ b/gtk2_ardour/ui_config_vars.h @@ -36,6 +36,7 @@ UI_CONFIG_VARIABLE (std::string, keyboard_layout, "keyboard-layout", "ansi") UI_CONFIG_VARIABLE (std::string, keyboard_layout_name, "keyboard-layout-name", "ansi") UI_CONFIG_VARIABLE (std::string, default_bindings, "default-bindings", "ardour") UI_CONFIG_VARIABLE (bool, only_copy_imported_files, "only-copy-imported-files", false) +UI_CONFIG_VARIABLE (bool, autoplay_files, "autoplay-files", false) UI_CONFIG_VARIABLE (bool, default_narrow_ms, "default-narrow_ms", false) UI_CONFIG_VARIABLE (bool, name_new_markers, "name-new-markers", false) UI_CONFIG_VARIABLE (bool, rubberbanding_snaps_to_grid, "rubberbanding-snaps-to-grid", false)