00001 /**************************************************************************** 00002 ** 00003 ** Copyright (C) 1992-2006 Trolltech ASA. All rights reserved. 00004 ** 00005 ** This file is part of the Qt Designer of the Qt Toolkit. 00006 ** 00007 ** This file may be used under the terms of the GNU General Public 00008 ** License version 2.0 as published by the Free Software Foundation 00009 ** and appearing in the file LICENSE.GPL included in the packaging of 00010 ** this file. Please review the following information to ensure GNU 00011 ** General Public Licensing requirements will be met: 00012 ** http://www.trolltech.com/products/qt/opensource.html 00013 ** 00014 ** If you are unsure which license is appropriate for your use, please 00015 ** review the following information: 00016 ** http://www.trolltech.com/products/qt/licensing.html or contact the 00017 ** sales department at sales@trolltech.com. 00018 ** 00019 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00020 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00021 ** 00022 ****************************************************************************/ 00023 00024 #ifndef SIGNALSLOTEDITOR_PLUGIN_H 00025 #define SIGNALSLOTEDITOR_PLUGIN_H 00026 00027 #include "signalsloteditor_global.h" 00028 00029 #include <QtDesigner/QtDesigner> 00030 00031 #include <QtCore/QPointer> 00032 #include <QtCore/QHash> 00033 00034 class QDesignerFormWindowInterface; 00035 00036 namespace qdesigner_internal { 00037 00038 class SignalSlotEditorTool; 00039 00040 class QT_SIGNALSLOTEDITOR_EXPORT SignalSlotEditorPlugin: public QObject, public QDesignerFormEditorPluginInterface 00041 { 00042 Q_OBJECT 00043 Q_INTERFACES(QDesignerFormEditorPluginInterface) 00044 public: 00045 SignalSlotEditorPlugin(); 00046 virtual ~SignalSlotEditorPlugin(); 00047 00048 virtual bool isInitialized() const; 00049 virtual void initialize(QDesignerFormEditorInterface *core); 00050 virtual QAction *action() const; 00051 00052 virtual QDesignerFormEditorInterface *core() const; 00053 00054 public slots: 00055 void activeFormWindowChanged(QDesignerFormWindowInterface *formWindow); 00056 00057 private slots: 00058 void addFormWindow(QDesignerFormWindowInterface *formWindow); 00059 void removeFormWindow(QDesignerFormWindowInterface *formWindow); 00060 00061 private: 00062 QPointer<QDesignerFormEditorInterface> m_core; 00063 QHash<QDesignerFormWindowInterface*, SignalSlotEditorTool*> m_tools; 00064 bool m_initialized; 00065 QAction *m_action; 00066 }; 00067 00068 } // namespace qdesigner_internal 00069 00070 #endif // SIGNALSLOTEDITOR_PLUGIN_H
1.5.1