File indexing completed on 2024-05-12 15:58:13

0001 /*
0002  *  SPDX-FileCopyrightText: 2015 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef __KIS_CROP_SAVED_EXTRA_DATA_H
0008 #define __KIS_CROP_SAVED_EXTRA_DATA_H
0009 
0010 #include <QRect>
0011 
0012 #include "kundo2commandextradata.h"
0013 #include "kis_types.h"
0014 #include "kritaimage_export.h"
0015 
0016 
0017 class KRITAIMAGE_EXPORT KisCropSavedExtraData : public KUndo2CommandExtraData
0018 {
0019 public:
0020     enum Type {
0021         CROP_IMAGE,
0022         RESIZE_IMAGE,
0023         CROP_LAYER
0024     };
0025 
0026 public:
0027 
0028     KisCropSavedExtraData(Type type, QRect cropRect, KisNodeSP cropNode = 0);
0029     ~KisCropSavedExtraData() override;
0030 
0031     inline Type type() const {
0032         return m_type;
0033     }
0034 
0035     inline QRect cropRect() const {
0036         return m_cropRect;
0037     }
0038 
0039     inline KisNodeSP cropNode() const {
0040         return m_cropNode;
0041     }
0042 
0043     KUndo2CommandExtraData* clone() const override {
0044         return new KisCropSavedExtraData(*this);
0045     }
0046 
0047 private:
0048     Type m_type;
0049     QRect m_cropRect;
0050     KisNodeSP m_cropNode;
0051 };
0052 
0053 #endif /* __KIS_CROP_SAVED_EXTRA_DATA_H */