LMMS
Loading...
Searching...
No Matches
PatternEditor.h
Go to the documentation of this file.
1/*
2 * PatternEditor.h - basic main-window for editing patterns
3 *
4 * Copyright (c) 2004-2014 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 LMMS_GUI_PATTERN_EDITOR_H
26#define LMMS_GUI_PATTERN_EDITOR_H
27
28#include "Editor.h"
29#include "TrackContainerView.h"
30
31namespace lmms
32{
33
34class PatternStore;
35
36namespace gui
37{
38
39class ComboBox;
40class TimeLineWidget;
41
42
44{
45 Q_OBJECT
46public:
48
49 bool fixedClips() const override
50 {
51 return true;
52 }
53
55
56 void saveSettings(QDomDocument& doc, QDomElement& element) override;
57 void loadSettings(const QDomElement& element) override;
58
59public slots:
60 void addSteps();
61 void cloneSteps();
62 void removeSteps();
63 void addSampleTrack();
64 void addAutomationTrack();
65 void cloneClip();
66 void updateMaxSteps();
67
68protected slots:
69 void dropEvent(QDropEvent * de ) override;
70 void resizeEvent(QResizeEvent* de) override;
71 void updatePosition();
72 void updatePixelsPerBar();
73
74private:
79 void makeSteps( bool clone );
80};
81
82
84{
85Q_OBJECT
86public:
89
90 QSize sizeHint() const override;
91
93
94public slots:
95 void play() override;
96 void stop() override;
97
98private:
100};
101
102
103} // namespace gui
104
105} // namespace lmms
106
107#endif // LMMS_GUI_PATTERN_EDITOR_H
Definition PatternStore.h:65
Definition ComboBox.h:38
Editor(bool record=false, bool record_step=false)
Constructor.
Definition Editor.cpp:91
Definition PatternEditor.h:44
TimeLineWidget * m_timeLine
Definition PatternEditor.h:76
void loadSettings(const QDomElement &element) override
Definition PatternEditor.cpp:138
bool fixedClips() const override
Definition PatternEditor.h:49
void saveSettings(QDomDocument &doc, QDomElement &element) override
Definition PatternEditor.cpp:133
void updateMaxSteps()
Definition PatternEditor.cpp:212
void cloneSteps()
Definition PatternEditor.cpp:81
PatternEditor(PatternStore *ps)
Definition PatternEditor.cpp:49
void updatePosition()
Definition PatternEditor.cpp:194
tick_t m_maxClipLength
Definition PatternEditor.h:78
void makeSteps(bool clone)
Definition PatternEditor.cpp:229
int m_trackHeadWidth
Definition PatternEditor.h:77
void dropEvent(QDropEvent *de) override
Definition PatternEditor.cpp:147
void cloneClip()
Definition PatternEditor.cpp:252
void addSteps()
Definition PatternEditor.cpp:76
void addSampleTrack()
Definition PatternEditor.cpp:107
void removeSteps()
Definition PatternEditor.cpp:89
void removeViewsForPattern(int pattern)
Definition PatternEditor.cpp:123
PatternStore * m_ps
Definition PatternEditor.h:75
void resizeEvent(QResizeEvent *de) override
Definition PatternEditor.cpp:188
void updatePixelsPerBar()
Definition PatternEditor.cpp:204
void addAutomationTrack()
Definition PatternEditor.cpp:115
void play() override
Definition PatternEditor.cpp:361
QSize sizeHint() const override
Definition PatternEditor.cpp:355
ComboBox * m_patternComboBox
Definition PatternEditor.h:99
PatternEditorWindow(PatternStore *ps)
Definition PatternEditor.cpp:276
void stop() override
Definition PatternEditor.cpp:374
PatternEditor * m_editor
Definition PatternEditor.h:92
Definition TimeLineWidget.h:54
TrackContainerView(TrackContainer *tc)
Definition TrackContainerView.cpp:77
CARLA_PLUGIN_EXPORT int clone(int(*)(void *), void *, int, void *,...)
Definition interposer-safe.cpp:46
Definition AudioPortAudio.cpp:223
Definition AudioAlsa.cpp:35
std::int32_t tick_t
Definition LmmsTypes.h:35
int * pattern
Definition match.c:126