Changeset View
Changeset View
Standalone View
Standalone View
libs/ui/tool/KisStabilizerDelayedPaintHelper.h
| Show All 37 Lines | 37 | { | |||
|---|---|---|---|---|---|
| 38 | int elapsedTime; | 38 | int elapsedTime; | ||
| 39 | KisPaintInformation paintInfo; | 39 | KisPaintInformation paintInfo; | ||
| 40 | TimedPaintInfo(int elapsedTime, KisPaintInformation paintInfo); | 40 | TimedPaintInfo(int elapsedTime, KisPaintInformation paintInfo); | ||
| 41 | }; | 41 | }; | ||
| 42 | 42 | | |||
| 43 | QTimer m_paintTimer; | 43 | QTimer m_paintTimer; | ||
| 44 | QQueue<TimedPaintInfo> m_paintQueue; | 44 | QQueue<TimedPaintInfo> m_paintQueue; | ||
| 45 | int m_lastPendingTime; | 45 | int m_lastPendingTime; | ||
| 46 | int m_lastPaintTime; | ||||
| 46 | QElapsedTimer m_elapsedTimer; | 47 | QElapsedTimer m_elapsedTimer; | ||
| 47 | 48 | | |||
| 48 | // Callbacks | 49 | // Callbacks | ||
| 49 | std::function<void(const KisPaintInformation &, const KisPaintInformation &)> m_paintLine; | 50 | std::function<void(const KisPaintInformation &, const KisPaintInformation &)> m_paintLine; | ||
| 50 | std::function<void()> m_requestUpdateOutline; | 51 | std::function<void()> m_requestUpdateOutline; | ||
| 51 | 52 | | |||
| 52 | public: | 53 | public: | ||
| 53 | KisStabilizerDelayedPaintHelper(); | 54 | KisStabilizerDelayedPaintHelper(); | ||
| Show All 15 Lines | |||||
| 69 | void setPaintLineCallback(std::function<void(const KisPaintInformation &, const KisPaintInformation &)> paintLine) { | 70 | void setPaintLineCallback(std::function<void(const KisPaintInformation &, const KisPaintInformation &)> paintLine) { | ||
| 70 | m_paintLine = paintLine; | 71 | m_paintLine = paintLine; | ||
| 71 | } | 72 | } | ||
| 72 | 73 | | |||
| 73 | void setUpdateOutlineCallback(std::function<void()> requestUpdateOutline) { | 74 | void setUpdateOutlineCallback(std::function<void()> requestUpdateOutline) { | ||
| 74 | m_requestUpdateOutline = requestUpdateOutline; | 75 | m_requestUpdateOutline = requestUpdateOutline; | ||
| 75 | } | 76 | } | ||
| 76 | 77 | | |||
| 77 | void start(int paintInterval, const KisPaintInformation &firstPaintInfo); | 78 | void start(const KisPaintInformation &firstPaintInfo); | ||
| 78 | void update(const QVector<KisPaintInformation> &newPaintInfos); | 79 | void update(const QVector<KisPaintInformation> &newPaintInfos); | ||
| 80 | void paintSome(); | ||||
| 79 | void end(); | 81 | void end(); | ||
| 80 | void cancel(); | 82 | void cancel(); | ||
| 81 | 83 | | |||
| 82 | private Q_SLOTS: | 84 | private Q_SLOTS: | ||
| 83 | void stabilizerDelayedPaint(bool isEndStroke = false); | 85 | void stabilizerDelayedPaintTimer(); | ||
| 84 | }; | 86 | }; | ||
| 85 | 87 | | |||
| 86 | #endif // KIS_STABILIZER_DELAYED_PAINT_HELPER_H | 88 | #endif // KIS_STABILIZER_DELAYED_PAINT_HELPER_H | ||