LMMS
Loading...
Searching...
No Matches
VstEffectControls.h
Go to the documentation of this file.
1/*
2 * VstEffectControls.h - controls for VST effect plugins
3 *
4 * Copyright (c) 2008-2011 Tobias Doerffel <tobydox/at/users.sourceforge.net>
5 *
6 * This file is part of LMMS - https://lmms.io
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public
19 * License along with this program (see COPYING); if not, write to the
20 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301 USA.
22 *
23 */
24
25#ifndef _VST_EFFECT_CONTROLS_H
26#define _VST_EFFECT_CONTROLS_H
27
28#include "EffectControls.h"
29
30
31#include <QObject>
32
33class QGridLayout;
34class QPaintEvent;
35class QPushButton;
36class QMdiSubWindow;
37class QScrollArea;
38
39namespace lmms
40{
41
42
43class VstEffect;
44
45namespace gui
46{
47class CustomTextKnob;
50}
51
52
54{
55 Q_OBJECT
56public:
58 ~VstEffectControls() override;
59
60 void saveSettings( QDomDocument & _doc, QDomElement & _parent ) override;
61 void loadSettings( const QDomElement & _this ) override;
62 inline QString nodeName() const override
63 {
64 return "vsteffectcontrols";
65 }
66
67 int controlCount() override;
68
70
71
72protected slots:
73 void updateMenu();
74 void managePlugin();
75 void openPreset();
76 void savePreset();
77 void rollPreset();
78 void rolrPreset();
79 void selPreset();
80 void setParameter( lmms::Model * action );
81
82protected:
83 virtual void paintEvent( QPaintEvent * _pe );
84
85private:
87
88 QPushButton * m_selPresetButton;
89
90 QMdiSubWindow * m_subWindow;
91 QScrollArea * m_scrollArea;
92 std::vector<FloatModel*> knobFModel;
94
95 QObject * ctrHandle;
96
98// QLabel * m_presetLabel;
99
102
104} ;
105
106
107namespace gui
108{
109
110
111class ManageVSTEffectView : public QObject
112{
113 Q_OBJECT
114public:
116 ~ManageVSTEffectView() override;
117
118
119protected slots:
120 void syncPlugin();
122 void setParameter( lmms::Model * action );
123 void syncParameterText();
124 void closeWindow();
125
126private:
127
128// static QPixmap * s_artwork;
129
131
132
134
135
136 QWidget *widget;
137 QGridLayout * l;
138
139 QPushButton * m_syncButton;
141 QPushButton * m_closeButton;
143
144} ;
145
146
147} // namespace gui
148
149} // namespace lmms
150
151#endif
EffectControls(Effect *_eff)
Definition EffectControls.h:46
Definition Model.h:37
Definition VstEffectControls.h:54
void updateMenu()
Definition VstEffectControls.cpp:206
void rollPreset()
Definition VstEffectControls.cpp:258
QMdiSubWindow * m_subWindow
Definition VstEffectControls.h:90
~VstEffectControls() override
Definition VstEffectControls.cpp:63
void savePreset()
Definition VstEffectControls.cpp:189
QObject * ctrHandle
Definition VstEffectControls.h:95
VstEffect * m_effect
Definition VstEffectControls.h:86
void loadSettings(const QDomElement &_this) override
Definition VstEffectControls.cpp:72
void setParameter(lmms::Model *action)
Definition VstEffectControls.cpp:114
gui::EffectControlDialog * createView() override
Definition VstEffectControls.cpp:159
QPushButton * m_selPresetButton
Definition VstEffectControls.h:88
QScrollArea * m_scrollArea
Definition VstEffectControls.h:91
std::vector< FloatModel * > knobFModel
Definition VstEffectControls.h:92
void managePlugin()
Definition VstEffectControls.cpp:169
void selPreset()
Definition VstEffectControls.cpp:290
int controlCount() override
Definition VstEffectControls.cpp:152
void saveSettings(QDomDocument &_doc, QDomElement &_parent) override
Definition VstEffectControls.cpp:126
void rolrPreset()
Definition VstEffectControls.cpp:274
int lastPosInMenu
Definition VstEffectControls.h:97
QString nodeName() const override
Definition VstEffectControls.h:62
int paramCount
Definition VstEffectControls.h:93
virtual void paintEvent(QPaintEvent *_pe)
Definition VstEffectControls.cpp:304
bool m_vstGuiVisible
Definition VstEffectControls.h:103
void openPreset()
Definition VstEffectControls.cpp:241
VstEffectControls(VstEffect *_eff)
Definition VstEffectControls.cpp:49
Definition VstEffect.h:42
Definition CustomTextKnob.h:35
Definition EffectControlDialog.h:42
Definition VstEffectControls.h:112
void setParameter(lmms::Model *action)
Definition VstEffectControls.cpp:492
VstEffectControls * m_vi2
Definition VstEffectControls.h:130
~ManageVSTEffectView() override
Definition VstEffectControls.cpp:535
void displayAutomatedOnly()
Definition VstEffectControls.cpp:467
void closeWindow()
Definition VstEffectControls.cpp:434
ManageVSTEffectView(VstEffect *_eff, VstEffectControls *m_vi)
Definition VstEffectControls.cpp:315
QPushButton * m_syncButton
Definition VstEffectControls.h:139
QGridLayout * l
Definition VstEffectControls.h:137
void syncPlugin()
Definition VstEffectControls.cpp:442
CustomTextKnob ** vstKnobs
Definition VstEffectControls.h:142
QPushButton * m_displayAutomatedOnly
Definition VstEffectControls.h:140
void syncParameterText()
Definition VstEffectControls.cpp:502
VstEffect * m_effect
Definition VstEffectControls.h:133
QWidget * widget
Definition VstEffectControls.h:136
QPushButton * m_closeButton
Definition VstEffectControls.h:141
Definition VstEffectControlDialog.h:48
Definition AudioPortAudio.cpp:223
Definition AudioAlsa.cpp:35