X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fpanner_ui.cc;h=02f1dd46a2d55f0a542f71a591ce89b4a405e462;hb=847c9de7be177725134f230dafa6147ebfafb944;hp=d20d719b14cb4e3d4e338378bce5843c5a966d69;hpb=5399425f534e2d96d07cf29f427bfa0f39d904b7;p=ardour.git diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index d20d719b14..02f1dd46a2 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -19,7 +19,6 @@ #include #include -#include #include "pbd/fastlog.h" @@ -31,9 +30,9 @@ #include "ardour_ui.h" #include "panner_ui.h" #include "panner2d.h" -#include "utils.h" #include "gui_thread.h" #include "stereo_panner.h" +#include "timers.h" #include "mono_panner.h" #include "i18n.h" @@ -50,6 +49,7 @@ PannerUI::PannerUI (Session* s) : _current_nouts (-1) , _current_nins (-1) , _current_uri ("") + , _send_mode (false) , pan_automation_style_button ("") , pan_automation_state_button ("") , _panner_list() @@ -251,6 +251,7 @@ PannerUI::setup_pan () _stereo_panner = new StereoPanner (_panshell); _stereo_panner->set_size_request (-1, pan_bar_height); + _stereo_panner->set_send_drawing_mode (_send_mode); pan_vbox.pack_start (*_stereo_panner, false, false); boost::shared_ptr ac; @@ -286,6 +287,7 @@ PannerUI::setup_pan () _mono_panner->signal_button_release_event().connect (sigc::mem_fun(*this, &PannerUI::pan_button_event)); _mono_panner->set_size_request (-1, pan_bar_height); + _mono_panner->set_send_drawing_mode (_send_mode); update_pan_sensitive (); pan_vbox.pack_start (*_mono_panner, false, false); @@ -305,6 +307,7 @@ PannerUI::setup_pan () big_window->reset (nins); } twod_panner->set_size_request (-1, 61); + twod_panner->set_send_drawing_mode (_send_mode); /* and finally, add it to the panner frame */ @@ -323,6 +326,19 @@ PannerUI::setup_pan () pan_vbox.show_all (); } +void +PannerUI::set_send_drawing_mode (bool onoff) +{ + if (_stereo_panner) { + _stereo_panner->set_send_drawing_mode (onoff); + } else if (_mono_panner) { + _mono_panner->set_send_drawing_mode (onoff); + } else if (twod_panner) { + twod_panner->set_send_drawing_mode (onoff); + } + _send_mode = onoff; +} + void PannerUI::start_touch (boost::weak_ptr wac) { @@ -561,7 +577,7 @@ PannerUI::pan_automation_state_changed () pan_watching.disconnect(); if (x) { - pan_watching = ARDOUR_UI::RapidScreenUpdate.connect (sigc::mem_fun (*this, &PannerUI::effective_pan_display)); + pan_watching = Timers::rapid_connect (sigc::mem_fun (*this, &PannerUI::effective_pan_display)); } } @@ -584,16 +600,16 @@ PannerUI::_astate_string (AutoState state, bool shrt) switch (state) { case ARDOUR::Off: - sstr = (shrt ? "M" : _("M")); + sstr = (shrt ? "M" : S_("Manual|M")); break; case Play: - sstr = (shrt ? "P" : _("P")); + sstr = (shrt ? "P" : S_("Play|P")); break; case Touch: - sstr = (shrt ? "T" : _("T")); + sstr = (shrt ? "T" : S_("Touch|T")); break; case Write: - sstr = (shrt ? "W" : _("W")); + sstr = (shrt ? "W" : S_("Write|W")); break; }