mix_group_context_menu = 0;
no_track_list_redisplay = false;
in_group_row_change = false;
-
- XMLNode* node = ARDOUR_UI::instance()->mixer_settings();
- set_state (*node);
+ _visible = false;
scroller_base.add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
scroller_base.set_name ("MixerWindow");
add_accel_group (ActionManager::ui_manager->get_accel_group());
- signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), static_cast<Gtk::Window *>(this)));
+ signal_delete_event().connect (mem_fun (*this, &Mixer_UI::hide_window));
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
_plugin_selector = new PluginSelector (PluginManager::the_manager());
ms = (*ri)[track_columns.strip];
ms->set_width (ms->get_width());
}
+ _visible = true;
+}
+
+bool
+Mixer_UI::hide_window (GdkEventAny *ev)
+{
+ _visible = false;
+ return just_hide_it(ev, static_cast<Gtk::Window *>(this));
}
+
void
Mixer_UI::add_strip (Session::RouteList& routes)
{
void
Mixer_UI::connect_to_session (Session* sess)
{
+
session = sess;
+ XMLNode* node = ARDOUR_UI::instance()->mixer_settings();
+ set_state (*node);
+
string wintitle = _("ardour: mixer: ");
wintitle += session->name();
set_title (wintitle);
_plugin_selector->set_session (session);
+ if (_visible) {
+ show_window();
+ }
+
start_updating ();
}
}
}
+ if ((prop = node.property ("show-mixer"))) {
+ if (prop->value() == "yes") {
+ _visible = true;
+ }
+ }
+
return 0;
}
node->add_property ("narrow-strips", _strip_width == Narrow ? "yes" : "no");
+ node->add_property ("show-mixer", _visible ? "yes" : "no");
+
return *node;
}