Marble

MapWizard.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2011 Utku Aydın <[email protected]>
9 //
10 
11 #ifndef MARBLE_MAPWIZARD_H
12 #define MARBLE_MAPWIZARD_H
13 
14 #include <QWizard>
15 
16 #include "marble_export.h"
17 
24 class QNetworkReply;
25 
26 namespace Marble {
27 
28 class GeoSceneDocument;
29 
30 class MapWizardPrivate;
31 
32 class MARBLE_EXPORT MapWizard : public QWizard
33 {
34  Q_OBJECT
35 
36 public:
37  explicit MapWizard(QWidget *parent = nullptr);
38  ~MapWizard() override;
39 
40  QStringList wmsServers() const;
41  void setWmsServers( const QStringList& uris );
42 
43  QStringList staticUrlServers() const;
44  void setStaticUrlServers( const QStringList& uris );
45 
46  static QString createArchive( QWidget *parent, const QString& mapId );
47  static void deleteArchive( const QString& mapId );
48 
49  // QWizard's functions
50  void accept() override;
51  bool validateCurrentPage() override;
52  int nextId() const override;
53 
54 public Q_SLOTS:
55  // WMS protocol
56  void queryServerCapabilities();
57  void parseServerCapabilities( QNetworkReply* reply );
58  void createWmsLegend( QNetworkReply* reply );
59 
60  // Open file dialogs
61  void querySourceImage();
62  void queryPreviewImage();
63  void queryLegendImage();
64 
65  // Other
66  void autoFillDetails();
67  void downloadLevelZero();
68  void createLevelZero( QNetworkReply* reply = nullptr );
69  void showPreview();
70 
71 private:
72  Q_PRIVATE_SLOT( d, void pageEntered( int ) )
73 
74  GeoSceneDocument* createDocument();
75  bool createFiles( const GeoSceneDocument* head );
76  static QString createLegendHtml( const QString& image = QLatin1String("./legend/legend.png") );
77  void createLegendFile( const QString& legendHtml );
78  void createLegend();
79  void downloadLegend( const QString& url );
80 
81  Q_DISABLE_COPY( MapWizard )
82  MapWizardPrivate * const d;
83 };
84 
85 }
86 
87 #endif
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Aug 10 2020 23:24:44 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.