using namespace std;
using Gtkmm2ext::Keyboard;
-sigc::signal<void> GainMeterBase::ResetAllPeakDisplays;
-sigc::signal<void,RouteGroup*> GainMeterBase::ResetGroupPeakDisplays;
-
GainMeterBase::GainMeterBase (Session* s, bool horizontal, int fader_length, int fader_girth)
: gain_adjustment (gain_to_slider_position_with_max (1.0, Config->get_max_gain()), 0.0, 1.0, 0.01, 0.1)
, gain_automation_style_button ("")
void reset_peak_display ();
void reset_group_peak_display (ARDOUR::RouteGroup*);
- static sigc::signal<void> ResetAllPeakDisplays;
- static sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
-
void on_theme_changed ();
void color_handler(bool);
ARDOUR::DataType _data_type;
static const int max_pattern_metric_size = 1026;
+sigc::signal<void> ResetAllPeakDisplays;
+sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
+
cairo_pattern_t*
meter_render_ticks (Gtk::Widget& w, vector<ARDOUR::DataType> types)
{
#include "ardour/types.h"
#include "gtkmm2ext/cairo_widget.h"
+#include <sigc++/signal.h>
+extern sigc::signal<void> ResetAllPeakDisplays;
+extern sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
+
cairo_pattern_t* meter_render_ticks (Gtk::Widget& w, std::vector<ARDOUR::DataType> types);
cairo_pattern_t* meter_render_metrics (Gtk::Widget& w, std::vector<ARDOUR::DataType> types);
using namespace std;
PBD::Signal1<void,MeterStrip*> MeterStrip::CatchDeletion;
-PBD::Signal0<void> MeterStrip::ResetAllPeakDisplays;
-PBD::Signal1<void,RouteGroup*> MeterStrip::ResetGroupPeakDisplays;
PBD::Signal0<void> MeterStrip::MetricChanged;
-
MeterStrip::MeterStrip (int metricmode)
: AxisView(0)
, RouteUI(0)
_route->shared_peak_meter()->ConfigurationChanged.connect (
route_connections, invalidator (*this), boost::bind (&MeterStrip::meter_configuration_changed, this, _1), gui_context()
);
+
+ ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_peak_display));
+ ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_group_peak_display));
+
meter_configuration_changed (_route->shared_peak_meter()->input_streams ());
meter_ticks1_area.set_size_request(3,-1);
boost::shared_ptr<ARDOUR::Route> route() { return _route; }
static PBD::Signal1<void,MeterStrip*> CatchDeletion;
- static PBD::Signal0<void> ResetAllPeakDisplays;
- static PBD::Signal1<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
static PBD::Signal0<void> MetricChanged;
void reset_peak_display ();
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());
- MeterStrip::ResetAllPeakDisplays.connect_same_thread (*this, boost::bind(&Meterbridge::reset_all_peaks, this));
- MeterStrip::ResetGroupPeakDisplays.connect_same_thread (*this, boost::bind (&Meterbridge::reset_group_peaks, this, _1));
MeterStrip::MetricChanged.connect_same_thread (*this, boost::bind(&Meterbridge::update_metrics, this));
/* work around ScrolledWindowViewport alignment mess Part one */
}
}
-void
-Meterbridge::reset_all_peaks ()
-{
- for (list<MeterStrip *>::iterator i = strips.begin(); i != strips.end(); ++i) {
- (*i)->reset_peak_display ();
- }
-}
-
-void
-Meterbridge::reset_group_peaks (RouteGroup* rg)
-{
- for (list<MeterStrip *>::iterator i = strips.begin(); i != strips.end(); ++i) {
- (*i)->reset_group_peak_display (rg);
- }
-}
-
void
Meterbridge::sync_order_keys (RouteSortOrderKey src)
{
void remove_strip (MeterStrip *);
void update_metrics ();
- void reset_all_peaks ();
- void reset_group_peaks (ARDOUR::RouteGroup*);
-
void session_going_away ();
void sync_order_keys (ARDOUR::RouteSortOrderKey src);