Marble

GeoDataStyleSelector.h
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 //
3 // SPDX-FileCopyrightText: 2007 Murad Tagirov <[email protected]>
4 // SPDX-FileCopyrightText: 2007 Inge Wallin <[email protected]>
5 //
6 
7 
8 #ifndef MARBLE_GEODATASTYLESELECTOR_H
9 #define MARBLE_GEODATASTYLESELECTOR_H
10 
11 #include "GeoDataObject.h"
12 
13 #include "geodata_export.h"
14 
15 namespace Marble
16 {
17 
18 class GeoDataStyleSelectorPrivate;
19 
20 /**
21  * @short an abstract base class for the style classes
22  *
23  * A GeoDataStyleSelector is a base class for the style classes Style
24  * and StyleMap classes. The StyleMap class selects a style based on
25  * the current mode of a Placemark (highlighted or normal). An element
26  * derived from StyleSelector is uniquely identified by its id and its
27  * url.
28  *
29  * @sa GeoDataStyle
30  * @sa GeoDataStyleMap
31  */
32 class GEODATA_EXPORT GeoDataStyleSelector : public GeoDataObject
33 {
34  public:
35  ~GeoDataStyleSelector() override;
36 
37  /**
38  * @brief assignment operator
39  */
40  GeoDataStyleSelector& operator=( const GeoDataStyleSelector& other );
41 
42  bool operator==( const GeoDataStyleSelector &other ) const;
43  bool operator!=( const GeoDataStyleSelector &other ) const;
44 
45  /**
46  * @brief Serialize the styleselector to a stream
47  * @param stream the stream
48  */
49  void pack( QDataStream& stream ) const override;
50 
51  /**
52  * @brief Unserialize the styleselector from a stream
53  * @param stream the stream
54  */
55  void unpack( QDataStream& stream ) override;
56 
57  protected:
60 
61  private:
62  GeoDataStyleSelectorPrivate * const d;
63 };
64 
65 }
66 
67 #endif
A base class for all geodata objects.
Definition: GeoDataObject.h:43
Binds a QML item to a specific geodetic location in screen coordinates.
an abstract base class for the style classes
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Mon Aug 15 2022 03:59:03 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.