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

0001 /*
0002  *  SPDX-FileCopyrightText: 2012 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KIS_TRANSACTION_BASED_COMMAND_H
0008 #define KIS_TRANSACTION_BASED_COMMAND_H
0009 
0010 #include <kritaimage_export.h>
0011 #include <kundo2command.h>
0012 
0013 class KRITAIMAGE_EXPORT KisTransactionBasedCommand : public KUndo2Command
0014 {
0015 public:
0016     KisTransactionBasedCommand(const KUndo2MagicString &text = KUndo2MagicString(), KUndo2Command *parent = 0);
0017 
0018     ~KisTransactionBasedCommand() override;
0019 
0020     void redo() override;
0021     void undo() override;
0022 
0023 protected:
0024     virtual KUndo2Command* paint() = 0;
0025 private:
0026     KUndo2Command *m_transactionData;
0027 };
0028 #endif // KIS_TRANSACTION_BASED_COMMAND_H