+
+struct checkBoxListItem {
+ QCheckBox *checkBox;
+ char *psz_module;
+};
+
+class ModuleListConfigControl : public VStringConfigControl
+{
+ Q_OBJECT;
+public:
+ ModuleListConfigControl( vlc_object_t *, module_config_t *, QWidget *,
+ bool, QGridLayout*, int& );
+// ModuleListConfigControl( vlc_object_t *, module_config_t *, QLabel *,
+// QComboBox*, bool );
+ virtual ~ModuleListConfigControl();
+ virtual QString getValue();
+ virtual void hide();
+ virtual void show();
+public slots:
+ void onUpdate( int value );
+private:
+ void finish( bool );
+ QVector<checkBoxListItem*> modules;
+ QGroupBox *groupBox;
+ QLineEdit *text;
+};
+
+class StringListConfigControl : public VStringConfigControl
+{
+ Q_OBJECT;
+public:
+ StringListConfigControl( vlc_object_t *, module_config_t *, QWidget *,
+ bool, QGridLayout*, int& );
+ StringListConfigControl( vlc_object_t *, module_config_t *, QLabel *,
+ QComboBox*, bool );
+ virtual ~StringListConfigControl() {};
+ virtual QString getValue();
+ virtual void hide() { combo->hide(); if( label ) label->hide(); }
+ virtual void show() { combo->show(); if( label ) label->show(); }
+private:
+ void finish( bool );
+ QLabel *label;
+ QComboBox *combo;
+private slots:
+ void actionRequested( int );
+
+};
+
+void setfillVLCConfigCombo(const char *configname, intf_thread_t *p_intf,
+ QComboBox *combo, QWidget *parent = 0 );
+