From 445349220450e813b969a474b2fe7a142e442af2 Mon Sep 17 00:00:00 2001 From: Chris Josten Date: Tue, 16 Feb 2021 18:01:17 +0100 Subject: [PATCH] QtQuick background test --- qtquick/CMakeLists.txt | 5 ++-- qtquick/assets/img/particle.png | Bin 0 -> 690 bytes qtquick/qml.qrc | 7 +++++ qtquick/qml/components/Background.qml | 36 ++++++++++++++++++++++++++ qtquick/qml/main.qml | 14 ++++++++++ qtquick/src/main.cpp | 15 ++++++++++- 6 files changed, 74 insertions(+), 3 deletions(-) create mode 100644 qtquick/assets/img/particle.png create mode 100644 qtquick/qml.qrc create mode 100644 qtquick/qml/components/Background.qml create mode 100644 qtquick/qml/main.qml diff --git a/qtquick/CMakeLists.txt b/qtquick/CMakeLists.txt index 05f8619..34dbf06 100644 --- a/qtquick/CMakeLists.txt +++ b/qtquick/CMakeLists.txt @@ -1,8 +1,9 @@ find_package(Qt5 COMPONENTS Gui Qml Quick) set(sailfin_SOURCES - src/main.cpp) + src/main.cpp) -add_executable(sailfin ${sailfin_SOURCES}) +qt5_add_resources(sailfin_RESOURCES qml.qrc) +add_executable(sailfin ${sailfin_SOURCES} ${sailfin_RESOURCES}) target_link_libraries(sailfin PUBLIC Qt5::Gui Qt5::Qml Qt5::Quick jellyfin-qt) install(TARGETS sailfin diff --git a/qtquick/assets/img/particle.png b/qtquick/assets/img/particle.png new file mode 100644 index 0000000000000000000000000000000000000000..e2d89c08583b6a5bfb58105e2be9fa7495e77ebc GIT binary patch literal 690 zcmV;j0!{siP)4xw1QAZ63egv&EzH8%KC6X=DcZBF}I~|6zXe0>v z{C`IYCOy%$Jl|=j!|**CiEjC<%27w%xGGR0cf||sv62#yxO5cwCD0mh;51s}@mwdz$F-EDw((H?HG{@LSW0J&%fpH;v5xfju2joqF zq$P{ip>+o~nMSE1QXRQim04kT;^OZGx-c>%uY!`#F>IglDC%qA41od=vL|MCFEx(- zY^%K(TOFwgvrAOTSzrWT0`pdxaT-?%``w7s=ud%|`o3x*4$F`iq==AkM2bKlTb0I2 zjD{e28@vxb1XYwAwG3hpM0VU(L>zMRpc-8OvgQ!&y)`C?bOIlPDo`HrQ%CdfNV2Mc zQ!Pl5d(Y-W5Fr5FOo?OjEyO&02mPOx?&g*)C Y15D%pVI6&(o&W#<07*qoM6N<$g6mK;z5oCK literal 0 HcmV?d00001 diff --git a/qtquick/qml.qrc b/qtquick/qml.qrc new file mode 100644 index 0000000..a82a7b3 --- /dev/null +++ b/qtquick/qml.qrc @@ -0,0 +1,7 @@ + + + qml/main.qml + qml/components/Background.qml + assets/img/particle.png + + diff --git a/qtquick/qml/components/Background.qml b/qtquick/qml/components/Background.qml new file mode 100644 index 0000000..f760e91 --- /dev/null +++ b/qtquick/qml/components/Background.qml @@ -0,0 +1,36 @@ +import QtQuick 2.12 +import QtQuick.Particles 2.12 + +Rectangle { + color: "black" + + ParticleSystem { + id: particleSystem + } + + Emitter { + id: emitter + anchors.fill: parent + system: particleSystem + emitRate: width * height / (lifeSpan * 100) + lifeSpan: 10000 + lifeSpanVariation: 500 + size: 16 + endSize: 64 + } + + Wander { + anchors.fill: parent + system: particleSystem + pace: 100 + affectedParameter: Wander.Velocity + xVariance: 300 + yVariance: 300 + } + + + ImageParticle { + source: "/assets/img/particle.png" + system: particleSystem + } +} diff --git a/qtquick/qml/main.qml b/qtquick/qml/main.qml new file mode 100644 index 0000000..d171b11 --- /dev/null +++ b/qtquick/qml/main.qml @@ -0,0 +1,14 @@ +import QtQuick 2.12 +import QtQuick.Window 2.12 + +import "components" + +Window { + width: 600 + height: 600 + visible: true + + Background { + anchors.fill: parent + } +} diff --git a/qtquick/src/main.cpp b/qtquick/src/main.cpp index 84e0c9a..a1fbc5c 100644 --- a/qtquick/src/main.cpp +++ b/qtquick/src/main.cpp @@ -1,9 +1,22 @@ +#include +#include #include +#include + #include int main(int argc, char** argv) { QGuiApplication app(argc, argv); - Jellyfin::registerTypes(); + app.setApplicationDisplayName(QStringLiteral("Sailfin QtQuick")); + qDebug() << "Creating engine"; + QQmlApplicationEngine engine; + + qDebug() << "Registering types"; + Jellyfin::registerTypes(); + + qDebug() << "Loading file"; + engine.load(QStringLiteral("qrc:/qml/main.qml")); + qDebug() << "Entering event loop"; return app.exec(); }