File indexing completed on 2024-06-02 03:51:01
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2012 Mohammed Nafees <nafees.technocool@gmail.com> 0004 // 0005 0006 #include "KmlDisplayModeTagHandler.h" 0007 0008 #include "MarbleDebug.h" 0009 0010 #include "KmlElementDictionary.h" 0011 #include "GeoDataBalloonStyle.h" 0012 #include "GeoDataParser.h" 0013 0014 namespace Marble 0015 { 0016 namespace kml 0017 { 0018 KML_DEFINE_TAG_HANDLER( displayMode ) 0019 0020 GeoNode* KmldisplayModeTagHandler::parse( GeoParser& parser ) const 0021 { 0022 Q_ASSERT(parser.isStartElement() && parser.isValidElement(QLatin1String(kmlTag_displayMode))); 0023 0024 GeoStackItem parentItem = parser.parentElement(); 0025 0026 if ( parentItem.represents( kmlTag_BalloonStyle ) ) 0027 { 0028 QString mode = parser.readElementText().trimmed(); 0029 GeoDataBalloonStyle::DisplayMode displayMode = GeoDataBalloonStyle::Default; 0030 if (mode == QLatin1String("default")) { 0031 displayMode = GeoDataBalloonStyle::Default; 0032 } else if (mode == QLatin1String("hide")) { 0033 displayMode = GeoDataBalloonStyle::Hide; 0034 } 0035 0036 parentItem.nodeAs<GeoDataBalloonStyle>()->setDisplayMode( displayMode ); 0037 } 0038 return nullptr; 0039 } 0040 0041 } 0042 }