Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_image_layer_add_command.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2002 Patrick Julien <freak@codepimps.org>
3 * SPDX-FileCopyrightText: 2007 Sven Langkamp <sven.langkamp@gmail.com>
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7
8#ifndef KIS_IMAGE_LAYER_ADD_COMMAND_H_
9#define KIS_IMAGE_LAYER_ADD_COMMAND_H_
10
11#include <kritaimage_export.h>
12
13#include "kis_types.h"
14#include "kis_image_command.h"
16
17
19class KRITAIMAGE_EXPORT KisImageLayerAddCommand : public KisImageCommand
20{
21
22public:
23 enum Flag {
24 None = 0x0,
25 DoRedoUpdates = 0x1,
26 DoUndoUpdates = 0x2,
27 DontActivateOnAddition = 0x4,
28 };
29
30 Q_DECLARE_FLAGS(Flags, Flag)
31
32public:
42 KisImageLayerAddCommand(KisImageWSP image, KisNodeSP layer, KisNodeSP parent, KisNodeSP aboveThis, bool doRedoUpdates = true, bool doUndoUpdates = true);
43 KisImageLayerAddCommand(KisImageWSP image, KisNodeSP layer, KisNodeSP parent, quint32 index, bool doRedoUpdates = true, bool doUndoUpdates = true);
44
45 KisImageLayerAddCommand(KisImageWSP image, KisNodeSP layer, KisNodeSP parent, KisNodeSP aboveThis, Flags flags);
46 KisImageLayerAddCommand(KisImageWSP image, KisNodeSP layer, KisNodeSP parent, quint32 index, Flags flags);
47
48 void redo() override;
49 void undo() override;
50
51private:
55 quint32 m_index;
58 KisNodeAdditionFlags m_additionFlags;
59};
60
61Q_DECLARE_OPERATORS_FOR_FLAGS(KisImageLayerAddCommand::Flags)
62
63#endif
Q_DECLARE_FLAGS(KisUpdaterContextSnapshotEx, KisUpdaterContextSnapshotExTag)
virtual void undo()
virtual void redo()
the base command for commands altering a KisImage
The command for adding a layer.
Q_DECLARE_OPERATORS_FOR_FLAGS(KisBaseRectsWalker::SubtreeVisitFlags)