lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
include
EffectRackView.h
Go to the documentation of this file.
1
/*
2
* EffectRackView.h - view for effectChain-model
3
*
4
* Copyright (c) 2006-2007 Danny McRae <khjklujn@netscape.net>
5
* Copyright (c) 2008-2014 Tobias Doerffel <tobydox/at/users.sourceforge.net>
6
*
7
* This file is part of LMMS - https://lmms.io
8
*
9
* This program is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public
11
* License as published by the Free Software Foundation; either
12
* version 2 of the License, or (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
* General Public License for more details.
18
*
19
* You should have received a copy of the GNU General Public
20
* License along with this program (see COPYING); if not, write to the
21
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22
* Boston, MA 02110-1301 USA.
23
*
24
*/
25
26
#ifndef LMMS_GUI_EFFECT_RACK_VIEW_H
27
#define LMMS_GUI_EFFECT_RACK_VIEW_H
28
29
#include <QWidget>
30
31
#include "
EffectChain.h
"
32
#include "
ModelView.h
"
33
34
class
QScrollArea;
35
36
namespace
lmms::gui
37
{
38
39
class
EffectView
;
40
class
GroupBox
;
41
42
43
class
EffectRackView
:
public
QWidget,
public
ModelView
44
{
45
Q_OBJECT
46
public
:
47
EffectRackView
(
EffectChain
*
model
, QWidget* parent =
nullptr
);
48
~EffectRackView
()
override
;
49
50
static
constexpr
int
DEFAULT_WIDTH
= 245;
51
52
public
slots:
53
void
clearViews
();
54
void
moveUp
(
EffectView
* view);
55
void
moveDown
(
EffectView
* view);
56
void
deletePlugin
(
EffectView
* view);
57
58
private
slots:
59
virtual
void
update
();
60
void
addEffect
();
61
62
63
private
:
64
void
modelChanged
()
override
;
65
QSize
sizeHint
()
const override
;
66
QSize
minimumSizeHint
()
const override
{
return
sizeHint
(); }
67
68
inline
EffectChain
*
fxChain
()
69
{
70
return
castModel<EffectChain>
();
71
}
72
73
inline
const
EffectChain
*
fxChain
()
const
74
{
75
return
castModel<EffectChain>
();
76
}
77
78
79
QVector<EffectView *>
m_effectViews
;
80
81
GroupBox
*
m_effectsGroupBox
;
82
QScrollArea*
m_scrollArea
;
83
84
int
m_lastY
;
85
86
} ;
87
88
}
// namespace lmms::gui
89
90
#endif
// LMMS_GUI_EFFECT_RACK_VIEW_H
EffectChain.h
ModelView.h
lmms::EffectChain
Definition
EffectChain.h:48
lmms::gui::EffectRackView::modelChanged
void modelChanged() override
Definition
EffectRackView.cpp:268
lmms::gui::EffectRackView::EffectRackView
EffectRackView(EffectChain *model, QWidget *parent=nullptr)
Definition
EffectRackView.cpp:43
lmms::gui::EffectRackView::DEFAULT_WIDTH
static constexpr int DEFAULT_WIDTH
Definition
EffectRackView.h:50
lmms::gui::EffectRackView::m_effectViews
QVector< EffectView * > m_effectViews
Definition
EffectRackView.h:79
lmms::gui::EffectRackView::sizeHint
QSize sizeHint() const override
Definition
EffectRackView.cpp:279
lmms::gui::EffectRackView::clearViews
void clearViews()
Definition
EffectRackView.cpp:91
lmms::gui::EffectRackView::m_effectsGroupBox
GroupBox * m_effectsGroupBox
Definition
EffectRackView.h:81
lmms::gui::EffectRackView::update
virtual void update()
Definition
EffectRackView.cpp:156
lmms::gui::EffectRackView::fxChain
const EffectChain * fxChain() const
Definition
EffectRackView.h:73
lmms::gui::EffectRackView::fxChain
EffectChain * fxChain()
Definition
EffectRackView.h:68
lmms::gui::EffectRackView::m_lastY
int m_lastY
Definition
EffectRackView.h:84
lmms::gui::EffectRackView::moveDown
void moveDown(EffectView *view)
Definition
EffectRackView.cpp:131
lmms::gui::EffectRackView::m_scrollArea
QScrollArea * m_scrollArea
Definition
EffectRackView.h:82
lmms::gui::EffectRackView::moveUp
void moveUp(EffectView *view)
Definition
EffectRackView.cpp:104
lmms::gui::EffectRackView::minimumSizeHint
QSize minimumSizeHint() const override
Definition
EffectRackView.h:66
lmms::gui::EffectRackView::deletePlugin
void deletePlugin(EffectView *view)
Definition
EffectRackView.cpp:143
lmms::gui::EffectRackView::addEffect
void addEffect()
Definition
EffectRackView.cpp:237
lmms::gui::EffectView
Definition
EffectView.h:49
lmms::gui::GroupBox
Definition
GroupBox.h:40
lmms::gui::ModelView::model
Model * model()
Definition
ModelView.h:43
lmms::gui::ModelView::ModelView
ModelView(Model *model, QWidget *widget)
Definition
ModelView.cpp:33
lmms::gui::ModelView::castModel
T * castModel()
Definition
ModelView.h:54
lmms::gui
Definition
AudioPortAudio.cpp:209
Generated on
for lmms by
1.18.0