00001 00023 #ifndef PLUGINBOX_H 00024 #define PLUGINBOX_H 00025 00026 #include <QToolBox> 00027 #include <QListWidget> 00028 00029 #include "module_loader.h" 00030 00032 class PluginList : public QListWidget 00033 { 00034 public: 00035 PluginList(const QString&); 00036 ~PluginList(); 00037 QStringList mimeTypes () const; 00038 QMimeData* mimeData(const QList<QListWidgetItem*>) const; 00039 QString name() const; 00040 00041 private: 00042 QString m_name; 00043 }; 00044 00046 class PluginBox : public QToolBox 00047 { 00048 Q_OBJECT 00049 00050 public: 00051 PluginBox(QWidget* = 0, Qt::WFlags = 0); 00052 ~PluginBox(); 00053 00054 public slots: 00055 void addGroup(const QString&, const QString&, const QIcon&); 00056 void addPlugin(const QString&, const QString&, const QIcon&); 00057 void clear(); 00058 00059 private: 00060 PluginList* m_group; 00061 QFont m_font; 00062 QSize m_iconSize; 00063 }; 00064 00065 #endif