1// Copyright (C) 2017 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
4#ifndef QQUICKPAGE_P_H
5#define QQUICKPAGE_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtQuickTemplates2/private/qquickpane_p.h>
19#include <QtQml/qqmllist.h>
20
21QT_BEGIN_NAMESPACE
22
23class QQuickPagePrivate;
24
25class Q_QUICKTEMPLATES2_EXPORT QQuickPage : public QQuickPane
26{
27 Q_OBJECT
28 Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged RESET resetTitle FINAL)
29 Q_PROPERTY(QQuickItem *header READ header WRITE setHeader NOTIFY headerChanged FINAL)
30 Q_PROPERTY(QQuickItem *footer READ footer WRITE setFooter NOTIFY footerChanged FINAL)
31 // 2.5 (Qt 5.12)
32 Q_PROPERTY(qreal implicitHeaderWidth READ implicitHeaderWidth NOTIFY implicitHeaderWidthChanged FINAL REVISION(2, 5))
33 Q_PROPERTY(qreal implicitHeaderHeight READ implicitHeaderHeight NOTIFY implicitHeaderHeightChanged FINAL REVISION(2, 5))
34 Q_PROPERTY(qreal implicitFooterWidth READ implicitFooterWidth NOTIFY implicitFooterWidthChanged FINAL REVISION(2, 5))
35 Q_PROPERTY(qreal implicitFooterHeight READ implicitFooterHeight NOTIFY implicitFooterHeightChanged FINAL REVISION(2, 5))
36 QML_NAMED_ELEMENT(Page)
37 QML_ADDED_IN_VERSION(2, 0)
38
39public:
40 explicit QQuickPage(QQuickItem *parent = nullptr);
41 ~QQuickPage();
42
43 QString title() const;
44 void setTitle(const QString &title);
45 void resetTitle();
46
47 QQuickItem *header() const;
48 void setHeader(QQuickItem *header);
49
50 QQuickItem *footer() const;
51 void setFooter(QQuickItem *footer);
52
53 // 2.5 (Qt 5.12)
54 qreal implicitHeaderWidth() const;
55 qreal implicitHeaderHeight() const;
56
57 qreal implicitFooterWidth() const;
58 qreal implicitFooterHeight() const;
59
60Q_SIGNALS:
61 void titleChanged();
62 void headerChanged();
63 void footerChanged();
64 // 2.5 (Qt 5.12)
65 void implicitHeaderWidthChanged();
66 void implicitHeaderHeightChanged();
67 void implicitFooterWidthChanged();
68 void implicitFooterHeightChanged();
69
70protected:
71 QQuickPage(QQuickPagePrivate &dd, QQuickItem *parent);
72
73 void componentComplete() override;
74
75 void spacingChange(qreal newSpacing, qreal oldSpacing) override;
76
77#if QT_CONFIG(accessibility)
78 QAccessible::Role accessibleRole() const override;
79 void accessibilityActiveChanged(bool active) override;
80#endif
81
82private:
83 Q_DISABLE_COPY(QQuickPage)
84 Q_DECLARE_PRIVATE(QQuickPage)
85};
86
87QT_END_NAMESPACE
88
89#endif // QQUICKPAGE_P_H
90

Provided by KDAB

Privacy Policy
Learn to use CMake with our Intro Training
Find out more

source code of qtdeclarative/src/quicktemplates/qquickpage_p.h