Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_image_set_resolution_command.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2010 Sven Langkamp <sven.langkamp@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
8
9#include <klocalizedstring.h>
10#include <kis_image.h>
11
12
14 : KUndo2Command(kundo2_i18n("Set Image Resolution"), parent)
15 , m_image(image)
16 , m_newXRes(newXRes)
17 , m_newYRes(newYRes)
18 , m_oldXRes(0)
19 , m_oldYRes(0)
20{
21 KisImageSP imageSP = image.toStrongRef();
22 if (!imageSP) {
23 return;
24 }
25 m_oldXRes = imageSP->xRes();
26 m_oldYRes = imageSP->yRes();
27}
28
30{
32 if (!image) {
33 return;
34 }
36}
37
39{
41 if (!image) {
42 return;
43 }
45}
46
47
48
50
55#include "kis_filter_mask.h"
56#include "kis_transform_mask.h"
57#include "kis_selection_mask.h"
58
59#include "kis_selection.h"
60
62{
63public:
64 void visit(KisNode*, KisUndoAdapter*) override {}
65 void visit(KisPaintLayer*, KisUndoAdapter*) override {}
66 void visit(KisGroupLayer*, KisUndoAdapter*) override {}
67 void visit(KisCloneLayer*, KisUndoAdapter*) override {}
68
71 void visit(KisExternalLayer *layer, KisUndoAdapter*) override { layer->resetCache(); }
72 void visit(KisFilterMask *mask, KisUndoAdapter*) override { mask->selection()->updateProjection(); }
74 void visit(KisTransparencyMask *mask, KisUndoAdapter*) override { mask->selection()->updateProjection(); }
75 void visit(KisSelectionMask *mask, KisUndoAdapter*) override { mask->selection()->updateProjection(); }
76 void visit(KisColorizeMask *, KisUndoAdapter*) override {}
77};
78
79
81 : KUndo2Command(kundo2_noi18n("RESET_SHAPES_COMMAND")),
82 m_rootNode(rootNode)
83{
84}
85
91
97
99{
101 node->accept(visitor, 0);
102
103 node = node->firstChild();
104 while(node) {
105 resetNode(node);
106 node = node->nextSibling();
107 }
108}
virtual void undo()
virtual void redo()
virtual void resetCache(const KoColorSpace *colorSpace=0)
KisImageSetResolutionCommand(KisImageWSP image, qreal newXRes, qreal newYRes, KUndo2Command *parent=0)
double xRes() const
double yRes() const
void setResolution(double xres, double yres)
KisSharedPtr< T > toStrongRef() const
toStrongRef returns a KisSharedPtr which may be dereferenced.
void visit(KisFilterMask *mask, KisUndoAdapter *) override
void visit(KisCloneLayer *, KisUndoAdapter *) override
void visit(KisTransformMask *mask, KisUndoAdapter *) override
void visit(KisPaintLayer *, KisUndoAdapter *) override
void visit(KisAdjustmentLayer *layer, KisUndoAdapter *) override
void visit(KisSelectionMask *mask, KisUndoAdapter *) override
void visit(KisGroupLayer *, KisUndoAdapter *) override
void visit(KisColorizeMask *, KisUndoAdapter *) override
void visit(KisTransparencyMask *mask, KisUndoAdapter *) override
void visit(KisGeneratorLayer *layer, KisUndoAdapter *) override
void visit(KisExternalLayer *layer, KisUndoAdapter *) override
void visit(KisNode *, KisUndoAdapter *) override
#define KIS_ASSERT_RECOVER_NOOP(cond)
Definition kis_assert.h:97
KUndo2MagicString kundo2_i18n(const char *text)
KUndo2MagicString kundo2_noi18n(const QString &text)
KisSelectionSP selection
Definition kis_mask.cc:44
KisNodeSP firstChild() const
Definition kis_node.cpp:361
bool accept(KisNodeVisitor &v) override
Definition kis_node.cpp:269
KisNodeSP nextSibling() const
Definition kis_node.cpp:408
KisSelectionSP internalSelection() const
void updateProjection(const QRect &rect)