diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2014-12-12 17:16:50 -0600 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-12-18 20:22:48 -0500 |
commit | 7ab8a11fb53782dfcf67b652dc65d8d177b0a1b6 (patch) | |
tree | 15975093e1a36db99e29ceca0f9f22fdd662cbb2 /gtk2_ardour/editor_mouse.cc | |
parent | cebf191cba74dea1c6630aa487a2a434a85ceb40 (diff) |
Enforce internal/external selection exclusivity.
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 38 |
1 files changed, 31 insertions, 7 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index ab153b943b..99f0775106 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -329,13 +329,37 @@ Editor::internal_editing() const void Editor::update_time_selection_display () { - switch (mouse_mode) { - case MouseRange: - selection->clear_objects (); - break; - default: - selection->clear_time (); - break; + if (smart_mode_action->get_active()) { + /* not sure what to do here */ + if (mouse_mode == MouseObject) { + } else { + } + } else { + switch (mouse_mode) { + case MouseRange: + selection->clear_objects (); + selection->ClearMidiNoteSelection(); //signal + break; + case MouseObject: + selection->clear_objects (); + selection->clear_time (); + selection->clear_tracks (); + selection->ClearMidiNoteSelection(); //signal + break; + case MouseContent: + case MouseDraw: + //if we go into internal editing, clear everything in the outside world + selection->clear_objects (); + selection->clear_time (); + selection->clear_tracks (); + break; + default: + //clear everything + selection->clear_objects (); + selection->clear_time (); + selection->clear_tracks (); + break; + } } } |