space & gravity dispatch to v & h layout

This commit is contained in:
王劲鹏 2021-02-24 16:23:45 +08:00 committed by osborn
parent d35c8d2118
commit 63c8e864d1
8 changed files with 28 additions and 3 deletions

View File

@ -3,4 +3,3 @@ import QtQuick.Controls 2.5
Row {
}

View File

@ -2,4 +2,5 @@ import QtQuick 2.12
import QtQuick.Controls 2.5
Rectangle {
}

View File

@ -2,4 +2,5 @@ import QtQuick 2.12
import QtQuick.Controls 2.5
Rectangle {
}

View File

@ -13,3 +13,13 @@ QQuickItem *DoricHLayoutNode::build() {
QQuickItem *item = qobject_cast<QQuickItem *>(component.create());
return item;
}
void DoricHLayoutNode::blend(QQuickItem *view, QString name, QJSValue prop) {
if (name == "space") {
view->setProperty("spacing", prop.toInt());
} else if (name == "gravity") {
qWarning() << "gravity: " << prop.toInt();
} else {
DoricGroupNode::blend(view, name, prop);
}
}

View File

@ -9,6 +9,8 @@ public:
using DoricGroupNode::DoricGroupNode;
QQuickItem *build() override;
virtual void blend(QQuickItem *view, QString name, QJSValue prop) override;
};
#endif // DORICHLAYOUTNODE_H

View File

@ -13,3 +13,13 @@ QQuickItem *DoricVLayoutNode::build() {
QQuickItem *item = qobject_cast<QQuickItem *>(component.create());
return item;
}
void DoricVLayoutNode::blend(QQuickItem *view, QString name, QJSValue prop) {
if (name == "space") {
view->setProperty("spacing", prop.toInt());
} else if (name == "gravity") {
qWarning() << "gravity: " << prop.toInt();
} else {
DoricGroupNode::blend(view, name, prop);
}
}

View File

@ -8,6 +8,8 @@ public:
using DoricGroupNode::DoricGroupNode;
QQuickItem *build() override;
virtual void blend(QQuickItem *view, QString name, QJSValue prop) override;
};
#endif // DORICVLAYOUTNODE_H

View File

@ -51,8 +51,8 @@ void DoricViewNode::blend(QQuickItem *view, QString name, QJSValue prop) {
view->setProperty("x", prop.toInt());
} else if (name == "y") {
view->setProperty("y", prop.toInt());
} else if (name == "space") {
view->setProperty("spacing", prop.toInt());
} else if (name == "corners") {
view->setProperty("radius", prop.toInt());
} else {
qCritical() << name << ": " << prop.toString();
}