From 430bc18ba29ca4cb0d60fc9da53c88661b690920 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 8 Aug 2007 19:13:36 +0000 Subject: 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 --- gtk2_ardour/editor_mouse.cc | 53 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) (limited to 'gtk2_ardour/editor_mouse.cc') 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()) { @@ -305,6 +310,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) { -- cgit v1.2.3