Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qquickscalegrid_p_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QQUICKSCALEGRID_P_P_H
6#define QQUICKSCALEGRID_P_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
20
21#include <QtQml/qqml.h>
22#include <QtCore/qobject.h>
23
24#include <QtQuick/private/qquickpixmap_p.h>
25#include <private/qtquickglobal_p.h>
26
28
29class Q_QUICK_EXPORT QQuickScaleGrid : public QObject
30{
31 Q_OBJECT
32
33 Q_PROPERTY(int left READ left WRITE setLeft NOTIFY leftBorderChanged FINAL)
34 Q_PROPERTY(int top READ top WRITE setTop NOTIFY topBorderChanged FINAL)
35 Q_PROPERTY(int right READ right WRITE setRight NOTIFY rightBorderChanged FINAL)
36 Q_PROPERTY(int bottom READ bottom WRITE setBottom NOTIFY bottomBorderChanged FINAL)
37 QML_ANONYMOUS
38 QML_ADDED_IN_VERSION(2, 0)
39
40public:
41 QQuickScaleGrid(QObject *parent=nullptr);
42
43 bool isNull() const;
44
45 int left() const { return _left; }
46 void setLeft(int);
47
48 int top() const { return _top; }
49 void setTop(int);
50
51 int right() const { return _right; }
52 void setRight(int);
53
54 int bottom() const { return _bottom; }
55 void setBottom(int);
56
57Q_SIGNALS:
58 void borderChanged();
59 void leftBorderChanged();
60 void topBorderChanged();
61 void rightBorderChanged();
62 void bottomBorderChanged();
63
64private:
65 int _left;
66 int _top;
67 int _right;
68 int _bottom;
69};
70
71class Q_AUTOTEST_EXPORT QQuickGridScaledImage
72{
73public:
74 QQuickGridScaledImage();
75 QQuickGridScaledImage(const QQuickGridScaledImage &);
76 QQuickGridScaledImage(QIODevice*);
77 QQuickGridScaledImage &operator=(const QQuickGridScaledImage &);
78 bool isValid() const;
79 int gridLeft() const;
80 int gridRight() const;
81 int gridTop() const;
82 int gridBottom() const;
83 QQuickBorderImage::TileMode horizontalTileRule() const { return _h; }
84 QQuickBorderImage::TileMode verticalTileRule() const { return _v; }
85
86 QString pixmapUrl() const;
87
88private:
89 static QQuickBorderImage::TileMode stringToRule(QStringView);
90
91private:
92 int _l;
93 int _r;
94 int _t;
95 int _b;
96 QQuickBorderImage::TileMode _h;
97 QQuickBorderImage::TileMode _v;
98 QString _pix;
99};
100
101QT_END_NAMESPACE
102
103#endif // QQUICKSCALEGRID_P_P_H
The QQuickScaleGrid class allows you to specify a 3x3 grid to use in scaling an image.