Eneboo - Documentación para desarrolladores
src/qt/include/qwidgetplugin.h
Ir a la documentación de este archivo.
00001 /****************************************************************************
00002 ** $Id: qt/qwidgetplugin.h   3.3.8   edited Jan 11 14:46 $
00003 **
00004 ** Definition of QWidgetPlugin class
00005 **
00006 ** Created : 010920
00007 **
00008 ** Copyright (C) 2001-2007 Trolltech ASA.  All rights reserved.
00009 **
00010 ** This file is part of the widgets module of the Qt GUI Toolkit.
00011 **
00012 ** This file may be distributed under the terms of the Q Public License
00013 ** as defined by Trolltech ASA of Norway and appearing in the file
00014 ** LICENSE.QPL included in the packaging of this file.
00015 **
00016 ** This file may be distributed and/or modified under the terms of the
00017 ** GNU General Public License version 2 as published by the Free Software
00018 ** Foundation and appearing in the file LICENSE.GPL included in the
00019 ** packaging of this file.
00020 **
00021 ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
00022 ** licenses may use this file in accordance with the Qt Commercial License
00023 ** Agreement provided with the Software.
00024 **
00025 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00026 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00027 **
00028 ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
00029 **   information about Qt Commercial License Agreements.
00030 ** See http://www.trolltech.com/qpl/ for QPL licensing information.
00031 ** See http://www.trolltech.com/gpl/ for GPL licensing information.
00032 **
00033 ** Contact info@trolltech.com if any conditions of this licensing are
00034 ** not clear to you.
00035 **
00036 **********************************************************************/
00037 
00038 #ifndef QWIDGETPLUGIN_H
00039 #define QWIDGETPLUGIN_H
00040 
00041 #ifndef QT_H
00042 #include "qgplugin.h"
00043 #include "qstringlist.h"
00044 #include "qiconset.h"
00045 #endif // QT_H
00046 #ifndef QT_NO_WIDGETPLUGIN
00047 
00048 #ifdef Q_WS_WIN
00049 #ifdef QT_PLUGIN
00050 #define QT_WIDGET_PLUGIN_EXPORT __declspec(dllexport)
00051 #else
00052 #define QT_WIDGET_PLUGIN_EXPORT __declspec(dllimport)
00053 #endif
00054 #else
00055 #define QT_WIDGET_PLUGIN_EXPORT
00056 #endif
00057 
00058 class QWidgetPluginPrivate;
00059 class QWidget;
00060 
00061 class Q_EXPORT QWidgetPlugin : public QGPlugin
00062 {
00063     Q_OBJECT
00064 public:
00065     QWidgetPlugin();
00066     ~QWidgetPlugin();
00067 
00068     virtual QStringList keys() const = 0;
00069     virtual QWidget *create( const QString &key, QWidget *parent = 0, const char *name = 0 ) = 0;
00070 
00071     virtual QString group( const QString &key ) const;
00072     virtual QIconSet iconSet( const QString &key ) const;
00073     virtual QString includeFile( const QString &key ) const;
00074     virtual QString toolTip( const QString &key ) const;
00075     virtual QString whatsThis( const QString &key ) const;
00076     virtual bool isContainer( const QString &key ) const;
00077 
00078 private:
00079     QWidgetPluginPrivate *d;
00080 };
00081 
00082 #ifdef QT_CONTAINER_CUSTOM_WIDGETS
00083 
00084 class QWidgetContainerPluginPrivate;
00085 
00086 class Q_EXPORT QWidgetContainerPlugin : public QWidgetPlugin
00087 {
00088 
00089 public:
00090     QWidgetContainerPlugin();
00091     ~QWidgetContainerPlugin();
00092 
00093     virtual QWidget* containerOfWidget( const QString &key, QWidget *container ) const;
00094     virtual bool isPassiveInteractor( const QString &key, QWidget *container ) const;
00095 
00096     virtual bool supportsPages( const QString &key ) const;
00097 
00098     virtual QWidget *addPage( const QString &key, QWidget *container,
00099                               const QString &name, int index ) const;
00100     virtual void insertPage( const QString &key, QWidget *container,
00101                              const QString &name, int index, QWidget *page ) const;
00102     virtual void removePage( const QString &key, QWidget *container, int index ) const;
00103     virtual void movePage( const QString &key, QWidget *container, int fromIndex, int toIndex ) const;
00104     virtual int count( const QString &key, QWidget *container ) const;
00105     virtual int currentIndex( const QString &key, QWidget *container ) const;
00106     virtual QString pageLabel( const QString &key, QWidget *container, int index ) const;
00107     virtual QWidget *page( const QString &key, QWidget *container, int index ) const;
00108     virtual void renamePage( const QString &key, QWidget *container,
00109                              int index, const QString &newName ) const;
00110     virtual QWidgetList pages( const QString &key, QWidget *container ) const;
00111     virtual QString createCode( const QString &key, const QString &container,
00112                                 const QString &page, const QString &pageName ) const;
00113 };
00114 
00115 #endif // QT_CONTAINER_CUSTOM_WIDGETS
00116 #endif // QT_NO_WIDGETPLUGIN
00117 #endif // QWIDGETPLUGIN_H
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'