Marble

MapWizard.h
Go to the documentation of this file.
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 //
3 // SPDX-FileCopyrightText: 2011 Utku Aydın <[email protected]>
4 //
5 
6 #ifndef MARBLE_MAPWIZARD_H
7 #define MARBLE_MAPWIZARD_H
8 
9 #include <QWizard>
10 
11 #include "marble_export.h"
12 
13 /**
14  * @file
15  * This file contains the header for MapWizard
16  * @author Utku Aydın <[email protected]>
17  */
18 
19 class QNetworkReply;
20 
21 namespace Marble {
22 
23 class GeoSceneDocument;
24 
25 class MapWizardPrivate;
26 
27 class MARBLE_EXPORT MapWizard : public QWizard
28 {
29  Q_OBJECT
30 
31 public:
32  explicit MapWizard(QWidget *parent = nullptr);
33  ~MapWizard() override;
34 
35  QStringList wmsServers() const;
36  void setWmsServers( const QStringList& uris );
37 
38  QStringList wmtsServers() const;
39  void setWmtsServers( const QStringList& uris );
40 
41  QStringList staticUrlServers() const;
42  void setStaticUrlServers( const QStringList& uris );
43 
44  static QString createArchive( QWidget *parent, const QString& mapId );
45  static void deleteArchive( const QString& mapId );
46 
47  // QWizard's functions
48  void accept() override;
49  bool validateCurrentPage() override;
50  int nextId() const override;
51  void cleanupPage(int id) override;
52 
53 public Q_SLOTS:
54  // WMS protocol
55  void processCapabilitiesResults();
56  void processSelectedLayerInformation();
57  void processImageResults();
58 
59  void createWmsLegend();
60 
61  // Open file dialogs
62  void querySourceImage();
63  void queryPreviewImage();
64  void queryLegendImage();
65 
66  // Other
67  void setLineEditWms(const QString& text);
68  void setLayerButtonsVisible( bool visible );
69  void setSearchFieldVisible( bool visible );
70  void showPreview();
71 
72  void updateSearchFilter(const QString& text);
73  void updateListViewSelection();
74  void updateBackdropCheckBox();
75  void updateOwsServiceType();
76  void chooseBackgroundColor();
77 
78 private:
79  Q_PRIVATE_SLOT( d, void pageEntered( int ) )
80 
81  GeoSceneDocument* createDocument();
82  bool createFiles( const GeoSceneDocument* head );
83  static QString createLegendHtml( const QString& image = QLatin1String("./legend/legend.png") );
84  void createLegendFile( const QString& legendHtml );
85  void createLegend();
86  void downloadLegend( const QString& url );
87 
88  Q_DISABLE_COPY( MapWizard )
89  MapWizardPrivate * const d;
90 };
91 
92 }
93 
94 #endif
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 Thu Sep 21 2023 04:12:27 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.