From 41b8124de7d585393c4c6d217a30a086b082b57a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 6 Apr 2007 03:10:35 +0000 Subject: GUI pimpifications. git-svn-id: http://svn.drobilla.net/lad/patchage@401 a436a847-0d15-0410-975c-d299462d15a1 --- src/Patchage.cpp | 51 +++---- src/Patchage.h | 19 ++- src/patchage.glade | 395 ++++++++++++++++------------------------------------- 3 files changed, 153 insertions(+), 312 deletions(-) (limited to 'src') diff --git a/src/Patchage.cpp b/src/Patchage.cpp index 84d9024..66c5732 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -147,9 +147,9 @@ Patchage::Patchage(int argc, char** argv) xml->get_widget("file_quit_menuitem", _menu_file_quit); xml->get_widget("view_refresh_menuitem", _menu_view_refresh); xml->get_widget("view_messages_menuitem", _menu_view_messages); - xml->get_widget("view_jack_toolbar_menuitem", _menu_view_jack_toolbar); + xml->get_widget("view_toolbar_menuitem", _menu_view_toolbar); xml->get_widget("help_about_menuitem", _menu_help_about); - xml->get_widget("jack_toolbar", _jack_toolbar); + xml->get_widget("toolbar", _toolbar); xml->get_widget("canvas_scrolledwindow", _canvas_scrolledwindow); xml->get_widget("zoom_scale", _zoom_slider); xml->get_widget("status_text", _status_text); @@ -162,15 +162,14 @@ Patchage::Patchage(int argc, char** argv) xml->get_widget("zoom_normal_but", _zoom_normal_button); //xml->get_widget("main_statusbar", _status_bar); //xml->get_widget("main_load_progress", _load_progress_bar); - xml->get_widget("main_jack_connect_toggle", _jack_connect_toggle); - xml->get_widget("main_jack_realtime_check", _jack_realtime_check); + //xml->get_widget("main_jack_connect_toggle", _jack_connect_toggle); + //xml->get_widget("main_jack_realtime_check", _jack_realtime_check); xml->get_widget("main_buffer_size_combo", _buffer_size_combo); xml->get_widget("main_sample_rate_label", _sample_rate_label); xml->get_widget("main_xrun_progress", _xrun_progress_bar); - xml->get_widget("main_xrun_counter", _xrun_counter); xml->get_widget("main_clear_load_button", _clear_load_button); - gtkmm_set_width_for_given_text(*_buffer_size_combo, "4096", 40); + gtkmm_set_width_for_given_text(*_buffer_size_combo, "4096 frames", 40); //gtkmm_set_width_for_given_text(*m_sample_rate_combo, "44.1", 40); _canvas_scrolledwindow->add(*_canvas); @@ -180,11 +179,11 @@ Patchage::Patchage(int argc, char** argv) _zoom_slider->signal_value_changed().connect(sigc::mem_fun(this, &Patchage::zoom_changed)); - _jack_connect_toggle->signal_toggled().connect(sigc::mem_fun(this, &Patchage::jack_connect_changed)); + //_jack_connect_toggle->signal_toggled().connect(sigc::mem_fun(this, &Patchage::jack_connect_changed)); _buffer_size_combo->signal_changed().connect(sigc::mem_fun(this, &Patchage::buffer_size_changed)); //m_sample_rate_combo->signal_changed().connect(sigc::mem_fun(this, &Patchage::sample_rate_changed)); - _jack_realtime_check->signal_toggled().connect(sigc::mem_fun(this, &Patchage::realtime_changed)); + //_jack_realtime_check->signal_toggled().connect(sigc::mem_fun(this, &Patchage::realtime_changed)); _rewind_button->signal_clicked().connect(sigc::mem_fun(_jack_driver, &JackDriver::rewind_transport)); _play_button->signal_clicked().connect(sigc::mem_fun(_jack_driver, &JackDriver::start_transport)); @@ -220,7 +219,7 @@ Patchage::Patchage(int argc, char** argv) _menu_store_positions->signal_activate().connect(sigc::mem_fun(this, &Patchage::menu_store_positions)); _menu_file_quit->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_file_quit)); _menu_view_refresh->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_view_refresh)); - _menu_view_jack_toolbar->signal_activate().connect(sigc::mem_fun(this, &Patchage::view_jack_toolbar_toggled)); + _menu_view_toolbar->signal_activate().connect( sigc::mem_fun(this, &Patchage::view_toolbar_toggled)); _menu_view_messages->signal_toggled().connect( sigc::mem_fun(this, &Patchage::show_messages_toggled)); _menu_help_about->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_help_about)); @@ -337,8 +336,8 @@ Patchage::idle_callback() void Patchage::update_toolbar() { - _jack_connect_toggle->set_active(_jack_driver->is_attached()); - _jack_realtime_check->set_active(_jack_driver->is_realtime()); + //_jack_connect_toggle->set_active(_jack_driver->is_attached()); + //_jack_realtime_check->set_active(_jack_driver->is_realtime()); if (_jack_driver->is_attached()) { _buffer_size_combo->set_active((int)log2f(_jack_driver->buffer_size()) - 5); @@ -390,8 +389,7 @@ Patchage::update_load() char tmp_buf[8]; snprintf(tmp_buf, 8, "%zd", _jack_driver->xruns()); - //m_xrun_progress_bar->set_text(string(tmp_buf) + " XRuns"); - _xrun_counter->set_text(tmp_buf); + _xrun_progress_bar->set_text(string(tmp_buf) + " Dropouts"); if (max_delay > period) { _xrun_progress_bar->set_fraction(1.0); @@ -483,16 +481,16 @@ Patchage::connect_widgets() _jack_driver->signal_attached.connect( sigc::mem_fun(this, &Patchage::update_toolbar)); - _jack_driver->signal_attached.connect(sigc::bind( - sigc::mem_fun(_jack_connect_toggle, &Gtk::ToggleButton::set_active), true)); + //_jack_driver->signal_attached.connect(sigc::bind( + /// sigc::mem_fun(_jack_connect_toggle, &Gtk::ToggleButton::set_active), true)); _jack_driver->signal_attached.connect(sigc::bind( sigc::mem_fun(_menu_jack_connect, &Gtk::MenuItem::set_sensitive), false)); _jack_driver->signal_attached.connect(sigc::bind( sigc::mem_fun(_menu_jack_disconnect, &Gtk::MenuItem::set_sensitive), true)); - _jack_driver->signal_detached.connect(sigc::bind( - sigc::mem_fun(_jack_connect_toggle, &Gtk::ToggleButton::set_active), false)); + //_jack_driver->signal_detached.connect(sigc::bind( + // sigc::mem_fun(_jack_connect_toggle, &Gtk::ToggleButton::set_active), false)); _jack_driver->signal_detached.connect(sigc::bind( sigc::mem_fun(_menu_jack_connect, &Gtk::MenuItem::set_sensitive), true)); _jack_driver->signal_detached.connect(sigc::bind( @@ -652,6 +650,9 @@ Patchage::on_pane_position_changed() void Patchage::on_messages_expander_changed() { + if (!_update_pane_position) + return; + if (!_pane_closed) { // Store pane position for restoring _user_pane_position = _main_paned->get_position(); @@ -694,12 +695,16 @@ Patchage::menu_view_refresh() void -Patchage::view_jack_toolbar_toggled() +Patchage::view_toolbar_toggled() { - if (_menu_view_jack_toolbar->get_active()) - _jack_toolbar->show(); + _update_pane_position = false; + + if (_menu_view_toolbar->get_active()) + _toolbar->show(); else - _jack_toolbar->hide(); + _toolbar->hide(); + + _update_pane_position = true; } @@ -776,7 +781,6 @@ Patchage::sample_rate_changed() //m_jack_driver->set_sample_rate(rate); } } -*/ void Patchage::realtime_changed() @@ -784,7 +788,6 @@ Patchage::realtime_changed() _jack_driver->set_realtime(_jack_realtime_check->get_active()); } - void Patchage::jack_connect_changed() { @@ -798,4 +801,4 @@ Patchage::jack_connect_changed() } } } - +*/ diff --git a/src/Patchage.h b/src/Patchage.h index b240556..9af982a 100644 --- a/src/Patchage.h +++ b/src/Patchage.h @@ -72,7 +72,7 @@ protected: void menu_store_positions(); void menu_file_quit(); void show_messages_toggled(); - void view_jack_toolbar_toggled(); + void view_toolbar_toggled(); void menu_view_refresh(); void menu_help_about(); void zoom(double z); @@ -81,10 +81,10 @@ protected: bool update_load(); void update_toolbar(); - void jack_connect_changed(); + //void jack_connect_changed(); void buffer_size_changed(); //void sample_rate_changed(); - void realtime_changed(); + //void realtime_changed(); void on_pane_position_changed(); void on_messages_expander_changed(); @@ -138,11 +138,11 @@ protected: Gtk::MenuItem* _menu_jack_disconnect; Gtk::MenuItem* _menu_store_positions; Gtk::MenuItem* _menu_file_quit; - Gtk::CheckMenuItem* _menu_view_jack_toolbar; + Gtk::CheckMenuItem* _menu_view_toolbar; Gtk::CheckMenuItem* _menu_view_messages; Gtk::MenuItem* _menu_view_refresh; Gtk::MenuItem* _menu_help_about; - Gtk::Toolbar* _jack_toolbar; + Gtk::Toolbar* _toolbar; Gtk::ScrolledWindow* _canvas_scrolledwindow; Gtk::HScale* _zoom_slider; Gtk::TextView* _status_text; @@ -151,16 +151,13 @@ protected: Gtk::Button* _rewind_button; Gtk::Button* _play_button; Gtk::Button* _stop_button; - Gtk::Button* _zoom_normal_button; - Gtk::Button* _zoom_full_button; + Gtk::ToolButton* _zoom_normal_button; + Gtk::ToolButton* _zoom_full_button; //Gtk::ProgressBar* _load_progress_bar; - Gtk::ToggleButton* _jack_connect_toggle; - Gtk::ToggleButton* _jack_realtime_check; Gtk::ComboBox* _buffer_size_combo; Gtk::Label* _sample_rate_label; Gtk::ProgressBar* _xrun_progress_bar; - Gtk::Entry* _xrun_counter; - Gtk::Button* _clear_load_button; + Gtk::ToolButton* _clear_load_button; //Gtk::Statusbar* _status_bar; }; diff --git a/src/patchage.glade b/src/patchage.glade index 399d8fe..71496ff 100644 --- a/src/patchage.glade +++ b/src/patchage.glade @@ -375,9 +375,9 @@ - + True - _Jack Toolbar + _Toolbar True True @@ -453,130 +453,13 @@ - + True GTK_ORIENTATION_HORIZONTAL - GTK_TOOLBAR_BOTH + GTK_TOOLBAR_ICONS True True - - - True - True - True - False - - - - True - True - GTK_RELIEF_NORMAL - True - False - False - - - - True - 0.5 - 0.5 - 0 - 0 - 0 - 0 - 0 - 0 - - - - True - False - 2 - - - - True - gtk-connect - 4 - 0.5 - 0.5 - 0 - 0 - - - 0 - False - False - - - - - - True - JACK - True - False - GTK_JUSTIFY_LEFT - False - False - 0.5 - 0.5 - 0 - 0 - PANGO_ELLIPSIZE_NONE - -1 - False - 0 - - - 0 - False - False - - - - - - - - - - - False - False - - - - - - True - True - True - False - - - - 1 - True - False - True - Realtime - True - GTK_RELIEF_NORMAL - True - False - False - True - - - - - False - False - - - True @@ -603,32 +486,9 @@ 0 - - 1 - True - 32 -64 -128 -256 -512 -1024 -2048 -4096 - False - True - True - - - 1 - True - True - - - - - + True - frames @ + Latency: False False GTK_JUSTIFY_LEFT @@ -636,7 +496,7 @@ False 0.5 0.5 - 1 + 0 0 PANGO_ELLIPSIZE_NONE -1 @@ -644,15 +504,37 @@ 0 - 1 + 0 False False - + + 1 True + 32 frames +64 frames +128 frames +256 frames +512 frames +1024 frames +2048 frames +4096 frames + False + True + True + + + 1 + True + True + + + + + 48 False False @@ -677,7 +559,6 @@ - True kHz False False @@ -712,7 +593,7 @@ - 4 + 8 True True True @@ -725,36 +606,16 @@ - + True + gtk-clear True True False - - - - True - True - GTK_RELIEF_NORMAL - True - - - - True - gtk-clear - 4 - 0.5 - 0.5 - 0 - 0 - - - - False - False + True @@ -778,49 +639,16 @@ 0 - + True - False - 0 - - - - True - Delay/XRun Indicator + Delay/XRun Indicator The bar represents the maximum processing delay as a fraction of the time available for a cycle. If the bar reaches 100%, an XRun will occur. - GTK_PROGRESS_LEFT_TO_RIGHT - 0 - 0.10000000149 - XRun % - PANGO_ELLIPSIZE_NONE - - - 1 - True - True - - - - - - True - True - True - True - 0 - 0 - True - * - False - 3 - - - 0 - False - False - - + GTK_PROGRESS_LEFT_TO_RIGHT + 0 + 0.10000000149 + 0 Dropouts + PANGO_ELLIPSIZE_NONE @@ -831,17 +659,85 @@ The bar represents the maximum processing delay as a fraction of the time availa False + + + + 8 + True + True + True + True + + + False + False + + + + + + True + gtk-zoom-100 + True + True + False + + + False + True + + + + + + True + gtk-zoom-fit + True + True + False + + + False + True + + + + + + True + True + True + False + + + + 180 + True + True + False + GTK_POS_TOP + 1 + GTK_UPDATE_CONTINUOUS + False + 1 0.10000000149 2 0 0 0 + + + + + False + False + + 0 False - False + True - True GTK_ORIENTATION_HORIZONTAL GTK_TOOLBAR_ICONS True @@ -996,37 +892,7 @@ The bar represents the maximum processing delay as a fraction of the time availa - - True - True - True - False - - - - True - True - GTK_RELIEF_NORMAL - True - - - - True - gtk-zoom-100 - 4 - 0.5 - 0.5 - 0 - 0 - - - - - - - False - False - + @@ -1037,25 +903,7 @@ The bar represents the maximum processing delay as a fraction of the time availa False - - 1 - True - True - GTK_RELIEF_NORMAL - True - - - - True - gtk-zoom-fit - 4 - 0.5 - 0.5 - 0 - 0 - - - + @@ -1073,17 +921,7 @@ The bar represents the maximum processing delay as a fraction of the time availa False - - 180 - True - True - False - GTK_POS_TOP - 1 - GTK_UPDATE_CONTINUOUS - False - 1 0.10000000149 2 0 0 0 - + @@ -1108,7 +946,10 @@ The bar represents the maximum processing delay as a fraction of the time availa True + True + True True + True GTK_POLICY_ALWAYS GTK_POLICY_ALWAYS GTK_SHADOW_IN -- cgit v1.2.1