summaryrefslogtreecommitdiff
path: root/gtk2_ardour/route_ui.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-05-17 17:05:56 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-05-17 17:05:56 +0000
commit5a4d340b42ae2485d4bde4421f84c6220b24cab4 (patch)
treec77a444a49efc991ac1c450f938454962741a875 /gtk2_ardour/route_ui.cc
parentd1f09a9403d836c5b7b95eb56fc72d255db50ff6 (diff)
Das BlinkenSendButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@5097 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/route_ui.cc')
-rw-r--r--gtk2_ardour/route_ui.cc21
1 files changed, 20 insertions, 1 deletions
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc
index 5efb3a6a2c..393ab011f3 100644
--- a/gtk2_ardour/route_ui.cc
+++ b/gtk2_ardour/route_ui.cc
@@ -31,6 +31,7 @@
#include "pbd/shiva.h"
#include "pbd/controllable.h"
+#include "ardour_ui.h"
#include "route_ui.h"
#include "keyboard.h"
#include "utils.h"
@@ -122,7 +123,7 @@ RouteUI::init ()
UI::instance()->set_tip (rec_enable_button, _("Enable recording on this track"), "");
show_sends_button = manage (new BindableToggleButton (""));
- show_sends_button->set_name ("ShowSendsButton");
+ show_sends_button->set_name ("SendAlert");
show_sends_button->set_self_managed (true);
UI::instance()->set_tip (show_sends_button, _("make mixer strips show sends to this bus"), "");
@@ -562,11 +563,15 @@ RouteUI::show_sends_press(GdkEventButton* ev)
show_sends_button->set_active (!show_sends_button->get_active());
+ /* start blinking */
+
if (show_sends_button->get_active()) {
/* show sends to this bus */
MixerStrip::SwitchIO (_route);
+ send_blink_connection = ARDOUR_UI::instance()->Blink.connect (mem_fun(*this, &RouteUI::send_blink));
} else {
/* everybody back to normal */
+ send_blink_connection.disconnect ();
MixerStrip::SwitchIO (boost::shared_ptr<Route>());
}
@@ -583,6 +588,20 @@ RouteUI::show_sends_release (GdkEventButton* ev)
}
void
+RouteUI::send_blink (bool onoff)
+{
+ if (!show_sends_button) {
+ return;
+ }
+
+ if (onoff) {
+ show_sends_button->set_state (STATE_ACTIVE);
+ } else {
+ show_sends_button->set_state (STATE_NORMAL);
+ }
+}
+
+void
RouteUI::solo_changed(void* src)
{