Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_tool_lazy_brush.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#ifndef KIS_TOOL_LAZY_BRUSH_H_
8#define KIS_TOOL_LAZY_BRUSH_H_
9
10#include <QScopedPointer>
11#include "kis_tool_freehand.h"
12
14
16#include <kis_icon.h>
17#include <QKeySequence>
18
19#include <kconfig.h>
20#include <kconfiggroup.h>
21#include <KoIcon.h>
22
24class KoCanvasBase;
25
27{
28 Q_OBJECT
29public:
31 ~KisToolLazyBrush() override;
32
33 QWidget * createOptionWidget() override;
34
35 void activatePrimaryAction() override;
36 void deactivatePrimaryAction() override;
37
38 void beginPrimaryAction(KoPointerEvent *event) override;
39 void continuePrimaryAction(KoPointerEvent *event) override;
40 void endPrimaryAction(KoPointerEvent *event) override;
41
44
48
49 void explicitUserStrokeEndRequest() override;
50
51protected Q_SLOTS:
52 void resetCursorStyle() override;
53
54public Q_SLOTS:
55 void activate(const QSet<KoShape*> &shapes) override;
56 void deactivate() override;
57
58private Q_SLOTS:
60
61Q_SIGNALS:
62
63private:
64 bool colorizeMaskActive() const;
65 bool canCreateColorizeMask() const;
66 bool shouldActivateKeyStrokes() const;
68
70
71private:
72 struct Private;
73 const QScopedPointer<Private> m_d;
74};
75
76
78{
79
80public:
82 : KisToolPaintFactoryBase("KritaShape/KisToolLazyBrush") {
83
84 setToolTip(i18n("Colorize Mask Editing Tool"));
85
86 // Temporarily
88 setIconName(koIconNameCStr("krita_tool_lazybrush"));
89 //setShortcut(QKeySequence(Qt::Key_Shift + Qt::Key_B));
90 setPriority(3);
92 }
93
95
97 return new KisToolLazyBrush(canvas);
98 }
99
100};
101
102
103#endif // KIS_TOOL_LAZY_BRUSH_H_
A container for a set of QAction objects.
KoToolBase * createTool(KoCanvasBase *canvas) override
void deactivateAlternateAction(AlternateAction action) override
void activate(const QSet< KoShape * > &shapes) override
void continueAlternateAction(KoPointerEvent *event, AlternateAction action) override
bool colorizeMaskActive() const
void slotCurrentNodeChanged(KisNodeSP node)
void activateAlternateAction(AlternateAction action) override
KisToolLazyBrush(KoCanvasBase *canvas)
void endPrimaryAction(KoPointerEvent *event) override
QWidget * createOptionWidget() override
void deactivatePrimaryAction() override
void beginPrimaryAction(KoPointerEvent *event) override
void explicitUserStrokeEndRequest() override
explicitUserStrokeEndRequest is called by the input manager when the user presses Enter key or any eq...
void deactivate() override
void activatePrimaryAction() override
void endAlternateAction(KoPointerEvent *event, AlternateAction action) override
void beginAlternateAction(KoPointerEvent *event, AlternateAction action) override
void continuePrimaryAction(KoPointerEvent *event) override
bool shouldActivateKeyStrokes() const
void resetCursorStyle() override
const QScopedPointer< Private > m_d
bool canCreateColorizeMask() const
QAction * action(const QString &name) const
void setSection(const QString &section)
void setActivationShapeId(const QString &activationShapeId)
void setIconName(const char *iconName)
void setToolTip(const QString &tooltip)
void setPriority(int newPriority)
#define koIconNameCStr(name)
Definition kis_icon.h:28
static const QString KRITA_TOOL_ACTIVATION_ID
Definition kis_tool.h:37
static const QString Fill
Tools that fill parts of the canvas.
AlternateAction
Definition kis_tool.h:134
KisCanvas2 * canvas