Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_default_bounds.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2010 Boudewijn Rempt <boud@valdyas.org>
3 * SPDX-FileCopyrightText: 2010 Dmitry Kazakov <dimula73@gmail.com>
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7#ifndef KIS_DEFAULT_BOUNDS_H
8#define KIS_DEFAULT_BOUNDS_H
9
10#include <QRect>
11#include "kis_types.h"
13
22
23class KRITAIMAGE_EXPORT KisDefaultBounds : public KisDefaultBoundsBase
24{
25public:
28 ~KisDefaultBounds() override;
29
30 QRect bounds() const override;
31 bool wrapAroundMode() const override;
32 WrapAroundAxis wrapAroundModeAxis() const override;
33 int currentLevelOfDetail() const override;
34 int currentTime() const override;
35 bool externalFrameActive() const override;
36 void * sourceCookie() const override;
37
38protected:
39 friend class KisPaintDeviceTest;
40 static const QRect infiniteRect;
41
42private:
43 Q_DISABLE_COPY(KisDefaultBounds)
44
45 struct Private;
46 Private * const m_d;
47};
48
49class KRITAIMAGE_EXPORT KisSelectionDefaultBounds : public KisDefaultBoundsBase
50{
51public:
54
55 QRect bounds() const override;
56 QRect imageBorderRect() const override;
57 bool wrapAroundMode() const override;
58 WrapAroundAxis wrapAroundModeAxis() const override;
59 int currentLevelOfDetail() const override;
60 int currentTime() const override;
61 bool externalFrameActive() const override;
62 void * sourceCookie() const override;
63
64private:
65 Q_DISABLE_COPY(KisSelectionDefaultBounds)
66
67 struct Private;
68 Private * const m_d;
69};
70
71class KRITAIMAGE_EXPORT KisSelectionEmptyBounds : public KisDefaultBounds
72{
73public:
76 ~KisSelectionEmptyBounds() override;
77 QRect bounds() const override;
78};
79
85class KRITAIMAGE_EXPORT KisWrapAroundBoundsWrapper : public KisDefaultBoundsBase
86{
87public:
90
91 QRect bounds() const override;
92 bool wrapAroundMode() const override;
93 WrapAroundAxis wrapAroundModeAxis() const override;
94 int currentLevelOfDetail() const override;
95 int currentTime() const override;
96 bool externalFrameActive() const override;
97 void * sourceCookie() const override;
98
99protected:
100 friend class KisPaintDeviceTest;
101
102private:
103 Q_DISABLE_COPY(KisWrapAroundBoundsWrapper)
104
105 struct Private;
106 const QScopedPointer<Private> m_d;
107};
108
109#endif // KIS_DEFAULT_BOUNDS_H
WrapAroundAxis
virtual bool externalFrameActive() const =0
virtual WrapAroundAxis wrapAroundModeAxis() const =0
virtual int currentLevelOfDetail() const =0
virtual bool wrapAroundMode() const =0
virtual void * sourceCookie() const =0
virtual QRect imageBorderRect() const
virtual int currentTime() const =0
virtual QRect bounds() const =0
#define bounds(x, a, b)
KisSharedPtr< KisSelectionDefaultBounds > KisSelectionDefaultBoundsSP
KisSharedPtr< KisDefaultBounds > KisDefaultBoundsSP
KisSharedPtr< KisWrapAroundBoundsWrapper > KisWrapAroundBoundsWrapperSP
KisSharedPtr< KisSelectionEmptyBounds > KisSelectionEmptyBoundsSP
static const QRect infiniteRect
The KisWrapAroundBoundsWrapper class wrapper around a KisDefaultBoundsBaseSP to enable wraparound....
QRect bounds() const override
const QScopedPointer< Private > m_d