Krita Source Code Documentation
Loading...
Searching...
No Matches
KisAnimTimelineTimeHeader.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2015 Dmitry Kazakov <dimula73@gmail.com>
3 * SPDX-FileCopyrightText: 2021 Eoin O'Neil <eoinoneill1991@gmail.com>
4 * SPDX-FileCopyrightText: 2021 Emmet O'Neill <emmetoneill.pdx@gmail.com>
5 *
6 * SPDX-License-Identifier: GPL-2.0-or-later
7 */
8
9#ifndef TIMELINE_RULER_HEADER_H
10#define TIMELINE_RULER_HEADER_H
11
12#include <QHeaderView>
13#include <QScopedPointer>
14#include "kis_action_manager.h"
15
16class QPaintEvent;
17
18class KisAnimTimelineTimeHeader : public QHeaderView
19{
20 Q_OBJECT
21public:
22 KisAnimTimelineTimeHeader(QWidget *parent = 0);
24
25 void setPixelOffset(qreal offset);
26
27 void setFramePerSecond(int fps);
28 bool setZoom(qreal zoomLevel);
29 void zoomToFitFrameRange(int start, int end);
30 qreal zoom();
31
32 void setModel(QAbstractItemModel *model) override;
33
34 void setActionManager(KisActionManager *actionManager);
35
36 void mouseMoveEvent(QMouseEvent *e) override;
37
40
41protected:
42 void mousePressEvent(QMouseEvent *e) override;
43
44 void mouseReleaseEvent(QMouseEvent *e) override;
45
46 void paintEvent(QPaintEvent *e) override;
47 void paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const override;
48 void paintSection1(QPainter *painter, const QRect &rect, int logicalIndex) const;
49 void changeEvent(QEvent *event) override;
50
51private:
52 void updateMinimumSize();
53
54 void paintSpan(QPainter *painter, int userFrameId,
55 const QRect &spanRect,
56 bool isIntegralLine,
57 bool isPrevIntegralLine,
58 QStyle *style,
59 const QPalette &palette,
60 const QPen &gridPen) const;
61
62public Q_SLOTS:
63 void slotSaveThrottle(qreal value);
64
65Q_SIGNALS:
69
72
77
80
84
85 void sigZoomChanged(qreal zoom);
86
87private:
88 struct Private;
89 const QScopedPointer<Private> m_d;
90};
91
92#endif // TIMELINE_RULER_HEADER_H
float value(const T *src, size_t ch)
A KisActionManager class keeps track of KisActions. These actions are always associated with the GUI....
void mouseMoveEvent(QMouseEvent *e) override
void paintSection1(QPainter *painter, const QRect &rect, int logicalIndex) const
void setActionManager(KisActionManager *actionManager)
void sigZoomChanged(qreal zoom)
void zoomToFitFrameRange(int start, int end)
void setModel(QAbstractItemModel *model) override
void mouseReleaseEvent(QMouseEvent *e) override
void paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const override
void paintSpan(QPainter *painter, int userFrameId, const QRect &spanRect, bool isIntegralLine, bool isPrevIntegralLine, QStyle *style, const QPalette &palette, const QPen &gridPen) const
void mousePressEvent(QMouseEvent *e) override
void changeEvent(QEvent *event) override
void paintEvent(QPaintEvent *e) override
const QScopedPointer< Private > m_d
rgba palette[MAX_PALETTE]
Definition palette.c:35