File indexing completed on 2024-04-21 03:49:45
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2007 Inge Wallin <ingwa@kde.org> 0004 // SPDX-FileCopyrightText: 2008 Jens-Michael Hoffmann <jensmh@gmx.de> 0005 // 0006 0007 #ifndef MARBLE_MARBLEPLUGINSETTINGSWIDGET_H 0008 #define MARBLE_MARBLEPLUGINSETTINGSWIDGET_H 0009 0010 0011 /** @file 0012 * This file contains the multiple inheritance ui-wrapper for the 0013 * MarblePluginSettingsWidget ui file. 0014 * 0015 * @author Torsten Rahn <torsten@kde.org> 0016 */ 0017 0018 #include <QWidget> 0019 0020 #include "marble_export.h" 0021 0022 class QModelIndex; 0023 0024 /** 0025 * @short A public class that adds methods to the UI Plugins Settings Widget. 0026 * 0027 */ 0028 namespace Marble 0029 { 0030 0031 class MarblePluginSettingsWidgetPrivate; 0032 class RenderPluginModel; 0033 0034 class MARBLE_EXPORT MarblePluginSettingsWidget : public QWidget 0035 { 0036 Q_OBJECT 0037 0038 public: 0039 explicit MarblePluginSettingsWidget( QWidget *parent = nullptr ); 0040 ~MarblePluginSettingsWidget() override; 0041 0042 void setModel( RenderPluginModel* pluginModel ); 0043 0044 void setAboutIcon( const QIcon& icon ); 0045 void setConfigIcon( const QIcon& icon ); 0046 0047 Q_SIGNALS: 0048 void pluginListViewClicked(); 0049 0050 private: 0051 Q_PRIVATE_SLOT( d, void showPluginAboutDialog( const QModelIndex & ) ) 0052 Q_PRIVATE_SLOT( d, void showPluginConfigDialog( const QModelIndex & ) ) 0053 0054 private: 0055 MarblePluginSettingsWidgetPrivate *d; 0056 }; 0057 0058 } 0059 0060 #endif