X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fgain_meter.h;h=0125c66b117f52a0f468e9a5c8a0d93a5f3d77e8;hb=b637c2223f0d2bbe5eff1f10ad7b1ba0c5ccc86a;hp=0c698d54ee06f331f9c5e604d36d9a36fc083dcf;hpb=271981d3f76da3edfae1719ebdbb1b3ebc10db91;p=ardour.git diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h index 0c698d54ee..0125c66b11 100644 --- a/gtk2_ardour/gain_meter.h +++ b/gtk2_ardour/gain_meter.h @@ -58,7 +58,6 @@ namespace ARDOUR { } namespace Gtkmm2ext { class FastMeter; - class BarController; } namespace Gtk { class Menu; @@ -77,19 +76,19 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr void update_gain_sensitive (); void update_meters (); + const ARDOUR::ChanCount meter_channels () const; + void effective_gain_display (); void set_width (Width, int len=0); void set_meter_strip_name (const char * name); void set_fader_name (const char * name); - void set_flat_buttons (); - virtual void setup_meters (int len=0); virtual void set_type (ARDOUR::MeterType); boost::shared_ptr get_controllable(); - LevelMeter& get_level_meter() const { return *level_meter; } + LevelMeterHBox& get_level_meter() const { return *level_meter; } Gtkmm2ext::SliderController& get_gain_slider() const { return *gain_slider; } /** Emitted in the GUI thread when a button is pressed over the level meter; @@ -101,6 +100,7 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr friend class MixerStrip; friend class MeterStrip; + friend class RouteTimeAxisView; boost::shared_ptr _route; boost::shared_ptr _meter; boost::shared_ptr _amp; @@ -113,11 +113,12 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr Gtkmm2ext::SliderController *gain_slider; Gtk::Adjustment gain_adjustment; Gtkmm2ext::FocusEntry gain_display; - Gtk::Button peak_display; + Gtkmm2ext::FocusEntry peak_display; +// Gtk::Button peak_display; Gtk::DrawingArea meter_metric_area; Gtk::DrawingArea meter_ticks1_area; Gtk::DrawingArea meter_ticks2_area; - LevelMeter *level_meter; + LevelMeterHBox *level_meter; sigc::connection gain_watching; @@ -169,8 +170,8 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr Gtk::Menu* meter_menu; void popup_meter_menu (GdkEventButton*); - bool gain_slider_button_press (GdkEventButton *); - bool gain_slider_button_release (GdkEventButton *); + void amp_stop_touch (); + void amp_start_touch (); void set_route_group_meter_point (ARDOUR::Route&, ARDOUR::MeterPoint); void set_meter_point (ARDOUR::Route&, ARDOUR::MeterPoint); @@ -218,6 +219,7 @@ class GainMeter : public GainMeterBase, public Gtk::VBox gint meter_metrics_expose (GdkEventExpose *); gint meter_ticks1_expose (GdkEventExpose *); gint meter_ticks2_expose (GdkEventExpose *); + void on_style_changed (const Glib::RefPtr&); private: