X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Freturn_ui.cc;h=a6b27f7af7eef67a509e97bbd814ec071e80f37c;hb=6b1b72a247bf04c81292fc41af4f69c9b7f90379;hp=c4a447255364f1cd142c3022c3b40ec308552122;hpb=64dc5427e4f5339a16a018692dd94f476c53cae9;p=ardour.git diff --git a/gtk2_ardour/return_ui.cc b/gtk2_ardour/return_ui.cc index c4a4472553..a6b27f7af7 100644 --- a/gtk2_ardour/return_ui.cc +++ b/gtk2_ardour/return_ui.cc @@ -19,37 +19,36 @@ #include -#include "ardour/amp.h" #include "ardour/io.h" -#include "ardour/return.h" #include "ardour/rc_configuration.h" +#include "ardour/return.h" -#include "utils.h" #include "return_ui.h" #include "io_selector.h" -#include "ardour_ui.h" #include "gui_thread.h" +#include "timers.h" + +#include "pbd/i18n.h" using namespace std; using namespace ARDOUR; using namespace PBD; -ReturnUI::ReturnUI (Gtk::Window* parent, boost::shared_ptr r, Session& se) - : _return (r) - , _session (se) - , _gpm (se, 250) +ReturnUI::ReturnUI (Gtk::Window* parent, boost::shared_ptr r, Session* session) + :_return (r) + , _gpm (session, 250) { - _gpm.set_controls (boost::shared_ptr(), r->meter(), r->amp()); + _gpm.set_controls (boost::shared_ptr(), r->meter(), r->amp(), r->gain_control()); _hbox.pack_start (_gpm, true, true); - set_name ("ReturnUIFrame"); + set_name (X_("ReturnUIFrame")); _vbox.set_spacing (5); _vbox.set_border_width (5); _vbox.pack_start (_hbox, false, false, false); - io = manage (new IOSelector (parent, &se, r->output())); + io = Gtk::manage (new IOSelector (parent, session, r->output())); pack_start (_vbox, false, false); @@ -58,13 +57,13 @@ ReturnUI::ReturnUI (Gtk::Window* parent, boost::shared_ptr r, Session& s show_all (); _return->set_metering (true); - _return->input()->changed.connect (sigc::mem_fun (*this, &ReturnUI::ins_changed)); + _return->input()->changed.connect (input_change_connection, invalidator (*this), boost::bind (&ReturnUI::ins_changed, this, _1, _2), gui_context()); _gpm.setup_meters (); - _gpm.set_fader_name ("ReturnUIFrame"); + _gpm.set_fader_name (X_("ReturnUIFader")); - // screen_update_connection = ARDOUR_UI::instance()->RapidScreenUpdate.connect (sigc::mem_fun (*this, &ReturnUI::update)); - fast_screen_update_connection = ARDOUR_UI::instance()->SuperRapidScreenUpdate.connect (sigc::mem_fun (*this, &ReturnUI::fast_update)); + // screen_update_connection = Timers::rapid_connect (sigc::mem_fun (*this, &ReturnUI::update)); + fast_screen_update_connection = Timers::super_rapid_connect (sigc::mem_fun (*this, &ReturnUI::fast_update)); } ReturnUI::~ReturnUI () @@ -78,10 +77,10 @@ ReturnUI::~ReturnUI () } void -ReturnUI::ins_changed (IOChange change, void* ignored) +ReturnUI::ins_changed (IOChange change, void* /*ignored*/) { ENSURE_GUI_THREAD (*this, &ReturnUI::ins_changed, change, ignored) - if (change & ConfigurationChanged) { + if (change.type & IOChange::ConfigurationChanged) { _gpm.setup_meters (); } } @@ -99,32 +98,20 @@ ReturnUI::fast_update () } } -ReturnUIWindow::ReturnUIWindow (boost::shared_ptr s, Session& ss) - : ArdourDialog (string("Ardour: return ") + s->name()) +ReturnUIWindow::ReturnUIWindow (boost::shared_ptr r, ARDOUR::Session* s) + : ArdourWindow (string(_("Return ")) + r->name()) { - ui = new ReturnUI (this, s, ss); + ui = new ReturnUI (this, r, s); hpacker.pack_start (*ui, true, true); - get_vbox()->set_border_width (5); - get_vbox()->pack_start (hpacker); + add (hpacker); set_name ("ReturnUIWindow"); - going_away_connection = s->GoingAway.connect (sigc::mem_fun (*this, &ReturnUIWindow::return_going_away)); - signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), reinterpret_cast (this))); } ReturnUIWindow::~ReturnUIWindow () { delete ui; } - -void -ReturnUIWindow::return_going_away () -{ - ENSURE_GUI_THREAD (*this, &ReturnUIWindow::return_going_away) - delete_when_idle (this); - going_away_connection.disconnect (); -} -