Marble

GeoSceneDocument.h
1 /*
2  SPDX-FileCopyrightText: 2007 Nikolas Zimmermann <[email protected]>
3  SPDX-FileCopyrightText: 2007 Murad Tagirov <[email protected]>
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 <QObject>
12 #include "GeoDocument.h"
13 
14 #include <geodata_export.h>
15 
16 namespace Marble
17 {
18 
19 class GeoSceneHead;
20 class GeoSceneLegend;
21 class GeoSceneMap;
22 class GeoSceneSettings;
23 
24 class GeoSceneDocumentPrivate;
25 
26 /**
27  * @short A container for features parsed from the DGML file.
28  */
29 class GEODATA_EXPORT GeoSceneDocument : public QObject,
30  public GeoDocument,
31  public GeoNode
32 {
33  Q_OBJECT
34 
35  public:
37  ~GeoSceneDocument() override;
38 
39  const char* nodeType() const override;
40 
41  bool isGeoSceneDocument() const override { return true; }
42 
43  const GeoSceneHead* head() const;
44  GeoSceneHead* head();
45 
46  const GeoSceneMap* map() const;
47  GeoSceneMap* map();
48 
49  const GeoSceneSettings* settings() const;
50  GeoSceneSettings* settings();
51 
52  const GeoSceneLegend* legend() const;
53  GeoSceneLegend* legend();
54 
55  Q_SIGNALS:
56  void valueChanged( const QString&, bool );
57 
58  private:
59  Q_DISABLE_COPY( GeoSceneDocument )
60  GeoSceneDocumentPrivate * const d;
61 };
62 
63 }
64 
65 #endif
A shared base class between GeoDataDocument/GeoSourceDocument.
Definition: GeoDocument.h:19
General properties and identifiers of a GeoScene document.
Definition: GeoSceneHead.h:30
Legend of a GeoScene document.
A shared base class for all classes that are mapped to a specific tag (ie.
Definition: GeoDocument.h:34
Binds a QML item to a specific geodetic location in screen coordinates.
Settings of a GeoScene document.
A container for features parsed from the DGML file.
Map layer structure of a GeoScene document.
Definition: GeoSceneMap.h:30
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Fri Jul 1 2022 05:33:23 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.