comparison widgets/PluginPathConfigurator.h @ 1324:13d9b422f7fe zoom

Merge from default branch
author Chris Cannam
date Mon, 17 Sep 2018 13:51:31 +0100
parents 34b941921ac8
children
comparison
equal deleted inserted replaced
1183:57d192e26331 1324:13d9b422f7fe
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
2
3 /*
4 Sonic Visualiser
5 An audio file viewer and annotation editor.
6 Centre for Digital Music, Queen Mary, University of London.
7
8 This program is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License as
10 published by the Free Software Foundation; either version 2 of the
11 License, or (at your option) any later version. See the file
12 COPYING included with this distribution for more information.
13 */
14
15 #ifndef SV_PLUGIN_PATH_CONFIGURATOR_H
16 #define SV_PLUGIN_PATH_CONFIGURATOR_H
17
18 #include <QFrame>
19 #include <QStringList>
20
21 class QLabel;
22 class QWidget;
23 class QListWidget;
24 class QPushButton;
25 class QGridLayout;
26 class QComboBox;
27 class QCheckBox;
28
29 #include "plugin/PluginPathSetter.h"
30
31 class PluginPathConfigurator : public QFrame
32 {
33 Q_OBJECT
34
35 public:
36 PluginPathConfigurator(QWidget *parent = 0);
37 ~PluginPathConfigurator();
38
39 void setPaths(PluginPathSetter::Paths paths);
40 PluginPathSetter::Paths getPaths() const { return m_paths; }
41
42 signals:
43 void pathsChanged();
44
45 private slots:
46 void upClicked();
47 void downClicked();
48 void addClicked();
49 void deleteClicked();
50 void resetClicked();
51 void currentTypeChanged(QString);
52 void currentLocationChanged(int);
53 void envOverrideChanged(int);
54 void seePluginsClicked();
55
56 private:
57 QGridLayout *m_layout;
58 QLabel *m_header;
59 QComboBox *m_pluginTypeSelector;
60 QListWidget *m_list;
61 QPushButton *m_seePlugins;
62 QPushButton *m_up;
63 QPushButton *m_down;
64 QPushButton *m_add;
65 QPushButton *m_delete;
66 QPushButton *m_reset;
67 QCheckBox *m_envOverride;
68
69 PluginPathSetter::Paths m_paths;
70 PluginPathSetter::Paths m_defaultPaths;
71
72 void populate();
73 void populateFor(PluginPathSetter::TypeKey, int makeCurrent);
74
75 QString getLabelFor(PluginPathSetter::TypeKey);
76 PluginPathSetter::TypeKey getKeyForLabel(QString label);
77 };
78
79 #endif
80
81