1 #pragma once
2 
3 #include "waveformrendererabstract.h"
4 #include "waveformsignalcolors.h"
5 #include "skin/legacy/skincontext.h"
6 
7 class ControlObject;
8 class ControlProxy;
9 
10 class WaveformRendererSignalBase : public WaveformRendererAbstract {
11 public:
12     explicit WaveformRendererSignalBase(WaveformWidgetRenderer* waveformWidgetRenderer);
13     virtual ~WaveformRendererSignalBase();
14 
15     virtual bool init();
16     virtual void setup(const QDomNode& node, const SkinContext& context);
17 
onInit()18     virtual bool onInit() {return true;}
19     virtual void onSetup(const QDomNode &node) = 0;
20 
21   protected:
22     void deleteControls();
23 
24     void getGains(float* pAllGain, float* pLowGain, float* pMidGain,
25                   float* highGain);
26 
27   protected:
28     ControlProxy* m_pEQEnabled;
29     ControlProxy* m_pLowFilterControlObject;
30     ControlProxy* m_pMidFilterControlObject;
31     ControlProxy* m_pHighFilterControlObject;
32     ControlProxy* m_pLowKillControlObject;
33     ControlProxy* m_pMidKillControlObject;
34     ControlProxy* m_pHighKillControlObject;
35 
36     Qt::Alignment m_alignment;
37     Qt::Orientation m_orientation;
38 
39     const WaveformSignalColors* m_pColors;
40     qreal m_axesColor_r, m_axesColor_g, m_axesColor_b, m_axesColor_a;
41     qreal m_signalColor_r, m_signalColor_g, m_signalColor_b;
42     qreal m_lowColor_r, m_lowColor_g, m_lowColor_b;
43     qreal m_midColor_r, m_midColor_g, m_midColor_b;
44     qreal m_highColor_r, m_highColor_g, m_highColor_b;
45     qreal m_rgbLowColor_r, m_rgbLowColor_g, m_rgbLowColor_b;
46     qreal m_rgbMidColor_r, m_rgbMidColor_g, m_rgbMidColor_b;
47     qreal m_rgbHighColor_r, m_rgbHighColor_g, m_rgbHighColor_b;
48 };
49