summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-08-31 13:23:43 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-08-31 13:23:43 +0000
commit21d85f1854461ab6209d23e278fe289505cd106c (patch)
tree0c6d154757bcfb6c49223e59fc75a433e8e79bb2 /gtk2_ardour
parentdde980289aaf264863186eead99fd98a67cc6862 (diff)
merge changes from harrison branch back into trunk, by hand
git-svn-id: svn://localhost/ardour2/trunk@878 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour.menus1
-rw-r--r--gtk2_ardour/ardour_ui.h1
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc3
-rw-r--r--gtk2_ardour/ardour_ui_options.cc23
-rw-r--r--gtk2_ardour/editor_audio_import.cc14
5 files changed, 31 insertions, 11 deletions
diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus
index b1064b8e87..3aa9507d69 100644
--- a/gtk2_ardour/ardour.menus
+++ b/gtk2_ardour/ardour.menus
@@ -71,6 +71,7 @@
<menuitem action='ToggleAutoReturn'/>
<menuitem action='ToggleClick'/>
<menuitem action='toggle-follow-playhead'/>
+ <menuitem action='ToggleVideoSync'/>
</menu>
</menu>
<menu name='Edit' action='Edit'>
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index b3783140b7..5d494bc48e 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -371,6 +371,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI
void sync_option_changed ();
void toggle_time_master ();
+ void toggle_video_sync ();
enum ShuttleBehaviour {
Sprung,
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 7b461b1d5c..ef1906f3f5 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -283,7 +283,8 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
- act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Master"), mem_fun(*this, &ARDOUR_UI::toggle_time_master));
+ ActionManager::register_toggle_action (transport_actions, X_("ToggleVideoSync"), _("Sync startup to video"), mem_fun(*this, &ARDOUR_UI::toggle_video_sync));
+ act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Time master"), mem_fun(*this, &ARDOUR_UI::toggle_time_master));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (common_actions, X_("ToggleRecordEnableTrack1"), _("Toggle Record Enable Track1"), bind (mem_fun(*this, &ARDOUR_UI::toggle_record_enable), 0U));
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index 665c92d264..205180a344 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -43,7 +43,8 @@ ARDOUR_UI::setup_config_options ()
std::vector<Glib::ustring> groups;
groups.push_back("options");
groups.push_back("Editor");
-
+ groups.push_back("Transport");
+
struct {
char* name;
bool (Configuration::*method)(void) const;
@@ -69,6 +70,7 @@ ARDOUR_UI::setup_config_options ()
{ "MeterHoldShort", &Configuration::get_meter_hold_short, 'r' },
{ "MeterHoldMedium", &Configuration::get_meter_hold_medium, 'r' },
{ "MeterHoldLong", &Configuration::get_meter_hold_long, 'r' },
+ { "ToggleVideoSync", &Configuration::get_use_video_sync, 't' },
{ 0, 0, 0 }
};
@@ -77,8 +79,13 @@ ARDOUR_UI::setup_config_options ()
Glib::RefPtr<Action> act = ActionManager::get_action (i->c_str(), options[n].name);
if (act) {
Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
- if (options[n].act_type == 't' || (options[n].act_type == 'r' && (Config->*(options[n].method))()))
- tact->set_active ((Config->*(options[n].method))());
+ if (options[n].act_type == 't' || options[n].act_type == 'r') {
+ if ((Config->*(options[n].method))()) {
+ tact->set_active (true);
+ } else {
+ tact->set_active (false);
+ }
+ }
continue;
}
}
@@ -237,6 +244,16 @@ ARDOUR_UI::toggle_punch_out ()
toggle_session_state ("Transport", "TogglePunchOut", &Session::set_punch_out, &Session::get_punch_out);
}
+ void
+ARDOUR_UI::toggle_video_sync()
+{
+ Glib::RefPtr<Action> act = ActionManager::get_action ("Transport", "ToggleVideoSync");
+ if (act) {
+ Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
+ Config->set_use_video_sync (tact->get_active());
+ }
+}
+
void
ARDOUR_UI::toggle_editing_space()
{
diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc
index fffad2e2eb..75517ec18d 100644
--- a/gtk2_ardour/editor_audio_import.cc
+++ b/gtk2_ardour/editor_audio_import.cc
@@ -82,11 +82,11 @@ Editor::bring_in_external_audio (ImportMode mode, AudioTrack* track, jack_nframe
switch (sfdb.run()) {
case SoundFileOmega::ResponseImport:
- do_import (sfdb.get_paths(), sfdb.get_split(), mode, track, pos, prompt);
+ do_import (sfdb.get_paths(), sfdb.get_split(), sfdb.get_mode(), track, pos, prompt);
break;
case SoundFileOmega::ResponseEmbed:
- do_embed (sfdb.get_paths(), sfdb.get_split(), mode, track, pos, prompt);
+ do_embed (sfdb.get_paths(), sfdb.get_split(), sfdb.get_mode(), track, pos, prompt);
break;
default:
@@ -274,12 +274,12 @@ Editor::embed_sndfile (Glib::ustring path, bool split, bool multiple_files, bool
sources.push_back(source);
}
- catch (failed_constructor& err) {
- error << string_compose(_("could not open %1"), path) << endmsg;
- goto out;
- }
+ catch (failed_constructor& err) {
+ error << string_compose(_("could not open %1"), path) << endmsg;
+ goto out;
+ }
- ARDOUR_UI::instance()->flush_pending ();
+ ARDOUR_UI::instance()->flush_pending ();
}
if (sources.empty()) {