summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_mouse.cc
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-08-08 19:13:36 +0000
committerDavid Robillard <d@drobilla.net>2007-08-08 19:13:36 +0000
commit430bc18ba29ca4cb0d60fc9da53c88661b690920 (patch)
treed1a005debbf0e05bd0d89c73f9d92c2efffd9601 /gtk2_ardour/editor_mouse.cc
parent7caaa6a0e993489e7b968abc6aa7eb86745173a8 (diff)
First appearance of MIDI edit tool bar. Toggles when delete held, but otherwise still useless, pending some UI figuring out...
git-svn-id: svn://localhost/ardour2/trunk@2275 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r--gtk2_ardour/editor_mouse.cc53
1 files changed, 52 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index be2d0bc47d..0423e1aab3 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -213,7 +213,7 @@ Editor::set_mouse_mode (MouseMode m, bool force)
}
}
- /* XXX the hack of unsetting all other buttongs should go
+ /* XXX the hack of unsetting all other buttons should go
away once GTK2 allows us to use regular radio buttons drawn like
normal buttons, rather than my silly GroupedButton hack.
*/
@@ -257,6 +257,11 @@ Editor::set_mouse_mode (MouseMode m, bool force)
break;
}
+ if (mouse_mode == MouseNote)
+ midi_toolbar_frame.show();
+ else
+ midi_toolbar_frame.hide();
+
ignore_mouse_mode_toggle = false;
if (is_drawable()) {
@@ -306,6 +311,52 @@ Editor::step_mouse_mode (bool next)
}
void
+Editor::set_midi_edit_mode (MidiEditMode m, bool force)
+{
+ if (drag_info.item) {
+ return;
+ }
+
+ if (!force && m == midi_edit_mode) {
+ return;
+ }
+
+ midi_edit_mode = m;
+
+ instant_save ();
+
+ //ignore_midi_edit_mode_toggle = true;
+
+ switch (midi_edit_mode) {
+ case MidiEditSelect:
+ midi_tool_select_button.set_active (true);
+ //current_canvas_cursor = selector_cursor;
+ break;
+
+ case MidiEditPencil:
+ midi_tool_pencil_button.set_active (true);
+ //current_canvas_cursor = selector_cursor;
+ break;
+
+ case MidiEditErase:
+ midi_tool_erase_button.set_active (true);
+ //current_canvas_cursor = selector_cursor;
+ break;
+ }
+
+ if (mouse_mode == MouseNote)
+ midi_toolbar_frame.show();
+ else
+ midi_toolbar_frame.hide();
+
+ //ignore_midi_edit_mode_toggle = false;
+
+ /*if (is_drawable()) {
+ track_canvas.get_window()->set_cursor(*current_canvas_cursor);
+ }*/
+}
+
+void
Editor::button_selection (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type)
{
bool commit = false;