mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-07 15:25:01 +01:00
most of the changes required to add a new master faders tabbable
the visibility button isn't actually working correctly
This commit is contained in:
parent
87481a2ee1
commit
5c658db4bf
9 changed files with 98 additions and 9 deletions
|
|
@ -558,6 +558,12 @@
|
||||||
<menuitem action='attach-preferences'/>
|
<menuitem action='attach-preferences'/>
|
||||||
<menuitem action='detach-preferences'/>
|
<menuitem action='detach-preferences'/>
|
||||||
</menu>
|
</menu>
|
||||||
|
<menu action='MastersMenu'>
|
||||||
|
<menuitem action='show-preferences'/>
|
||||||
|
<menuitem action='hide-preferences'/>
|
||||||
|
<menuitem action='attach-preferences'/>
|
||||||
|
<menuitem action='detach-preferences'/>
|
||||||
|
</menu>
|
||||||
<menuitem action='toggle-meterbridge'/>
|
<menuitem action='toggle-meterbridge'/>
|
||||||
<menuitem action='toggle-luawindow'/>
|
<menuitem action='toggle-luawindow'/>
|
||||||
<separator/>
|
<separator/>
|
||||||
|
|
|
||||||
|
|
@ -255,6 +255,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
|
||||||
, main_window_visibility (0)
|
, main_window_visibility (0)
|
||||||
, editor (0)
|
, editor (0)
|
||||||
, mixer (0)
|
, mixer (0)
|
||||||
|
, masters (0)
|
||||||
, nsm (0)
|
, nsm (0)
|
||||||
, _was_dirty (false)
|
, _was_dirty (false)
|
||||||
, _mixer_on_top (false)
|
, _mixer_on_top (false)
|
||||||
|
|
@ -311,6 +312,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
|
||||||
, editor_visibility_button (S_("Window|Editor"))
|
, editor_visibility_button (S_("Window|Editor"))
|
||||||
, mixer_visibility_button (S_("Window|Mixer"))
|
, mixer_visibility_button (S_("Window|Mixer"))
|
||||||
, prefs_visibility_button (S_("Window|Preferences"))
|
, prefs_visibility_button (S_("Window|Preferences"))
|
||||||
|
, masters_visibility_button (S_("Windows|Masters"))
|
||||||
{
|
{
|
||||||
Gtkmm2ext::init (localedir);
|
Gtkmm2ext::init (localedir);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -119,6 +119,7 @@ class ButtonJoiner;
|
||||||
class ConnectionEditor;
|
class ConnectionEditor;
|
||||||
class DuplicateRouteDialog;
|
class DuplicateRouteDialog;
|
||||||
class MainClock;
|
class MainClock;
|
||||||
|
class MasterFaders;
|
||||||
class Mixer_UI;
|
class Mixer_UI;
|
||||||
class ArdourPrompter;
|
class ArdourPrompter;
|
||||||
class PublicEditor;
|
class PublicEditor;
|
||||||
|
|
@ -204,6 +205,7 @@ public:
|
||||||
|
|
||||||
PublicEditor& the_editor() { return *editor;}
|
PublicEditor& the_editor() { return *editor;}
|
||||||
Mixer_UI* the_mixer() { return mixer; }
|
Mixer_UI* the_mixer() { return mixer; }
|
||||||
|
MasterFaders* the_masters() { return masters; }
|
||||||
|
|
||||||
void new_midi_tracer_window ();
|
void new_midi_tracer_window ();
|
||||||
void toggle_editing_space();
|
void toggle_editing_space();
|
||||||
|
|
@ -384,6 +386,7 @@ private:
|
||||||
Gtk::Notebook _tabs;
|
Gtk::Notebook _tabs;
|
||||||
PublicEditor* editor;
|
PublicEditor* editor;
|
||||||
Mixer_UI* mixer;
|
Mixer_UI* mixer;
|
||||||
|
MasterFaders* masters;
|
||||||
Gtk::Tooltips _tooltips;
|
Gtk::Tooltips _tooltips;
|
||||||
NSM_Client* nsm;
|
NSM_Client* nsm;
|
||||||
bool _was_dirty;
|
bool _was_dirty;
|
||||||
|
|
@ -667,6 +670,7 @@ private:
|
||||||
int create_editor ();
|
int create_editor ();
|
||||||
int create_meterbridge ();
|
int create_meterbridge ();
|
||||||
int create_luawindow ();
|
int create_luawindow ();
|
||||||
|
int create_masters ();
|
||||||
|
|
||||||
Meterbridge *meterbridge;
|
Meterbridge *meterbridge;
|
||||||
LuaWindow *luawindow;
|
LuaWindow *luawindow;
|
||||||
|
|
@ -853,6 +857,7 @@ private:
|
||||||
ArdourButton editor_visibility_button;
|
ArdourButton editor_visibility_button;
|
||||||
ArdourButton mixer_visibility_button;
|
ArdourButton mixer_visibility_button;
|
||||||
ArdourButton prefs_visibility_button;
|
ArdourButton prefs_visibility_button;
|
||||||
|
ArdourButton masters_visibility_button;
|
||||||
|
|
||||||
bool key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev, Gtkmm2ext::Bindings*);
|
bool key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev, Gtkmm2ext::Bindings*);
|
||||||
bool try_gtk_accel_binding (GtkWindow* win, GdkEventKey* ev, bool translate, GdkModifierType modifier);
|
bool try_gtk_accel_binding (GtkWindow* win, GdkEventKey* ev, bool translate, GdkModifierType modifier);
|
||||||
|
|
|
||||||
|
|
@ -36,6 +36,7 @@
|
||||||
#include "actions.h"
|
#include "actions.h"
|
||||||
#include "ardour_ui.h"
|
#include "ardour_ui.h"
|
||||||
#include "public_editor.h"
|
#include "public_editor.h"
|
||||||
|
#include "master_faders.h"
|
||||||
#include "meterbridge.h"
|
#include "meterbridge.h"
|
||||||
#include "luawindow.h"
|
#include "luawindow.h"
|
||||||
#include "mixer_ui.h"
|
#include "mixer_ui.h"
|
||||||
|
|
@ -162,7 +163,8 @@ ARDOUR_UI::tab_window_root_drop (GtkNotebook* src,
|
||||||
tabbable = mixer;
|
tabbable = mixer;
|
||||||
} else if (w == GTK_WIDGET(rc_option_editor->contents().gobj())) {
|
} else if (w == GTK_WIDGET(rc_option_editor->contents().gobj())) {
|
||||||
tabbable = rc_option_editor;
|
tabbable = rc_option_editor;
|
||||||
} else {
|
} else if (w == GTK_WIDGET(masters->contents().gobj())) {
|
||||||
|
tabbable = masters;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -264,8 +266,14 @@ ARDOUR_UI::setup_windows ()
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (create_masters()) {
|
||||||
|
error << _("UI: cannot setup meterbridge") << endmsg;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
/* order of addition affects order seen in initial window display */
|
/* order of addition affects order seen in initial window display */
|
||||||
|
|
||||||
|
masters->add_to_notebook (_tabs, _("Masters"));
|
||||||
rc_option_editor->add_to_notebook (_tabs, _("Preferences"));
|
rc_option_editor->add_to_notebook (_tabs, _("Preferences"));
|
||||||
mixer->add_to_notebook (_tabs, _("Mixer"));
|
mixer->add_to_notebook (_tabs, _("Mixer"));
|
||||||
editor->add_to_notebook (_tabs, _("Editor"));
|
editor->add_to_notebook (_tabs, _("Editor"));
|
||||||
|
|
@ -381,6 +389,8 @@ ARDOUR_UI::setup_windows ()
|
||||||
_tabs.set_current_page (_tabs.page_num (mixer->contents()));
|
_tabs.set_current_page (_tabs.page_num (mixer->contents()));
|
||||||
} else if (rc_option_editor && current_tab == "preferences") {
|
} else if (rc_option_editor && current_tab == "preferences") {
|
||||||
_tabs.set_current_page (_tabs.page_num (rc_option_editor->contents()));
|
_tabs.set_current_page (_tabs.page_num (rc_option_editor->contents()));
|
||||||
|
} else if (masters && current_tab == "masters") {
|
||||||
|
_tabs.set_current_page (_tabs.page_num (masters->contents()));
|
||||||
} else if (editor) {
|
} else if (editor) {
|
||||||
_tabs.set_current_page (_tabs.page_num (editor->contents()));
|
_tabs.set_current_page (_tabs.page_num (editor->contents()));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,7 @@
|
||||||
#include "lua_script_manager.h"
|
#include "lua_script_manager.h"
|
||||||
#include "luawindow.h"
|
#include "luawindow.h"
|
||||||
#include "main_clock.h"
|
#include "main_clock.h"
|
||||||
|
#include "master_faders.h"
|
||||||
#include "meterbridge.h"
|
#include "meterbridge.h"
|
||||||
#include "meter_patterns.h"
|
#include "meter_patterns.h"
|
||||||
#include "monitor_section.h"
|
#include "monitor_section.h"
|
||||||
|
|
@ -550,6 +551,7 @@ ARDOUR_UI::tabs_page_added (Widget*,guint)
|
||||||
editor_visibility_button.drag_source_set (drag_target_entries);
|
editor_visibility_button.drag_source_set (drag_target_entries);
|
||||||
mixer_visibility_button.drag_source_set (drag_target_entries);
|
mixer_visibility_button.drag_source_set (drag_target_entries);
|
||||||
prefs_visibility_button.drag_source_set (drag_target_entries);
|
prefs_visibility_button.drag_source_set (drag_target_entries);
|
||||||
|
masters_visibility_button.drag_source_set (drag_target_entries);
|
||||||
|
|
||||||
editor_visibility_button.drag_source_set_icon (Gtkmm2ext::pixbuf_from_string (editor->name(),
|
editor_visibility_button.drag_source_set_icon (Gtkmm2ext::pixbuf_from_string (editor->name(),
|
||||||
Pango::FontDescription ("Sans 24"),
|
Pango::FontDescription ("Sans 24"),
|
||||||
|
|
@ -563,6 +565,10 @@ ARDOUR_UI::tabs_page_added (Widget*,guint)
|
||||||
Pango::FontDescription ("Sans 24"),
|
Pango::FontDescription ("Sans 24"),
|
||||||
0, 0,
|
0, 0,
|
||||||
Gdk::Color ("red")));
|
Gdk::Color ("red")));
|
||||||
|
masters_visibility_button.drag_source_set_icon (Gtkmm2ext::pixbuf_from_string (masters->name(),
|
||||||
|
Pango::FontDescription ("Sans 24"),
|
||||||
|
0, 0,
|
||||||
|
Gdk::Color ("red")));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -573,6 +579,7 @@ ARDOUR_UI::tabs_page_removed (Widget*, guint)
|
||||||
editor_visibility_button.drag_source_unset ();
|
editor_visibility_button.drag_source_unset ();
|
||||||
mixer_visibility_button.drag_source_unset ();
|
mixer_visibility_button.drag_source_unset ();
|
||||||
prefs_visibility_button.drag_source_unset ();
|
prefs_visibility_button.drag_source_unset ();
|
||||||
|
masters_visibility_button.drag_source_unset ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -581,29 +588,61 @@ ARDOUR_UI::tabs_switch (GtkNotebookPage*, guint page)
|
||||||
{
|
{
|
||||||
if (editor && (page == (guint) _tabs.page_num (editor->contents()))) {
|
if (editor && (page == (guint) _tabs.page_num (editor->contents()))) {
|
||||||
editor_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
editor_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
||||||
|
|
||||||
if (mixer && (mixer->tabbed() || mixer->tabbed_by_default())) {
|
if (mixer && (mixer->tabbed() || mixer->tabbed_by_default())) {
|
||||||
mixer_visibility_button.set_active_state (Gtkmm2ext::Off);
|
mixer_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rc_option_editor && (rc_option_editor->tabbed() || rc_option_editor->tabbed_by_default())) {
|
if (rc_option_editor && (rc_option_editor->tabbed() || rc_option_editor->tabbed_by_default())) {
|
||||||
prefs_visibility_button.set_active_state (Gtkmm2ext::Off);
|
prefs_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
} else if (mixer && (page == (guint) _tabs.page_num (mixer->contents()))) {
|
} else if (mixer && (page == (guint) _tabs.page_num (mixer->contents()))) {
|
||||||
|
|
||||||
if (editor && (editor->tabbed() || editor->tabbed_by_default())) {
|
if (editor && (editor->tabbed() || editor->tabbed_by_default())) {
|
||||||
editor_visibility_button.set_active_state (Gtkmm2ext::Off);
|
editor_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
|
|
||||||
mixer_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
mixer_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
||||||
|
|
||||||
if (rc_option_editor && (rc_option_editor->tabbed() || rc_option_editor->tabbed_by_default())) {
|
if (rc_option_editor && (rc_option_editor->tabbed() || rc_option_editor->tabbed_by_default())) {
|
||||||
prefs_visibility_button.set_active_state (Gtkmm2ext::Off);
|
prefs_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
|
if (masters && (masters->tabbed() || masters->tabbed_by_default())) {
|
||||||
|
masters_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (page == (guint) _tabs.page_num (rc_option_editor->contents())) {
|
||||||
|
|
||||||
if (editor && (editor->tabbed() || editor->tabbed_by_default())) {
|
if (editor && (editor->tabbed() || editor->tabbed_by_default())) {
|
||||||
editor_visibility_button.set_active_state (Gtkmm2ext::Off);
|
editor_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mixer && (mixer->tabbed() || mixer->tabbed_by_default())) {
|
if (mixer && (mixer->tabbed() || mixer->tabbed_by_default())) {
|
||||||
mixer_visibility_button.set_active_state (Gtkmm2ext::Off);
|
mixer_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
}
|
}
|
||||||
|
|
||||||
prefs_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
prefs_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
||||||
|
|
||||||
|
if (masters && (masters->tabbed() || masters->tabbed_by_default())) {
|
||||||
|
masters_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (page == (guint) _tabs.page_num (masters->contents())) {
|
||||||
|
|
||||||
|
if (editor && (editor->tabbed() || editor->tabbed_by_default())) {
|
||||||
|
editor_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mixer && (mixer->tabbed() || mixer->tabbed_by_default())) {
|
||||||
|
mixer_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rc_option_editor && (rc_option_editor->tabbed() || rc_option_editor->tabbed_by_default())) {
|
||||||
|
prefs_visibility_button.set_active_state (Gtkmm2ext::Off);
|
||||||
|
}
|
||||||
|
|
||||||
|
masters_visibility_button.set_active_state (Gtkmm2ext::ImplicitActive);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -692,14 +731,22 @@ ARDOUR_UI::tabbable_state_change (Tabbable& t)
|
||||||
vis_button = &editor_visibility_button;
|
vis_button = &editor_visibility_button;
|
||||||
other_vis_buttons.push_back (&mixer_visibility_button);
|
other_vis_buttons.push_back (&mixer_visibility_button);
|
||||||
other_vis_buttons.push_back (&prefs_visibility_button);
|
other_vis_buttons.push_back (&prefs_visibility_button);
|
||||||
|
other_vis_buttons.push_back (&masters_visibility_button);
|
||||||
} else if (&t == mixer) {
|
} else if (&t == mixer) {
|
||||||
vis_button = &mixer_visibility_button;
|
vis_button = &mixer_visibility_button;
|
||||||
other_vis_buttons.push_back (&editor_visibility_button);
|
other_vis_buttons.push_back (&editor_visibility_button);
|
||||||
other_vis_buttons.push_back (&prefs_visibility_button);
|
other_vis_buttons.push_back (&prefs_visibility_button);
|
||||||
} else {
|
other_vis_buttons.push_back (&masters_visibility_button);
|
||||||
|
} else if (&t == rc_option_editor) {
|
||||||
vis_button = &prefs_visibility_button;
|
vis_button = &prefs_visibility_button;
|
||||||
other_vis_buttons.push_back (&editor_visibility_button);
|
other_vis_buttons.push_back (&editor_visibility_button);
|
||||||
|
other_vis_buttons.push_back (&masters_visibility_button);
|
||||||
other_vis_buttons.push_back (&mixer_visibility_button);
|
other_vis_buttons.push_back (&mixer_visibility_button);
|
||||||
|
} else if (&t == masters) {
|
||||||
|
vis_button = &masters_visibility_button;
|
||||||
|
other_vis_buttons.push_back (&editor_visibility_button);
|
||||||
|
other_vis_buttons.push_back (&mixer_visibility_button);
|
||||||
|
other_vis_buttons.push_back (&prefs_visibility_button);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!vis_button) {
|
if (!vis_button) {
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,7 @@
|
||||||
#include "public_editor.h"
|
#include "public_editor.h"
|
||||||
#include "audio_clock.h"
|
#include "audio_clock.h"
|
||||||
#include "keyboard.h"
|
#include "keyboard.h"
|
||||||
|
#include "master_faders.h"
|
||||||
#include "monitor_section.h"
|
#include "monitor_section.h"
|
||||||
#include "engine_dialog.h"
|
#include "engine_dialog.h"
|
||||||
#include "editor.h"
|
#include "editor.h"
|
||||||
|
|
@ -126,6 +127,7 @@ ARDOUR_UI::install_actions ()
|
||||||
global_actions.register_action (main_menu_actions, X_("MixerMenu"), _("Mixer"));
|
global_actions.register_action (main_menu_actions, X_("MixerMenu"), _("Mixer"));
|
||||||
global_actions.register_action (main_menu_actions, X_("EditorMenu"), _("Editor"));
|
global_actions.register_action (main_menu_actions, X_("EditorMenu"), _("Editor"));
|
||||||
global_actions.register_action (main_menu_actions, X_("PrefsMenu"), _("Preferences"));
|
global_actions.register_action (main_menu_actions, X_("PrefsMenu"), _("Preferences"));
|
||||||
|
global_actions.register_action (main_menu_actions, X_("MastersMenu"), _("Master Faders"));
|
||||||
global_actions.register_action (main_menu_actions, X_("DetachMenu"), _("Detach"));
|
global_actions.register_action (main_menu_actions, X_("DetachMenu"), _("Detach"));
|
||||||
global_actions.register_action (main_menu_actions, X_("Help"), _("Help"));
|
global_actions.register_action (main_menu_actions, X_("Help"), _("Help"));
|
||||||
global_actions.register_action (main_menu_actions, X_("KeyMouseActions"), _("Misc. Shortcuts"));
|
global_actions.register_action (main_menu_actions, X_("KeyMouseActions"), _("Misc. Shortcuts"));
|
||||||
|
|
@ -248,18 +250,22 @@ ARDOUR_UI::install_actions ()
|
||||||
global_actions.register_action (common_actions, X_("show-mixer"), _("Show"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), mixer));
|
global_actions.register_action (common_actions, X_("show-mixer"), _("Show"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), mixer));
|
||||||
global_actions.register_action (common_actions, X_("show-preferences"), _("Show"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), rc_option_editor));
|
global_actions.register_action (common_actions, X_("show-preferences"), _("Show"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), rc_option_editor));
|
||||||
global_actions.register_action (common_actions, X_("menu-show-preferences"), _("Preferences"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), rc_option_editor));
|
global_actions.register_action (common_actions, X_("menu-show-preferences"), _("Preferences"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("show-masters"), _("Show"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::show_tabbable), masters));
|
||||||
|
|
||||||
global_actions.register_action (common_actions, X_("hide-editor"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), editor));
|
global_actions.register_action (common_actions, X_("hide-editor"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), editor));
|
||||||
global_actions.register_action (common_actions, X_("hide-mixer"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), mixer));
|
global_actions.register_action (common_actions, X_("hide-mixer"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), mixer));
|
||||||
global_actions.register_action (common_actions, X_("hide-preferences"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), rc_option_editor));
|
global_actions.register_action (common_actions, X_("hide-preferences"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("hide-masters"), _("Hide"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::hide_tabbable), masters));
|
||||||
|
|
||||||
global_actions.register_action (common_actions, X_("attach-editor"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), editor));
|
global_actions.register_action (common_actions, X_("attach-editor"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), editor));
|
||||||
global_actions.register_action (common_actions, X_("attach-mixer"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), mixer));
|
global_actions.register_action (common_actions, X_("attach-mixer"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), mixer));
|
||||||
global_actions.register_action (common_actions, X_("attach-preferences"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), rc_option_editor));
|
global_actions.register_action (common_actions, X_("attach-preferences"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("attach-masters"), _("Attach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::attach_tabbable), masters));
|
||||||
|
|
||||||
global_actions.register_action (common_actions, X_("detach-editor"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), editor));
|
global_actions.register_action (common_actions, X_("detach-editor"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), editor));
|
||||||
global_actions.register_action (common_actions, X_("detach-mixer"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), mixer));
|
global_actions.register_action (common_actions, X_("detach-mixer"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), mixer));
|
||||||
global_actions.register_action (common_actions, X_("detach-preferences"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), rc_option_editor));
|
global_actions.register_action (common_actions, X_("detach-preferences"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("detach-masters"), _("Detach"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::detach_tabbable), masters));
|
||||||
|
|
||||||
/* These "change" actions are not intended to be used inside menus, but
|
/* These "change" actions are not intended to be used inside menus, but
|
||||||
are for the tab/window control buttons, which have somewhat odd
|
are for the tab/window control buttons, which have somewhat odd
|
||||||
|
|
@ -268,6 +274,7 @@ ARDOUR_UI::install_actions ()
|
||||||
global_actions.register_action (common_actions, X_("change-editor-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), editor));
|
global_actions.register_action (common_actions, X_("change-editor-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), editor));
|
||||||
global_actions.register_action (common_actions, X_("change-mixer-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), mixer));
|
global_actions.register_action (common_actions, X_("change-mixer-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), mixer));
|
||||||
global_actions.register_action (common_actions, X_("change-preferences-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), rc_option_editor));
|
global_actions.register_action (common_actions, X_("change-preferences-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("change-masters"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::button_change_tabbable_visibility), masters));
|
||||||
|
|
||||||
/* These "change" actions are not intended to be used inside menus, but
|
/* These "change" actions are not intended to be used inside menus, but
|
||||||
are for the tab/window control key bindings, which have somewhat odd
|
are for the tab/window control key bindings, which have somewhat odd
|
||||||
|
|
@ -276,6 +283,7 @@ ARDOUR_UI::install_actions ()
|
||||||
global_actions.register_action (common_actions, X_("key-change-editor-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), editor));
|
global_actions.register_action (common_actions, X_("key-change-editor-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), editor));
|
||||||
global_actions.register_action (common_actions, X_("key-change-mixer-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), mixer));
|
global_actions.register_action (common_actions, X_("key-change-mixer-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), mixer));
|
||||||
global_actions.register_action (common_actions, X_("key-change-preferences-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), rc_option_editor));
|
global_actions.register_action (common_actions, X_("key-change-preferences-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), rc_option_editor));
|
||||||
|
global_actions.register_action (common_actions, X_("key-change-masters-visibility"), _("Change"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::key_change_tabbable_visibility), masters));
|
||||||
|
|
||||||
global_actions.register_action (common_actions, X_("previous-tab"), _("Previous Tab"), sigc::mem_fun (*this, &ARDOUR_UI::step_up_through_tabs));
|
global_actions.register_action (common_actions, X_("previous-tab"), _("Previous Tab"), sigc::mem_fun (*this, &ARDOUR_UI::step_up_through_tabs));
|
||||||
global_actions.register_action (common_actions, X_("next-tab"), _("Next Tab"), sigc::mem_fun (*this, &ARDOUR_UI::step_down_through_tabs));
|
global_actions.register_action (common_actions, X_("next-tab"), _("Next Tab"), sigc::mem_fun (*this, &ARDOUR_UI::step_down_through_tabs));
|
||||||
|
|
@ -705,6 +713,8 @@ ARDOUR_UI::save_ardour_state ()
|
||||||
current_tab = "mixer";
|
current_tab = "mixer";
|
||||||
} else if (current_page_number == _tabs.page_num (rc_option_editor->contents())) {
|
} else if (current_page_number == _tabs.page_num (rc_option_editor->contents())) {
|
||||||
current_tab = "preferences";
|
current_tab = "preferences";
|
||||||
|
} else if (masters && (current_page_number == _tabs.page_num (masters->contents()))) {
|
||||||
|
current_tab == "masters";
|
||||||
}
|
}
|
||||||
|
|
||||||
main_window_node.add_property (X_("current-tab"), current_tab);
|
main_window_node.add_property (X_("current-tab"), current_tab);
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
|
|
||||||
#include "actions.h"
|
#include "actions.h"
|
||||||
#include "ardour_ui.h"
|
#include "ardour_ui.h"
|
||||||
|
#include "master_faders.h"
|
||||||
#include "mixer_ui.h"
|
#include "mixer_ui.h"
|
||||||
#include "meterbridge.h"
|
#include "meterbridge.h"
|
||||||
|
|
||||||
|
|
@ -69,3 +70,16 @@ ARDOUR_UI::create_meterbridge ()
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
ARDOUR_UI::create_masters ()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
masters = MasterFaders::instance ();
|
||||||
|
}
|
||||||
|
|
||||||
|
catch (failed_constructor& err) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -146,12 +146,6 @@ class Mixer_UI : public Gtkmm2ext::Tabbable, public PBD::ScopedConnectionList, p
|
||||||
|
|
||||||
MixerGroupTabs* _group_tabs;
|
MixerGroupTabs* _group_tabs;
|
||||||
|
|
||||||
// for restoring window geometry.
|
|
||||||
int m_root_x, m_root_y, m_width, m_height;
|
|
||||||
|
|
||||||
void set_window_pos_and_size ();
|
|
||||||
void get_window_pos_and_size ();
|
|
||||||
|
|
||||||
bool on_scroll_event (GdkEventScroll*);
|
bool on_scroll_event (GdkEventScroll*);
|
||||||
|
|
||||||
void pane_allocation_handler (Gtk::Allocation&, Gtk::Paned*);
|
void pane_allocation_handler (Gtk::Allocation&, Gtk::Paned*);
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@
|
||||||
#include <gtkmm/button.h>
|
#include <gtkmm/button.h>
|
||||||
#include <gtkmm/image.h>
|
#include <gtkmm/image.h>
|
||||||
#include <gtkmm/label.h>
|
#include <gtkmm/label.h>
|
||||||
|
#include <gtkmm/notebook.h>
|
||||||
|
|
||||||
#include "gtkmm2ext/cairo_icon.h"
|
#include "gtkmm2ext/cairo_icon.h"
|
||||||
#include "gtkmm2ext/window_proxy.h"
|
#include "gtkmm2ext/window_proxy.h"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue