summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Loftis <ben@harrisonconsoles.com>2014-07-23 16:13:55 -0500
committerBen Loftis <ben@harrisonconsoles.com>2014-07-23 16:13:55 -0500
commitd46081c2756d2990f585a7db41adba9f1a15a1e3 (patch)
tree7290ec444193d9a2a501474be6e9f59a10e0977c
parent870206cf92453dac8c6bc020eca3d4808b024d7f (diff)
holding Primary(ctrl/cmd) allows user to make noncontiguous strip selections
-rw-r--r--gtk2_ardour/editor.h1
-rw-r--r--gtk2_ardour/editor_mixer.cc10
-rw-r--r--gtk2_ardour/mixer_strip.h3
3 files changed, 13 insertions, 1 deletions
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h
index d3d240611a..0ef35d7be7 100644
--- a/gtk2_ardour/editor.h
+++ b/gtk2_ardour/editor.h
@@ -307,6 +307,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
void show_editor_list (bool yn);
void set_selected_mixer_strip (TimeAxisView&);
void mixer_strip_width_changed ();
+ bool mixer_strip_enter_event ( GdkEventCrossing * );
void hide_track_in_display (TimeAxisView* tv, bool apply_to_selection = false);
/* nudge is initiated by transport controls owned by ARDOUR_UI */
diff --git a/gtk2_ardour/editor_mixer.cc b/gtk2_ardour/editor_mixer.cc
index cfd832385f..b9a711c2ec 100644
--- a/gtk2_ardour/editor_mixer.cc
+++ b/gtk2_ardour/editor_mixer.cc
@@ -183,6 +183,16 @@ Editor::create_editor_mixer ()
current_mixer_strip->WidthChanged.connect (sigc::mem_fun(*this, &Editor::ensure_all_elements_drawn));
#endif
current_mixer_strip->set_embedded (true);
+
+ current_mixer_strip->signal_enter_notify_event().connect (sigc::mem_fun(*this, &Editor::mixer_strip_enter_event ));
+
+}
+
+bool
+Editor::mixer_strip_enter_event (GdkEventCrossing *ev)
+{
+ current_mixer_strip->set_selected(true);
+ return false;
}
void
diff --git a/gtk2_ardour/mixer_strip.h b/gtk2_ardour/mixer_strip.h
index f9d745fe2b..4889811415 100644
--- a/gtk2_ardour/mixer_strip.h
+++ b/gtk2_ardour/mixer_strip.h
@@ -130,12 +130,13 @@ class MixerStrip : public RouteUI, public Gtk::EventBox
void toggle_processors ();
void ab_plugins ();
+ void set_selected(bool yn);
+
protected:
friend class Mixer_UI;
void set_packed (bool yn);
bool packed () { return _packed; }
- void set_selected(bool yn);
void set_stuff_from_route ();
private: