Marble

KmlGridOriginTagHandler.cpp
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 //
3 // SPDX-FileCopyrightText: 2013 Mohammed Nafees <[email protected]>
4 //
5 
6 #include "KmlGridOriginTagHandler.h"
7 
8 #include "KmlElementDictionary.h"
9 #include "GeoDataImagePyramid.h"
10 #include "GeoDataParser.h"
11 
12 namespace Marble
13 {
14 namespace kml
15 {
16 KML_DEFINE_TAG_HANDLER( gridOrigin )
17 
18 GeoNode* KmlgridOriginTagHandler::parse( GeoParser& parser ) const
19 {
20  Q_ASSERT(parser.isStartElement() && parser.isValidElement(QLatin1String(kmlTag_gridOrigin)));
21 
22  GeoStackItem parentItem = parser.parentElement();
23 
24  if (parentItem.represents( kmlTag_ImagePyramid ))
25  {
26  GeoDataImagePyramid::GridOrigin gridOrigin = GeoDataImagePyramid::UpperLeft;
27  QString gridOriginText = parser.readElementText();
28 
29  if (gridOriginText == QLatin1String("lowerLeft")) {
30  gridOrigin = GeoDataImagePyramid::LowerLeft;
31  } else if (gridOriginText == QLatin1String("upperLeft")) {
32  gridOrigin = GeoDataImagePyramid::UpperLeft;
33  }
34 
35  parentItem.nodeAs<GeoDataImagePyramid>()->setGridOrigin( gridOrigin );
36  }
37  return nullptr;
38 }
39 
40 }
41 }
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Oct 2 2023 03:52:08 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.