QQmlNdefRecord Class▲
-
Header: QQmlNdefRecord
-
Since: Qt 5.2
-
qmake: QT += nfc
-
Inherited By:
-
Instantiated By: qml-qtnfc-ndefrecord.xml
-
Inherits: QObject
-
Inherited By:
-
Group: QQmlNdefRecord is part of connectivity-nfc
Detailed Description▲
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:
-
The subclass must have a Q_OBJECT macro in its declaration.
-
The subclass must have an invokable constructor that takes a QNdefRecord and a QObject pointer.
-
The subclass must be declared as an NDEF record by expanding the Q_DECLARE_NDEFRECORD() macro in the implementation file of the subclass.
-
The subclass must be registered with 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 &
amp;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&
lt;QQmlNdefFooRecord&
gt;(uri, 1
, 0
, "NdefFooRecord"
);
See Also▲
See also NdefRecord
Member Type Documentation▲
enum QQmlNdefRecord::TypeNameFormat▲
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. |
Property Documentation▲
record : QNdefRecord▲
This property hold the NDEF record that this class represents.
Access functions:
Notifier signal:
-
void recordChanged()
type : QString▲
This property hold the type of the NDEF record.
Access functions:
Notifier signal:
-
void typeChanged()
typeNameFormat : TypeNameFormat▲
This property hold the TNF of the NDEF record.
Access functions:
-
typeNameFormat() const
-
void setTypeNameFormat( newTypeNameFormat)
Notifier signal:
-
void typeNameFormatChanged()
Member Function Documentation▲
[explicit] QQmlNdefRecord::QQmlNdefRecord(QObject *parent = nullptr)▲
Constructs a new empty QQmlNdefRecord with parent.
[explicit] QQmlNdefRecord::QQmlNdefRecord(const QNdefRecord &record, QObject *parent = nullptr)▲
Constructs a new QQmlNdefRecord representing record. The parent of the newly constructed object will be set to parent.
[virtual] QQmlNdefRecord::~QQmlNdefRecord()▲
Destroys the QQmlNdefRecord instance.
QNdefRecord QQmlNdefRecord::record() const▲
void QQmlNdefRecord::setRecord(const QNdefRecord &record)▲
Sets the record to record. If the record is set the recordChanged() signal will be emitted.
Setter function for property record.
See Also▲
See also record()
void QQmlNdefRecord::setType(const QString &newtype)▲
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.
Setter function for property type.
See Also▲
See also QNdefRecord::setType(), QNdefRecord::type()
void QQmlNdefRecord::setTypeNameFormat(QQmlNdefRecord::TypeNameFormat newTypeNameFormat)▲
Sets the type name format of the NDEF record to newTypeNameFormat.
Setter function for property typeNameFormat.
See Also▲
See also typeNameFormat()
QString QQmlNdefRecord::type() const▲
Returns the type of the record.
Getter function for property type.
See Also▲
See also QNdefRecord::setType(), QNdefRecord::type()
void QQmlNdefRecord::typeChanged()▲
This signal is emitted when the record type changes.
Notifier signal for property type.
QQmlNdefRecord::TypeNameFormat QQmlNdefRecord::typeNameFormat() const▲
Returns the type name format of the NDEF record.
Getter function for property typeNameFormat.
See Also▲
See also setTypeNameFormat()
Macro Documentation▲
Q_DECLARE_NDEFRECORD(className, typeNameFormat, type)▲
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.