diff options
author | Robin Gareus <robin@gareus.org> | 2013-07-02 22:56:35 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2013-07-10 15:27:04 +0200 |
commit | 08167d6ac45f9577a09c65b7a66de85e980a8f3b (patch) | |
tree | 524d1dd3da11e2f93077aab271da5bbc238191d7 /gtk2_ardour/meterbridge.cc | |
parent | 3c82b99a3b42106b5e287206b24e91f31d4d2f3c (diff) |
overhaul meterbridge metrics part one.
Diffstat (limited to 'gtk2_ardour/meterbridge.cc')
-rw-r--r-- | gtk2_ardour/meterbridge.cc | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/gtk2_ardour/meterbridge.cc b/gtk2_ardour/meterbridge.cc index 1c06fb593a..73256789be 100644 --- a/gtk2_ardour/meterbridge.cc +++ b/gtk2_ardour/meterbridge.cc @@ -135,13 +135,20 @@ Meterbridge::Meterbridge () */ set_type_hint(Gdk::WINDOW_TYPE_HINT_UTILITY); + metrics_left = manage(new MeterStrip (2)); + global_hpacker.pack_start (*metrics_left, false, false); + metrics_left->show(); + + metrics_right = manage(new MeterStrip (3)); + global_hpacker.pack_start (*metrics_right, false, false); + metrics_right->show(); + signal_delete_event().connect (sigc::mem_fun (*this, &Meterbridge::hide_window)); signal_configure_event().connect (sigc::mem_fun (*ARDOUR_UI::instance(), &ARDOUR_UI::configure_handler)); Route::SyncOrderKeys.connect (*this, invalidator (*this), boost::bind (&Meterbridge::sync_order_keys, this, _1), gui_context()); - MeterStrip::CatchDeletion.connect (*this, invalidator (*this), boost::bind (&Meterbridge::remove_strip, this, _1), gui_context()); - global_hpacker.set_spacing(3); + global_hpacker.set_spacing(4); scroller.add (global_hpacker); scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_NEVER); global_vpacker.pack_start (scroller, true, true); @@ -411,7 +418,7 @@ Meterbridge::add_strips (RouteList& routes) continue; } - strip = new MeterStrip (*this, _session, route); + strip = new MeterStrip (_session, route); strips.push_back (strip); global_hpacker.pack_start (*strip, false, false); @@ -442,6 +449,8 @@ Meterbridge::sync_order_keys (RouteSortOrderKey src) copy.sort(sorter); int pos = 0; + global_hpacker.reorder_child(*metrics_left, pos++); + for (list<MeterStrip *>::iterator i = copy.begin(); i != copy.end(); ++i) { #if 0 // TODO subscribe to route active,inactive changes, merge w/ bus @@ -471,13 +480,9 @@ Meterbridge::sync_order_keys (RouteSortOrderKey src) (*i)->show(); } - if (pos == 0) { - (*i)->display_metrics(true); - } else { - (*i)->display_metrics(false); - } global_hpacker.reorder_child(*(*i), pos++); } + global_hpacker.reorder_child(*metrics_right, pos); } void |