From b8d27f60ac608805968c55e5b83f44c7e45444cf Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 2 Mar 2007 15:00:41 +0000 Subject: (So far failed) attemps to get patchage messages pane closed on launch. Work towards action serialization in Machina. git-svn-id: http://svn.drobilla.net/lad/patchage@342 a436a847-0d15-0410-975c-d299462d15a1 --- src/Patchage.cpp | 13 ++++++++----- src/Patchage.h | 3 ++- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/Patchage.cpp b/src/Patchage.cpp index a15823f..ce41c47 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -243,23 +243,25 @@ Patchage::Patchage(int argc, char** argv) _update_pane_position = false; _main_paned->set_position(max_pane_position()); + + _user_pane_position = max_pane_position() - _main_window->get_height()/8; + _messages_expander->set_expanded(false); + _pane_closed = true; + _main_paned->property_position().signal_changed().connect( sigc::mem_fun(*this, &Patchage::on_pane_position_changed)); _messages_expander->property_expanded().signal_changed().connect( sigc::mem_fun(*this, &Patchage::on_messages_expander_changed)); - - _main_paned->set_position(max_pane_position()); - _user_pane_position = max_pane_position() - _main_window->get_height()/8; - _update_pane_position = true; - _pane_closed = true; // Idle callback, check if we need to refresh Glib::signal_timeout().connect(sigc::mem_fun(this, &Patchage::idle_callback), 100); // Faster idle callback to update DSP load progress bar //Glib::signal_timeout().connect(sigc::mem_fun(this, &Patchage::update_load), 50); + + _update_pane_position = true; } @@ -613,6 +615,7 @@ Patchage::on_pane_position_changed() if (_pane_closed && new_position < max_pane_position()) { // Auto open _user_pane_position = new_position; + cerr << "FOO\n"; _messages_expander->set_expanded(true); _pane_closed = false; _menu_view_messages->set_active(true); diff --git a/src/Patchage.h b/src/Patchage.h index 6727a45..2c2c070 100644 --- a/src/Patchage.h +++ b/src/Patchage.h @@ -63,7 +63,8 @@ public: inline void queue_refresh() { _refresh = true; } int max_pane_position() - { return _main_paned->property_max_position() - _messages_expander->get_label_widget()->get_height() - 8; } + { return _main_paned->property_max_position() + - _messages_expander->get_label_widget()->get_height() - 10; } protected: void connect_widgets(); -- cgit v1.2.1