1// Copyright (C) 2016 Research In Motion.
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 QQMLMODELSMODULE_H
5#define QQMLMODELSMODULE_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 <QtQml/qqml.h>
19
20#if QT_CONFIG(itemmodel)
21#include <QtCore/qabstractitemmodel.h>
22#include <QtCore/qitemselectionmodel.h>
23#endif
24
25#include <private/qtqmlmodelsglobal_p.h>
26
27QT_BEGIN_NAMESPACE
28
29#if QT_CONFIG(itemmodel)
30struct QItemSelectionModelForeign
31{
32 Q_GADGET
33 QML_FOREIGN(QItemSelectionModel)
34 QML_NAMED_ELEMENT(ItemSelectionModel)
35 QML_ADDED_IN_VERSION(2, 2)
36};
37
38struct QAbstractItemModelForeign
39{
40 Q_GADGET
41 QML_FOREIGN(QAbstractItemModel)
42 QML_NAMED_ELEMENT(AbstractItemModel)
43 QML_ADDED_IN_VERSION(6, 5)
44 QML_UNCREATABLE("QAbstractItemModel is abstract in C++.")
45};
46
47struct QAbstractListModelForeign
48{
49 Q_GADGET
50 QML_FOREIGN(QAbstractListModel)
51 QML_NAMED_ELEMENT(AbstractListModel)
52 QML_ADDED_IN_VERSION(6, 5)
53 QML_UNCREATABLE("QAbstractListModel is abstract in C++.")
54};
55#endif
56
57QT_END_NAMESPACE
58
59#endif
60

source code of qtdeclarative/src/qmlmodels/qqmlmodelsmodule_p.h