tools/designer/src/lib/sdk/abstractformeditor.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 ABSTRACTFORMEDITOR_H
00025 #define ABSTRACTFORMEDITOR_H
00026 
00027 #include <QtDesigner/sdk_global.h>
00028 
00029 #include <QtCore/QObject>
00030 #include <QtCore/QPointer>
00031 
00032 QT_BEGIN_HEADER
00033 
00034 class QDesignerWidgetBoxInterface;
00035 class QDesignerPropertyEditorInterface;
00036 class QDesignerFormWindowManagerInterface;
00037 class QDesignerWidgetDataBaseInterface;
00038 class QDesignerMetaDataBaseInterface;
00039 class QDesignerWidgetFactoryInterface;
00040 class QDesignerObjectInspectorInterface;
00041 class QDesignerBrushManagerInterface;
00042 class QDesignerIconCacheInterface;
00043 class QDesignerActionEditorInterface;
00044 class QDesignerPluginManager;
00045 
00046 class QWidget;
00047 
00048 class QExtensionManager;
00049 
00050 class QDESIGNER_SDK_EXPORT QDesignerFormEditorInterface: public QObject
00051 {
00052     Q_OBJECT
00053 public:
00054     QDesignerFormEditorInterface(QObject *parent = 0);
00055     virtual ~QDesignerFormEditorInterface();
00056 
00057     QExtensionManager *extensionManager() const;
00058 
00059     QWidget *topLevel() const;
00060     QDesignerWidgetBoxInterface *widgetBox() const;
00061     QDesignerPropertyEditorInterface *propertyEditor() const;
00062     QDesignerObjectInspectorInterface *objectInspector() const;
00063     QDesignerFormWindowManagerInterface *formWindowManager() const;
00064     QDesignerWidgetDataBaseInterface *widgetDataBase() const;
00065     QDesignerMetaDataBaseInterface *metaDataBase() const;
00066     QDesignerWidgetFactoryInterface *widgetFactory() const;
00067     QDesignerBrushManagerInterface *brushManager() const;
00068     QDesignerIconCacheInterface *iconCache() const;
00069     QDesignerActionEditorInterface *actionEditor() const;
00070     QDesignerPluginManager *pluginManager() const;
00071     QString resourceLocation() const;
00072 
00073     void setTopLevel(QWidget *topLevel);
00074     void setWidgetBox(QDesignerWidgetBoxInterface *widgetBox);
00075     void setPropertyEditor(QDesignerPropertyEditorInterface *propertyEditor);
00076     void setObjectInspector(QDesignerObjectInspectorInterface *objectInspector);
00077     void setPluginManager(QDesignerPluginManager *pluginManager);
00078     void setActionEditor(QDesignerActionEditorInterface *actionEditor);
00079 
00080 protected:
00081     void setFormManager(QDesignerFormWindowManagerInterface *formWindowManager);
00082     void setMetaDataBase(QDesignerMetaDataBaseInterface *metaDataBase);
00083     void setWidgetDataBase(QDesignerWidgetDataBaseInterface *widgetDataBase);
00084     void setWidgetFactory(QDesignerWidgetFactoryInterface *widgetFactory);
00085     void setExtensionManager(QExtensionManager *extensionManager);
00086     void setBrushManager(QDesignerBrushManagerInterface *brushManager);
00087     void setIconCache(QDesignerIconCacheInterface *cache);
00088 
00089 private:
00090     QPointer<QWidget> m_topLevel;
00091     QPointer<QDesignerWidgetBoxInterface> m_widgetBox;
00092     QPointer<QDesignerPropertyEditorInterface> m_propertyEditor;
00093     QPointer<QDesignerFormWindowManagerInterface> m_formWindowManager;
00094     QPointer<QExtensionManager> m_extensionManager;
00095     QPointer<QDesignerMetaDataBaseInterface> m_metaDataBase;
00096     QPointer<QDesignerWidgetDataBaseInterface> m_widgetDataBase;
00097     QPointer<QDesignerWidgetFactoryInterface> m_widgetFactory;
00098     QPointer<QDesignerObjectInspectorInterface> m_objectInspector;
00099     QPointer<QDesignerBrushManagerInterface> m_brushManager;
00100     QPointer<QDesignerIconCacheInterface> m_iconCache;
00101     QPointer<QDesignerActionEditorInterface> m_actionEditor;
00102     QDesignerPluginManager *m_pluginManager;
00103 
00104 private:
00105     QDesignerFormEditorInterface(const QDesignerFormEditorInterface &other);
00106     void operator = (const QDesignerFormEditorInterface &other);
00107 };
00108 
00109 QT_END_HEADER
00110 
00111 #endif // ABSTRACTFORMEDITOR_H

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