Chris@1285: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@1285: Chris@1285: /* Chris@1285: Sonic Visualiser Chris@1285: An audio file viewer and annotation editor. Chris@1285: Centre for Digital Music, Queen Mary, University of London. Chris@1285: Chris@1285: This program is free software; you can redistribute it and/or Chris@1285: modify it under the terms of the GNU General Public License as Chris@1285: published by the Free Software Foundation; either version 2 of the Chris@1285: License, or (at your option) any later version. See the file Chris@1285: COPYING included with this distribution for more information. Chris@1285: */ Chris@1285: Chris@1285: #ifndef SV_PLUGIN_PATH_CONFIGURATOR_H Chris@1285: #define SV_PLUGIN_PATH_CONFIGURATOR_H Chris@1285: Chris@1285: #include Chris@1285: #include Chris@1285: Chris@1286: class QLabel; Chris@1286: class QWidget; Chris@1287: class QListWidget; Chris@1288: class QPushButton; Chris@1288: class QGridLayout; Chris@1289: class QComboBox; Chris@1290: class QCheckBox; Chris@1286: Chris@1293: #include "plugin/PluginPathSetter.h" Chris@1293: Chris@1285: class PluginPathConfigurator : public QFrame Chris@1285: { Chris@1285: Q_OBJECT Chris@1285: Chris@1285: public: Chris@1285: PluginPathConfigurator(QWidget *parent = 0); Chris@1285: ~PluginPathConfigurator(); Chris@1285: Chris@1293: void setPaths(PluginPathSetter::Paths paths); Chris@1293: PluginPathSetter::Paths getPaths() const { return m_paths; } Chris@1285: Chris@1285: signals: Chris@1293: void pathsChanged(); Chris@1285: Chris@1285: private slots: Chris@1285: void upClicked(); Chris@1285: void downClicked(); Chris@1291: void addClicked(); Chris@1285: void deleteClicked(); Chris@1290: void resetClicked(); Chris@1289: void currentTypeChanged(QString); Chris@1288: void currentLocationChanged(int); Chris@1290: void envOverrideChanged(int); Chris@1292: void seePluginsClicked(); Chris@1285: Chris@1285: private: Chris@1285: QGridLayout *m_layout; Chris@1289: QLabel *m_header; Chris@1289: QComboBox *m_pluginTypeSelector; Chris@1287: QListWidget *m_list; Chris@1292: QPushButton *m_seePlugins; Chris@1288: QPushButton *m_up; Chris@1288: QPushButton *m_down; Chris@1291: QPushButton *m_add; Chris@1288: QPushButton *m_delete; Chris@1290: QPushButton *m_reset; Chris@1290: QCheckBox *m_envOverride; Chris@1285: Chris@1293: PluginPathSetter::Paths m_paths; Chris@1293: PluginPathSetter::Paths m_defaultPaths; Chris@1285: Chris@1289: void populate(); Chris@1296: void populateFor(PluginPathSetter::TypeKey, int makeCurrent); Chris@1296: Chris@1296: QString getLabelFor(PluginPathSetter::TypeKey); Chris@1296: PluginPathSetter::TypeKey getKeyForLabel(QString label); Chris@1285: }; Chris@1285: Chris@1285: #endif Chris@1285: Chris@1285: