This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
Doric/doric-Qt/doric/shader/DoricVLayoutNode.cpp

32 lines
862 B
C++
Raw Normal View History

2021-02-23 14:28:08 +08:00
#include "DoricVLayoutNode.h"
QQuickItem *DoricVLayoutNode::build() {
QQmlComponent component(getContext()->getQmlEngine());
const QUrl url(QStringLiteral("qrc:/doric/qml/vlayout.qml"));
component.loadUrl(url);
2021-02-23 15:10:19 +08:00
if (component.isError()) {
qCritical() << component.errorString();
}
2021-02-23 14:28:08 +08:00
QQuickItem *item = qobject_cast<QQuickItem *>(component.create());
2021-04-13 21:14:17 +08:00
this->createLayouts(item);
getLayouts()->setLayoutType(DoricLayoutType::DoricVLayout);
2021-04-06 16:14:43 +08:00
item->setProperty("wrapper", QString::number((qint64)this));
2021-02-23 14:28:08 +08:00
return item;
}
2021-04-02 20:47:15 +08:00
void DoricVLayoutNode::blend(QQuickItem *view, QString name, QJsonValue prop) {
2021-04-13 21:14:17 +08:00
QQuickItem *container = view;
if (name == "space") {
2021-04-13 21:14:17 +08:00
getLayouts()->setSpacing(prop.toInt());
} else if (name == "gravity") {
2021-04-13 21:14:17 +08:00
getLayouts()->setGravity(prop.toInt());
} else {
DoricGroupNode::blend(view, name, prop);
}
}