From ad4d781477603117fb6a2acc57824aa0f2f89d8b Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 12 Nov 2012 16:49:05 +0000 Subject: [PATCH] make pull-up/down truly exclusive with JACK git-svn-id: svn://localhost/ardour2/branches/3.0@13454 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/session_option_editor.cc | 30 ++++++++++++++++++---------- gtk2_ardour/session_option_editor.h | 2 ++ 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/gtk2_ardour/session_option_editor.cc b/gtk2_ardour/session_option_editor.cc index c6daac9454..dd95b7f057 100644 --- a/gtk2_ardour/session_option_editor.cc +++ b/gtk2_ardour/session_option_editor.cc @@ -72,24 +72,24 @@ SessionOptionEditor::SessionOptionEditor (Session* s) add_option (_("Timecode"), spf); - ComboOption* vpu = new ComboOption ( + _vpu = new ComboOption ( "video-pullup", _("Pull-up / pull-down"), sigc::mem_fun (*_session_config, &SessionConfiguration::get_video_pullup), sigc::mem_fun (*_session_config, &SessionConfiguration::set_video_pullup) ); - vpu->add (4.1667 + 0.1, _("4.1667 + 0.1%")); - vpu->add (4.1667, _("4.1667")); - vpu->add (4.1667 - 0.1, _("4.1667 - 0.1%")); - vpu->add (0.1, _("0.1")); - vpu->add (0, _("none")); - vpu->add (-0.1, _("-0.1")); - vpu->add (-4.1667 + 0.1, _("-4.1667 + 0.1%")); - vpu->add (-4.1667, _("-4.1667")); - vpu->add (-4.1667 - 0.1, _("-4.1667 - 0.1%")); + _vpu->add (4.1667 + 0.1, _("4.1667 + 0.1%")); + _vpu->add (4.1667, _("4.1667")); + _vpu->add (4.1667 - 0.1, _("4.1667 - 0.1%")); + _vpu->add (0.1, _("0.1")); + _vpu->add (0, _("none")); + _vpu->add (-0.1, _("-0.1")); + _vpu->add (-4.1667 + 0.1, _("-4.1667 + 0.1%")); + _vpu->add (-4.1667, _("-4.1667")); + _vpu->add (-4.1667 - 0.1, _("-4.1667 - 0.1%")); - add_option (_("Timecode"), vpu); + add_option (_("Timecode"), _vpu); ClockOption* co = new ClockOption ( "timecode-offset", @@ -293,6 +293,14 @@ void SessionOptionEditor::parameter_changed (std::string const & p) { OptionEditor::parameter_changed (p); + if (p == "external-sync") { + if (Config->get_sync_source() == JACK) { + _vpu->set_sensitive(!_session_config->get_external_sync()); + } else { + _vpu->set_sensitive(true); + } + } + } /* the presence of absence of a monitor section is not really a regular session diff --git a/gtk2_ardour/session_option_editor.h b/gtk2_ardour/session_option_editor.h index 3914ec8a8d..73b9b2b033 100644 --- a/gtk2_ardour/session_option_editor.h +++ b/gtk2_ardour/session_option_editor.h @@ -36,4 +36,6 @@ private: bool set_use_monitor_section (bool); bool get_use_monitor_section (); + + ComboOption* _vpu; };