File indexing completed on 2024-06-16 04:12:09

0001 /*
0002  *  SPDX-FileCopyrightText: 2019 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #include "KisChangeChannelFlagsCommand.h"
0008 #include "kis_layer.h"
0009 
0010 #include <klocalizedstring.h>
0011 
0012 KisChangeChannelFlagsCommand::KisChangeChannelFlagsCommand(const QBitArray &newFlags, const QBitArray &oldFlags,
0013                                                            KisLayerSP layer, KUndo2Command *parentCommand)
0014     : KUndo2Command(kundo2_noi18n("change-channel-flags-command"), parentCommand),
0015       m_layer(layer),
0016       m_oldFlags(oldFlags),
0017       m_newFlags(newFlags)
0018 {
0019 }
0020 
0021 KisChangeChannelFlagsCommand::KisChangeChannelFlagsCommand(const QBitArray &newFlags, KisLayerSP layer, KUndo2Command *parentCommand)
0022     : KisChangeChannelFlagsCommand(newFlags, layer->channelFlags(), layer, parentCommand)
0023 {
0024 }
0025 
0026 void KisChangeChannelFlagsCommand::redo()
0027 {
0028     m_layer->setChannelFlags(m_newFlags);
0029 }
0030 
0031 void KisChangeChannelFlagsCommand::undo()
0032 {
0033     m_layer->setChannelFlags(m_oldFlags);
0034 }