8#ifndef KIS_TOOL_FREEHAND_H_
9#define KIS_TOOL_FREEHAND_H_
23#include "kritaui_export.h"
39 bool useSavedSmoothing =
true);
41 int flags()
const override;
46 void activate(
const QSet<KoShape*> &shapes)
override;
69 virtual void endStroke();
85 void explicitUpdateOutline();
87 void setAssistant(
bool assistant);
88 void setOnlyOneAssistantSnap(
bool assistant);
89 void setSnapEraser(
bool assistant);
90 void slotDoResizeBrush(qreal newSize);
99 QPointF adjustPosition(
const QPointF& point,
const QPointF& strokeBegin);
100 void updateTemporaryStraightRulerPreview(
const QPointF &documentPoint, Qt::KeyboardModifiers modifiers);
101 void lockTemporaryStraightRuler(
const QPointF &documentPoint, Qt::KeyboardModifiers modifiers);
102 bool temporaryStraightRulerActive()
const;
103 QPointF temporaryStraightRulerOutlinePosition(
const QPointF &documentPoint);
109 qreal calculatePerspective(
const QPointF &documentPoint);
112 void updateMaskSyntheticEventsFromTouch();
118 bool m_assistant {
false};
119 double m_magnetism {1.0};
120 bool m_only_one_assistant {
true};
121 bool m_eraser_snapping {
false};
129 qreal m_lastPaintOpSize {0.0};
132 bool m_paintopBasedSamplingInAction {
false};