The QQmlNdefRecord class implements the NdefRecord type in QML. More...
Header: | #include <QQmlNdefRecord> |
qmake: | QT += nfc |
Since: | Qt 5.2 |
Instantiated By: | NdefRecord |
Inherits: | QObject |
This class was introduced in Qt 5.2.
enum | TypeNameFormat { Empty, NfcRtd, Mime, Uri, ExternalRtd, Unknown } |
QQmlNdefRecord(const QNdefRecord &record, QObject *parent = nullptr) | |
QQmlNdefRecord(QObject *parent = nullptr) | |
virtual | ~QQmlNdefRecord() |
QNdefRecord | record() const |
void | setRecord(const QNdefRecord &record) |
void | setType(const QString &newtype) |
void | setTypeNameFormat(QQmlNdefRecord::TypeNameFormat newTypeNameFormat) |
QString | type() const |
QQmlNdefRecord::TypeNameFormat | typeNameFormat() const |
void | recordChanged() |
void | typeChanged() |
void | typeNameFormatChanged() |
Q_DECLARE_NDEFRECORD(className, typeNameFormat, type) |
The QQmlNdefRecord class is the base class for all NdefRecord types in QML. To support a new NDEF record type in QML subclass this class and expose new properties, member functions and signals appropriate for the new record type. The following must be done to create a new NDEF record type in QML:
For example the declaration of such a class may look like the following.
class QQmlNdefFooRecord : public QQmlNdefRecord { Q_OBJECT Q_PROPERTY(int foo READ foo WRITE setFoo NOTIFY fooChanged) public: explicit QQmlNdefFooRecord(QObject *parent = 0); Q_INVOKABLE QQmlNdefFooRecord(const QNdefRecord &record, QObject *parent = 0); ~QQmlNdefFooRecord(); int foo() const; void setFoo(int value); signals: void fooChanged(); };
Within the implementation file the Q_DECLARE_NDEFRECORD() macro is expanded:
Q_DECLARE_NDEFRECORD(QQmlNdefFooRecord, QNdefRecord::ExternalRtd, "com.example:f")
Finially the application or plugin code calls qmlRegisterType():
qmlRegisterType<QQmlNdefFooRecord>(uri, 1, 0, "NdefFooRecord");
See also NdefRecord.
This enum describes the type name format of an NDEF record. The values of this enum are according to QNdefRecord::TypeNameFormat
Constant | Value | Description |
---|---|---|
QQmlNdefRecord::Empty |
QNdefRecord::Empty |
An empty NDEF record, the record does not contain a payload. |
QQmlNdefRecord::NfcRtd |
QNdefRecord::NfcRtd |
The NDEF record type is defined by an NFC RTD Specification. |
QQmlNdefRecord::Mime |
QNdefRecord::Mime |
The NDEF record type follows the construct described in RFC 2046. |
QQmlNdefRecord::Uri |
QNdefRecord::Uri |
The NDEF record type follows the construct described in RFC 3986. |
QQmlNdefRecord::ExternalRtd |
QNdefRecord::ExternalRtd |
The NDEF record type follows the construct for external type names described the NFC RTD Specification. |
QQmlNdefRecord::Unknown |
QNdefRecord::Unknown |
The NDEF record type is unknown. |
This property hold the NDEF record that this class represents.
Access functions:
QNdefRecord | record() const |
void | setRecord(const QNdefRecord &record) |
Notifier signal:
void | recordChanged() |
This property hold the type of the NDEF record.
Access functions:
QString | type() const |
void | setType(const QString &newtype) |
Notifier signal:
void | typeChanged() |
This property hold the TNF of the NDEF record.
Access functions:
QQmlNdefRecord::TypeNameFormat | typeNameFormat() const |
void | setTypeNameFormat(QQmlNdefRecord::TypeNameFormat newTypeNameFormat) |
Notifier signal:
void | typeNameFormatChanged() |
Constructs a new QQmlNdefRecord representing record. The parent of the newly constructed object will be set to parent.
Constructs a new empty QQmlNdefRecord with parent.
[signal]
void QQmlNdefRecord::typeChanged()
This signal is emitted when the record type changes.
Note: Notifier signal for property type.
[virtual]
QQmlNdefRecord::~QQmlNdefRecord()
Destroys the QQmlNdefRecord instance.
Returns a copy of the record.
Note: Getter function for property record.
See also setRecord().
Sets the record to record. If the record is set the recordChanged() signal will be emitted.
Note: Setter function for property record.
See also record().
Sets the record type to newtype if it is not currently equal to type(); otherwise does nothing. If the record type is set the typeChanged() signal will be emitted.
Note: Setter function for property type.
See also QNdefRecord::setType() and QNdefRecord::type().
Sets the type name format of the NDEF record to newTypeNameFormat.
Note: Setter function for property typeNameFormat.
See also typeNameFormat().
Returns the type of the record.
Note: Getter function for property type.
See also QNdefRecord::setType() and QNdefRecord::type().
Returns the type name format of the NDEF record.
Note: Getter function for property typeNameFormat.
See also setTypeNameFormat().
This macro ensures that className is declared as the class implementing the NDEF record identified by typeNameFormat and type.
This macro should be expanded in the implementation file for className.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qqmlndefrecord.html