QSapecNG
 All Classes Functions Enumerations Properties
qteditorfactory.h
00001 /****************************************************************************
00002 **
00003 ** This file is part of a Qt Solutions component.
00004 ** 
00005 ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
00006 ** 
00007 ** Contact:  Qt Software Information (qt-info@nokia.com)
00008 ** 
00009 ** Commercial Usage  
00010 ** Licensees holding valid Qt Commercial licenses may use this file in
00011 ** accordance with the Qt Solutions Commercial License Agreement provided
00012 ** with the Software or, alternatively, in accordance with the terms
00013 ** contained in a written agreement between you and Nokia.
00014 ** 
00015 ** GNU Lesser General Public License Usage
00016 ** Alternatively, this file may be used under the terms of the GNU Lesser
00017 ** General Public License version 2.1 as published by the Free Software
00018 ** Foundation and appearing in the file LICENSE.LGPL included in the
00019 ** packaging of this file.  Please review the following information to
00020 ** ensure the GNU Lesser General Public License version 2.1 requirements
00021 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
00022 ** 
00023 ** In addition, as a special exception, Nokia gives you certain
00024 ** additional rights. These rights are described in the Nokia Qt LGPL
00025 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
00026 ** package.
00027 ** 
00028 ** GNU General Public License Usage 
00029 ** Alternatively, this file may be used under the terms of the GNU
00030 ** General Public License version 3.0 as published by the Free Software
00031 ** Foundation and appearing in the file LICENSE.GPL included in the
00032 ** packaging of this file.  Please review the following information to
00033 ** ensure the GNU General Public License version 3.0 requirements will be
00034 ** met: http://www.gnu.org/copyleft/gpl.html.
00035 ** 
00036 ** Please note Third Party Software included with Qt Solutions may impose
00037 ** additional restrictions and it is the user's responsibility to ensure
00038 ** that they have met the licensing requirements of the GPL, LGPL, or Qt
00039 ** Solutions Commercial license and the relevant license of the Third
00040 ** Party Software they are using.
00041 ** 
00042 ** If you are unsure which license is appropriate for your use, please
00043 ** contact the sales department at qt-sales@nokia.com.
00044 ** 
00045 ****************************************************************************/
00046 
00047 /****************************************************************************
00048 **
00049 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
00050 ** Contact: Qt Software Information (qt-info@nokia.com)
00051 **
00052 ** This file is part of the tools applications of the Qt Toolkit.
00053 **
00054 ** $QT_BEGIN_LICENSE:LGPL$
00055 ** No Commercial Usage
00056 ** This file contains pre-release code and may not be distributed.
00057 ** You may use this file in accordance with the terms and conditions
00058 ** contained in the either Technology Preview License Agreement or the
00059 ** Beta Release License Agreement.
00060 **
00061 ** GNU Lesser General Public License Usage
00062 ** Alternatively, this file may be used under the terms of the GNU Lesser
00063 ** General Public License version 2.1 as published by the Free Software
00064 ** Foundation and appearing in the file LICENSE.LGPL included in the
00065 ** packaging of this file.  Please review the following information to
00066 ** ensure the GNU Lesser General Public License version 2.1 requirements
00067 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
00068 **
00069 ** In addition, as a special exception, Nokia gives you certain
00070 ** additional rights. These rights are described in the Nokia Qt LGPL
00071 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
00072 ** package.
00073 **
00074 ** GNU General Public License Usage
00075 ** Alternatively, this file may be used under the terms of the GNU
00076 ** General Public License version 3.0 as published by the Free Software
00077 ** Foundation and appearing in the file LICENSE.GPL included in the
00078 ** packaging of this file.  Please review the following information to
00079 ** ensure the GNU General Public License version 3.0 requirements will be
00080 ** met: http://www.gnu.org/copyleft/gpl.html.
00081 **
00082 ** If you are unsure which license is appropriate for your use, please
00083 ** contact the sales department at qt-sales@nokia.com.
00084 ** $QT_END_LICENSE$
00085 **
00086 ****************************************************************************/
00087 
00088 #ifndef QTEDITORFACTORY_H
00089 #define QTEDITORFACTORY_H
00090 
00091 #include "qtpropertymanager.h"
00092 
00093 #if QT_VERSION >= 0x040400
00094 QT_BEGIN_NAMESPACE
00095 #endif
00096 
00097 class QtSpinBoxFactoryPrivate;
00098 
00099 class QT_QTPROPERTYBROWSER_EXPORT QtSpinBoxFactory : public QtAbstractEditorFactory<QtIntPropertyManager>
00100 {
00101     Q_OBJECT
00102 public:
00103     QtSpinBoxFactory(QObject *parent = 0);
00104     ~QtSpinBoxFactory();
00105 protected:
00106     void connectPropertyManager(QtIntPropertyManager *manager);
00107     QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property,
00108                 QWidget *parent);
00109     void disconnectPropertyManager(QtIntPropertyManager *manager);
00110 private:
00111     QtSpinBoxFactoryPrivate *d_ptr;
00112     Q_DECLARE_PRIVATE(QtSpinBoxFactory)
00113     Q_DISABLE_COPY(QtSpinBoxFactory)
00114     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int))
00115     Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int))
00116     Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int))
00117     Q_PRIVATE_SLOT(d_func(), void slotSetValue(int))
00118     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00119 };
00120 
00121 class QtSliderFactoryPrivate;
00122 
00123 class QT_QTPROPERTYBROWSER_EXPORT QtSliderFactory : public QtAbstractEditorFactory<QtIntPropertyManager>
00124 {
00125     Q_OBJECT
00126 public:
00127     QtSliderFactory(QObject *parent = 0);
00128     ~QtSliderFactory();
00129 protected:
00130     void connectPropertyManager(QtIntPropertyManager *manager);
00131     QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property,
00132                 QWidget *parent);
00133     void disconnectPropertyManager(QtIntPropertyManager *manager);
00134 private:
00135     QtSliderFactoryPrivate *d_ptr;
00136     Q_DECLARE_PRIVATE(QtSliderFactory)
00137     Q_DISABLE_COPY(QtSliderFactory)
00138     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int))
00139     Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int))
00140     Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int))
00141     Q_PRIVATE_SLOT(d_func(), void slotSetValue(int))
00142     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00143 };
00144 
00145 class QtScrollBarFactoryPrivate;
00146 
00147 class QT_QTPROPERTYBROWSER_EXPORT QtScrollBarFactory : public QtAbstractEditorFactory<QtIntPropertyManager>
00148 {
00149     Q_OBJECT
00150 public:
00151     QtScrollBarFactory(QObject *parent = 0);
00152     ~QtScrollBarFactory();
00153 protected:
00154     void connectPropertyManager(QtIntPropertyManager *manager);
00155     QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property,
00156                 QWidget *parent);
00157     void disconnectPropertyManager(QtIntPropertyManager *manager);
00158 private:
00159     QtScrollBarFactoryPrivate *d_ptr;
00160     Q_DECLARE_PRIVATE(QtScrollBarFactory)
00161     Q_DISABLE_COPY(QtScrollBarFactory)
00162     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int))
00163     Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int))
00164     Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int))
00165     Q_PRIVATE_SLOT(d_func(), void slotSetValue(int))
00166     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00167 };
00168 
00169 class QtCheckBoxFactoryPrivate;
00170 
00171 class QT_QTPROPERTYBROWSER_EXPORT QtCheckBoxFactory : public QtAbstractEditorFactory<QtBoolPropertyManager>
00172 {
00173     Q_OBJECT
00174 public:
00175     QtCheckBoxFactory(QObject *parent = 0);
00176     ~QtCheckBoxFactory();
00177 protected:
00178     void connectPropertyManager(QtBoolPropertyManager *manager);
00179     QWidget *createEditor(QtBoolPropertyManager *manager, QtProperty *property,
00180                 QWidget *parent);
00181     void disconnectPropertyManager(QtBoolPropertyManager *manager);
00182 private:
00183     QtCheckBoxFactoryPrivate *d_ptr;
00184     Q_DECLARE_PRIVATE(QtCheckBoxFactory)
00185     Q_DISABLE_COPY(QtCheckBoxFactory)
00186     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, bool))
00187     Q_PRIVATE_SLOT(d_func(), void slotSetValue(bool))
00188     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00189 };
00190 
00191 class QtDoubleSpinBoxFactoryPrivate;
00192 
00193 class QT_QTPROPERTYBROWSER_EXPORT QtDoubleSpinBoxFactory : public QtAbstractEditorFactory<QtDoublePropertyManager>
00194 {
00195     Q_OBJECT
00196 public:
00197     QtDoubleSpinBoxFactory(QObject *parent = 0);
00198     ~QtDoubleSpinBoxFactory();
00199 protected:
00200     void connectPropertyManager(QtDoublePropertyManager *manager);
00201     QWidget *createEditor(QtDoublePropertyManager *manager, QtProperty *property,
00202                 QWidget *parent);
00203     void disconnectPropertyManager(QtDoublePropertyManager *manager);
00204 private:
00205     QtDoubleSpinBoxFactoryPrivate *d_ptr;
00206     Q_DECLARE_PRIVATE(QtDoubleSpinBoxFactory)
00207     Q_DISABLE_COPY(QtDoubleSpinBoxFactory)
00208     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, double))
00209     Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, double, double))
00210     Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, double))
00211     Q_PRIVATE_SLOT(d_func(), void slotDecimalsChanged(QtProperty *, int))
00212     Q_PRIVATE_SLOT(d_func(), void slotSetValue(double))
00213     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00214 };
00215 
00216 class QtLineEditFactoryPrivate;
00217 
00218 class QT_QTPROPERTYBROWSER_EXPORT QtLineEditFactory : public QtAbstractEditorFactory<QtStringPropertyManager>
00219 {
00220     Q_OBJECT
00221 public:
00222     QtLineEditFactory(QObject *parent = 0);
00223     ~QtLineEditFactory();
00224 protected:
00225     void connectPropertyManager(QtStringPropertyManager *manager);
00226     QWidget *createEditor(QtStringPropertyManager *manager, QtProperty *property,
00227                 QWidget *parent);
00228     void disconnectPropertyManager(QtStringPropertyManager *manager);
00229 private:
00230     QtLineEditFactoryPrivate *d_ptr;
00231     Q_DECLARE_PRIVATE(QtLineEditFactory)
00232     Q_DISABLE_COPY(QtLineEditFactory)
00233     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QString &))
00234     Q_PRIVATE_SLOT(d_func(), void slotRegExpChanged(QtProperty *, const QRegExp &))
00235     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QString &))
00236     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00237 };
00238 
00239 class QtDateEditFactoryPrivate;
00240 
00241 class QT_QTPROPERTYBROWSER_EXPORT QtDateEditFactory : public QtAbstractEditorFactory<QtDatePropertyManager>
00242 {
00243     Q_OBJECT
00244 public:
00245     QtDateEditFactory(QObject *parent = 0);
00246     ~QtDateEditFactory();
00247 protected:
00248     void connectPropertyManager(QtDatePropertyManager *manager);
00249     QWidget *createEditor(QtDatePropertyManager *manager, QtProperty *property,
00250                 QWidget *parent);
00251     void disconnectPropertyManager(QtDatePropertyManager *manager);
00252 private:
00253     QtDateEditFactoryPrivate *d_ptr;
00254     Q_DECLARE_PRIVATE(QtDateEditFactory)
00255     Q_DISABLE_COPY(QtDateEditFactory)
00256     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QDate &))
00257     Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *,
00258                         const QDate &, const QDate &))
00259     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QDate &))
00260     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00261 };
00262 
00263 class QtTimeEditFactoryPrivate;
00264 
00265 class QT_QTPROPERTYBROWSER_EXPORT QtTimeEditFactory : public QtAbstractEditorFactory<QtTimePropertyManager>
00266 {
00267     Q_OBJECT
00268 public:
00269     QtTimeEditFactory(QObject *parent = 0);
00270     ~QtTimeEditFactory();
00271 protected:
00272     void connectPropertyManager(QtTimePropertyManager *manager);
00273     QWidget *createEditor(QtTimePropertyManager *manager, QtProperty *property,
00274                 QWidget *parent);
00275     void disconnectPropertyManager(QtTimePropertyManager *manager);
00276 private:
00277     QtTimeEditFactoryPrivate *d_ptr;
00278     Q_DECLARE_PRIVATE(QtTimeEditFactory)
00279     Q_DISABLE_COPY(QtTimeEditFactory)
00280     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QTime &))
00281     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QTime &))
00282     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00283 };
00284 
00285 class QtDateTimeEditFactoryPrivate;
00286 
00287 class QT_QTPROPERTYBROWSER_EXPORT QtDateTimeEditFactory : public QtAbstractEditorFactory<QtDateTimePropertyManager>
00288 {
00289     Q_OBJECT
00290 public:
00291     QtDateTimeEditFactory(QObject *parent = 0);
00292     ~QtDateTimeEditFactory();
00293 protected:
00294     void connectPropertyManager(QtDateTimePropertyManager *manager);
00295     QWidget *createEditor(QtDateTimePropertyManager *manager, QtProperty *property,
00296                 QWidget *parent);
00297     void disconnectPropertyManager(QtDateTimePropertyManager *manager);
00298 private:
00299     QtDateTimeEditFactoryPrivate *d_ptr;
00300     Q_DECLARE_PRIVATE(QtDateTimeEditFactory)
00301     Q_DISABLE_COPY(QtDateTimeEditFactory)
00302     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QDateTime &))
00303     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QDateTime &))
00304     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00305 };
00306 
00307 class QtKeySequenceEditorFactoryPrivate;
00308 
00309 class QT_QTPROPERTYBROWSER_EXPORT QtKeySequenceEditorFactory : public QtAbstractEditorFactory<QtKeySequencePropertyManager>
00310 {
00311     Q_OBJECT
00312 public:
00313     QtKeySequenceEditorFactory(QObject *parent = 0);
00314     ~QtKeySequenceEditorFactory();
00315 protected:
00316     void connectPropertyManager(QtKeySequencePropertyManager *manager);
00317     QWidget *createEditor(QtKeySequencePropertyManager *manager, QtProperty *property,
00318                 QWidget *parent);
00319     void disconnectPropertyManager(QtKeySequencePropertyManager *manager);
00320 private:
00321     QtKeySequenceEditorFactoryPrivate *d_ptr;
00322     Q_DECLARE_PRIVATE(QtKeySequenceEditorFactory)
00323     Q_DISABLE_COPY(QtKeySequenceEditorFactory)
00324     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QKeySequence &))
00325     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QKeySequence &))
00326     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00327 };
00328 
00329 class QtCharEditorFactoryPrivate;
00330 
00331 class QT_QTPROPERTYBROWSER_EXPORT QtCharEditorFactory : public QtAbstractEditorFactory<QtCharPropertyManager>
00332 {
00333     Q_OBJECT
00334 public:
00335     QtCharEditorFactory(QObject *parent = 0);
00336     ~QtCharEditorFactory();
00337 protected:
00338     void connectPropertyManager(QtCharPropertyManager *manager);
00339     QWidget *createEditor(QtCharPropertyManager *manager, QtProperty *property,
00340                 QWidget *parent);
00341     void disconnectPropertyManager(QtCharPropertyManager *manager);
00342 private:
00343     QtCharEditorFactoryPrivate *d_ptr;
00344     Q_DECLARE_PRIVATE(QtCharEditorFactory)
00345     Q_DISABLE_COPY(QtCharEditorFactory)
00346     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QChar &))
00347     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QChar &))
00348     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00349 };
00350 
00351 class QtEnumEditorFactoryPrivate;
00352 
00353 class QT_QTPROPERTYBROWSER_EXPORT QtEnumEditorFactory : public QtAbstractEditorFactory<QtEnumPropertyManager>
00354 {
00355     Q_OBJECT
00356 public:
00357     QtEnumEditorFactory(QObject *parent = 0);
00358     ~QtEnumEditorFactory();
00359 protected:
00360     void connectPropertyManager(QtEnumPropertyManager *manager);
00361     QWidget *createEditor(QtEnumPropertyManager *manager, QtProperty *property,
00362                 QWidget *parent);
00363     void disconnectPropertyManager(QtEnumPropertyManager *manager);
00364 private:
00365     QtEnumEditorFactoryPrivate *d_ptr;
00366     Q_DECLARE_PRIVATE(QtEnumEditorFactory)
00367     Q_DISABLE_COPY(QtEnumEditorFactory)
00368     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int))
00369     Q_PRIVATE_SLOT(d_func(), void slotEnumNamesChanged(QtProperty *,
00370                         const QStringList &))
00371     Q_PRIVATE_SLOT(d_func(), void slotEnumIconsChanged(QtProperty *,
00372                         const QMap<int, QIcon> &))
00373     Q_PRIVATE_SLOT(d_func(), void slotSetValue(int))
00374     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00375 };
00376 
00377 class QtCursorEditorFactoryPrivate;
00378 
00379 class QT_QTPROPERTYBROWSER_EXPORT QtCursorEditorFactory : public QtAbstractEditorFactory<QtCursorPropertyManager>
00380 {
00381     Q_OBJECT
00382 public:
00383     QtCursorEditorFactory(QObject *parent = 0);
00384     ~QtCursorEditorFactory();
00385 protected:
00386     void connectPropertyManager(QtCursorPropertyManager *manager);
00387     QWidget *createEditor(QtCursorPropertyManager *manager, QtProperty *property,
00388                 QWidget *parent);
00389     void disconnectPropertyManager(QtCursorPropertyManager *manager);
00390 private:
00391     QtCursorEditorFactoryPrivate *d_ptr;
00392     Q_DECLARE_PRIVATE(QtCursorEditorFactory)
00393     Q_DISABLE_COPY(QtCursorEditorFactory)
00394     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QCursor &))
00395     Q_PRIVATE_SLOT(d_func(), void slotEnumChanged(QtProperty *, int))
00396     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00397 };
00398 
00399 class QtColorEditorFactoryPrivate;
00400 
00401 class QT_QTPROPERTYBROWSER_EXPORT QtColorEditorFactory : public QtAbstractEditorFactory<QtColorPropertyManager>
00402 {
00403     Q_OBJECT
00404 public:
00405     QtColorEditorFactory(QObject *parent = 0);
00406     ~QtColorEditorFactory();
00407 protected:
00408     void connectPropertyManager(QtColorPropertyManager *manager);
00409     QWidget *createEditor(QtColorPropertyManager *manager, QtProperty *property,
00410                 QWidget *parent);
00411     void disconnectPropertyManager(QtColorPropertyManager *manager);
00412 private:
00413     QtColorEditorFactoryPrivate *d_ptr;
00414     Q_DECLARE_PRIVATE(QtColorEditorFactory)
00415     Q_DISABLE_COPY(QtColorEditorFactory)
00416     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QColor &))
00417     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00418     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QColor &))
00419 };
00420 
00421 class QtFontEditorFactoryPrivate;
00422 
00423 class QT_QTPROPERTYBROWSER_EXPORT QtFontEditorFactory : public QtAbstractEditorFactory<QtFontPropertyManager>
00424 {
00425     Q_OBJECT
00426 public:
00427     QtFontEditorFactory(QObject *parent = 0);
00428     ~QtFontEditorFactory();
00429 protected:
00430     void connectPropertyManager(QtFontPropertyManager *manager);
00431     QWidget *createEditor(QtFontPropertyManager *manager, QtProperty *property,
00432                 QWidget *parent);
00433     void disconnectPropertyManager(QtFontPropertyManager *manager);
00434 private:
00435     QtFontEditorFactoryPrivate *d_ptr;
00436     Q_DECLARE_PRIVATE(QtFontEditorFactory)
00437     Q_DISABLE_COPY(QtFontEditorFactory)
00438     Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QFont &))
00439     Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *))
00440     Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QFont &))
00441 };
00442 
00443 #if QT_VERSION >= 0x040400
00444 QT_END_NAMESPACE
00445 #endif
00446 
00447 #endif
 All Classes Functions Enumerations Properties