Olive
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
combofield.h
Go to the documentation of this file.
1 #ifndef COMBOFIELD_H
2 #define COMBOFIELD_H
3 
4 #include "../effectfield.h"
5 
15  QString name;
16  QVariant data;
17 };
18 
24 class ComboField : public EffectField
25 {
26  Q_OBJECT
27 public:
31  ComboField(EffectRow* parent, const QString& id);
32 
50  void AddItem(const QString& text, const QVariant& data);
51 
57  virtual QWidget *CreateWidget(QWidget *existing = nullptr) override;
58 
62  virtual void UpdateWidgetValue(QWidget* widget, double timecode) override;
63 
64 signals:
70  void DataChanged(const QVariant&);
71 
72 private:
78  QVector<ComboFieldItem> items_;
79 
80 private slots:
90  void UpdateFromWidget(int index);
91 };
92 
93 #endif // COMBOFIELD_H
void DataChanged(const QVariant &)
Signal emitted whenever a connected widget&#39;s data gets changed.
QVector< ComboFieldItem > items_
Internal array of string+value pair items.
Definition: combofield.h:78
virtual void UpdateWidgetValue(QWidget *widget, double timecode) override
Reimplementation of EffectField::UpdateWidgetValue()
Definition: combofield.cpp:43
void AddItem(const QString &text, const QVariant &data)
Add an item to this ComboField.
Definition: combofield.cpp:11
virtual QWidget * CreateWidget(QWidget *existing=nullptr) override
Reimplementation of EffectField::CreateWidget()
Definition: combofield.cpp:21
void UpdateFromWidget(int index)
Internal function connected to any QWidget made from CreateWidget() to update the value based on user...
Definition: combofield.cpp:63
The EffectField class.
Definition: effectfield.h:56
QVariant data
Definition: combofield.h:16
QString name
Definition: combofield.h:15
The ComboFieldItem struct.
Definition: combofield.h:14
The EffectRow class.
Definition: effectrow.h:51
The ComboField class.
Definition: combofield.h:24
ComboField(EffectRow *parent, const QString &id)
Reimplementation of EffectField::EffectField().
Definition: combofield.cpp:7