From 298085eec2ba5b5ff98a456c29fefac94c486bb8 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 25 Jun 2014 15:23:25 -0400 Subject: [PATCH] use new ruler dialog class for context clicks on ruler labels area --- gtk2_ardour/editor.cc | 1 + gtk2_ardour/editor.h | 3 +++ gtk2_ardour/editor_rulers.cc | 7 ++++--- gtk2_ardour/wscript | 1 + 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index f4552ea9b1..3925a528b9 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -303,6 +303,7 @@ Editor::Editor () pre_press_cursor = 0; _drags = new DragManager (this); lock_dialog = 0; + ruler_dialog = 0; current_mixer_strip = 0; tempo_lines = 0; diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index 33d18cda72..403ce683cd 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -117,6 +117,7 @@ class PlaylistSelector; class PluginSelector; class ProgressReporter; class RhythmFerret; +class RulerDialog; class Selection; class SoundFileOmega; class StreamView; @@ -805,6 +806,8 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD Gtk::Widget * ruler_grabbed_widget; + RulerDialog* ruler_dialog; + void initialize_rulers (); void update_just_timecode (); void compute_fixed_ruler_scale (); //calculates the RulerScale of the fixed rulers diff --git a/gtk2_ardour/editor_rulers.cc b/gtk2_ardour/editor_rulers.cc index bdc7421eb9..fb496b6a20 100644 --- a/gtk2_ardour/editor_rulers.cc +++ b/gtk2_ardour/editor_rulers.cc @@ -47,6 +47,7 @@ #include "editing.h" #include "actions.h" #include "gui_thread.h" +#include "ruler_dialog.h" #include "time_axis_view.h" #include "editor_drag.h" #include "editor_cursors.h" @@ -181,10 +182,10 @@ bool Editor::ruler_label_button_release (GdkEventButton* ev) { if (Gtkmm2ext::Keyboard::is_context_menu_event (ev)) { - Gtk::Menu* m = dynamic_cast (ActionManager::get_widget (X_("/RulerMenuPopup"))); - if (m) { - m->popup (1, ev->time); + if (!ruler_dialog) { + ruler_dialog = new RulerDialog (); } + ruler_dialog->present (); } return true; diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript index 14114a5baf..41e67e023e 100644 --- a/gtk2_ardour/wscript +++ b/gtk2_ardour/wscript @@ -193,6 +193,7 @@ gtk2_ardour_sources = [ 'route_processor_selection.cc', 'route_time_axis.cc', 'route_ui.cc', + 'ruler_dialog.cc', 'search_path_option.cc', 'selection.cc', 'send_ui.cc',