1 /**************************************************************************** 2 ** 3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). 4 ** All rights reserved. 5 ** 6 ** Contact: Nokia Corporation (qt-info@nokia.com) 7 ** 8 ** This file is part of a Qt Solutions component. 9 ** 10 ** You may use this file under the terms of the BSD license as follows: 11 ** 12 ** "Redistribution and use in source and binary forms, with or without 13 ** modification, are permitted provided that the following conditions are 14 ** met: 15 ** * Redistributions of source code must retain the above copyright 16 ** notice, this list of conditions and the following disclaimer. 17 ** * Redistributions in binary form must reproduce the above copyright 18 ** notice, this list of conditions and the following disclaimer in 19 ** the documentation and/or other materials provided with the 20 ** distribution. 21 ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor 22 ** the names of its contributors may be used to endorse or promote 23 ** products derived from this software without specific prior written 24 ** permission. 25 ** 26 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 27 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 28 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 29 ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 30 ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 31 ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 32 ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 33 ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 34 ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 35 ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 36 ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." 37 ** 38 ****************************************************************************/ 39 40 41 #ifndef QTEDITORFACTORY_H 42 #define QTEDITORFACTORY_H 43 44 #include "qtpropertymanager.h" 45 46 #if QT_VERSION >= 0x040400 47 QT_BEGIN_NAMESPACE 48 #endif 49 50 class QtSpinBoxFactoryPrivate; 51 52 class QT_QTPROPERTYBROWSER_EXPORT QtSpinBoxFactory : public QtAbstractEditorFactory<QtIntPropertyManager> 53 { 54 Q_OBJECT 55 public: 56 QtSpinBoxFactory(QObject *parent = 0); 57 ~QtSpinBoxFactory(); 58 protected: 59 void connectPropertyManager(QtIntPropertyManager *manager); 60 QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property, 61 QWidget *parent); 62 void disconnectPropertyManager(QtIntPropertyManager *manager); 63 private: 64 QtSpinBoxFactoryPrivate *d_ptr; 65 Q_DECLARE_PRIVATE(QtSpinBoxFactory) 66 Q_DISABLE_COPY(QtSpinBoxFactory) 67 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int)) 68 Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int)) 69 Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int)) 70 Q_PRIVATE_SLOT(d_func(), void slotSetValue(int)) 71 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 72 }; 73 74 class QtSliderFactoryPrivate; 75 76 class QT_QTPROPERTYBROWSER_EXPORT QtSliderFactory : public QtAbstractEditorFactory<QtIntPropertyManager> 77 { 78 Q_OBJECT 79 public: 80 QtSliderFactory(QObject *parent = 0); 81 ~QtSliderFactory(); 82 protected: 83 void connectPropertyManager(QtIntPropertyManager *manager); 84 QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property, 85 QWidget *parent); 86 void disconnectPropertyManager(QtIntPropertyManager *manager); 87 private: 88 QtSliderFactoryPrivate *d_ptr; 89 Q_DECLARE_PRIVATE(QtSliderFactory) 90 Q_DISABLE_COPY(QtSliderFactory) 91 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int)) 92 Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int)) 93 Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int)) 94 Q_PRIVATE_SLOT(d_func(), void slotSetValue(int)) 95 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 96 }; 97 98 class QtScrollBarFactoryPrivate; 99 100 class QT_QTPROPERTYBROWSER_EXPORT QtScrollBarFactory : public QtAbstractEditorFactory<QtIntPropertyManager> 101 { 102 Q_OBJECT 103 public: 104 QtScrollBarFactory(QObject *parent = 0); 105 ~QtScrollBarFactory(); 106 protected: 107 void connectPropertyManager(QtIntPropertyManager *manager); 108 QWidget *createEditor(QtIntPropertyManager *manager, QtProperty *property, 109 QWidget *parent); 110 void disconnectPropertyManager(QtIntPropertyManager *manager); 111 private: 112 QtScrollBarFactoryPrivate *d_ptr; 113 Q_DECLARE_PRIVATE(QtScrollBarFactory) 114 Q_DISABLE_COPY(QtScrollBarFactory) 115 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int)) 116 Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, int, int)) 117 Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, int)) 118 Q_PRIVATE_SLOT(d_func(), void slotSetValue(int)) 119 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 120 }; 121 122 class QtCheckBoxFactoryPrivate; 123 124 class QT_QTPROPERTYBROWSER_EXPORT QtCheckBoxFactory : public QtAbstractEditorFactory<QtBoolPropertyManager> 125 { 126 Q_OBJECT 127 public: 128 QtCheckBoxFactory(QObject *parent = 0); 129 ~QtCheckBoxFactory(); 130 protected: 131 void connectPropertyManager(QtBoolPropertyManager *manager); 132 QWidget *createEditor(QtBoolPropertyManager *manager, QtProperty *property, 133 QWidget *parent); 134 void disconnectPropertyManager(QtBoolPropertyManager *manager); 135 private: 136 QtCheckBoxFactoryPrivate *d_ptr; 137 Q_DECLARE_PRIVATE(QtCheckBoxFactory) 138 Q_DISABLE_COPY(QtCheckBoxFactory) 139 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, bool)) 140 Q_PRIVATE_SLOT(d_func(), void slotSetValue(bool)) 141 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 142 }; 143 144 class QtDoubleSpinBoxFactoryPrivate; 145 146 class QT_QTPROPERTYBROWSER_EXPORT QtDoubleSpinBoxFactory : public QtAbstractEditorFactory<QtDoublePropertyManager> 147 { 148 Q_OBJECT 149 public: 150 QtDoubleSpinBoxFactory(QObject *parent = 0); 151 ~QtDoubleSpinBoxFactory(); 152 protected: 153 void connectPropertyManager(QtDoublePropertyManager *manager); 154 QWidget *createEditor(QtDoublePropertyManager *manager, QtProperty *property, 155 QWidget *parent); 156 void disconnectPropertyManager(QtDoublePropertyManager *manager); 157 private: 158 QtDoubleSpinBoxFactoryPrivate *d_ptr; 159 Q_DECLARE_PRIVATE(QtDoubleSpinBoxFactory) 160 Q_DISABLE_COPY(QtDoubleSpinBoxFactory) 161 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, double)) 162 Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, double, double)) 163 Q_PRIVATE_SLOT(d_func(), void slotSingleStepChanged(QtProperty *, double)) 164 Q_PRIVATE_SLOT(d_func(), void slotDecimalsChanged(QtProperty *, int)) 165 Q_PRIVATE_SLOT(d_func(), void slotSetValue(double)) 166 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 167 }; 168 169 class QtLineEditFactoryPrivate; 170 171 class QT_QTPROPERTYBROWSER_EXPORT QtLineEditFactory : public QtAbstractEditorFactory<QtStringPropertyManager> 172 { 173 Q_OBJECT 174 public: 175 QtLineEditFactory(QObject *parent = 0); 176 ~QtLineEditFactory(); 177 protected: 178 void connectPropertyManager(QtStringPropertyManager *manager); 179 QWidget *createEditor(QtStringPropertyManager *manager, QtProperty *property, 180 QWidget *parent); 181 void disconnectPropertyManager(QtStringPropertyManager *manager); 182 private: 183 QtLineEditFactoryPrivate *d_ptr; 184 Q_DECLARE_PRIVATE(QtLineEditFactory) 185 Q_DISABLE_COPY(QtLineEditFactory) 186 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QString &)) 187 Q_PRIVATE_SLOT(d_func(), void slotRegExpChanged(QtProperty *, const QRegExp &)) 188 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QString &)) 189 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 190 }; 191 192 class QtDateEditFactoryPrivate; 193 194 class QT_QTPROPERTYBROWSER_EXPORT QtDateEditFactory : public QtAbstractEditorFactory<QtDatePropertyManager> 195 { 196 Q_OBJECT 197 public: 198 QtDateEditFactory(QObject *parent = 0); 199 ~QtDateEditFactory(); 200 protected: 201 void connectPropertyManager(QtDatePropertyManager *manager); 202 QWidget *createEditor(QtDatePropertyManager *manager, QtProperty *property, 203 QWidget *parent); 204 void disconnectPropertyManager(QtDatePropertyManager *manager); 205 private: 206 QtDateEditFactoryPrivate *d_ptr; 207 Q_DECLARE_PRIVATE(QtDateEditFactory) 208 Q_DISABLE_COPY(QtDateEditFactory) 209 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QDate &)) 210 Q_PRIVATE_SLOT(d_func(), void slotRangeChanged(QtProperty *, 211 const QDate &, const QDate &)) 212 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QDate &)) 213 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 214 }; 215 216 class QtTimeEditFactoryPrivate; 217 218 class QT_QTPROPERTYBROWSER_EXPORT QtTimeEditFactory : public QtAbstractEditorFactory<QtTimePropertyManager> 219 { 220 Q_OBJECT 221 public: 222 QtTimeEditFactory(QObject *parent = 0); 223 ~QtTimeEditFactory(); 224 protected: 225 void connectPropertyManager(QtTimePropertyManager *manager); 226 QWidget *createEditor(QtTimePropertyManager *manager, QtProperty *property, 227 QWidget *parent); 228 void disconnectPropertyManager(QtTimePropertyManager *manager); 229 private: 230 QtTimeEditFactoryPrivate *d_ptr; 231 Q_DECLARE_PRIVATE(QtTimeEditFactory) 232 Q_DISABLE_COPY(QtTimeEditFactory) 233 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QTime &)) 234 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QTime &)) 235 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 236 }; 237 238 class QtDateTimeEditFactoryPrivate; 239 240 class QT_QTPROPERTYBROWSER_EXPORT QtDateTimeEditFactory : public QtAbstractEditorFactory<QtDateTimePropertyManager> 241 { 242 Q_OBJECT 243 public: 244 QtDateTimeEditFactory(QObject *parent = 0); 245 ~QtDateTimeEditFactory(); 246 protected: 247 void connectPropertyManager(QtDateTimePropertyManager *manager); 248 QWidget *createEditor(QtDateTimePropertyManager *manager, QtProperty *property, 249 QWidget *parent); 250 void disconnectPropertyManager(QtDateTimePropertyManager *manager); 251 private: 252 QtDateTimeEditFactoryPrivate *d_ptr; 253 Q_DECLARE_PRIVATE(QtDateTimeEditFactory) 254 Q_DISABLE_COPY(QtDateTimeEditFactory) 255 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QDateTime &)) 256 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QDateTime &)) 257 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 258 }; 259 260 class QtKeySequenceEditorFactoryPrivate; 261 262 class QT_QTPROPERTYBROWSER_EXPORT QtKeySequenceEditorFactory : public QtAbstractEditorFactory<QtKeySequencePropertyManager> 263 { 264 Q_OBJECT 265 public: 266 QtKeySequenceEditorFactory(QObject *parent = 0); 267 ~QtKeySequenceEditorFactory(); 268 protected: 269 void connectPropertyManager(QtKeySequencePropertyManager *manager); 270 QWidget *createEditor(QtKeySequencePropertyManager *manager, QtProperty *property, 271 QWidget *parent); 272 void disconnectPropertyManager(QtKeySequencePropertyManager *manager); 273 private: 274 QtKeySequenceEditorFactoryPrivate *d_ptr; 275 Q_DECLARE_PRIVATE(QtKeySequenceEditorFactory) 276 Q_DISABLE_COPY(QtKeySequenceEditorFactory) 277 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QKeySequence &)) 278 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QKeySequence &)) 279 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 280 }; 281 282 class QtCharEditorFactoryPrivate; 283 284 class QT_QTPROPERTYBROWSER_EXPORT QtCharEditorFactory : public QtAbstractEditorFactory<QtCharPropertyManager> 285 { 286 Q_OBJECT 287 public: 288 QtCharEditorFactory(QObject *parent = 0); 289 ~QtCharEditorFactory(); 290 protected: 291 void connectPropertyManager(QtCharPropertyManager *manager); 292 QWidget *createEditor(QtCharPropertyManager *manager, QtProperty *property, 293 QWidget *parent); 294 void disconnectPropertyManager(QtCharPropertyManager *manager); 295 private: 296 QtCharEditorFactoryPrivate *d_ptr; 297 Q_DECLARE_PRIVATE(QtCharEditorFactory) 298 Q_DISABLE_COPY(QtCharEditorFactory) 299 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QChar &)) 300 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QChar &)) 301 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 302 }; 303 304 class QtEnumEditorFactoryPrivate; 305 306 class QT_QTPROPERTYBROWSER_EXPORT QtEnumEditorFactory : public QtAbstractEditorFactory<QtEnumPropertyManager> 307 { 308 Q_OBJECT 309 public: 310 QtEnumEditorFactory(QObject *parent = 0); 311 ~QtEnumEditorFactory(); 312 protected: 313 void connectPropertyManager(QtEnumPropertyManager *manager); 314 QWidget *createEditor(QtEnumPropertyManager *manager, QtProperty *property, 315 QWidget *parent); 316 void disconnectPropertyManager(QtEnumPropertyManager *manager); 317 private: 318 QtEnumEditorFactoryPrivate *d_ptr; 319 Q_DECLARE_PRIVATE(QtEnumEditorFactory) 320 Q_DISABLE_COPY(QtEnumEditorFactory) 321 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, int)) 322 Q_PRIVATE_SLOT(d_func(), void slotEnumNamesChanged(QtProperty *, 323 const QStringList &)) 324 Q_PRIVATE_SLOT(d_func(), void slotEnumIconsChanged(QtProperty *, 325 const QMap<int, QIcon> &)) 326 Q_PRIVATE_SLOT(d_func(), void slotSetValue(int)) 327 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 328 }; 329 330 class QtCursorEditorFactoryPrivate; 331 332 class QT_QTPROPERTYBROWSER_EXPORT QtCursorEditorFactory : public QtAbstractEditorFactory<QtCursorPropertyManager> 333 { 334 Q_OBJECT 335 public: 336 QtCursorEditorFactory(QObject *parent = 0); 337 ~QtCursorEditorFactory(); 338 protected: 339 void connectPropertyManager(QtCursorPropertyManager *manager); 340 QWidget *createEditor(QtCursorPropertyManager *manager, QtProperty *property, 341 QWidget *parent); 342 void disconnectPropertyManager(QtCursorPropertyManager *manager); 343 private: 344 QtCursorEditorFactoryPrivate *d_ptr; 345 Q_DECLARE_PRIVATE(QtCursorEditorFactory) 346 Q_DISABLE_COPY(QtCursorEditorFactory) 347 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QCursor &)) 348 Q_PRIVATE_SLOT(d_func(), void slotEnumChanged(QtProperty *, int)) 349 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 350 }; 351 352 class QtColorEditorFactoryPrivate; 353 354 class QT_QTPROPERTYBROWSER_EXPORT QtColorEditorFactory : public QtAbstractEditorFactory<QtColorPropertyManager> 355 { 356 Q_OBJECT 357 public: 358 QtColorEditorFactory(QObject *parent = 0); 359 ~QtColorEditorFactory(); 360 protected: 361 void connectPropertyManager(QtColorPropertyManager *manager); 362 QWidget *createEditor(QtColorPropertyManager *manager, QtProperty *property, 363 QWidget *parent); 364 void disconnectPropertyManager(QtColorPropertyManager *manager); 365 private: 366 QtColorEditorFactoryPrivate *d_ptr; 367 Q_DECLARE_PRIVATE(QtColorEditorFactory) 368 Q_DISABLE_COPY(QtColorEditorFactory) 369 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QColor &)) 370 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 371 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QColor &)) 372 }; 373 374 class QtFontEditorFactoryPrivate; 375 376 class QT_QTPROPERTYBROWSER_EXPORT QtFontEditorFactory : public QtAbstractEditorFactory<QtFontPropertyManager> 377 { 378 Q_OBJECT 379 public: 380 QtFontEditorFactory(QObject *parent = 0); 381 ~QtFontEditorFactory(); 382 protected: 383 void connectPropertyManager(QtFontPropertyManager *manager); 384 QWidget *createEditor(QtFontPropertyManager *manager, QtProperty *property, 385 QWidget *parent); 386 void disconnectPropertyManager(QtFontPropertyManager *manager); 387 private: 388 QtFontEditorFactoryPrivate *d_ptr; 389 Q_DECLARE_PRIVATE(QtFontEditorFactory) 390 Q_DISABLE_COPY(QtFontEditorFactory) 391 Q_PRIVATE_SLOT(d_func(), void slotPropertyChanged(QtProperty *, const QFont &)) 392 Q_PRIVATE_SLOT(d_func(), void slotEditorDestroyed(QObject *)) 393 Q_PRIVATE_SLOT(d_func(), void slotSetValue(const QFont &)) 394 }; 395 396 #if QT_VERSION >= 0x040400 397 QT_END_NAMESPACE 398 #endif 399 400 #endif 401