Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_take_all_shapes_command.cpp
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2013 Dmitry Kazakov <dimula73@gmail.com>
3
*
4
* SPDX-License-Identifier: GPL-2.0-or-later
5
*/
6
7
#include "
kis_take_all_shapes_command.h
"
8
9
#include <klocalizedstring.h>
10
#include "
kis_shape_selection.h
"
11
#include <
kis_image.h
>
12
13
14
KisTakeAllShapesCommand::KisTakeAllShapesCommand
(
KisShapeSelection
*shapeSelection,
bool
takeSilently,
bool
restoreSilently)
15
:
KUndo2Command
(
kundo2_i18n
(
"Clear Vector Selection"
)),
16
m_shapeSelection(shapeSelection),
17
m_takeSilently(takeSilently),
18
m_restoreSilently(restoreSilently)
19
{
20
}
21
22
KisTakeAllShapesCommand::~KisTakeAllShapesCommand
()
23
{
24
Q_FOREACH (
KoShape
*shape,
m_shapes
) {
25
delete
shape;
26
}
27
}
28
29
void
KisTakeAllShapesCommand::redo
()
30
{
31
if
(
m_takeSilently
) {
32
m_shapeSelection
->
setUpdatesEnabled
(
false
);
33
}
34
35
m_shapes
=
m_shapeSelection
->
shapes
();
36
37
Q_FOREACH (
KoShape
*shape,
m_shapes
) {
38
m_shapeSelection
->
removeShape
(shape);
39
}
40
41
if
(
m_takeSilently
) {
42
m_shapeSelection
->
setUpdatesEnabled
(
true
);
43
}
44
}
45
46
void
KisTakeAllShapesCommand::undo
()
47
{
48
if
(
m_restoreSilently
) {
49
m_shapeSelection
->
setUpdatesEnabled
(
false
);
50
}
51
52
Q_FOREACH (
KoShape
*shape,
m_shapes
) {
53
m_shapeSelection
->
addShape
(shape);
54
}
55
56
m_shapes
.clear();
57
58
if
(
m_restoreSilently
) {
59
m_shapeSelection
->
setUpdatesEnabled
(
true
);
60
}
61
}
62
KUndo2Command
Definition
kundo2stack.h:87
KisShapeSelection
Definition
kis_shape_selection.h:43
KisShapeSelection::setUpdatesEnabled
void setUpdatesEnabled(bool enabled)
Definition
kis_shape_selection.cpp:154
KisTakeAllShapesCommand::undo
void undo() override
Definition
kis_take_all_shapes_command.cpp:46
KisTakeAllShapesCommand::~KisTakeAllShapesCommand
~KisTakeAllShapesCommand() override
Definition
kis_take_all_shapes_command.cpp:22
KisTakeAllShapesCommand::m_restoreSilently
bool m_restoreSilently
Definition
kis_take_all_shapes_command.h:36
KisTakeAllShapesCommand::m_takeSilently
bool m_takeSilently
Definition
kis_take_all_shapes_command.h:35
KisTakeAllShapesCommand::KisTakeAllShapesCommand
KisTakeAllShapesCommand(KisShapeSelection *shapeSelection, bool takeSilently, bool restoreSilently)
Definition
kis_take_all_shapes_command.cpp:14
KisTakeAllShapesCommand::redo
void redo() override
Definition
kis_take_all_shapes_command.cpp:29
KisTakeAllShapesCommand::m_shapeSelection
KisShapeSelection * m_shapeSelection
Definition
kis_take_all_shapes_command.h:33
KisTakeAllShapesCommand::m_shapes
QList< KoShape * > m_shapes
Definition
kis_take_all_shapes_command.h:34
KoShapeContainer::removeShape
void removeShape(KoShape *shape)
Definition
KoShapeContainer.cpp:63
KoShapeContainer::shapes
QList< KoShape * > shapes() const
Definition
KoShapeContainer.cpp:136
KoShapeContainer::addShape
void addShape(KoShape *shape)
Definition
KoShapeContainer.cpp:58
KoShape
Definition
KoShape.h:92
kis_image.h
kis_shape_selection.h
kis_take_all_shapes_command.h
kundo2_i18n
KUndo2MagicString kundo2_i18n(const char *text)
Definition
kundo2magicstring.h:180
libs
ui
flake
kis_take_all_shapes_command.cpp
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52