KWeatherCore

types.h
1/*
2 SPDX-FileCopyrightText: 2025 Volker Krause <vkrause@kde.org>
3 SPDX-License-Identifier: LGPL-2.0-or-later
4*/
5
6#ifndef KWEATHERCORE_QML_TYPES_H
7#define KWEATHERCORE_QML_TYPES_H
8
9#include <KWeatherCore/CAPAlertInfo>
10#include <KWeatherCore/CAPAlertMessage>
11#include <KWeatherCore/CAPArea>
12#include <KWeatherCore/CAPReference>
13
14#include <QQmlEngine>
15
16#define FOREIGN_VALUE_TYPE(Class, Name) \
17struct Class ## Foreign { \
18 Q_GADGET \
19 QML_FOREIGN(KWeatherCore::Class) \
20 QML_VALUE_TYPE(Name) \
21};
22
23#define FOREIGN_ENUM_GADGET(Class) \
24class Class ## Derived: public KWeatherCore::Class \
25{ \
26 Q_GADGET \
27}; \
28namespace Class ## DerivedForeign \
29{ \
30 Q_NAMESPACE \
31 QML_NAMED_ELEMENT(Class) \
32 QML_FOREIGN_NAMESPACE(Class ## Derived) \
33} \
34
35
36FOREIGN_VALUE_TYPE(CAPAlertInfo, capAlertInfo)
37FOREIGN_ENUM_GADGET(CAPAlertInfo)
38FOREIGN_VALUE_TYPE(CAPAlertMessage, capAlertMessage)
39FOREIGN_ENUM_GADGET(CAPAlertMessage)
40FOREIGN_VALUE_TYPE(CAPArea, capArea)
41FOREIGN_VALUE_TYPE(CAPCircle, capCircle)
42FOREIGN_VALUE_TYPE(CAPNamedValue, capNamedValue)
43FOREIGN_VALUE_TYPE(CAPReference, capReference)
44
45#endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Feb 21 2025 11:46:59 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.