reset individual route's peak display
This commit is contained in:
parent
d8477de0ab
commit
f1f84140e7
|
@ -128,6 +128,7 @@ GainMeterBase::GainMeterBase (Session* s, bool horizontal, int fader_length, int
|
||||||
gain_display.signal_key_press_event().connect (sigc::mem_fun(*this, &GainMeterBase::gain_key_press), false);
|
gain_display.signal_key_press_event().connect (sigc::mem_fun(*this, &GainMeterBase::gain_key_press), false);
|
||||||
|
|
||||||
ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &GainMeterBase::reset_peak_display));
|
ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &GainMeterBase::reset_peak_display));
|
||||||
|
ResetRoutePeakDisplays.connect (sigc::mem_fun(*this, &GainMeterBase::reset_route_peak_display));
|
||||||
ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &GainMeterBase::reset_group_peak_display));
|
ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &GainMeterBase::reset_group_peak_display));
|
||||||
|
|
||||||
UI::instance()->theme_changed.connect (sigc::mem_fun(*this, &GainMeterBase::on_theme_changed));
|
UI::instance()->theme_changed.connect (sigc::mem_fun(*this, &GainMeterBase::on_theme_changed));
|
||||||
|
@ -328,7 +329,7 @@ GainMeterBase::peak_button_release (GdkEventButton* ev)
|
||||||
ResetGroupPeakDisplays (_route->route_group());
|
ResetGroupPeakDisplays (_route->route_group());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
reset_peak_display ();
|
ResetRoutePeakDisplays (_route.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -344,6 +345,14 @@ GainMeterBase::reset_peak_display ()
|
||||||
peak_display.set_name ("MixerStripPeakDisplay");
|
peak_display.set_name ("MixerStripPeakDisplay");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
GainMeterBase::reset_route_peak_display (Route* route)
|
||||||
|
{
|
||||||
|
if (_route && _route.get() == route) {
|
||||||
|
reset_peak_display ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
GainMeterBase::reset_group_peak_display (RouteGroup* group)
|
GainMeterBase::reset_group_peak_display (RouteGroup* group)
|
||||||
{
|
{
|
||||||
|
|
|
@ -181,6 +181,7 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr
|
||||||
void parameter_changed (const char*);
|
void parameter_changed (const char*);
|
||||||
|
|
||||||
void reset_peak_display ();
|
void reset_peak_display ();
|
||||||
|
void reset_route_peak_display (ARDOUR::Route*);
|
||||||
void reset_group_peak_display (ARDOUR::RouteGroup*);
|
void reset_group_peak_display (ARDOUR::RouteGroup*);
|
||||||
|
|
||||||
void on_theme_changed ();
|
void on_theme_changed ();
|
||||||
|
|
|
@ -39,6 +39,7 @@ using namespace std;
|
||||||
static const int max_pattern_metric_size = 1026;
|
static const int max_pattern_metric_size = 1026;
|
||||||
|
|
||||||
sigc::signal<void> ResetAllPeakDisplays;
|
sigc::signal<void> ResetAllPeakDisplays;
|
||||||
|
sigc::signal<void,ARDOUR::Route*> ResetRoutePeakDisplays;
|
||||||
sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
|
sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
|
||||||
|
|
||||||
cairo_pattern_t*
|
cairo_pattern_t*
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
|
|
||||||
#include <sigc++/signal.h>
|
#include <sigc++/signal.h>
|
||||||
extern sigc::signal<void> ResetAllPeakDisplays;
|
extern sigc::signal<void> ResetAllPeakDisplays;
|
||||||
|
extern sigc::signal<void,ARDOUR::Route*> ResetRoutePeakDisplays;
|
||||||
extern sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays;
|
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_ticks (Gtk::Widget& w, std::vector<ARDOUR::DataType> types);
|
||||||
|
|
|
@ -172,6 +172,7 @@ MeterStrip::MeterStrip (Session* sess, boost::shared_ptr<ARDOUR::Route> rt)
|
||||||
);
|
);
|
||||||
|
|
||||||
ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_peak_display));
|
ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_peak_display));
|
||||||
|
ResetRoutePeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_route_peak_display));
|
||||||
ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_group_peak_display));
|
ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_group_peak_display));
|
||||||
|
|
||||||
meter_configuration_changed (_route->shared_peak_meter()->input_streams ());
|
meter_configuration_changed (_route->shared_peak_meter()->input_streams ());
|
||||||
|
@ -371,10 +372,17 @@ MeterStrip::meter_ticks2_expose (GdkEventExpose *ev)
|
||||||
return meter_expose_ticks(ev, _types, &meter_ticks2_area);
|
return meter_expose_ticks(ev, _types, &meter_ticks2_area);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
MeterStrip::reset_route_peak_display (Route* route)
|
||||||
|
{
|
||||||
|
if (_route && _route.get() == route) {
|
||||||
|
reset_peak_display ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
MeterStrip::reset_group_peak_display (RouteGroup* group)
|
MeterStrip::reset_group_peak_display (RouteGroup* group)
|
||||||
{
|
{
|
||||||
/* UNUSED -- need connection w/mixer || other meters */
|
|
||||||
if (_route && group == _route->route_group()) {
|
if (_route && group == _route->route_group()) {
|
||||||
reset_peak_display ();
|
reset_peak_display ();
|
||||||
}
|
}
|
||||||
|
@ -400,7 +408,7 @@ MeterStrip::peak_button_release (GdkEventButton* ev)
|
||||||
ResetGroupPeakDisplays (_route->route_group());
|
ResetGroupPeakDisplays (_route->route_group());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
reset_peak_display ();
|
ResetRoutePeakDisplays (_route.get());
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,6 +57,7 @@ class MeterStrip : public Gtk::VBox, public RouteUI
|
||||||
static PBD::Signal0<void> MetricChanged;
|
static PBD::Signal0<void> MetricChanged;
|
||||||
|
|
||||||
void reset_peak_display ();
|
void reset_peak_display ();
|
||||||
|
void reset_route_peak_display (ARDOUR::Route*);
|
||||||
void reset_group_peak_display (ARDOUR::RouteGroup*);
|
void reset_group_peak_display (ARDOUR::RouteGroup*);
|
||||||
|
|
||||||
void set_metric_mode (int);
|
void set_metric_mode (int);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user