/* * Copyright (c) 2012 Tobias Markmann * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #pragma once #include #include "QtVCardFieldInfo.h" namespace Swift { namespace Ui { class QtVCardTelephoneField; } class QtVCardTelephoneField : 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("Telephone"); } virtual int getAllowedInstances() const { return UNLIMITED_INSTANCES; } virtual QWidget* createFieldInstance(QWidget* parent, bool editable) const { return new QtVCardTelephoneField(parent, editable); } virtual bool testInstance(QWidget* widget) const { return dynamic_cast(widget) != 0; } }; public: explicit QtVCardTelephoneField(QWidget* parent = 0, bool editable = false); ~QtVCardTelephoneField(); bool isEditable() const; void setEditable(bool); bool isEmpty() const; void setNumber(const QString address); QString getNumber() const; void setPreferred(const bool preferred); bool getPreferred() const; void setHome(const bool home); bool getHome() const; void setWork(const bool work); bool getWork() const; void setVoice(const bool); bool getVoice() const; void setFax(const bool); bool getFax() const; void setPager(const bool); bool getPager() const; void setMSG(const bool); bool getMSG() const; void setCell(const bool); bool getCell() const; void setVideo(const bool); bool getVideo() const; void setBBS(const bool); bool getBBS() const; void setModem(const bool); bool getModem() const; void setISDN(const bool); bool getISDN() const; void setPCS(const bool); bool getPCS() const; private slots: void onTextChanged(const QString&); private: Ui::QtVCardTelephoneField* ui; bool editable; }; }