summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorNick Mainsbridge <beatroute@iprimus.com.au>2008-10-26 20:09:05 +0000
committerNick Mainsbridge <beatroute@iprimus.com.au>2008-10-26 20:09:05 +0000
commitfc54f2eab1c946a2740cf3d15bfbeb2fbb7a3654 (patch)
tree6584ebd97ad83b02b6f8661e788a950ebca35e8c /gtk2_ardour
parentd91e94ea2f99d9ba38c0c52605164ae2fdb524b9 (diff)
Fix missing tempo lines if zooming with unchanged left edge, implement toggling editor/mixer on top.
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4017 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/SAE-de.bindings.in2
-rw-r--r--gtk2_ardour/SAE-us.bindings.in3
-rw-r--r--gtk2_ardour/ardour-sae.menus1
-rw-r--r--gtk2_ardour/ardour_ui.cc1
-rw-r--r--gtk2_ardour/ardour_ui.h6
-rw-r--r--gtk2_ardour/ardour_ui_dependents.cc14
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc1
-rw-r--r--gtk2_ardour/editor.cc7
8 files changed, 31 insertions, 4 deletions
diff --git a/gtk2_ardour/SAE-de.bindings.in b/gtk2_ardour/SAE-de.bindings.in
index 1c74cc314d..9122317df9 100644
--- a/gtk2_ardour/SAE-de.bindings.in
+++ b/gtk2_ardour/SAE-de.bindings.in
@@ -104,7 +104,7 @@
(gtk_accel_path "<Actions>/Editor/normalize-region" "n")
(gtk_accel_path "<Actions>/Main/New" "<%PRIMARY%>n")
(gtk_accel_path "<Actions>/Main/AddTrackBus" "<%PRIMARY%><%TERTIARY%>n")
-(gtk_accel_path "<Actions>/Common/goto-mixer" "<%SECONDARY%>m")
+(gtk_accel_path "<Actions>/Common/toggle-editor-mixer-on-top" "<%SECONDARY%>m")
(gtk_accel_path "<Actions>/Editor/add-location-from-playhead" "KP_Enter")
(gtk_accel_path "<Actions>/Editor/mute-unmute-region" "m")
diff --git a/gtk2_ardour/SAE-us.bindings.in b/gtk2_ardour/SAE-us.bindings.in
index 523878bd3f..598d9b1f55 100644
--- a/gtk2_ardour/SAE-us.bindings.in
+++ b/gtk2_ardour/SAE-us.bindings.in
@@ -229,7 +229,8 @@
; (gtk_accel_path "<Actions>/Editor/SnapMode" "")
(gtk_accel_path "<Actions>/Common/ToggleOptionsEditor" "<%WINDOW%>o")
; (gtk_accel_path "<Actions>/Editor/PullupMinus4" "")
-(gtk_accel_path "<Actions>/Common/goto-mixer" "<%WINDOW%>m")
+; (gtk_accel_path "<Actions>/Common/goto-mixer" "<%WINDOW%>m")
+(gtk_accel_path "<Actions>/Common/toggle-editor-mixer-on-top" "<%WINDOW%>m")
; (gtk_accel_path "<Actions>/RegionList/SortBySourceFileCreationDate" "")
; (gtk_accel_path "<Actions>/redirectmenu/activate" "")
(gtk_accel_path "<Actions>/Editor/extend-range-to-start-of-region" "leftanglebracket")
diff --git a/gtk2_ardour/ardour-sae.menus b/gtk2_ardour/ardour-sae.menus
index 582fb7ead4..3b8330e33f 100644
--- a/gtk2_ardour/ardour-sae.menus
+++ b/gtk2_ardour/ardour-sae.menus
@@ -268,6 +268,7 @@
<menu action="WindowMenu">
<menuitem action='goto-editor'/>
<menuitem action='goto-mixer'/>
+ <menuitem action='toggle-editor-mixer-on-top'/>
<menuitem action='ToggleLocations'/>
<menuitem action='ToggleKeyEditor'/>
<menuitem action='ToggleThemeManager'/>
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index c8d0c8afdc..670f896923 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -199,6 +199,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
session_loaded = false;
last_speed_displayed = -1.0f;
ignore_dual_punch = false;
+ _mixer_on_top = false;
last_configure_time= 0;
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index ed62d5c138..79ab093e9d 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -276,8 +276,10 @@ class ARDOUR_UI : public Gtkmm2ext::UI
Gtk::Tooltips _tooltips;
- void goto_editor_window ();
- void goto_mixer_window ();
+ void goto_editor_window ();
+ void goto_mixer_window ();
+ void toggle_editor_mixer_on_top ();
+ bool _mixer_on_top;
GlobalClickBox *online_control_button;
vector<string> online_control_strings;
diff --git a/gtk2_ardour/ardour_ui_dependents.cc b/gtk2_ardour/ardour_ui_dependents.cc
index 7d623ac58e..78299941f9 100644
--- a/gtk2_ardour/ardour_ui_dependents.cc
+++ b/gtk2_ardour/ardour_ui_dependents.cc
@@ -99,6 +99,7 @@ ARDOUR_UI::goto_editor_window ()
editor->show_window ();
editor->present();
+ _mixer_on_top = false;
flush_pending ();
}
@@ -107,9 +108,22 @@ ARDOUR_UI::goto_mixer_window ()
{
mixer->show_window ();
mixer->present();
+ _mixer_on_top = true;
flush_pending ();
}
+void
+ARDOUR_UI::toggle_editor_mixer_on_top ()
+{
+ if (_mixer_on_top) {
+ goto_editor_window ();
+ _mixer_on_top = false;
+ } else {
+ goto_mixer_window ();
+ _mixer_on_top = true;
+ }
+}
+
gint
ARDOUR_UI::exit_on_main_window_close (GdkEventAny *ev)
{
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 974d8aadf1..7a355982be 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -203,6 +203,7 @@ ARDOUR_UI::install_actions ()
ActionManager::register_action (common_actions, X_("goto-editor"), _("Show Editor"), mem_fun(*this, &ARDOUR_UI::goto_editor_window));
ActionManager::register_action (common_actions, X_("goto-mixer"), _("Show Mixer"), mem_fun(*this, &ARDOUR_UI::goto_mixer_window));
+ ActionManager::register_action (common_actions, X_("toggle-editor-mixer-on-top"), _("Toggle Editor Mixer on Top"), mem_fun(*this, &ARDOUR_UI::toggle_editor_mixer_on_top));
ActionManager::register_toggle_action (common_actions, X_("ToggleOptionsEditor"), _("Preferences"), mem_fun(*this, &ARDOUR_UI::toggle_options_window));
act = ActionManager::register_toggle_action (common_actions, X_("ToggleInspector"), _("Track/Bus Inspector"), mem_fun(*this, &ARDOUR_UI::toggle_route_params_window));
ActionManager::session_sensitive_actions.push_back (act);
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc
index aad286610c..1bd85650e1 100644
--- a/gtk2_ardour/editor.cc
+++ b/gtk2_ardour/editor.cc
@@ -4415,7 +4415,14 @@ Editor::idle_visual_changer ()
}
if (p & VisualChange::TimeOrigin) {
+ double current_time_origin = horizontal_adjustment.get_value();
horizontal_adjustment.set_value (pending_visual_change.time_origin / frames_per_unit);
+
+ if (current_time_origin == pending_visual_change.time_origin) {
+ /* changed signal not emitted */
+ update_fixed_rulers ();
+ redisplay_tempo (true);
+ }
}
//cerr << "Editor::idle_visual_changer () called ha v:l:u:ps:fpu = " << horizontal_adjustment.get_value() << ":" << horizontal_adjustment.get_lower() << ":" << horizontal_adjustment.get_upper() << ":" << horizontal_adjustment.get_page_size() << ":" << frames_per_unit << endl;//DEBUG