summaryrefslogtreecommitdiffstats
path: root/src/widget/weffectparameterbase.h
blob: 18acf5e1c51791ea3861260d00ac7de6dffa88ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#pragma once

#include <QDomNode>

#include "widget/wlabel.h"
#include "effects/effectparameterslotbase.h"
#include "skin/skincontext.h"

class EffectsManager;

class WEffectParameterBase : public WLabel {
    Q_OBJECT
  public:
    WEffectParameterBase(QWidget* pParent, EffectsManager* pEffectsManager);

    void setup(const QDomNode& node, const SkinContext& context) override = 0;

  protected slots:
    void parameterUpdated();

  protected:
    // Set the EffectParameterSlot that should be monitored by this
    // WEffectParameterBase.
    void setEffectParameterSlot(EffectParameterSlotBasePointer pEffectParameterSlot);

    EffectsManager* m_pEffectsManager;
    EffectParameterSlotBasePointer m_pEffectParameterSlot;
};