File indexing completed on 2024-05-05 03:50:56
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2009 Bastian Holst <bastianholst@gmx.de> 0004 // 0005 0006 #ifndef GEONAMESPARSER_H 0007 #define GEONAMESPARSER_H 0008 0009 #include <QList> 0010 #include <QXmlStreamReader> 0011 0012 class QByteArray; 0013 class QObject; 0014 0015 namespace Marble 0016 { 0017 0018 class MarbleWidget; 0019 class WikipediaItem; 0020 0021 class GeonamesParser : public QXmlStreamReader 0022 { 0023 public: 0024 GeonamesParser( MarbleWidget* widget, 0025 QList<WikipediaItem *> *list, 0026 QObject *parent ); 0027 0028 bool read( const QByteArray& data ); 0029 0030 private: 0031 void readUnknownElement(); 0032 void readGeonames(); 0033 void readEntry(); 0034 void readTitle( WikipediaItem *item ); 0035 void readLongitude( WikipediaItem *item ); 0036 void readLatitude( WikipediaItem *item ); 0037 void readUrl( WikipediaItem *item ); 0038 void readSummary( WikipediaItem *item ); 0039 void readThumbnailImage( WikipediaItem *item ); 0040 void readRank( WikipediaItem *item ); 0041 0042 MarbleWidget* m_marbleWidget; 0043 QList<WikipediaItem *> *m_list; 0044 QObject *m_parent; 0045 }; 0046 0047 } // Marble namespace 0048 0049 #endif // FLICKRPARSER