File indexing completed on 2024-04-28 03:50:13
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2010-2012 Bernhard Beschow <bbeschow@cs.tu-berlin.de> 0004 // SPDX-FileCopyrightText: 2011 Jens-Michael Hoffmann <jmho@c-xx.com> 0005 // 0006 0007 #ifndef MARBLE_ATMOSPHEREPLUGIN_H 0008 #define MARBLE_ATMOSPHEREPLUGIN_H 0009 0010 #include "RenderPlugin.h" 0011 0012 #include <QPixmap> 0013 0014 namespace Marble 0015 { 0016 0017 class AtmospherePlugin : public RenderPlugin 0018 { 0019 Q_OBJECT 0020 Q_PLUGIN_METADATA(IID "org.kde.marble.AtmospherePlugin") 0021 Q_INTERFACES( Marble::RenderPluginInterface ) 0022 MARBLE_PLUGIN( AtmospherePlugin ) 0023 0024 public: 0025 AtmospherePlugin(); 0026 0027 explicit AtmospherePlugin( const MarbleModel *marbleModel ); 0028 0029 QStringList backendTypes() const override; 0030 0031 QString renderPolicy() const override; 0032 0033 QStringList renderPosition() const override; 0034 0035 RenderType renderType() const override; 0036 0037 QString name() const override; 0038 0039 QString guiString() const override; 0040 0041 QString nameId() const override; 0042 0043 QString version() const override; 0044 0045 QString description() const override; 0046 0047 QIcon icon() const override; 0048 0049 QString copyrightYears() const override; 0050 0051 QVector<PluginAuthor> pluginAuthors() const override; 0052 0053 qreal zValue() const override; 0054 0055 void initialize() override; 0056 0057 bool isInitialized() const override; 0058 0059 bool render( GeoPainter *painter, ViewportParams *viewport, const QString& renderPos, GeoSceneLayer * layer = nullptr ) override; 0060 void repaintPixmap(const ViewportParams *viewParams); 0061 0062 public Q_SLOTS: 0063 void updateTheme(); 0064 0065 private: 0066 QPixmap m_renderPixmap; 0067 QColor m_renderColor; 0068 int m_renderRadius; 0069 }; 0070 0071 } 0072 0073 #endif // MARBLE_ATMOSPHEREPLUGIN_H