From 75ebd5c0d6fcac3c9b542f851a15bd9939922fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=8A=B2=E9=B9=8F?= Date: Wed, 4 Dec 2019 17:39:41 +0800 Subject: [PATCH] qt resource management --- doric/engine/js_engine.h | 7 +++++-- doric/main.cpp | 5 +++-- doric/qml.qrc | 7 +++++-- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/doric/engine/js_engine.h b/doric/engine/js_engine.h index 1534f827..caba32b7 100644 --- a/doric/engine/js_engine.h +++ b/doric/engine/js_engine.h @@ -4,6 +4,7 @@ #include #include #include +#include #include "constant.h" #include "native/native_bridge.h" @@ -69,7 +70,8 @@ private: void initDoricRuntime() { { - QFile *file = new QFile("/Users/maverick/Workspace/doric/js-framework/bundle/doric-sandbox.js"); + QResource resource(":/doric/doric-sandbox.js"); + QFile *file = new QFile(resource.fileName()); file->open(QFile::ReadOnly | QFile::Text); QTextStream in(file); QString script = in.readAll(); @@ -81,7 +83,8 @@ private: } { - QFile *file = new QFile("/Users/maverick/Workspace/doric/js-framework/bundle/doric-lib.js"); + QResource resource(":/doric/doric-lib.js"); + QFile *file = new QFile(resource.fileName()); file->open(QFile::ReadOnly | QFile::Text); QTextStream in(file); QString script = in.readAll(); diff --git a/doric/main.cpp b/doric/main.cpp index a366b549..24455ba2 100644 --- a/doric/main.cpp +++ b/doric/main.cpp @@ -12,7 +12,7 @@ int main(int argc, char *argv[]) QGuiApplication app(argc, argv); QQmlApplicationEngine engine; - const QUrl url(QStringLiteral("qrc:/main.qml")); + const QUrl url(QStringLiteral("qrc:/doric/main.qml")); QObject::connect(&engine, &QQmlApplicationEngine::objectCreated, &app, [url](QObject *obj, const QUrl &objUrl) { if (!obj && url == objUrl) @@ -21,7 +21,8 @@ int main(int argc, char *argv[]) engine.load(url); { - QFile* file = new QFile("/Users/maverick/Workspace/doric/demo/bundle/src/Snake.js"); + QResource resource(":/doric/Snake.js"); + QFile *file = new QFile(resource.fileName()); file->open(QFile::ReadOnly | QFile::Text); QTextStream in(file); QString script = in.readAll(); diff --git a/doric/qml.qrc b/doric/qml.qrc index 5f6483ac..f3f83d85 100644 --- a/doric/qml.qrc +++ b/doric/qml.qrc @@ -1,5 +1,8 @@ - - main.qml + + main.qml + ../../doric-js/bundle/doric-sandbox.js + ../../doric-js/bundle/doric-lib.js + ../../doric-demo/bundle/src/Snake.js