holding Primary(ctrl/cmd) allows user to make noncontiguous strip selections
authorBen Loftis <ben@harrisonconsoles.com>
Wed, 23 Jul 2014 21:13:55 +0000 (16:13 -0500)
committerBen Loftis <ben@harrisonconsoles.com>
Wed, 23 Jul 2014 21:13:55 +0000 (16:13 -0500)
gtk2_ardour/editor.h
gtk2_ardour/editor_mixer.cc
gtk2_ardour/mixer_strip.h

index d3d240611a4418198b3ed9b52fe8dfc7e7d13b2c..0ef35d7be7a0529df84b498cf12aad93ababbe2a 100644 (file)
@@ -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 */
index cfd832385f3656763305689b1e0e384a872a0d0b..b9a711c2ec5c380feb3a5d1fd53ae46ad72d8901 100644 (file)
@@ -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
index f9d745fe2b9d503c2702983fe501a395cbcdd39a..488981141500f18d71cc77b93642293587dbd60f 100644 (file)
@@ -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: