26#ifndef LMMS_GUI_AUTOMATION_EDITOR_H
27#define LMMS_GUI_AUTOMATION_EDITOR_H
92 return "automationeditor";
126 timeMap::iterator
getNodeAt(
int x,
int y,
bool outValue =
false,
int r = 5);
135 void drawLine(
int x0,
float y0,
int x1,
float y1 );
136 bool fineTuneValue(timeMap::iterator node,
bool editingOutValue);
323 void dropEvent( QDropEvent * _de )
override;
342 void play()
override;
343 void stop()
override;
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
Definition AutomationClip.h:52
QMap< int, AutomationNode > timeMap
Definition AutomationClip.h:62
ProgressionType
Definition AutomationClip.h:56
Definition ComboBoxModel.h:39
Definition AutomatableModel.h:463
JournallingObject()
Definition JournallingObject.cpp:36
Definition SampleClip.h:46
Definition AutomationEditor.h:57
int m_draggedTangentTick
Definition AutomationEditor.h:263
int xCoordOfTick(int tick)
Definition AutomationEditor.cpp:1427
bool m_mouseDownRight
Definition AutomationEditor.h:270
void setProgressionType(AutomationClip::ProgressionType type)
Definition AutomationEditor.cpp:1754
void updateYDelta()
Definition AutomationEditor.cpp:1832
void zoomingXChanged()
Definition AutomationEditor.cpp:1813
void updatePosition()
Definition AutomationEditor.cpp:1785
QColor m_detuningNoteColor
Definition AutomationEditor.h:291
QColor m_outOfBoundsShade
Definition AutomationEditor.h:293
float yCoordOfLevel(float level)
Definition AutomationEditor.cpp:1436
QColor m_barLineColor
Definition AutomationEditor.h:280
void drawLine(int x0, float y0, int x1, float y1)
Definition AutomationEditor.cpp:303
void resetGhostNotes()
Definition AutomationEditor.h:168
bool m_renderSample
Definition AutomationEditor.h:236
void paintEvent(QPaintEvent *pe) override
Definition AutomationEditor.cpp:1027
QBrush m_scaleColor
Definition AutomationEditor.h:287
QColor m_ghostNoteColor
Definition AutomationEditor.h:290
QPointer< MidiClip > m_ghostNotes
Definition AutomationEditor.h:234
QColor nodeInValueColor
Definition AutomationEditor.h:62
void keyPressEvent(QKeyEvent *ke) override
Definition AutomationEditor.cpp:252
void updateAfterClipChange()
Definition AutomationEditor.cpp:207
bool fineTuneValue(timeMap::iterator node, bool editingOutValue)
Definition AutomationEditor.cpp:337
QBrush scaleColor
Definition AutomationEditor.h:65
QColor m_nodeTangentLineColor
Definition AutomationEditor.h:286
Action m_action
Definition AutomationEditor.h:248
QColor m_beatLineColor
Definition AutomationEditor.h:281
static const int DEFAULT_Y_DELTA
Definition AutomationEditor.h:193
QColor barLineColor
Definition AutomationEditor.h:59
static const int SAMPLE_MARGIN
Definition AutomationEditor.h:202
const AutomationClip * currentClip() const
Definition AutomationEditor.h:78
static const int NOTE_MARGIN
Definition AutomationEditor.h:200
void wheelEvent(QWheelEvent *we) override
Definition AutomationEditor.cpp:1548
QBrush graphColor
Definition AutomationEditor.h:66
static const int MIN_NOTE_RANGE
Definition AutomationEditor.h:201
QColor backgroundShade
Definition AutomationEditor.h:68
int m_ppb
Definition AutomationEditor.h:255
void setQuantization()
Updates the clip's quantization using the current user selected value.
Definition AutomationEditor.cpp:1858
QPixmap m_toolDraw
Definition AutomationEditor.h:209
FloatModel * m_tensionModel
Definition AutomationEditor.h:223
QColor ghostSampleColor
Definition AutomationEditor.h:71
static const int VALUES_WIDTH
Definition AutomationEditor.h:197
QColor m_nodeInValueColor
Definition AutomationEditor.h:284
float m_drawLastLevel
Definition AutomationEditor.h:252
void loadSettings(const QDomElement &parent) override
Definition AutomationEditor.cpp:199
void stop()
Definition AutomationEditor.cpp:1693
QPixmap m_toolXFlip
Definition AutomationEditor.h:215
QPixmap m_toolYFlip
Definition AutomationEditor.h:214
QColor m_crossColor
Definition AutomationEditor.h:288
static constexpr int MAX_SAMPLE_HEIGHT
Definition AutomationEditor.h:203
QPointer< SampleClip > m_ghostSample
Definition AutomationEditor.h:235
QPixmap m_toolMove
Definition AutomationEditor.h:213
void drawAutomationPoint(QPainter &p, timeMap::iterator it)
Definition AutomationEditor.cpp:953
void mouseDoubleClickEvent(QMouseEvent *mouseEvent) override
Definition AutomationEditor.cpp:657
friend class AutomationEditorWindow
Definition AutomationEditor.h:297
QPixmap m_toolErase
Definition AutomationEditor.h:210
static const int DEFAULT_STEPS_PER_BAR
Definition AutomationEditor.h:194
void mouseMoveEvent(QMouseEvent *mouseEvent) override
Definition AutomationEditor.cpp:718
void adjustLeftRightScoll(int value)
Definition AutomationEditor.cpp:1540
void centerTopBottomScroll()
Definition AutomationEditor.cpp:1482
float m_step
Definition AutomationEditor.h:228
void horScrolled(int new_pos)
Definition AutomationEditor.cpp:1713
void setCurrentClip(AutomationClip *new_clip)
Definition AutomationEditor.cpp:170
QColor nodeTangentLineColor
Definition AutomationEditor.h:64
QColor ghostNoteColor
Definition AutomationEditor.h:69
TimeLineWidget * m_timeLine
Definition AutomationEditor.h:272
ComboBoxModel m_quantizeModel
Definition AutomationEditor.h:219
QPixmap m_toolEditTangents
Definition AutomationEditor.h:212
QColor lineColor
Definition AutomationEditor.h:61
QColor m_ghostSampleColor
Definition AutomationEditor.h:292
static const int NOTE_HEIGHT
Definition AutomationEditor.h:199
tick_t m_drawLastTick
Definition AutomationEditor.h:253
QColor nodeOutValueColor
Definition AutomationEditor.h:63
void mousePressEvent(QMouseEvent *mouseEvent) override
Definition AutomationEditor.cpp:386
bool m_mouseDownLeft
Definition AutomationEditor.h:269
int m_moveXOffset
Definition AutomationEditor.h:250
QScrollBar * m_leftRightScroll
Definition AutomationEditor.h:241
void zoomingYChanged()
Definition AutomationEditor.cpp:1826
float m_minLevel
Definition AutomationEditor.h:226
QScrollBar * m_topBottomScroll
Definition AutomationEditor.h:242
float m_scrollLevel
Definition AutomationEditor.h:229
AutomationClip * m_clip
Definition AutomationEditor.h:225
float m_maxLevel
Definition AutomationEditor.h:227
void drawCross(QPainter &p)
Definition AutomationEditor.cpp:918
timeMap::iterator getClosestNode(int x)
Given a mouse X coordinate, returns a timeMap::iterator that points to the closest node.
Definition AutomationEditor.cpp:1968
QColor m_backgroundShade
Definition AutomationEditor.h:289
QColor m_lineColor
Definition AutomationEditor.h:282
AutomationEditor(const AutomationEditor &)
bool m_scrollBack
Definition AutomationEditor.h:273
float m_bottomLevel
Definition AutomationEditor.h:230
void leaveEvent(QEvent *e) override
Definition AutomationEditor.cpp:292
QColor crossColor
Definition AutomationEditor.h:67
void setEditMode(AutomationEditor::EditMode mode)
Definition AutomationEditor.cpp:1733
void setTension()
Definition AutomationEditor.cpp:1773
float m_topLevel
Definition AutomationEditor.h:231
void resizeEvent(QResizeEvent *re) override
Definition AutomationEditor.cpp:1506
Action
Definition AutomationEditor.h:178
@ MoveValue
Definition AutomationEditor.h:180
@ ResetOutValues
Definition AutomationEditor.h:183
@ EraseValues
Definition AutomationEditor.h:181
@ MoveTangent
Definition AutomationEditor.h:185
@ ResetTangents
Definition AutomationEditor.h:186
@ MoveOutValue
Definition AutomationEditor.h:182
@ DrawLine
Definition AutomationEditor.h:184
QString nodeName() const override
Definition AutomationEditor.h:90
ComboBoxModel m_zoomingXModel
Definition AutomationEditor.h:217
float m_y_delta
Definition AutomationEditor.h:256
QPixmap m_toolDrawOut
Definition AutomationEditor.h:211
~AutomationEditor() override
Definition AutomationEditor.cpp:157
QColor outOfBoundsShade
Definition AutomationEditor.h:72
int m_draggedOutValueKey
Definition AutomationEditor.h:260
bool m_draggedOutTangent
Definition AutomationEditor.h:265
AutomationEditor()
Definition AutomationEditor.cpp:68
void setGhostSample(SampleClip *newSample)
Definition AutomationEditor.cpp:1019
QColor beatLineColor
Definition AutomationEditor.h:60
timeMap::iterator getNodeAt(int x, int y, bool outValue=false, int r=5)
Given a mouse coordinate, returns a timeMap::iterator that points to the first node inside a square o...
Definition AutomationEditor.cpp:1927
float getLevel(int y)
Definition AutomationEditor.cpp:1625
static const int DEFAULT_PPB
Definition AutomationEditor.h:195
void setGhostMidiClip(MidiClip *newMidiClip)
Definition AutomationEditor.cpp:1012
void currentClipChanged()
static const std::array< float, 7 > m_zoomXLevels
Definition AutomationEditor.h:221
void verScrolled(int new_pos)
Definition AutomationEditor.cpp:1723
AutomationClip::timeMap timeMap
Definition AutomationEditor.h:109
EditMode m_editMode
Definition AutomationEditor.h:267
QColor detuningNoteColor
Definition AutomationEditor.h:70
QColor m_nodeOutValueColor
Definition AutomationEditor.h:285
bool inPatternEditor()
Definition AutomationEditor.cpp:1642
void drawAutomationTangents(QPainter &p, timeMap::iterator it)
Definition AutomationEditor.cpp:979
void update()
Definition AutomationEditor.cpp:238
void drawLevelTick(QPainter &p, int tick, float value)
Definition AutomationEditor.cpp:1452
void saveSettings(QDomDocument &doc, QDomElement &parent) override
Definition AutomationEditor.cpp:191
void play()
Definition AutomationEditor.cpp:1650
SampleThumbnail m_sampleThumbnail
Definition AutomationEditor.h:295
bool m_y_auto
Definition AutomationEditor.h:257
TimePos m_currentPosition
Definition AutomationEditor.h:246
bool validClip() const
Definition AutomationEditor.h:83
void updateTopBottomLevels()
Definition AutomationEditor.cpp:1868
QBrush m_graphColor
Definition AutomationEditor.h:283
EditMode
Definition AutomationEditor.h:96
@ Draw
Definition AutomationEditor.h:97
@ EditTangents
Definition AutomationEditor.h:100
@ DrawOutValues
Definition AutomationEditor.h:99
@ Erase
Definition AutomationEditor.h:98
static const int TOP_MARGIN
Definition AutomationEditor.h:191
static const int SCROLLBAR_SIZE
Definition AutomationEditor.h:190
ComboBoxModel m_zoomingYModel
Definition AutomationEditor.h:218
void mouseReleaseEvent(QMouseEvent *mouseEvent) override
Definition AutomationEditor.cpp:684
void currentClipChanged()
QAction * m_flipXAction
Definition AutomationEditor.h:367
void dropEvent(QDropEvent *_de) override
Definition AutomationEditor.cpp:2234
QAction * m_drawOutAction
Definition AutomationEditor.h:359
QAction * m_linearAction
Definition AutomationEditor.h:363
AutomationEditorWindow()
Definition AutomationEditor.cpp:2014
void stop() override
Definition AutomationEditor.cpp:2297
void setGhostMidiClip(MidiClip *clip)
Definition AutomationEditor.h:318
void updateWindowTitle()
Definition AutomationEditor.cpp:2302
ComboBox * m_zoomingYComboBox
Definition AutomationEditor.h:372
QAction * m_eraseAction
Definition AutomationEditor.h:358
QAction * m_editTanAction
Definition AutomationEditor.h:360
QAction * m_flipYAction
Definition AutomationEditor.h:366
QAction * m_cubicHermiteAction
Definition AutomationEditor.h:364
void open(AutomationClip *clip)
Definition AutomationEditor.cpp:2267
QAction * m_discreteAction
Definition AutomationEditor.h:362
void play() override
Definition AutomationEditor.cpp:2291
QSize sizeHint() const override
Definition AutomationEditor.cpp:2275
ComboBox * m_quantizeComboBox
Definition AutomationEditor.h:373
AutomationEditor * m_editor
Definition AutomationEditor.h:328
Knob * m_tensionKnob
Definition AutomationEditor.h:369
void setCurrentClip(AutomationClip *clip)
Definition AutomationEditor.cpp:2175
void dragEnterEvent(QDragEnterEvent *_dee) override
Definition AutomationEditor.cpp:2259
void setProgressionType(int progType)
Definition AutomationEditor.cpp:2313
QAction * m_drawAction
Definition AutomationEditor.h:357
~AutomationEditorWindow() override=default
void focusInEvent(QFocusEvent *event) override
Definition AutomationEditor.cpp:2286
QPushButton * m_resetGhostNotes
Definition AutomationEditor.h:375
ComboBox * m_zoomingXComboBox
Definition AutomationEditor.h:371
static const int INITIAL_WIDTH
Definition AutomationEditor.h:311
void updateEditTanButton()
The Edit Tangent edit mode should only be available for Cubic Hermite progressions,...
Definition AutomationEditor.cpp:2319
void setGhostSample(SampleClip *newSample)
Definition AutomationEditor.h:319
static const int INITIAL_HEIGHT
Definition AutomationEditor.h:312
const AutomationClip * currentClip()
Definition AutomationEditor.cpp:2229
void clearCurrentClip()
Definition AutomationEditor.cpp:2280
Editor(bool record=false, bool record_step=false)
Constructor.
Definition Editor.cpp:91
Definition SampleThumbnail.h:57
* e
Definition inflate.c:1404
int y
Definition inflate.c:1588
unsigned x[BMAX+1]
Definition inflate.c:1586
static PuglViewHint int value
Definition pugl.h:1708
static uintptr_t parent
Definition pugl.h:1644
auto getIconPixmap(std::string_view name, int width, int height, const char *const *xpm) -> QPixmap
Definition embed.cpp:107
Definition AudioPortAudio.cpp:209
Definition AudioAlsa.cpp:35
std::int32_t tick_t
Definition LmmsTypes.h:35
png_structrp int mode
Definition png.h:1139
uch * p
Definition crypt.c:594
int r
Definition crypt.c:458
static ZCONST char Far None[]
Definition unzip.c:380
#define const
Definition zconf.h:137