Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_mirror_processing_visitor.h
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#ifndef __KIS_MIRROR_PROCESSING_VISITOR_H
8#define __KIS_MIRROR_PROCESSING_VISITOR_H
9
11#include <QRect>
12#include "kis_types.h"
13
15
16
18{
19public:
20 KisMirrorProcessingVisitor(const QRect &bounds, Qt::Orientation orientation);
21 KisMirrorProcessingVisitor(KisSelectionSP selection, Qt::Orientation orientation);
22
23private:
24 void visitNodeWithPaintDevice(KisNode *node, KisUndoAdapter *undoAdapter) override;
25 void visitExternalLayer(KisExternalLayer *layer, KisUndoAdapter *undoAdapter) override;
26
27 void visitColorizeMask(KisColorizeMask *node, KisUndoAdapter *undoAdapter) override;
28
30
31 void mirrorDevice(KisPaintDeviceSP device);
32
33private:
34 void transformPaintDevice(KisPaintDeviceSP device, KisUndoAdapter *undoAdapter);
35
36 QRect m_bounds;
37 Qt::Orientation m_orientation;
38 qreal m_axis = 0.0;
39
41};
42
43#endif /* __KIS_MIRROR_PROCESSING_VISITOR_H */
KisSelectionBasedProcessingHelper m_selectionHelper
virtual KUndo2Command * createInitCommand()
virtual void visitExternalLayer(KisExternalLayer *layer, KisUndoAdapter *undoAdapter)=0
virtual void visitNodeWithPaintDevice(KisNode *node, KisUndoAdapter *undoAdapter)=0
virtual void visitColorizeMask(KisColorizeMask *mask, KisUndoAdapter *undoAdapter)=0
#define bounds(x, a, b)