Marble
6#include "KmlListItemTypeTagHandler.h"
8#include "MarbleDebug.h"
10#include "GeoDataListStyle.h"
11#include "GeoDataParser.h"
12#include "KmlElementDictionary.h"
18KML_DEFINE_TAG_HANDLER(listItemType)
20GeoNode *KmllistItemTypeTagHandler::parse(GeoParser &parser)
const
22 Q_ASSERT(parser.isStartElement() && parser.isValidElement(QLatin1StringView(kmlTag_listItemType)));
24 GeoStackItem parentItem = parser.parentElement();
26 if (parentItem.represents(kmlTag_ListStyle)) {
27 QString typeText = parser.readElementText().trimmed();
28 GeoDataListStyle::ListItemType
type = GeoDataListStyle::Check;
29 if (typeText == QLatin1StringView(
"check")) {
30 type = GeoDataListStyle::Check;
31 }
else if (typeText == QLatin1StringView(
"radioFolder")) {
32 type = GeoDataListStyle::RadioFolder;
33 }
else if (typeText == QLatin1StringView(
"checkOffOnly")) {
34 type = GeoDataListStyle::CheckOffOnly;
35 }
else if (typeText == QLatin1StringView(
"checkHideChildren")) {
36 type = GeoDataListStyle::CheckHideChildren;
38 mDebug() <<
"listItemType value is invalid"
39 <<
"falling back to default - check";
41 parentItem.nodeAs<GeoDataListStyle>()->setListItemType(type);
Type type(const QSqlDatabase &db)
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 12:01:32 by
doxygen 1.13.2 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.