diff options
Diffstat (limited to 'Swift/QtUI/QtVCardWidget/QtVCardRoleField.h')
-rw-r--r-- | Swift/QtUI/QtVCardWidget/QtVCardRoleField.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/Swift/QtUI/QtVCardWidget/QtVCardRoleField.h b/Swift/QtUI/QtVCardWidget/QtVCardRoleField.h new file mode 100644 index 0000000..f728170 --- /dev/null +++ b/Swift/QtUI/QtVCardWidget/QtVCardRoleField.h @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2012 Tobias Markmann + * Licensed under the simplified BSD license. + * See Documentation/Licenses/BSD-simplified.txt for more information. + */ + +#pragma once + +#include <QWidget> + +#include "QtVCardFieldInfo.h" + +namespace Swift { + + namespace Ui { + class QtVCardRoleField; + } + + class QtVCardRoleField : public QWidget { + Q_OBJECT + Q_PROPERTY(bool editable READ isEditable WRITE setEditable) + Q_PROPERTY(bool empty READ isEmpty) + + public : + class FieldInfo : public QtVCardFieldInfo { + public: + virtual ~FieldInfo() { + } + virtual QString getMenuName() const { + return tr("Role"); + } + virtual int getAllowedInstances() const { + return UNLIMITED_INSTANCES; + } + virtual QWidget* createFieldInstance(QWidget* parent, bool editable) const { + return new QtVCardRoleField(parent, editable); + } + virtual bool testInstance(QWidget* widget) const { + return dynamic_cast<QtVCardRoleField*>(widget) != 0; + } + }; + + public: + explicit QtVCardRoleField(QWidget* parent = 0, bool editable = false); + ~QtVCardRoleField(); + + bool isEditable() const; + void setEditable(bool); + + bool isEmpty() const; + + void setRole(const QString role); + QString getRole() const; + + private slots: + void onTextChanged(const QString&); + + private: + Ui::QtVCardRoleField* ui; + bool editable; + }; + +} |