diff options
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 92 |
1 files changed, 19 insertions, 73 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index 0e4b54c7a2..e75d51313e 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -1001,10 +1001,6 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT } if (internal_editing ()) { - if (event->type == GDK_2BUTTON_PRESS && event->button.button == 1) { - Glib::RefPtr<Action> act = ActionManager::get_action (X_("MouseMode"), X_("toggle-internal-edit")); - act->activate (); - } break; } @@ -1140,31 +1136,6 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT break; } -#ifdef WITH_CMT - case ImageFrameHandleStartItem: - imageframe_start_handle_op(item, event) ; - return(true) ; - break ; - case ImageFrameHandleEndItem: - imageframe_end_handle_op(item, event) ; - return(true) ; - break ; - case MarkerViewHandleStartItem: - markerview_item_start_handle_op(item, event) ; - return(true) ; - break ; - case MarkerViewHandleEndItem: - markerview_item_end_handle_op(item, event) ; - return(true) ; - break ; - case MarkerViewItem: - start_markerview_grab(item, event) ; - break ; - case ImageFrameItem: - start_imageframe_grab(item, event) ; - break ; -#endif - case MarkerBarItem: break; @@ -1510,14 +1481,6 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT edit_control_point (item); break; - case NoteItem: - { - NoteBase* e = reinterpret_cast<NoteBase*> (item->get_data ("notebase")); - assert (e); - edit_notes (e->region_view().selection ()); - break; - } - default: break; } @@ -1601,21 +1564,6 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT popup_control_point_context_menu (item, event); break; -#ifdef WITH_CMT - case ImageFrameItem: - popup_imageframe_edit_menu(1, event->button.time, item, true) ; - break ; - case ImageFrameTimeAxisItem: - popup_imageframe_edit_menu(1, event->button.time, item, false) ; - break ; - case MarkerViewItem: - popup_marker_time_axis_edit_menu(1, event->button.time, item, true) ; - break ; - case MarkerTimeAxisItem: - popup_marker_time_axis_edit_menu(1, event->button.time, item, false) ; - break ; -#endif - default: break; } @@ -1895,19 +1843,11 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ break; case StartSelectionTrimItem: -#ifdef WITH_CMT - case ImageFrameHandleStartItem: - case MarkerViewHandleStartItem: -#endif if (is_drawable()) { set_canvas_cursor (_cursors->left_side_trim); } break; case EndSelectionTrimItem: -#ifdef WITH_CMT - case ImageFrameHandleEndItem: - case MarkerViewHandleEndItem: -#endif if (is_drawable()) { set_canvas_cursor (_cursors->right_side_trim); } @@ -2082,13 +2022,6 @@ Editor::leave_handler (ArdourCanvas::Item* item, GdkEvent*, ItemType item_type) case EndSelectionTrimItem: case PlayheadCursorItem: -#ifdef WITH_CMT - case ImageFrameHandleStartItem: - case ImageFrameHandleEndItem: - case MarkerViewHandleStartItem: - case MarkerViewHandleEndItem: -#endif - _over_region_trim_target = false; if (is_drawable()) { @@ -2376,7 +2309,6 @@ Editor::edit_control_point (ArdourCanvas::Item* item) } ControlPointDialog d (p); - d.set_position (Gtk::WIN_POS_MOUSE); ensure_float (d); if (d.run () != RESPONSE_ACCEPT) { @@ -2387,19 +2319,33 @@ Editor::edit_control_point (ArdourCanvas::Item* item) } void -Editor::edit_notes (MidiRegionView::Selection const & s) +Editor::edit_notes (TimeAxisViewItem& tavi) { + MidiRegionView* mrv = dynamic_cast<MidiRegionView*>(&tavi); + + if (!mrv) { + return; + } + + MidiRegionView::Selection const & s = mrv->selection(); + if (s.empty ()) { return; } - EditNoteDialog d (&(*s.begin())->region_view(), s); - d.set_position (Gtk::WIN_POS_MOUSE); - ensure_float (d); + EditNoteDialog* d = new EditNoteDialog (&(*s.begin())->region_view(), s); + d->show_all (); + ensure_float (*d); - d.run (); + d->signal_response().connect (sigc::bind (sigc::mem_fun (*this, &Editor::note_edit_done), d)); } +void +Editor::note_edit_done (int r, EditNoteDialog* d) +{ + d->done (r); + delete d; +} void Editor::visible_order_range (int* low, int* high) const |