Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_tool_select_similar.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2004 Boudewijn Rempt (boud@valdyas.org)
3
* SPDX-FileCopyrightText: 2015 Michael Abrahams <miabraha@gmail.com>
4
*
5
* SPDX-License-Identifier: GPL-2.0-or-later
6
*/
7
#ifndef KIS_TOOL_SELECT_SIMILAR_H_
8
#define KIS_TOOL_SELECT_SIMILAR_H_
9
10
#include <
KisSelectionToolFactoryBase.h
>
11
#include <
kis_icon.h
>
12
#include <kconfig.h>
13
#include "
kis_tool_select_base.h
"
14
#include <kconfiggroup.h>
15
#include <
commands_new/KisMergeLabeledLayersCommand.h
>
16
17
/*
18
* Tool to select colors by pointing at a color on the image.
19
*/
20
class
KisToolSelectSimilar
:
public
KisToolSelect
21
{
22
Q_OBJECT
23
24
public
:
25
KisToolSelectSimilar
(
KoCanvasBase
* canvas);
26
void
beginPrimaryAction
(
KoPointerEvent
*event)
override
;
27
void
endPrimaryAction
(
KoPointerEvent
*event)
override
;
28
void
paint
(QPainter&,
const
KoViewConverter
&)
override
{}
29
QWidget*
createOptionWidget
()
override
;
30
void
resetCursorStyle
()
override
;
31
32
public
Q_SLOTS:
33
void
activate
(
const
QSet<KoShape*> &shapes)
override
;
34
void
deactivate
()
override
;
35
void
slotSetThreshold
(
int
);
36
void
slotSetOpacitySpread
(
int
);
37
38
protected
:
39
using
KisToolSelectBase::m_widgetHelper
;
40
bool
isPixelOnly
()
const override
{
return
true
; }
41
bool
usesColorLabels
()
const override
{
return
true
; }
42
43
private
:
44
int
m_threshold
;
45
int
m_opacitySpread
;
46
KConfigGroup
m_configGroup
;
47
KisPaintDeviceSP
m_referencePaintDevice
;
48
KisMergeLabeledLayersCommand::ReferenceNodeInfoListSP
m_referenceNodeList
;
49
int
m_previousTime
;
50
};
51
52
53
class
KisToolSelectSimilarFactory
:
public
KisSelectionToolFactoryBase
54
{
55
public
:
56
KisToolSelectSimilarFactory
()
57
:
KisSelectionToolFactoryBase
(
"KisToolSelectSimilar"
)
58
{
59
setToolTip
(i18n(
"Similar Color Selection Tool"
));
60
setSection
(
ToolBoxSection::Select
);
61
setActivationShapeId
(
KRITA_TOOL_ACTIVATION_ID
);
62
setIconName
(
koIconNameCStr
(
"tool_similar_selection"
));
63
setPriority
(5);
64
}
65
~KisToolSelectSimilarFactory
()
override
{}
66
KoToolBase
*
createTool
(
KoCanvasBase
*
canvas
)
override
{
67
return
new
KisToolSelectSimilar
(
canvas
);
68
}
69
};
70
71
72
#endif
// KIS_TOOL_SELECT_SIMILAR_H_
73
KisMergeLabeledLayersCommand.h
KisSelectionToolFactoryBase.h
KisSelectionToolFactoryBase
Definition
KisSelectionToolFactoryBase.h:14
KisSharedPtr< KisPaintDevice >
KisToolSelectBase
Definition
kis_tool_select_base.h:62
KisToolSelectBase::m_widgetHelper
KisSelectionToolConfigWidgetHelper m_widgetHelper
Definition
kis_tool_select_base.h:535
KisToolSelectSimilarFactory
Definition
kis_tool_select_similar.h:54
KisToolSelectSimilarFactory::~KisToolSelectSimilarFactory
~KisToolSelectSimilarFactory() override
Definition
kis_tool_select_similar.h:65
KisToolSelectSimilarFactory::KisToolSelectSimilarFactory
KisToolSelectSimilarFactory()
Definition
kis_tool_select_similar.h:56
KisToolSelectSimilarFactory::createTool
KoToolBase * createTool(KoCanvasBase *canvas) override
Definition
kis_tool_select_similar.h:66
KisToolSelectSimilar
Definition
kis_tool_select_similar.h:21
KisToolSelectSimilar::usesColorLabels
bool usesColorLabels() const override
Definition
kis_tool_select_similar.h:41
KisToolSelectSimilar::m_threshold
int m_threshold
Definition
kis_tool_select_similar.h:44
KisToolSelectSimilar::beginPrimaryAction
void beginPrimaryAction(KoPointerEvent *event) override
Definition
kis_tool_select_similar.cc:62
KisToolSelectSimilar::KisToolSelectSimilar
KisToolSelectSimilar(KoCanvasBase *canvas)
Definition
kis_tool_select_similar.cc:39
KisToolSelectSimilar::createOptionWidget
QWidget * createOptionWidget() override
Definition
kis_tool_select_similar.cc:222
KisToolSelectSimilar::deactivate
void deactivate() override
Definition
kis_tool_select_similar.cc:55
KisToolSelectSimilar::m_configGroup
KConfigGroup m_configGroup
Definition
kis_tool_select_similar.h:46
KisToolSelectSimilar::isPixelOnly
bool isPixelOnly() const override
Definition
kis_tool_select_similar.h:40
KisToolSelectSimilar::m_referenceNodeList
KisMergeLabeledLayersCommand::ReferenceNodeInfoListSP m_referenceNodeList
Definition
kis_tool_select_similar.h:48
KisToolSelectSimilar::m_previousTime
int m_previousTime
Definition
kis_tool_select_similar.h:49
KisToolSelectSimilar::slotSetOpacitySpread
void slotSetOpacitySpread(int)
Definition
kis_tool_select_similar.cc:216
KisToolSelectSimilar::activate
void activate(const QSet< KoShape * > &shapes) override
Definition
kis_tool_select_similar.cc:49
KisToolSelectSimilar::paint
void paint(QPainter &, const KoViewConverter &) override
Definition
kis_tool_select_similar.h:28
KisToolSelectSimilar::m_referencePaintDevice
KisPaintDeviceSP m_referencePaintDevice
Definition
kis_tool_select_similar.h:47
KisToolSelectSimilar::endPrimaryAction
void endPrimaryAction(KoPointerEvent *event) override
Definition
kis_tool_select_similar.cc:200
KisToolSelectSimilar::resetCursorStyle
void resetCursorStyle() override
Definition
kis_tool_select_similar.cc:289
KisToolSelectSimilar::slotSetThreshold
void slotSetThreshold(int)
Definition
kis_tool_select_similar.cc:210
KisToolSelectSimilar::m_opacitySpread
int m_opacitySpread
Definition
kis_tool_select_similar.h:45
KoCanvasBase
Definition
KoCanvasBase.cpp:24
KoPointerEvent
Definition
KoPointerEvent.cpp:92
KoToolBase
Definition
KoToolBase.h:57
KoToolFactoryBase::setSection
void setSection(const QString §ion)
Definition
KoToolFactoryBase.cpp:178
KoToolFactoryBase::setActivationShapeId
void setActivationShapeId(const QString &activationShapeId)
Definition
KoToolFactoryBase.cpp:168
KoToolFactoryBase::setIconName
void setIconName(const char *iconName)
Definition
KoToolFactoryBase.cpp:183
KoToolFactoryBase::setToolTip
void setToolTip(const QString &tooltip)
Definition
KoToolFactoryBase.cpp:173
KoToolFactoryBase::setPriority
void setPriority(int newPriority)
Definition
KoToolFactoryBase.cpp:193
KoViewConverter
Definition
KoViewConverter.h:32
QSharedPointer< ReferenceNodeInfoList >
kis_icon.h
koIconNameCStr
#define koIconNameCStr(name)
Definition
kis_icon.h:28
KRITA_TOOL_ACTIVATION_ID
static const QString KRITA_TOOL_ACTIVATION_ID
Definition
kis_tool.h:37
kis_tool_select_base.h
ToolBoxSection::Select
static const QString Select
Tools that select pixels.
Definition
KoToolFactoryBase.h:32
Private::canvas
KisCanvas2 * canvas
Definition
KisFrameDisplayProxy.cpp:22
plugins
tools
selectiontools
kis_tool_select_similar.h
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52