summaryrefslogtreecommitdiff
path: root/gtk2_ardour/gain_meter.h
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/gain_meter.h')
-rw-r--r--gtk2_ardour/gain_meter.h28
1 files changed, 7 insertions, 21 deletions
diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h
index d15d8dfd59..cd8e74d59d 100644
--- a/gtk2_ardour/gain_meter.h
+++ b/gtk2_ardour/gain_meter.h
@@ -39,6 +39,7 @@
#include <gtkmm2ext/slider_controller.h>
#include "enums.h"
+#include "level_meter.h"
namespace ARDOUR {
class IO;
@@ -63,7 +64,6 @@ class GainMeter : public Gtk::VBox
void update_gain_sensitive ();
void update_meters ();
- void update_meters_falloff ();
void effective_gain_display ();
@@ -75,7 +75,11 @@ class GainMeter : public Gtk::VBox
void set_meter_strip_name (const char * name);
void set_fader_name (const char * name);
- void clear_meters ();
+ /* should probably switch to using the shared_ptr that underlies
+ all this stuff
+ */
+
+ PBD::Controllable* get_controllable() { return _io->gain_control().get(); }
private:
@@ -93,6 +97,7 @@ class GainMeter : public Gtk::VBox
Gtk::HBox gain_display_box;
Gtk::HBox fader_box;
Gtk::DrawingArea meter_metric_area;
+ LevelMeter *level_meter;
sigc::connection gain_watching;
@@ -129,28 +134,10 @@ class GainMeter : public Gtk::VBox
void gain_activated ();
bool gain_focused (GdkEventFocus*);
- struct MeterInfo {
- Gtkmm2ext::FastMeter *meter;
- gint16 width;
- int length;
- bool packed;
-
- MeterInfo() {
- meter = 0;
- width = 0;
- length = 0;
- packed = false;
- }
- };
-
- guint16 regular_meter_width;
- static const guint16 thin_meter_width = 2;
- vector<MeterInfo> meters;
float max_peak;
Gtk::VBox* fader_vbox;
Gtk::HBox hbox;
- Gtk::HBox meter_packer;
void gain_adjusted ();
void gain_changed ();
@@ -161,7 +148,6 @@ class GainMeter : public Gtk::VBox
void hide_all_meters ();
gint meter_button_press (GdkEventButton*, uint32_t);
- gint meter_button_release (GdkEventButton*, uint32_t);
bool peak_button_release (GdkEventButton*);
bool gain_key_press (GdkEventKey*);