Marble

GeoSceneDocument.h
1/*
2 SPDX-FileCopyrightText: 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 SPDX-FileCopyrightText: 2007 Murad Tagirov <tmurad@gmail.com>
4
5 SPDX-License-Identifier: LGPL-2.0-or-later
6*/
7
8#ifndef MARBLE_GEOSCENEDOCUMENT_H
9#define MARBLE_GEOSCENEDOCUMENT_H
10
11#include "GeoDocument.h"
12#include <QObject>
13
14#include <geodata_export.h>
15
16namespace Marble
17{
18
19class GeoSceneHead;
20class GeoSceneLegend;
21class GeoSceneMap;
22class GeoSceneSettings;
23
24class GeoSceneDocumentPrivate;
25
26/**
27 * @short A container for features parsed from the DGML file.
28 */
29class GEODATA_EXPORT GeoSceneDocument : public QObject, public GeoDocument, public GeoNode
30{
31 Q_OBJECT
32
33public:
35 ~GeoSceneDocument() override;
36
37 const char *nodeType() const override;
38
39 bool isGeoSceneDocument() const override
40 {
41 return true;
42 }
43
44 const GeoSceneHead *head() const;
45 GeoSceneHead *head();
46
47 const GeoSceneMap *map() const;
48 GeoSceneMap *map();
49
50 const GeoSceneSettings *settings() const;
51 GeoSceneSettings *settings();
52
53 const GeoSceneLegend *legend() const;
54 GeoSceneLegend *legend();
55
56Q_SIGNALS:
57 void valueChanged(const QString &, bool);
58
59private:
60 Q_DISABLE_COPY(GeoSceneDocument)
61 GeoSceneDocumentPrivate *const d;
62};
63
64}
65
66#endif
A shared base class between GeoDataDocument/GeoSourceDocument.
Definition GeoDocument.h:20
A shared base class for all classes that are mapped to a specific tag (ie.
Definition GeoDocument.h:35
A container for features parsed from the DGML file.
General properties and identifiers of a GeoScene document.
Legend of a GeoScene document.
Map layer structure of a GeoScene document.
Definition GeoSceneMap.h:32
Settings of a GeoScene document.
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.