File indexing completed on 2025-01-05 03:58:58
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2012 Dennis Nienhüser <nienhueser@kde.org> 0004 // 0005 0006 0007 #ifndef MARBLE_GEODATAOVERLAY_H 0008 #define MARBLE_GEODATAOVERLAY_H 0009 0010 #include "digikam_export.h" 0011 #include "GeoDataFeature.h" 0012 0013 class QColor; 0014 class QImage; 0015 0016 namespace Marble 0017 { 0018 0019 class GeoDataOverlayPrivate; 0020 0021 /** 0022 */ 0023 class DIGIKAM_EXPORT GeoDataOverlay: public GeoDataFeature 0024 { 0025 public: 0026 /** Constructor */ 0027 GeoDataOverlay(); 0028 0029 ~GeoDataOverlay() override; 0030 0031 GeoDataOverlay( const GeoDataOverlay &other ); 0032 0033 GeoDataOverlay& operator=( const GeoDataOverlay &other ); 0034 0035 QColor color() const; 0036 0037 void setColor( const QColor &color ); 0038 0039 int drawOrder() const; 0040 0041 void setDrawOrder( int order ); 0042 0043 QImage icon() const; 0044 0045 void setIcon( const QImage &icon ); 0046 0047 void setIconFile( const QString &path ); 0048 0049 QString iconFile() const; 0050 0051 /** 0052 * Returns the #iconFile as an absolute filename. Relative files are 0053 * resolved relative to the directory of the GeoDataDocument this overlay 0054 * is part of (@see fileName of GeoDataDocument) 0055 */ 0056 QString absoluteIconFile() const; 0057 0058 protected: 0059 explicit GeoDataOverlay(GeoDataOverlayPrivate *priv); 0060 GeoDataOverlay(const GeoDataOverlay& other, GeoDataOverlayPrivate *priv); 0061 0062 bool equals(const GeoDataOverlay &other) const; 0063 using GeoDataFeature::equals; 0064 0065 private: 0066 Q_DECLARE_PRIVATE(GeoDataOverlay) 0067 }; 0068 0069 } 0070 0071 #endif