29 #include <QSharedPointer>
43 class DataItemPrivate;
252 QString name()
const;
257 void setName(
const QString &itemName);
271 QVariant data()
const;
277 T data(
const T &def = T())
const;
281 void setData(
const QVariant &itemData);
290 QList<DataItem> subitems()
const;
294 void setSubitems(
const QList<DataItem> &newSubitems);
298 DataItem subitem(
const QString &name,
bool recursive =
false)
const;
300 int removeSubitems(
const QString &name,
bool recursive =
false);
301 bool removeSubitem(
const QString &name,
bool recursive =
false);
302 DataItem takeSubitem(
const QString &name,
bool recursive =
false);
307 void addSubitem(
const DataItem &subitem);
311 bool hasSubitems()
const;
318 void allowModifySubitems(
const DataItem &defaultSubitem,
int maxSubitemsCount = -1);
323 bool isAllowedModifySubitems()
const;
329 int maxSubitemsCount()
const;
339 bool isReadOnly()
const;
344 void setReadOnly(
bool readOnly =
true);
353 void setDataChangedHandler(QObject *receiver,
const char *method);
357 QObject *dataChangedReceiver()
const;
361 const char *dataChangedMethod()
const;
372 QVariant property(
const char *name,
const QVariant &def = QVariant())
const;
379 T property(
const char *name,
const T &def = T())
const;
384 void setProperty(
const char *name,
const QVariant &value);
385 QList<QByteArray> dynamicPropertyNames()
const;
388 friend class DataItemPrivate;
389 QSharedDataPointer<DataItemPrivate> d;
396 QVariant var =
property(name, QVariant::fromValue<T>(def));
397 return var.value<T>();
422 const QStringList &data = QStringList(),
423 int maxStringsCount = -1);
426 int maxStringsCount = -1);
433 int minValue = 0,
int maxValue = 100);
440 double minValue = 0,
double maxValue = 100);
447 const QIcon &data = QIcon(),
448 const QSize &imageSize = QSize(32, 32),
449 const QList<QIcon> &alternatives = QList<QIcon>());
456 const QImage &data = QImage(),
457 const QSize &imageSize = QSize(32, 32),
458 const QList<QImage> &alternatives = QList<QImage>());
465 const QPixmap &data = QPixmap(),
466 const QSize &imageSize = QSize(128, 128),
467 const QList<QPixmap> &alternatives = QList<QPixmap>());
474 const QStringList &alternatives,
const QString &data = QString(),
475 bool editable =
false, QValidator *validator = 0);
477 const QStringList &alternatives,
const QString &data,
478 bool editable, QRegExp validator);
482 bool editable =
false, QValidator *validator = 0);
486 bool editable, QRegExp validator);
493 const QString &data = QString());
502 const QString &data = QString(),
503 QValidator *validator = 0,
bool password =
false);
505 const QString &data, QRegExp validator,
506 bool password =
false);
509 bool password =
false);
512 bool password =
false);
533 Q_DECLARE_FLAGS(ButtonRoles, ButtonRole)
535 NoButton = 0x00000000,
538 SaveAll = 0x00001000,
541 YesToAll = 0x00008000,
543 NoToAll = 0x00020000,
549 Discard = 0x00800000,
553 RestoreDefaults = 0x08000000
555 Q_DECLARE_FLAGS(StandardButtons, StandardButton)
570 virtual bool isChanged()
const = 0;
578 virtual bool isComplete()
const = 0;
582 virtual void clearState() = 0;
589 virtual void setData(
const QString &fieldName,
const QVariant &data) = 0;
591 StandardButtons standartButtons = NoButton,
592 const Buttons &buttons = Buttons());
599 void helpRequested();
600 void clicked(
int buttonIndex);
613 void completeChanged(
bool complete);
615 virtual void virtual_hook(
int id,
void *data);
632 return d.canConvert<T>() ? d.value<T>() : def;
636 Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractDataForm::ButtonRoles)
646 #endif // DATAFORMS_H
Definition: dataforms.h:400
QVariant property(const char *name, const QVariant &def=QVariant()) const
Returns the property named name.
#define LIBQUTIM_EXPORT
Definition: libqutim_global.h:45
QVariant data() const
Returns the data of this data item.
Definition: dataforms.h:461
Definition: abstractsearchrequest.h:33
QList< LocalizedString > LocalizedStringList
Definition: localizedstring.h:82
Definition: dataforms.h:418
Definition: dataforms.h:443
Definition: dataforms.h:429
The DataItem class specifies one field or a group of fields in a data form.
Definition: dataforms.h:216
Definition: localizedstring.h:49
Q_DECLARE_METATYPE(qutim_sdk_0_3::ExtensionIcon)
Definition: dataforms.h:498
Definition: dataforms.h:452
Definition: dataforms.h:436
Definition: dataforms.h:489
Q_DECL_IMPORT QDebug operator<<(QDebug, const Event &)
Definition: dataforms.h:470