From a2622616a2d7a13c4ef5726466f7c72ffcecde32 Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Mon, 21 Mar 2022 16:58:56 +0800 Subject: [PATCH] wip Signed-off-by: Yuhang Zhao <2546789017@qq.com> --- src/quick/framelesshelper_quick.cpp | 19 ++++++++++++++----- src/quick/framelesshelperquick.qrc | 3 +-- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/quick/framelesshelper_quick.cpp b/src/quick/framelesshelper_quick.cpp index 501b7a3..389a0a0 100644 --- a/src/quick/framelesshelper_quick.cpp +++ b/src/quick/framelesshelper_quick.cpp @@ -38,6 +38,15 @@ static inline void initResource() FRAMELESSHELPER_BEGIN_NAMESPACE +[[nodiscard]] static inline QUrl getQmlFileUrl(const QString &qml) +{ + Q_ASSERT(!qml.isEmpty()); + if (qml.isEmpty()) { + return {}; + } + return QUrl(QStringLiteral("qrc:///org.wangwenx190.FramelessHelper/qml/%1.qml").arg(qml)); +} + void FramelessHelper::Quick::registerTypes(QQmlEngine *engine) { Q_ASSERT(engine); @@ -56,11 +65,11 @@ void FramelessHelper::Quick::registerTypes(QQmlEngine *engine) return new FramelessQuickUtils; }); initResource(); - qmlRegisterType(QUrl(QStringLiteral("qrc:///qml/MinimizeButton.qml")), FRAMELESSHELPER_QUICK_URI, 1, 0, "MinimizeButton"); - qmlRegisterType(QUrl(QStringLiteral("qrc:///qml/MaximizeButton.qml")), FRAMELESSHELPER_QUICK_URI, 1, 0, "MaximizeButton"); - qmlRegisterType(QUrl(QStringLiteral("qrc:///qml/CloseButton.qml")), FRAMELESSHELPER_QUICK_URI, 1, 0, "CloseButton"); - qmlRegisterType(QUrl(QStringLiteral("qrc:///qml/StandardTitleBar.qml")), FRAMELESSHELPER_QUICK_URI, 1, 0, "StandardTitleBar"); - qmlRegisterType(QUrl(QStringLiteral("qrc:///qml/FramelessWindow.qml")), FRAMELESSHELPER_QUICK_URI, 1, 0, "FramelessWindow"); + qmlRegisterType(getQmlFileUrl(QStringLiteral("MinimizeButton")), FRAMELESSHELPER_QUICK_URI, 1, 0, "MinimizeButton"); + qmlRegisterType(getQmlFileUrl(QStringLiteral("MaximizeButton")), FRAMELESSHELPER_QUICK_URI, 1, 0, "MaximizeButton"); + qmlRegisterType(getQmlFileUrl(QStringLiteral("CloseButton")), FRAMELESSHELPER_QUICK_URI, 1, 0, "CloseButton"); + qmlRegisterType(getQmlFileUrl(QStringLiteral("StandardTitleBar")), FRAMELESSHELPER_QUICK_URI, 1, 0, "StandardTitleBar"); + qmlRegisterType(getQmlFileUrl(QStringLiteral("FramelessWindow")), FRAMELESSHELPER_QUICK_URI, 1, 0, "FramelessWindow"); } FRAMELESSHELPER_END_NAMESPACE diff --git a/src/quick/framelesshelperquick.qrc b/src/quick/framelesshelperquick.qrc index 9282694..f9288ca 100644 --- a/src/quick/framelesshelperquick.qrc +++ b/src/quick/framelesshelperquick.qrc @@ -1,6 +1,5 @@ - - + qml/CloseButton.qml qml/FramelessWindow.qml qml/MaximizeButton.qml