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

0001 /*
0002  *  SPDX-FileCopyrightText: 2020 eoinoneill 1991@gmail.com <eoinoneill1991@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #ifndef KIS_DEFAULT_BOUNDS_NODE_WRAPPER_H
0007 #define KIS_DEFAULT_BOUNDS_NODE_WRAPPER_H
0008 
0009 #include "kis_default_bounds_base.h"
0010 #include "kis_node.h"
0011 #include "kritaimage_export.h"
0012 
0013 class KisDefaultBoundsNodeWrapper;
0014 typedef KisSharedPtr<KisDefaultBoundsNodeWrapper> KisDefaultBoundsNodeWrapperSP;
0015 
0016 class KRITAIMAGE_EXPORT KisDefaultBoundsNodeWrapper : public KisDefaultBoundsBase {
0017 public:
0018     KisDefaultBoundsNodeWrapper(KisBaseNodeWSP node = 0);
0019     KisDefaultBoundsNodeWrapper(KisDefaultBoundsNodeWrapper& rhs);
0020     ~KisDefaultBoundsNodeWrapper() override;
0021 
0022     QRect bounds() const override;
0023     QRect imageBorderRect() const override;
0024     bool wrapAroundMode() const override;
0025     int currentLevelOfDetail() const override;
0026     int currentTime() const override;
0027     bool externalFrameActive() const override;
0028     void *sourceCookie() const override;
0029 
0030     static const QRect infiniteRect;
0031 
0032 private:
0033     struct Private;
0034     Private* m_d;
0035 };
0036 
0037 #endif // KIS_DEFAULT_BOUNDS_NODE_WRAPPER_H