{
}
+Manager::~Manager ()
+{
+}
+
void
Manager::register_window (ProxyBase* info)
{
void
Manager::set_session (ARDOUR::Session* s)
{
+ SessionHandlePtr::set_session (s);
for (Windows::const_iterator i = _windows.begin(); i != _windows.end(); ++i) {
- ARDOUR::SessionHandlePtr* sp = (*i)->session_handle ();
- if (sp) {
- sp->set_session (s);
- }
+ (*i)->set_session(s);
}
}
/* we have a window, so use current state */
_visible = vistracker->partially_visible ();
- _window->get_position (_x_off, _y_off);
- _window->get_size (_width, _height);
+ if (_visible) {
+ _window->get_position (_x_off, _y_off);
+ _window->get_size (_width, _height);
+ }
}
node->add_property (X_("visible"), _visible? X_("yes") : X_("no"));
if (_x_off != -1 && _y_off != -1) {
_window->move (_x_off, _y_off);
}
+ set_session(_session);
}
void
}
}
+bool
+ProxyBase::handle_win_event (GdkEventAny *ev)
+{
+ hide();
+ return true;
+}
+
void
ProxyBase::save_pos_and_size ()
{
- _window->get_position (_x_off, _y_off);
- _window->get_size (_width, _height);
+ Gtk::Window* win = get (false);
+ if (win) {
+ win->get_position (_x_off, _y_off);
+ win->get_size (_width, _height);
+ }
}
/*-----------------------*/
{
}
+
ARDOUR::SessionHandlePtr*
ProxyTemporary::session_handle()
{