#include "ardour_ui.h"
#include "public_editor.h"
#include "meterbridge.h"
+#include "luawindow.h"
#include "mixer_ui.h"
#include "keyboard.h"
#include "splash.h"
#include "rc_option_editor.h"
#include "route_params_ui.h"
+#include "time_info_box.h"
#include "opts.h"
#include "utils.h"
-#include "i18n.h"
+#include "pbd/i18n.h"
using namespace Gtk;
using namespace PBD;
editor->setup_tooltips ();
editor->UpdateAllTransportClocks.connect (sigc::mem_fun (*this, &ARDOUR_UI::update_transport_clocks));
- /* catch up on tabbable state */
+ /* catch up on tabbable state, in the right order to leave the editor
+ * selected by default
+ */
- tabbable_state_change (*editor);
- tabbable_state_change (*mixer);
tabbable_state_change (*rc_option_editor);
+ tabbable_state_change (*mixer);
+ tabbable_state_change (*editor);
/* all actions are defined */
ActionManager::load_menus (ARDOUR_COMMAND_LINE::menus_file);
- editor->track_mixer_selection ();
- mixer->track_editor_selection ();
-
/* catch up on parameters */
boost::function<void (std::string)> pc (boost::bind (&ARDOUR_UI::parameter_changed, this, _1));
BootMessage (_("Setup Mixer"));
mixer->set_session (s);
meterbridge->set_session (s);
+ luawindow->set_session (s);
/* its safe to do this now */
} else {
/* no session or session not dirty, but still ask anyway */
- Gtk::MessageDialog msg (string_compose ("Quit %1?", PROGRAM_NAME),
+ Gtk::MessageDialog msg (string_compose (_("Quit %1?"), PROGRAM_NAME),
false, /* no markup */
Gtk::MESSAGE_INFO,
Gtk::BUTTONS_YES_NO,
keyboard->setup_keybindings ();
+ _tabs.set_show_border(false);
_tabs.signal_switch_page().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_switch));
+ _tabs.signal_page_added().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_page_added));
+ _tabs.signal_page_removed().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_page_removed));
rc_option_editor = new RCOptionEditor;
rc_option_editor->StateChange.connect (sigc::mem_fun (*this, &ARDOUR_UI::tabbable_state_change));
return -1;
}
+ if (create_luawindow ()) {
+ error << _("UI: cannot setup luawindow") << endmsg;
+ return -1;
+ }
+
/* order of addition affects order seen in initial window display */
rc_option_editor->add_to_notebook (_tabs, _("Preferences"));
mixer->add_to_notebook (_tabs, _("Mixer"));
editor->add_to_notebook (_tabs, _("Editor"));
+ time_info_box = new TimeInfoBox (false);
/* all other dialogs are created conditionally */
we_have_dependents ();
main_vpacker.pack_start (status_bar_hpacker, false, false);
#endif
+ for (int i = 0; i < 9; ++i) {
+ std::string const a = string_compose (X_("script-action-%1"), i + 1);
+ Glib::RefPtr<Action> act = ActionManager::get_action(X_("Editor"), a.c_str());
+ assert (act);
+ action_script_call_btn[i].set_text (string_compose ("%1", i+1));
+ action_script_call_btn[i].set_related_action (act);
+ if (act->get_sensitive ()) {
+ action_script_call_btn[i].set_visual_state (Gtkmm2ext::VisualState (action_script_call_btn[i].visual_state() & ~Gtkmm2ext::Insensitive));
+ } else {
+ action_script_call_btn[i].set_visual_state (Gtkmm2ext::VisualState (action_script_call_btn[i].visual_state() | Gtkmm2ext::Insensitive));
+ }
+ const int row = i % 2;
+ const int col = i / 2;
+ action_script_table.attach (action_script_call_btn[i], col, col + 1, row, row + 1, EXPAND, EXPAND, 1, 0);
+ action_script_call_btn[i].set_no_show_all ();
+ }
+ action_script_table.show ();
+
setup_transport();
build_menu_bar ();
setup_tooltips ();
const XMLNode* mnode = main_window_settings ();
if (mnode) {
- const XMLProperty* prop;
+ XMLProperty const * prop;
gint x = -1;
gint y = -1;
gint w = -1;
}
}
- _main_window.show_all ();
setup_toplevel_window (_main_window, "", this);
+ _main_window.show_all ();
_tabs.set_show_tabs (false);