2 Copyright (C) 2000 Paul Davis
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 #include "gtk2ardour-config.h"
24 /* this file exists solely to break compilation dependencies that
25 would connect changes to the mixer or editor objects.
30 #include "pbd/error.h"
32 #include "ardour/session.h"
35 #include "ardour_ui.h"
36 #include "public_editor.h"
37 #include "meterbridge.h"
41 #include "route_params_ui.h"
53 using namespace ARDOUR;
56 ARDOUR_UI::we_have_dependents ()
59 ProcessorBox::register_actions ();
60 keyboard->setup_keybindings ();
61 editor->setup_tooltips ();
62 editor->UpdateAllTransportClocks.connect (sigc::mem_fun (*this, &ARDOUR_UI::update_transport_clocks));
64 editor->add_to_notebook (_tabs, _("Editor"), 1);
65 mixer->add_to_notebook (_tabs, _("Mixer"), 1);
67 /* all actions are defined */
69 ActionManager::enable_accelerators ();
70 ActionManager::load_menus (ARDOUR_COMMAND_LINE::menus_file);
72 editor->track_mixer_selection ();
73 mixer->track_editor_selection ();
77 ARDOUR_UI::connect_dependents_to_session (ARDOUR::Session *s)
80 BootMessage (_("Setup Editor"));
81 editor->set_session (s);
82 BootMessage (_("Setup Mixer"));
83 mixer->set_session (s);
84 meterbridge->set_session (s);
86 /* its safe to do this now */
88 BootMessage (_("Reload Session History"));
89 s->restore_history ("");
92 /** The main editor window has been closed */
94 ARDOUR_UI::exit_on_main_window_close (GdkEventAny * /*ev*/)
97 /* just hide the window, and return - the top menu stays up */
101 /* time to get out of here */
108 ARDOUR_UI::tab_window_root_drop (GtkNotebook* src,
115 Gtk::Notebook* nb = 0;
116 Gtk::Window* win = 0;
118 if (w == GTK_WIDGET(mixer->contents().gobj())) {
121 cerr << "Call use own window, mixer\n";
123 nb = mixer->tab_root_drop ();
124 win = mixer->own_window ();
126 } else if (w == GTK_WIDGET(editor->contents().gobj())) {
130 cerr << "Call use own window, editor\n";
132 nb = editor->tab_root_drop ();
133 win = editor->own_window ();
144 return 0; /* what was that? */