From 321488dfe88fc3d60b35f3b5b8075adbabf93d29 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 18 Dec 2017 16:37:29 +0100 Subject: Less kpackage usage --- applications/kube/main.cpp | 24 ++++++++++++++++++------ components/CMakeLists.txt | 12 +++++------- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/applications/kube/main.cpp b/applications/kube/main.cpp index 0c2e5eb7..345d35bf 100644 --- a/applications/kube/main.cpp +++ b/applications/kube/main.cpp @@ -34,9 +34,9 @@ #include #include #include +#include #include -#include #include #include #include @@ -187,8 +187,7 @@ int main(int argc, char *argv[]) parser.addHelpOption(); parser.addVersionOption(); parser.addOption({{"k", "keyring"}, - QCoreApplication::translate("main", "To automatically unlock the keyring pass in a keyring in the form of {\"accountId\": {\"resourceId\": \"secret\", *}}"), - "keyring dictionary"} + QCoreApplication::translate("main", "To automatically unlock the keyring pass in a keyring in the form of {\"accountId\": {\"resourceId\": \"secret\", *}}"), "keyring dictionary"} ); parser.process(app); @@ -211,11 +210,24 @@ int main(int argc, char *argv[]) QtWebEngine::initialize(); QIcon::setThemeName("kube"); - auto package = KPackage::PackageLoader::self()->loadPackage("KPackage/GenericQML", "org.kube.components.kube"); - Q_ASSERT(package.isValid()); QQmlApplicationEngine engine; engine.addImageProvider(QLatin1String("kube"), new KubeImageProvider); - engine.load(QUrl::fromLocalFile(package.filePath("mainscript"))); + const auto file = "/org/kube/components/kube/main.qml"; + const auto mainFile = [&] { + for (const auto &path : engine.importPathList()) { + QString f = path + file; + if (QFileInfo::exists(f)) { + return f; + } + } + return QString{}; + }(); + if (mainFile.isEmpty()) { + qWarning() << "Failed to find " << file; + qWarning() << "Searched: " << engine.importPathList(); + return -1; + } + engine.load(QUrl::fromLocalFile(mainFile)); return app.exec(); } diff --git a/components/CMakeLists.txt b/components/CMakeLists.txt index 7b06929f..ff001324 100644 --- a/components/CMakeLists.txt +++ b/components/CMakeLists.txt @@ -1,14 +1,12 @@ project(kube-components) find_package(Qt5 REQUIRED NO_MODULE COMPONENTS Core Quick Test Gui Widgets) -find_package(KF5 REQUIRED COMPONENTS Package) -macro(install_component name) +macro(install_qml_component name) install(DIRECTORY ${name}/contents/ui/ DESTINATION ${QML_INSTALL_DIR}/org/kube/components/${name}) install(FILES ${name}/qmldir DESTINATION ${QML_INSTALL_DIR}/org/kube/components/${name}) - kpackage_install_package(${name} org.kube.components.${name} "genericqml") -endmacro(install_component) +endmacro(install_qml_component) -install_component(kube) -install_component(accounts) -install_component(mailviewer) +install_qml_component(kube) +install_qml_component(accounts) +install_qml_component(mailviewer) -- cgit v1.2.3