6#include <private/qqmlstringconverters_p.h>
16 std::array<double, 2> parameters;
21 u
"({ x: %1, y: %2 })"_s.arg(parameters[0]).arg(parameters[1]));
23 }
else if (
typeName == u
"QVector3D") {
24 std::array<double, 3> parameters;
29 u
"({ x: %1, y: %2, z: %3 })"_s.arg(parameters[0])
33 }
else if (
typeName == u
"QVector4D") {
34 std::array<double, 4> parameters;
39 u
"({ x: %1, y: %2, z: %3, w: %4 })"_s.arg(parameters[0])
44 }
else if (
typeName == u
"QQuaternion") {
45 std::array<double, 4> parameters;
50 u
"({ scalar: %1, x: %2, y: %3, z: %4 })"_s.arg(parameters[0])
55 }
else if (
typeName == u
"QMatrix4x4") {
56 std::array<double, 16> parameters;
57 if (!
QQmlStringConverters::isValidNumberString<16, u
',', u
',', u
',', u
',', u
',', u
',', u
',',
58 u
',', u
',', u
',', u
',', u
',', u
',', u
',',
59 u
','>(
value, ¶meters)) {
63 QString construction = u
"({ "_s;
64 for (
int i = 0;
i < 4; ++
i) {
65 for (
int j = 0;
j < 4; ++
j) {
67 u
"m%1%2: %3"_s.arg(
i + 1).arg(
j + 1).arg(parameters[
i * 4 +
j]));
68 if (!(
i == 3 &&
j == 3))
69 construction.
append(u
", "_s);
72 construction.
append(u
" })"_s);
static QQmlJSStructuredTypeError check(const QString &typeName, const QString &value)
\macro QT_RESTRICTED_CAST_FROM_ASCII
QString & append(QChar c)
bool isValidNumberString(const QString &s, std::array< double, NumParams > *numbers=nullptr)
Combined button and popup list for selecting options.
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
static QQmlJSStructuredTypeError withValidString()
static QQmlJSStructuredTypeError withInvalidString()
static QQmlJSStructuredTypeError fromSuggestedString(const QString &enhancedString)