Add declarative QQuickTextMetrics API from QQuickFontMetrics invokables
This allows use of a declarative API for the functions in QFontMetricsF
which take parameters. This solves the problem of QML expressions that
use QML methods not being re-evaluated when the internal data changes,
by allowing the user to set the arguments as properties of a
TextMetrics object, that would otherwise have to be passed to QML
methods.
For example:
FontMetrics {
id: fontMetrics
}
property rect r: fontMetrics.boundingRect("Blah")
At some point, the font of the FontMetrics object is changed, but r
will still represent the original bounding rect. Instead, the user will
now write:
TextMetrics {
id: textMetrics
text: "Blah"
}
property rect r: textMetrics.boundingRect
The QML methods remain in QQuickFontMetrics for those who need an
imperative API.
[ChangeLog][QtQuick] Added QQuickTextMetrics, which provides a
declarative API for the functions in QFontMetricsF which take
arguments.
Change-Id: I019dc4639531906fc751ba61281cc1c695742287
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>