00001 /*************************************************************************** 00002 pluginmanager-configuration.h - description 00003 ------------------- 00004 begin : Thu Sep 30 2004 00005 copyright : (C) 2004 by Martin Witte 00006 email : emw-kradio@nocabal.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #ifndef KRADIO_PLUGINMANAGER_CONFIGURATION_H 00019 #define KRADIO_PLUGINMANAGER_CONFIGURATION_H 00020 00021 #ifdef HAVE_CONFIG_H 00022 #include <config.h> 00023 #endif 00024 00025 #include "ui_pluginmanager-configuration-ui.h" 00026 00027 QT_BEGIN_NAMESPACE 00028 00029 class QWidget; 00030 class KRadioApp; 00031 class PluginManager; 00032 class PluginBase; 00033 00034 class PluginManagerConfiguration : public QWidget, 00035 public Ui_PluginManagerConfigurationUI 00036 { 00037 Q_OBJECT 00038 public : 00039 PluginManagerConfiguration (QWidget *parent, KRadioApp *app, PluginManager *pm); 00040 ~PluginManagerConfiguration (); 00041 00042 void noticePluginLibrariesChanged(); 00043 void noticePluginsChanged(); 00044 void noticePluginRenamed(PluginBase *p, const QString &name); 00045 00046 public slots: 00047 00048 void slotOK(); 00049 void slotCancel(); 00050 void slotSetDirty(); 00051 00052 protected slots: 00053 00054 void slotAddLibrary(); 00055 void slotRemoveLibrary(); 00056 void slotNewPluginInstance(); 00057 void slotRemovePluginInstance(); 00058 void slotPluginRenamed(Q3ListViewItem *item, int col, const QString &name); 00059 00060 protected: 00061 00062 KRadioApp *m_Application; 00063 PluginManager *m_PluginManager; 00064 bool m_dirty; 00065 00066 QMap<Q3ListViewItem*, PluginBase*> m_pluginItems; // listviewitem => instanceID 00067 }; 00068 00069 #endif