tools/designer/src/lib/extension/qextensionmanager.h

Go to the documentation of this file.
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 QEXTENSIONMANAGER_H
00025 #define QEXTENSIONMANAGER_H
00026 
00027 #include <QtDesigner/extension_global.h>
00028 #include <QtDesigner/extension.h>
00029 #include <QtCore/QHash>
00030 
00031 QT_BEGIN_HEADER
00032 
00033 class QDESIGNER_EXTENSION_EXPORT QExtensionManager: public QObject, public QAbstractExtensionManager
00034 {
00035     Q_OBJECT
00036     Q_INTERFACES(QAbstractExtensionManager)
00037 public:
00038     QExtensionManager(QObject *parent = 0);
00039     ~QExtensionManager();
00040 
00041     virtual void registerExtensions(QAbstractExtensionFactory *factory, const QString &iid = QString());
00042     virtual void unregisterExtensions(QAbstractExtensionFactory *factory, const QString &iid = QString());
00043 
00044     virtual QObject *extension(QObject *object, const QString &iid) const;
00045 
00046 private:
00047     QHash<QString, QList<QAbstractExtensionFactory*> > m_extensions;
00048     QList<QAbstractExtensionFactory*> m_globalExtension;
00049 };
00050 
00051 QT_END_HEADER
00052 
00053 #endif // QEXTENSIONMANAGER_H

Generated on Thu Mar 15 12:01:21 2007 for Qt 4.2 User's Guide by  doxygen 1.5.1