diff options
author | David Robillard <d@drobilla.net> | 2011-11-25 06:12:28 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2011-11-25 06:12:28 +0000 |
commit | a0d6e0d2ff7abdcfcd78d4002f2dc42f4cde82ed (patch) | |
tree | 0c581c8ed03ca280e03b6ec2827ff41fb6c617b8 /src/Patchage.cpp | |
parent | 572adb6873294bf2f26062cf297660aa449eb675 (diff) | |
download | patchage-a0d6e0d2ff7abdcfcd78d4002f2dc42f4cde82ed.tar.gz patchage-a0d6e0d2ff7abdcfcd78d4002f2dc42f4cde82ed.tar.bz2 patchage-a0d6e0d2ff7abdcfcd78d4002f2dc42f4cde82ed.zip |
Log (almost) everything to the messages window instead of the console.
Remove latency and load stuff in favour of plain old messages.
Remove status bar.
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3627 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/Patchage.cpp')
-rw-r--r-- | src/Patchage.cpp | 119 |
1 files changed, 18 insertions, 101 deletions
diff --git a/src/Patchage.cpp b/src/Patchage.cpp index bb9c98c..706b1d2 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -56,8 +56,6 @@ #include "AlsaDriver.hpp" #endif -#define LOG_TO_STATUS 1 - using std::cout; using std::endl; using std::string; @@ -78,7 +76,6 @@ Patchage::Patchage(int argc, char** argv) , INIT_WIDGET(_about_win) , INIT_WIDGET(_main_scrolledwin) , INIT_WIDGET(_main_win) - , INIT_WIDGET(_main_xrun_progress) , INIT_WIDGET(_menu_alsa_connect) , INIT_WIDGET(_menu_alsa_disconnect) , INIT_WIDGET(_menu_file_quit) @@ -92,18 +89,13 @@ Patchage::Patchage(int argc, char** argv) , INIT_WIDGET(_menu_view_arrange) , INIT_WIDGET(_menu_view_messages) , INIT_WIDGET(_menu_view_refresh) - , INIT_WIDGET(_menu_view_statusbar) , INIT_WIDGET(_menu_zoom_in) , INIT_WIDGET(_menu_zoom_out) , INIT_WIDGET(_menu_zoom_normal) , INIT_WIDGET(_messages_clear_but) , INIT_WIDGET(_messages_close_but) , INIT_WIDGET(_messages_win) - , INIT_WIDGET(_latency_frames_label) - , INIT_WIDGET(_latency_ms_label) - , INIT_WIDGET(_sample_rate_label) , INIT_WIDGET(_status_text) - , INIT_WIDGET(_statusbar) , _attach(true) , _driver_detached(false) , _refresh(false) @@ -183,8 +175,6 @@ Patchage::Patchage(int argc, char** argv) sigc::mem_fun(this, &Patchage::refresh)); _menu_view_arrange->signal_activate().connect( sigc::mem_fun(this, &Patchage::on_arrange)); - _menu_view_statusbar->signal_activate().connect( - sigc::mem_fun(this, &Patchage::on_view_statusbar)); _menu_view_messages->signal_toggled().connect( sigc::mem_fun(this, &Patchage::on_show_messages)); _menu_help_about->signal_activate().connect( @@ -203,6 +193,14 @@ Patchage::Patchage(int argc, char** argv) _messages_win->signal_delete_event().connect( sigc::mem_fun(this, &Patchage::on_messages_delete)); + _error_tag = Gtk::TextTag::create(); + _error_tag->property_foreground() = "#FF0000"; + _status_text->get_buffer()->get_tag_table()->add(_error_tag); + + _warning_tag = Gtk::TextTag::create(); + _warning_tag->property_foreground() = "#FFFF00"; + _status_text->get_buffer()->get_tag_table()->add(_warning_tag); + _canvas->show(); _main_win->present(); @@ -277,8 +275,6 @@ Patchage::attach() _enable_refresh = true; refresh(); - - update_statusbar(); } bool @@ -322,66 +318,6 @@ Patchage::idle_callback() _refresh = false; _driver_detached = false; - // Update load every 10 idle callbacks - static int count = 0; - if (++count == 10) { - update_load(); - count = 0; - } - - return true; -} - -void -Patchage::update_statusbar() -{ -#if defined(PATCHAGE_LIBJACK) || defined(HAVE_JACK_DBUS) - if (_enable_refresh && _jack_driver->is_attached()) { - _enable_refresh = false; - - const jack_nframes_t buffer_size = _jack_driver->buffer_size(); - const jack_nframes_t sample_rate = _jack_driver->sample_rate(); - - std::stringstream ss; - ss << buffer_size; - _latency_frames_label->set_text(ss.str()); - - ss.str(""); - ss << (sample_rate / 1000); - _sample_rate_label->set_text(ss.str()); - - ss.str(""); - if (sample_rate != 0) - ss << buffer_size * 1000 / sample_rate; - _latency_ms_label->set_text(ss.str()); - - _enable_refresh = true; - } -#endif -} - -bool -Patchage::update_load() -{ -#if defined(PATCHAGE_LIBJACK) || defined(HAVE_JACK_DBUS) - if (!_jack_driver->is_attached()) - return true; - - char tmp_buf[8]; - snprintf(tmp_buf, sizeof(tmp_buf), "%u", _jack_driver->get_xruns()); - - _main_xrun_progress->set_text(string(tmp_buf) + " Dropouts"); - - static float last_max_dsp_load = 0; - - const float max_dsp_load = _jack_driver->get_max_dsp_load(); - - if (max_dsp_load != last_max_dsp_load) { - _main_xrun_progress->set_fraction(max_dsp_load); - last_max_dsp_load = max_dsp_load; - } -#endif - return true; } @@ -434,33 +370,25 @@ Patchage::store_window_location() void Patchage::error_msg(const std::string& msg) { -#if defined(LOG_TO_STATUS) - status_msg(msg); -#endif -#if defined(LOG_TO_STD) - cerr << msg << endl; -#endif + Glib::RefPtr<Gtk::TextBuffer> buffer = _status_text->get_buffer(); + buffer->insert_with_tag(buffer->end(), msg + "\n", _error_tag); + _status_text->scroll_to_mark(buffer->get_insert(), 0); } void Patchage::info_msg(const std::string& msg) { -#if defined(LOG_TO_STATUS) - status_msg(msg); -#endif -#if defined(LOG_TO_STD) - cerr << msg << endl; -#endif + Glib::RefPtr<Gtk::TextBuffer> buffer = _status_text->get_buffer(); + buffer->insert(buffer->end(), msg + "\n"); + _status_text->scroll_to_mark(buffer->get_insert(), 0); } void -Patchage::status_msg(const string& msg) +Patchage::warning_msg(const std::string& msg) { - if (_status_text->get_buffer()->size() > 0) - _status_text->get_buffer()->insert(_status_text->get_buffer()->end(), "\n"); - - _status_text->get_buffer()->insert(_status_text->get_buffer()->end(), msg); - _status_text->scroll_to_mark(_status_text->get_buffer()->get_insert(), 0); + Glib::RefPtr<Gtk::TextBuffer> buffer = _status_text->get_buffer(); + buffer->insert_with_tag(buffer->end(), msg + "\n", _warning_tag); + _status_text->scroll_to_mark(buffer->get_insert(), 0); } void @@ -482,8 +410,6 @@ void Patchage::connect_widgets() { #if defined(PATCHAGE_LIBJACK) || defined(HAVE_JACK_DBUS) - _jack_driver->signal_attached.connect( - sigc::mem_fun(this, &Patchage::update_statusbar)); _jack_driver->signal_attached.connect(sigc::bind( sigc::mem_fun(*_menu_jack_connect, &Gtk::MenuItem::set_sensitive), false)); _jack_driver->signal_attached.connect( @@ -714,15 +640,6 @@ Patchage::on_store_positions() _state_manager->save(_settings_filename); } -void -Patchage::on_view_statusbar() -{ - if (_menu_view_statusbar->get_active()) - _statusbar->show(); - else - _statusbar->hide(); -} - bool Patchage::on_scroll(GdkEventScroll* ev) { |