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 <utkuaydin34@gmail.com>
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 <utkuaydin34@gmail.com>
17 */
18
19class QNetworkReply;
20
21namespace Marble
22{
23
24class GeoSceneDocument;
25
26class MapWizardPrivate;
27
28class MARBLE_EXPORT MapWizard : public QWizard
29{
30 Q_OBJECT
31
32public:
33 explicit MapWizard(QWidget *parent = nullptr);
34 ~MapWizard() override;
35
36 QStringList wmsServers() const;
37 void setWmsServers(const QStringList &uris);
38
39 QStringList wmtsServers() const;
40 void setWmtsServers(const QStringList &uris);
41
42 QStringList staticUrlServers() const;
43 void setStaticUrlServers(const QStringList &uris);
44
45 static QString createArchive(QWidget *parent, const QString &mapId);
46 static void deleteArchive(const QString &mapId);
47
48 // QWizard's functions
49 void accept() override;
50 bool validateCurrentPage() override;
51 int nextId() const override;
52 void cleanupPage(int id) override;
53
54public Q_SLOTS:
55 // WMS protocol
56 void processCapabilitiesResults();
57 void processSelectedLayerInformation();
58 void processImageResults();
59
60 void createWmsLegend();
61
62 // Open file dialogs
63 void querySourceImage();
64 void queryPreviewImage();
65 void queryLegendImage();
66
67 // Other
68 void setLineEditWms(const QString &text);
69 void setLayerButtonsVisible(bool visible);
70 void setSearchFieldVisible(bool visible);
71 void showPreview();
72
73 void updateSearchFilter(const QString &text);
74 void updateListViewSelection();
75 void updateBackdropCheckBox();
76 void updateOwsServiceType();
77 void chooseBackgroundColor();
78
79private:
80 Q_PRIVATE_SLOT(d, void pageEntered(int))
81
82 GeoSceneDocument *createDocument();
83 bool createFiles(const GeoSceneDocument *head);
84 static QString createLegendHtml(const QString &image = QLatin1String("./legend/legend.png"));
85 void createLegendFile(const QString &legendHtml);
86 void createLegend();
87 void downloadLegend(const QString &url);
88
89 Q_DISABLE_COPY(MapWizard)
90 MapWizardPrivate *const d;
91};
92
93}
94
95#endif
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:15:45 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.