1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-09-14 22:42:34 +02:00

Merge branch 'qt6-support' into 'master'

Add Qt6 support

Closes #138

See merge request kelteseth/ScreenPlay!85
This commit is contained in:
Elias Steurer 2021-11-12 14:09:02 +00:00
commit 80283f58f5
245 changed files with 35094 additions and 37994 deletions

3
.gitignore vendored
View File

@ -76,6 +76,9 @@ Common/vcpkg/**
Common/ffmpeg
/Docs/html/screemplay.index
#Steam
!ScreenPlayWorkshop/SteamSDK/redistributable_bin/linux64/libsteam_api.so
#CMake
CMakeLists.txt.user
CMakeCache.txt

View File

@ -97,7 +97,7 @@ build:linux_release:
- apt install mesa-common-dev curl zip unzip tar git pkg-config apt-transport-https ca-certificates gnupg software-properties-common wget software-properties-common wget python3-pip build-essential libgl1-mesa-dev lld ninja-build cmake -y
- pip3 install aqtinstall
- mkdir Qt
- aqt install --outputdir Qt/ 5.15.2 linux desktop
- aqt install --outputdir Qt/ 6.2.0 linux desktop
- cd Tools
- wget -q https://github.com/QuasarApp/CQtDeployer/releases/download/1.5.2/CQtDeployer_1.5.2_OfflineInstaller_Linux64.run
- python3 setup.py

View File

@ -1,8 +1,7 @@
project(CMake)
set(FILES
# cmake-format: sortable
QtUpdateTranslations.cmake)
set(FILES # cmake-format: sortable
QtUpdateTranslations.cmake)
add_custom_target(
${PROJECT_NAME}

View File

@ -9,7 +9,7 @@ function(qt_update_translations SOURCE_PATH TS_FILES)
foreach(_ts_file ${TS_FILES})
message(STATUS "Update Translation: ${_ts_file}")
execute_process(COMMAND ${LUPDATE_EXECUTABLE} -noobsolete -recursive ${SOURCE_PATH} -ts ${_ts_file} OUTPUT_QUIET)
execute_process(COMMAND ${LUPDATE_EXECUTABLE} -noobsolete -locations none -recursive ${SOURCE_PATH} -ts ${_ts_file} OUTPUT_QUIET)
execute_process(COMMAND ${LRELEASE_EXECUTABLE} ${_ts_file} OUTPUT_QUIET)
endforeach()

View File

@ -7,13 +7,12 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
option(SCREENPLAY_STEAM ON "For FOSS distribution so we do not bundle proprietary code.")
option(SCREENPLAY_STEAM "For FOSS distribution so we do not bundle proprietary code." ON)
option(TESTS_ENABLED OFF)
# Add our *.cmake diretory to the CMAKE_MODULE_PATH, so that our includes are found
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake" ${CMAKE_MODULE_PATH})
file(MAKE_DIRECTORY ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY})
set(CMAKE_CXX_STANDARD 20)
@ -30,7 +29,6 @@ if(${TESTS_ENABLED})
enable_testing()
endif()
set(VCPKG_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../ScreenPlay-vcpkg")
set(VCPKG_INSTALLED_PATH "${VCPKG_PATH}/installed/${VCPKG_ARCH}")
@ -94,4 +92,3 @@ message(STATUS "[PROJECT] VCPKG_PATH = ${VCPKG_PATH}")
message(STATUS "[PROJECT] VCPKG_ARCH = ${VCPKG_ARCH}")
message(STATUS "[PROJECT] CMAKE_PREFIX_PATH = ${CMAKE_PREFIX_PATH}")
message(STATUS "[PROJECT] VCPKG_TARGET_TRIPLET = ${VCPKG_TARGET_TRIPLET}")

View File

@ -5,7 +5,7 @@
``` bash
git clone --recursive https://gitlab.com/kelteseth/ScreenPlay.git ScreenPlay
```
4. Download the latest __Qt 5.15.x__ for you platform. Earlier versions are not supported!
4. Download the latest __Qt 6.2.x__ for you platform. Earlier versions are not supported!
1. [Install instructions Windows](#windows)
1. [Install instructions Linux](#linux)
1. [Install instructions MacOSX](#macosx)
@ -15,10 +15,9 @@ cd Tools
py setup.py
```
* This will install these dependencies via __vcpkg__
* openSSL 1.1.1d
* openSSL
* sentry-native
* doctest
* benchmark
* infoware
<div>
@ -26,7 +25,7 @@ py setup.py
</div>
5. Open __QtCreator__ and open the settings `Tools -> Options`
6. Clone an existing kit like `Qt 5.15.2 MSVC2019 64bit` and add `ScreenPlay` to the new kit name
6. Clone an existing kit like `Qt 6.2.1 MSVC2019 64bit` and add `ScreenPlay` to the new kit name
5. Edit CMake variables amd add CMAKE_TOOLCHAIN_FILE and VCPKG_TARGET_TRIPLET
* `Kits -> <Your_Kit> -> CMake Configuration`
@ -54,9 +53,12 @@ VCPKG_TARGET_TRIPLET:STRING=x64-osx
1. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool
- Select the following features to install:
- Qt 5.15.2
- Qt 6.2.1
- MSVC 2019 64-bit
- Qt WebEngine
- **ALL Additional Libraries**
- Qt Quick 3d
- Qt 5 Compatibility Module
- Qt Shader Tools
- Developer and Designer Tools
- Cmake
- Ninja
@ -77,9 +79,12 @@ sudo zypper install -t pattern devel_basis
1. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool
- Select the following features to install:
- Qt 5.15.2
- Qt 6.2.1
- GCC
- Qt WebEngine
- **ALL Additional Libraries**
- Qt Quick 3d
- Qt 5 Compatibility Module
- Qt Shader Tools
- Developer and Designer Tools
- OpenSSL 1.1.1.c Toolkit
- OpenSSL 64-bit binaries
@ -89,8 +94,12 @@ sudo zypper install -t pattern devel_basis
1. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer)
- Install the Maintaince tool
- Select the following features to install:
- Qt 5.15.2
- Qt 6.2.1
- Qt WebEngine
- **ALL Additional Libraries**
- Qt Quick 3d
- Qt 5 Compatibility Module
- Qt Shader Tools
- Developer and Designer Tools
- OpenSSL 1.1.1.c Toolkit
- OpenSSL 64-bit binaries

View File

@ -1,15 +1,19 @@
# Overview
ScreenPlay consists of 5 projects:
1. **ScreenPlay**
* The main ScreenPlay App UI with Create, Installed, Community and Settings
2. **ScreenPlaySDK**
* A SDK used internally in the ScreenPlayWallpaper and ScreenPlayWidget to talk to the main ScreenPlay app via QLocalsockets (Windows Pipes and Unix sockets)
3. **ScreenPlaySysInfo**
* A qml plugin to read CPU, GPU, Network and all sort of statisitcs
4. **ScreenPlayWallpaper**
ScreenPlay consists of 7 projects:
1. **ScreenPlay executable**
* The main ScreenPlay App UI with Create, Installed, Community and Settings.
2. **ScreenPlayWallpaper executable**
* The Wallpaper executable that is used for displaying a single wallpaper. This uses ScreenPlaySDK to talk via QLocalsockets with the main ScreenPlayApp.
5. **ScreenPlayWidget**
* The Widget executable that is used for displaying a single widget. This uses ScreenPlaySDK to talk via QLocalsockets with the main ScreenPlayApp .
3. **ScreenPlayWidget executable**
* The Widget executable that is used for displaying a single widget. This uses ScreenPlaySDK to talk via QLocalsockets with the main ScreenPlayApp.
4. **ScreenPlayUtil lib**
* Util function, like project.json loading, that are needed in ScreenPlay and Workshop plugin.
5. **ScreenPlaySDK lLib**
* A SDK used internally in the ScreenPlayWallpaper and ScreenPlayWidget to talk to the main ScreenPlay app via QLocalsockets (Windows Pipes and Unix sockets).
6. **ScreenPlaySysInfo lib**
* A qml plugin to read CPU, GPU, Network and all sort of statisitcs.
7. **ScreenPlayWorkshop plugin**
* The Steam workshop plugin that is loaded at runtime.
![ProjectOverview.png](ProjectOverview.png)

View File

@ -1,4 +0,0 @@
---
BasedOnStyle: WebKit
...

View File

@ -4,16 +4,8 @@ set(CMAKE_CXX_STANDARD 20)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOMOC ON)
find_package(QT NAMES Qt6 Qt5 COMPONENTS Core)
find_package(OpenSSL REQUIRED)
find_package(benchmark CONFIG REQUIRED)
find_package(doctest CONFIG REQUIRED)
# CURL must be included before sentry because sentry needs the module and does not include it itself on macos...
find_package(CURL CONFIG REQUIRED)
find_package(sentry CONFIG REQUIRED)
set(src
set(SOURCES
# cmake-format: sortable
app.cpp
src/globalvariables.cpp
src/createimportvideo.cpp
@ -31,7 +23,8 @@ set(src
src/create.cpp
src/wizards.cpp)
set(headers
set(HEADER
# cmake-format: sortable
app.h
src/globalvariables.h
src/createimportvideo.h
@ -51,31 +44,131 @@ set(headers
src/create.h
src/wizards.h)
set(QML
# cmake-format: sortable
main.qml
qml/Create/Create.qml
qml/Create/Wizard.qml
qml/Create/StartInfo.qml
qml/Installed/Installed.qml
qml/Installed/ScreenPlayItem.qml
qml/Installed/ScreenPlayItemImage.qml
qml/Installed/Sidebar.qml
qml/Installed/InstalledWelcomeScreen.qml
qml/Community/Community.qml
qml/Community/XMLNewsfeed.qml
qml/Settings/SettingBool.qml
qml/Settings/Settings.qml
qml/Settings/SettingsButton.qml
qml/Settings/SettingsComboBox.qml
qml/Settings/SettingsExpander.qml
qml/Settings/SettingsHeader.qml
qml/Settings/SettingsHorizontalSeperator.qml
qml/Workshop/Workshop.qml
qml/Monitors/Monitors.qml
qml/Monitors/MonitorSelection.qml
qml/Monitors/MonitorSelectionItem.qml
qml/Monitors/MonitorsProjectSettingItem.qml
qml/Navigation/Navigation.qml
qml/Navigation/NavigationItem.qml
qml/Navigation/NavigationWallpaperConfiguration.qml
qml/Monitors/DefaultVideoControls.qml
qml/Common/TagSelector.qml
qml/Common/Tag.qml
qml/Common/ImageSelector.qml
qml/Common/Slider.qml
qml/Common/RippleEffect.qml
qml/Common/Shake.qml
qml/Common/Grow.qml
qml/Common/GrowIconLink.qml
qml/Common/CloseIcon.qml
qml/Common/Headline.qml
qml/Settings/SettingsPage.qml
qml/Community/CommunityNavItem.qml
qml/Workshop/ScreenPlayItem.qml
qml/Workshop/ScreenPlayItemImage.qml
qml/Workshop/Background.qml
qml/Workshop/WorkshopInstalled.qml
qml/Workshop/WorkshopItem.qml
qml/Workshop/Sidebar.qml
qml/Workshop/Navigation.qml
qml/Workshop/PopupOffline.qml
qml/Workshop/upload/PopupSteamWorkshopAgreement.qml
qml/Workshop/upload/UploadProject.qml
qml/Workshop/upload/UploadProjectBigItem.qml
qml/Workshop/upload/UploadProjectItem.qml
qml/Monitors/SaveNotification.qml
qml/Common/TrayIcon.qml
qml/Installed/Navigation.qml
qml/Common/Search.qml
qml/Common/MouseHoverBlocker.qml
qml/Create/Wizards/HTMLWallpaper.qml
qml/Create/Wizards/HTMLWidget.qml
qml/Create/Wizards/QMLWidget.qml
qml/Create/Wizards/QMLWallpaper.qml
qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaper.qml
qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperInit.qml
qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperResult.qml
qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperVideoImportConvert.qml
qml/Create/Sidebar.qml
qml/Create/Wizards/ImportWebm/ImportWebm.qml
qml/Create/Wizards/ImportWebm/ImportWebmConvert.qml
qml/Create/Wizards/ImportWebm/ImportWebmInit.qml
qml/Common/Dialogs/MonitorConfiguration.qml
qml/Common/Dialogs/SteamNotAvailable.qml
qml/Create/Wizards/WizardPage.qml
qml/Create/Wizards/GifWallpaper.qml
qml/Common/TextField.qml
qml/Common/HeadlineSection.qml
qml/Create/Wizards/WebsiteWallpaper.qml
qml/Common/FileSelector.qml
qml/Create/WizardsFiles/QMLWidgetMain.qml
qml/Create/WizardsFiles/QMLWallpaperMain.qml
qml/Common/LicenseSelector.qml
qml/Common/Util.js
qml/Common/Dialogs/CriticalError.qml
qml/Common/ColorPicker.qml
qml/Create/StartInfoLinkImage.qml
qml/Workshop/SteamProfile.qml
qml/Workshop/SteamWorkshop.qml
qml/Workshop/Forum.qml
qml/Workshop/SteamWorkshopStartPage.qml
qml/Create/Wizards/Importh264/Importh264.qml
qml/Create/Wizards/Importh264/Importh264Convert.qml
qml/Create/Wizards/Importh264/Importh264Init.qml)
list(
APPEND
L10N_LIST
# cmake-format: sortable
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_tr_TR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_it_IT.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_nl_NL.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_de_DE.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_zh_CN.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_pt_BR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_es_ES.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_fr_FR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_ko_KR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_ru_RU.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_vi_VN.ts)
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_tr_TR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_it_IT.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_nl_NL.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_de_DE.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_zh_CN.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_pt_BR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_es_ES.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_fr_FR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_ko_KR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_ru_RU.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_vi_VN.ts)
include(QtUpdateTranslations)
qt_update_translations("${CMAKE_CURRENT_SOURCE_DIR}/qml" "${L10N_LIST}")
# Needed on macos
find_package(Threads REQUIRED)
find_package(OpenSSL REQUIRED)
find_package(benchmark CONFIG REQUIRED)
find_package(doctest CONFIG REQUIRED)
# CURL must be included before sentry because sentry needs the module and does not include it itself on macos...
find_package(CURL CONFIG REQUIRED)
find_package(sentry CONFIG REQUIRED)
find_package(
Qt${QT_VERSION_MAJOR}
Qt6
COMPONENTS Core
Quick
Gui
@ -83,48 +176,55 @@ find_package(
WebSockets
Svg
LinguistTools
WebEngine
QuickCompiler
WebEngineQuick
WebEngineCore
Test)
if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
qt_add_resources(resources ScreenPlayAssets.qrc ScreenPlayQML.qrc)
else()
qtquick_compiler_add_resources(resources ScreenPlayAssets.qrc ScreenPlayQML.qrc)
endif()
qt_add_resources(RESOURCES Resources.qrc)
qt_add_big_resources(FONTS fonts.qrc)
add_library(ScreenPlayLib ${src} ${headers} ${resources} ${resources} ${fonts})
target_include_directories(ScreenPlayLib PUBLIC ./ src/ )
add_library(ScreenPlayLib ${SOURCES} ${HEADER} ${RESOURCES} ${FONTS})
target_include_directories(ScreenPlayLib PUBLIC ./ src/)
target_link_libraries(
ScreenPlayLib
PUBLIC ScreenPlaySDK
ScreenPlayUtil
benchmark::benchmark
benchmark::benchmark_main
doctest::doctest
sentry::sentry
Threads::Threads
Qt${QT_VERSION_MAJOR}::Quick
Qt${QT_VERSION_MAJOR}::Gui
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Core
Qt${QT_VERSION_MAJOR}::WebSockets
Qt${QT_VERSION_MAJOR}::Svg
Qt5::WebEngine)
ScreenPlayUtil
benchmark::benchmark
benchmark::benchmark_main
doctest::doctest
sentry::sentry
Threads::Threads
Qt6::Quick
Qt6::Gui
Qt6::Widgets
Qt6::Core
Qt6::WebSockets
Qt6::Svg
Qt6::WebEngineQuick
Qt6::WebEngineCore
SteamSDK)
if(${TESTS_ENABLED})
add_executable(tst_ScreenPlay tests/tst_main.cpp)
target_link_libraries(tst_ScreenPlay PRIVATE ScreenPlayLib Qt5::Test)
add_executable(tst_ScreenPlay tests/tst_main.cpp)
target_link_libraries(tst_ScreenPlay PRIVATE ScreenPlayLib Qt6::Test)
endif()
add_executable(${PROJECT_NAME} main.cpp)
qt_add_executable(${PROJECT_NAME} main.cpp)
target_link_libraries(${PROJECT_NAME} PRIVATE ScreenPlayLib)
qt5_add_translation(qmFiles ${l10n})
qt_add_big_resources(fonts fonts.qrc)
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
qt_add_translation(qmFiles ${l10n})
qt_add_qml_module(
${PROJECT_NAME}
URI
${PROJECT_NAME}
VERSION
1.0
QML_FILES
${QML})
if(WIN32)
# Icon
@ -178,14 +278,12 @@ if(APPLE)
add_custom_command(
TARGET ${PROJECT_NAME}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/../Common/ffmpeg/ffmpeg
${CMAKE_BINARY_DIR}/bin/)
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/../Common/ffmpeg/ffmpeg ${CMAKE_BINARY_DIR}/bin/)
add_custom_command(
TARGET ${PROJECT_NAME}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/../Common/ffmpeg/ffprobe
${CMAKE_BINARY_DIR}/bin/)
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/../Common/ffmpeg/ffprobe ${CMAKE_BINARY_DIR}/bin/)
endif()
add_custom_command(

View File

@ -115,9 +115,7 @@
<file>legal/lgpl-2.1.txt</file>
<file>profiles.json</file>
<file>qtquickcontrols2.conf</file>
<file>translations/ScreenPlay_zh_cn.qm</file>
<file>assets/images/Early_Access.png</file>
<file>translations/ScreenPlay_pt_br.qm</file>
<file>assets/icons/icon_sort-up-solid.svg</file>
<file>assets/icons/icon_sort-down-solid.svg</file>
<file>assets/icons/brand_reddit.svg</file>
@ -148,5 +146,7 @@
<file>translations/ScreenPlay_nl_NL.ts</file>
<file>translations/ScreenPlay_it_IT.qm</file>
<file>translations/ScreenPlay_it_IT.ts</file>
<file>qml/Create/WizardsFiles/HTMLWallpaperMain.html</file>
<file>qml/Create/WizardsFiles/HTMLWidgetMain.html</file>
</qresource>
</RCC>

View File

@ -1,98 +0,0 @@
<RCC>
<qresource prefix="/">
<file>main.qml</file>
<file>qml/Create/Create.qml</file>
<file>qml/Create/Wizard.qml</file>
<file>qml/Create/StartInfo.qml</file>
<file>qml/Installed/Installed.qml</file>
<file>qml/Installed/ScreenPlayItem.qml</file>
<file>qml/Installed/ScreenPlayItemImage.qml</file>
<file>qml/Installed/Sidebar.qml</file>
<file>qml/Installed/InstalledWelcomeScreen.qml</file>
<file>qml/Community/Community.qml</file>
<file>qml/Community/XMLNewsfeed.qml</file>
<file>qml/Settings/SettingBool.qml</file>
<file>qml/Settings/Settings.qml</file>
<file>qml/Settings/SettingsButton.qml</file>
<file>qml/Settings/SettingsComboBox.qml</file>
<file>qml/Settings/SettingsExpander.qml</file>
<file>qml/Settings/SettingsHeader.qml</file>
<file>qml/Settings/SettingsHorizontalSeperator.qml</file>
<file>qml/Workshop/Workshop.qml</file>
<file>qml/Monitors/Monitors.qml</file>
<file>qml/Monitors/MonitorSelection.qml</file>
<file>qml/Monitors/MonitorSelectionItem.qml</file>
<file>qml/Monitors/MonitorsProjectSettingItem.qml</file>
<file>qml/Navigation/Navigation.qml</file>
<file>qml/Navigation/NavigationItem.qml</file>
<file>qml/Navigation/NavigationWallpaperConfiguration.qml</file>
<file>qml/Monitors/DefaultVideoControls.qml</file>
<file>qml/Common/TagSelector.qml</file>
<file>qml/Common/Tag.qml</file>
<file>qml/Common/ImageSelector.qml</file>
<file>qml/Common/Slider.qml</file>
<file>qml/Common/RippleEffect.qml</file>
<file>qml/Common/Shake.qml</file>
<file>qml/Common/Grow.qml</file>
<file>qml/Common/GrowIconLink.qml</file>
<file>qml/Common/CloseIcon.qml</file>
<file>qml/Common/Headline.qml</file>
<file>qml/Settings/SettingsPage.qml</file>
<file>qml/Community/CommunityNavItem.qml</file>
<file>assets/icons/icon_supervisor_account.svg</file>
<file>assets/icons/icon_new_releases.svg</file>
<file>assets/icons/icon_report_problem.svg</file>
<file>assets/icons/icon_help_center.svg</file>
<file>assets/icons/icon_forum.svg</file>
<file>qml/Workshop/ScreenPlayItem.qml</file>
<file>qml/Workshop/ScreenPlayItemImage.qml</file>
<file>qml/Workshop/Background.qml</file>
<file>qml/Workshop/WorkshopInstalled.qml</file>
<file>qml/Workshop/WorkshopItem.qml</file>
<file>qml/Workshop/Sidebar.qml</file>
<file>qml/Workshop/Navigation.qml</file>
<file>qml/Workshop/PopupOffline.qml</file>
<file>qml/Workshop/upload/PopupSteamWorkshopAgreement.qml</file>
<file>qml/Workshop/upload/UploadProject.qml</file>
<file>qml/Workshop/upload/UploadProjectBigItem.qml</file>
<file>qml/Workshop/upload/UploadProjectItem.qml</file>
<file>qml/Monitors/SaveNotification.qml</file>
<file>qml/Common/TrayIcon.qml</file>
<file>qml/Installed/Navigation.qml</file>
<file>qml/Common/Search.qml</file>
<file>qml/Common/MouseHoverBlocker.qml</file>
<file>qml/Create/Wizards/HTMLWallpaper.qml</file>
<file>qml/Create/Wizards/HTMLWidget.qml</file>
<file>qml/Create/Wizards/QMLWidget.qml</file>
<file>qml/Create/Wizards/QMLWallpaper.qml</file>
<file>qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaper.qml</file>
<file>qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperInit.qml</file>
<file>qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperResult.qml</file>
<file>qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaperVideoImportConvert.qml</file>
<file>qml/Create/Sidebar.qml</file>
<file>qml/Create/Wizards/ImportWebm/ImportWebm.qml</file>
<file>qml/Create/Wizards/ImportWebm/ImportWebmConvert.qml</file>
<file>qml/Create/Wizards/ImportWebm/ImportWebmInit.qml</file>
<file>qml/Common/Dialogs/MonitorConfiguration.qml</file>
<file>qml/Common/Dialogs/SteamNotAvailable.qml</file>
<file>qml/Create/Wizards/WizardPage.qml</file>
<file>qml/Create/Wizards/GifWallpaper.qml</file>
<file>qml/Common/TextField.qml</file>
<file>qml/Common/HeadlineSection.qml</file>
<file>qml/Create/Wizards/WebsiteWallpaper.qml</file>
<file>qml/Common/FileSelector.qml</file>
<file>qml/Create/WizardsFiles/QMLWidgetMain.qml</file>
<file>qml/Create/WizardsFiles/QMLWallpaperMain.qml</file>
<file>qml/Create/WizardsFiles/HTMLWallpaperMain.html</file>
<file>qml/Create/WizardsFiles/HTMLWidgetMain.html</file>
<file>qml/Common/LicenseSelector.qml</file>
<file>qml/Common/Util.js</file>
<file>qml/Common/Dialogs/CriticalError.qml</file>
<file>qml/Common/ColorPicker.qml</file>
<file>qml/Create/StartInfoLinkImage.qml</file>
<file>qml/Workshop/SteamProfile.qml</file>
<file>qml/Workshop/SteamWorkshop.qml</file>
<file>qml/Workshop/Forum.qml</file>
<file>qml/Workshop/SteamWorkshopStartPage.qml</file>
</qresource>
</RCC>

View File

@ -1,5 +1,7 @@
#include "app.h"
#include "steam/steam_qt_enums_generated.h"
namespace ScreenPlay {
/*!
\module ScreenPlay
@ -58,7 +60,7 @@ App::App()
QGuiApplication::setOrganizationName("ScreenPlay");
QGuiApplication::setOrganizationDomain("screen-play.app");
QGuiApplication::setApplicationName("ScreenPlay");
QGuiApplication::setApplicationVersion("0.14.0");
QGuiApplication::setApplicationVersion("0.15.0");
QGuiApplication::setQuitOnLastWindowClosed(false);
QFontDatabase::addApplicationFont(":/assets/fonts/LibreBaskerville-Italic.ttf");
@ -96,6 +98,16 @@ App::App()
qRegisterMetaType<MonitorListModel*>();
qRegisterMetaType<ProfileListModel*>();
// TODO: This is a workaround because I don't know how to
// init this in the ScreenPlayWorkshop plugin.
// Move to workshop plugin.
qmlRegisterUncreatableMetaObject(ScreenPlayWorkshopSteamEnums::staticMetaObject,
"WorkshopEnums",
1, 0,
"SteamEnums",
"Error: only enums");
// Registers the enums from globalvariables.
// Apparently this is the only way for qml to work
// https://www.kdab.com/new-qt-5-8-meta-object-support-namespaces/
@ -202,7 +214,7 @@ void App::init()
// Needed for macos .app files
m_mainWindowEngine->addPluginPath(QGuiApplication::instance()->applicationDirPath());
#endif
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml")));
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/ScreenPlay/main.qml")));
// Must be called last to display a error message on startup by the qml engine
m_screenPlayManager->init(m_globalVariables, m_monitorListModel, m_settings);

View File

@ -48,7 +48,7 @@
#include <QtGlobal>
#include <QtQml>
#include <QtSvg>
#include <QtWebEngine>
#include <QtWebEngineCore>
#include "src/create.h"
#include "src/globalvariables.h"

View File

@ -36,7 +36,8 @@
#include <QApplication>
#include <QCommandLineParser>
#include <QDebug>
#include <QtWebEngine/QtWebEngine>
#include <QtWebEngineQuick>
#include <sentry.h>
#define DOCTEST_CONFIG_IMPLEMENT
#define DOCTEST_CONFIG_SUPER_FAST_ASSERTS
@ -44,11 +45,9 @@
int main(int argc, char* argv[])
{
Q_INIT_RESOURCE(ScreenPlayQML);
Q_INIT_RESOURCE(ScreenPlayAssets);
Q_INIT_RESOURCE(Resources);
QtWebEngine::initialize();
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QtWebEngineQuick::initialize();
QApplication::setAttribute(Qt::AA_ShareOpenGLContexts);
QApplication qtGuiApp(argc, argv);

View File

@ -1,11 +1,11 @@
import QtQuick 2.12
import QtQuick.Window 2.2
import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.12
import QtQuick.Layouts 1.3
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Window
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import Settings 1.0
import Qt5Compat.GraphicalEffects
import "qml/Monitors" as Monitors
import "qml/Common" as Common
import "qml/Common/Dialogs" as Dialogs
@ -38,12 +38,12 @@ ApplicationWindow {
}
if (name === "Installed") {
stackView.replace("qrc:/qml/" + name + "/" + name + ".qml", {
stackView.replace("qrc:/ScreenPlay/qml/" + name + "/" + name + ".qml", {
"sidebar": sidebar
})
return
}
stackView.replace("qrc:/qml/" + name + "/" + name + ".qml")
stackView.replace("qrc:/ScreenPlay/qml/" + name + "/" + name + ".qml")
sidebar.state = "inactive"
}
@ -193,7 +193,7 @@ ApplicationWindow {
Navigation.Navigation {
id: nav
onChangePage: {
onChangePage: (name)=> {
monitors.close();
switchPage(name);
}

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls.Material 2.12
import QtGraphicalEffects 1.0
import QtQuick.Particles 2.0
import QtQuick
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Particles
Rectangle {
id: element

View File

@ -1,6 +1,6 @@
import QtQuick 2.14
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.3
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
/*!
\qmltype Close Icon

View File

@ -24,9 +24,9 @@
SOFTWARE.
*/
import QtQuick 2.12
import QtQuick.Layouts 1.12
import QtQuick.Controls 2.12
import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
import QtQuick.Shapes 1.12
Pane {

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.3
import QtQuick.Controls.Material 2.12
import QtQuick.Window 2.2
import QtGraphicalEffects 1.15
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Window
import Qt5Compat.GraphicalEffects
import ScreenPlay 1.0
Dialog {

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.3
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import ScreenPlay 1.0
Dialog {

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.3
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
Dialog {
id: dialogSteam

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12
import QtQuick.Dialogs 1.2
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Dialogs
import ScreenPlay 1.0
/*!
@ -140,8 +140,8 @@ Item {
title: qsTr("Please choose a file")
onAccepted: {
root.file = fileDialog.fileUrl;
txtName.text = fileDialog.fileUrl.toString();
root.file = fileDialog.currentFile ;
txtName.text = fileDialog.currentFile.toString();
}
}

View File

@ -1,4 +1,4 @@
import QtQuick 2.12
import QtQuick
Scale {
id: root

View File

@ -1,6 +1,6 @@
import QtQuick 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
Rectangle {
id: root

View File

@ -1,5 +1,5 @@
import QtQuick 2.14
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {
@ -15,7 +15,6 @@ Item {
font.pointSize: 18
color: Material.primaryTextColor
text: "Headline"
font.capitalization: Font.Capitalize
font.family: ScreenPlay.settings.font
}

View File

@ -1,5 +1,5 @@
import QtQuick 2.12
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls.Material
import ScreenPlay 1.0
Text {

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12
import QtQuick.Dialogs 1.2
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Dialogs
import ScreenPlay 1.0
/*!

View File

@ -1,7 +1,7 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.12
import QtQuick.Layouts 1.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
ColumnLayout {

View File

@ -1,4 +1,4 @@
import QtQuick 2.0
import QtQuick
MouseArea {
anchors.fill: parent

View File

@ -4,9 +4,9 @@
* (THE BSD 2-CLAUSE LICENSE)
*/
import QtQuick 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
Item {
id: root

View File

@ -1,5 +1,5 @@
import QtQuick 2.0
import QtQuick.Controls 2.0
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material 2.0
import ScreenPlay 1.0

View File

@ -1,4 +1,4 @@
import QtQuick 2.12
import QtQuick
Translate {
id: root

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick
import QtQuick.Controls.Material 2.0 as QQCM
import QtQuick.Layouts 1.12
import QtQuick.Controls 2.2 as QQC
import QtQuick.Layouts
import QtQuick.Controls as QQC
import ScreenPlay 1.0
Item {

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.3
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {

View File

@ -1,9 +1,9 @@
import QtQuick 2.14
import QtQuick.Window 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Controls 2.14 as QQC
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.14
import QtQuick
import QtQuick.Window
import QtQuick.Controls.Material
import QtQuick.Controls as QQC
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import ScreenPlay 1.0
Item {

View File

@ -1,14 +1,14 @@
import QtQuick 2.0
import Qt.labs.platform 1.0
import QtQuick
import Qt.labs.platform 1.1
import ScreenPlay 1.0
SystemTrayIcon {
id: root
visible: true
iconSource: "qrc:/assets/icons/app.ico"
icon.source: "qrc:/assets/icons/app.ico"
tooltip: qsTr("ScreenPlay - Double click to change you settings.")
onActivated: {
onActivated: (reason)=>{
switch (reason) {
case SystemTrayIcon.Unknown:
break;

View File

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.14
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.3
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import ScreenPlay 1.0
import QtWebEngine 1.8
import QtWebEngine
Item {
id: root

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.14
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import ScreenPlay 1.0
TabButton {

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.2
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.3
import QtQuick.XmlListModel 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import QtQml.XmlListModel
import ScreenPlay 1.0
Item {
@ -34,29 +34,29 @@ Item {
source: "https://screen-play.app/blog/index.xml"
query: "/rss/channel/item"
XmlRole {
XmlListModelRole {
name: "title"
query: "title/string()"
elementName: "title"
}
XmlRole {
XmlListModelRole {
name: "image"
query: "image/string()"
elementName: "image"
}
XmlRole {
XmlListModelRole {
name: "pubDate"
query: "pubDate/string()"
elementName: "pubDate"
}
XmlRole {
XmlListModelRole {
name: "link"
query: "link/string()"
elementName: "link"
}
XmlRole {
XmlListModelRole {
name: "description"
query: "description/string()"
elementName: "description"
}
}

View File

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.12
import QtQuick.Particles 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Particles
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.QMLUtilities 1.0
@ -14,7 +14,7 @@ Item {
Component.onCompleted: {
wizardContentWrapper.state = "in";
stackView.push("qrc:/qml/Create/StartInfo.qml");
stackView.push("qrc:/ScreenPlay/qml/Create/StartInfo.qml");
}
Sidebar {

View File

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.12
import QtQuick.Particles 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Particles
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.QMLUtilities 1.0
@ -25,69 +25,6 @@ Rectangle {
color: Material.background
ListView {
/*
ListElement {
headline: qsTr("QML Particle Wallpaper")
source: ""
category: "Example Wallpaper"
}
ListElement {
headline: qsTr("Countdown Clock Wallpaper")
source: ""
category: "Example Wallpaper"
}
ListElement {
headline: qsTr("QML Water Shader Wallpaper")
source: ""
category: "Example Wallpaper"
}
ListElement {
headline: qsTr("QML Shadertoy Shader Wallpaper")
source: ""
category: "Example Wallpaper"
}
ListElement {
headline: qsTr("QML Lightning Shader Wallpaper")
source: ""
category: "Example Wallpaper"
}
ListElement {
headline: qsTr("Clock Widget")
source: "qrc:/qml/Create/Wizards/CreateEmptyWidget/CreateEmptyWidget.qml"
category: "Example Widget"
}
ListElement {
headline: qsTr("CPU Widget")
source: "qrc:/qml/Create/Wizards/CreateEmptyWidget/CreateEmptyWidget.qml"
category: "Example Widget"
}
ListElement {
headline: qsTr("Storage Widget")
source: "qrc:/qml/Create/Wizards/CreateEmptyWidget/CreateEmptyWidget.qml"
category: "Example Widget"
}
ListElement {
headline: qsTr("RAM Widget")
source: "qrc:/qml/Create/Wizards/CreateEmptyWidget/CreateEmptyWidget.qml"
category: "Example Widget"
}
ListElement {
headline: qsTr("XKCD Widget")
source: "qrc:/qml/Create/Wizards/CreateEmptyWidget/CreateEmptyWidget.qml"
category: "Example Widget"
}
*/
id: listView
objectName: "wizardsListView"
@ -106,7 +43,7 @@ Rectangle {
function onWizardExited() {
root.expanded = true
stackView.clear(StackView.PushTransition)
stackView.push("qrc:/qml/Create/StartInfo.qml")
stackView.push("qrc:/ScreenPlay/qml/Create/StartInfo.qml")
listView.currentIndex = 0
ScreenPlay.util.setNavigationActive(true)
}
@ -117,63 +54,70 @@ Rectangle {
model: ListModel {
ListElement {
headline: qsTr("Tools Overview")
source: "qrc:/qml/Create/StartInfo.qml"
source: "qrc:/ScreenPlay/qml/Create/StartInfo.qml"
category: "Home"
objectName: ""
}
ListElement {
headline: qsTr("Video import and convert (all types)")
source: "qrc:/qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaper.qml"
category: "Video Wallpaper"
objectName: "videoImportConvert"
}
ListElement {
headline: qsTr("Video Import (.webm)")
source: "qrc:/qml/Create/Wizards/ImportWebm/ImportWebm.qml"
headline: qsTr("Video Import h264 (.mp4)")
source: "qrc:/ScreenPlay/qml/Create/Wizards/Importh264/Importh264.qml"
category: "Video Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("Video Import VP8 & VP9 (.webm)")
source: "qrc:/ScreenPlay/qml/Create/Wizards/ImportWebm/ImportWebm.qml"
category: "Video Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("Video import (all types)")
source: "qrc:/ScreenPlay/qml/Create/Wizards/ImportVideoAndConvert/CreateWallpaper.qml"
category: "Video Wallpaper"
objectName: "videoImportConvert"
}
ListElement {
headline: qsTr("GIF Wallpaper")
source: "qrc:/qml/Create/Wizards/GifWallpaper.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/GifWallpaper.qml"
category: "Video Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("QML Wallpaper")
source: "qrc:/qml/Create/Wizards/QMLWallpaper.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/QMLWallpaper.qml"
category: "Code Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("HTML5 Wallpaper")
source: "qrc:/qml/Create/Wizards/HTMLWallpaper.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/HTMLWallpaper.qml"
category: "Code Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("Website Wallpaper")
source: "qrc:/qml/Create/Wizards/WebsiteWallpaper.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/WebsiteWallpaper.qml"
category: "Code Wallpaper"
objectName: ""
}
ListElement {
headline: qsTr("QML Widget")
source: "qrc:/qml/Create/Wizards/QMLWidget.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/QMLWidget.qml"
category: "Code Widgets"
objectName: ""
}
ListElement {
headline: qsTr("HTML Widget")
source: "qrc:/qml/Create/Wizards/HTMLWidget.qml"
source: "qrc:/ScreenPlay/qml/Create/Wizards/HTMLWidget.qml"
category: "Code Widgets"
objectName: ""
}

View File

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.15
import QtQuick.Controls.Material 2.12
import QtQuick.Particles 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Particles
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.QMLUtilities 1.0
@ -16,7 +16,7 @@ Item {
Common.Headline {
id: headline
text: qsTr("Free Tools to create wallpaper")
text: qsTr("Free tools to help you to create wallpaper")
anchors {
top: parent.top
@ -33,7 +33,7 @@ Item {
color: Material.primaryTextColor
font.pointSize: 12
font.family: ScreenPlay.settings.font
text: qsTr("Below you can find tools to create wallaper beyond the tools that ScreenPlay provides for you!")
text: qsTr("Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!")
anchors {
top: headline.bottom

View File

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.15
import QtQuick.Controls.Material 2.12
import QtQuick.Particles 2.0
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Particles
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.QMLUtilities 1.0

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.3
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../Common"

View File

@ -1,8 +1,7 @@
import QtQuick 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Controls 2.14
import QtQuick.Layouts 1.14
import QtQuick.Dialogs 1.2
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Controls
import QtQuick.Layouts
import ScreenPlay 1.0
import "../../Common" as Common

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../Common" as Common

View File

@ -1,8 +1,8 @@
import QtQuick 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Controls 2.14
import QtQuick.Layouts 1.14
import QtQuick.Dialogs 1.2
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Controls
import QtQuick.Layouts
import ScreenPlay 1.0
import "../../Common" as Common

View File

@ -1,17 +1,17 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
Item {
id: root
signal wizardStarted()
signal wizardExited()
signal next()
signal wizardStarted
signal wizardExited
signal next
SwipeView {
id: swipeView
@ -21,26 +21,25 @@ Item {
clip: true
CreateWallpaperInit {
onNext: startConvert(filePath,codec);
function startConvert(filePath,codec){
root.wizardStarted();
swipeView.currentIndex = 1;
createWallpaperVideoImportConvert.codec = codec;
createWallpaperVideoImportConvert.filePath = filePath;
ScreenPlay.create.createWallpaperStart(filePath, codec, quality);
onNext: (filePath, codec) => {
startConvert(filePath, codec)
}
}
function startConvert(filePath, codec) {
root.wizardStarted()
swipeView.currentIndex = 1
createWallpaperVideoImportConvert.codec = codec
createWallpaperVideoImportConvert.filePath = filePath
ScreenPlay.create.createWallpaperStart(filePath, codec, quality)
}
CreateWallpaperVideoImportConvert {
id: createWallpaperVideoImportConvert
onAbort: root.wizardExited()
}
CreateWallpaperResult {
}
}
CreateWallpaperVideoImportConvert {
id: createWallpaperVideoImportConvert
onAbort: root.wizardExited()
}
CreateWallpaperResult {}
}
}

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick.Dialogs 1.3
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import QtQuick.Dialogs
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../../Common" as Common
@ -141,7 +141,7 @@ Item {
nameFilters: ["Video files (*.mp4 *.mpg *.mp2 *.mpeg *.ogv *.avi *.wmv *.m4v *.3gp *.flv)"]
onAccepted: {
root.next(fileDialogImportVideo.fileUrl, model.get(comboBoxCodec.currentIndex).value);
root.next(fileDialogImportVideo.currentFile , model.get(comboBoxCodec.currentIndex).value);
}
}

View File

@ -1,9 +1,9 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Layouts 1.14
import QtQuick.Dialogs 1.2
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import Qt5Compat.GraphicalEffects
import ScreenPlay 1.0
import ScreenPlay.Create 1.0

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.Enums.ImportVideoState 1.0
@ -202,7 +202,6 @@ Item {
id: txtConvertNumber
color: "white"
text: qsTr("")
font.pointSize: 21
font.family: ScreenPlay.settings.font

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
@ -21,7 +21,7 @@ Item {
clip: true
ImportWebmInit {
onNext: {
onNext: (filePath) =>{
root.wizardStarted();
swipeView.currentIndex = 1;
createWallpaperVideoImportConvert.filePath = filePath;

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.Enums.ImportVideoState 1.0
@ -197,7 +197,6 @@ Item {
id: txtConvertNumber
color: "white"
text: qsTr("")
font.pointSize: 21
font.family: ScreenPlay.settings.font

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick.Dialogs 1.3
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import QtQuick.Dialogs
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../../Common" as Common
@ -168,7 +168,7 @@ Item {
nameFilters: ["Video files (*.webm)"]
onAccepted: {
root.next(fileDialogImportVideo.fileUrl);
root.next(fileDialogImportVideo.currentFile);
}
}

View File

@ -0,0 +1,41 @@
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
Item {
id: root
signal wizardStarted()
signal wizardExited()
signal next()
SwipeView {
id: swipeView
anchors.fill: parent
interactive: false
clip: true
Importh264Init {
onNext: (filePath) =>{
root.wizardStarted();
swipeView.currentIndex = 1;
createWallpaperVideoImportConvert.filePath = filePath;
ScreenPlay.util.setNavigationActive(false);
ScreenPlay.create.importH264(filePath);
}
}
Importh264Convert {
id: createWallpaperVideoImportConvert
onExit: root.wizardExited()
}
}
}

View File

@ -0,0 +1,396 @@
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import ScreenPlay.Enums.ImportVideoState 1.0
import "../../../Common" as Common
Item {
id: root
property bool conversionFinishedSuccessful: false
property bool canSave: false
property string filePath
signal exit()
signal save()
function basename(str) {
let filenameWithExtentions = (str.slice(str.lastIndexOf("/") + 1));
let filename = filenameWithExtentions.split('.').slice(0, -1).join('.');
return filename;
}
function checkCanSave() {
if (canSave && conversionFinishedSuccessful)
btnSave.enabled = true;
else
btnSave.enabled = false;
}
onCanSaveChanged: root.checkCanSave()
onFilePathChanged: {
textFieldName.text = basename(filePath);
}
Connections {
function onCreateWallpaperStateChanged(state) {
switch (state) {
case ImportVideoState.AnalyseVideo:
txtConvert.text = qsTr("AnalyseVideo...");
break;
case ImportVideoState.ConvertingPreviewImage:
txtConvert.text = qsTr("Generating preview image...");
break;
case ImportVideoState.ConvertingPreviewThumbnailImage:
txtConvert.text = qsTr("Generating preview thumbnail image...");
break;
case ImportVideoState.ConvertingPreviewImageFinished:
imgPreview.source = "file:///" + ScreenPlay.create.workingDir + "/preview.jpg";
imgPreview.visible = true;
break;
case ImportVideoState.ConvertingPreviewVideo:
txtConvert.text = qsTr("Generating 5 second preview video...");
break;
case ImportVideoState.ConvertingPreviewGif:
txtConvert.text = qsTr("Generating preview gif...");
break;
case ImportVideoState.ConvertingPreviewGifFinished:
gifPreview.source = "file:///" + ScreenPlay.create.workingDir + "/preview.gif";
imgPreview.visible = false;
gifPreview.visible = true;
gifPreview.playing = true;
break;
case ImportVideoState.ConvertingAudio:
txtConvert.text = qsTr("Converting Audio...");
break;
case ImportVideoState.ConvertingVideo:
txtConvert.text = qsTr("Converting Video... This can take some time!");
break;
case ImportVideoState.ConvertingVideoError:
txtConvert.text = qsTr("Converting Video ERROR!");
break;
case ImportVideoState.AnalyseVideoError:
txtConvert.text = qsTr("Analyse Video ERROR!");
break;
case ImportVideoState.Finished:
txtConvert.text = "";
conversionFinishedSuccessful = true;
busyIndicator.running = false;
btnExit.enabled = false;
root.checkCanSave();
break;
}
}
function onProgressChanged(progress) {
var percentage = Math.floor(progress * 100);
if (percentage > 100 || progress > 0.95)
percentage = 100;
if (percentage === NaN)
print(progress, percentage);
txtConvertNumber.text = percentage + "%";
}
target: ScreenPlay.create
}
Common.Headline {
id: txtHeadline
text: qsTr("Import a video to a wallpaper")
anchors {
top: parent.top
left: parent.left
margins: 40
bottomMargin: 0
}
}
Item {
id: wrapperLeft
width: parent.width * 0.66
anchors {
left: parent.left
top: txtHeadline.bottom
margins: 30
bottom: parent.bottom
}
Rectangle {
id: imgWrapper
color: Material.color(Material.Grey)
anchors {
top: parent.top
right: parent.right
rightMargin: 20
bottom: previewSelector.top
bottomMargin: 20
left: parent.left
}
Image {
id: imgPreview
fillMode: Image.PreserveAspectCrop
asynchronous: true
visible: false
anchors.fill: parent
}
AnimatedImage {
id: gifPreview
fillMode: Image.PreserveAspectCrop
asynchronous: true
playing: true
visible: false
anchors.fill: parent
}
LinearGradient {
id: shadow
cached: true
anchors.fill: parent
start: Qt.point(0, height)
end: Qt.point(0, 0)
gradient: Gradient {
GradientStop {
id: gradientStop0
position: 0
color: "#DD000000"
}
GradientStop {
id: gradientStop1
position: 1
color: "#00000000"
}
}
}
BusyIndicator {
id: busyIndicator
anchors.centerIn: parent
running: true
}
Text {
id: txtConvertNumber
color: "white"
font.pointSize: 21
font.family: ScreenPlay.settings.font
anchors {
horizontalCenter: parent.horizontalCenter
bottom: parent.bottom
bottomMargin: 40
}
}
Text {
id: txtConvert
color: Material.secondaryTextColor
text: qsTr("Generating preview video...")
font.pointSize: 14
font.family: ScreenPlay.settings.font
anchors {
horizontalCenter: parent.horizontalCenter
bottom: parent.bottom
bottomMargin: 20
}
}
}
Common.ImageSelector {
id: previewSelector
height: 80
anchors {
right: parent.right
rightMargin: 20
left: parent.left
bottom: parent.bottom
}
}
}
Item {
id: wrapperRight
width: parent.width * 0.33
anchors {
top: txtHeadline.bottom
topMargin: 30
bottom: parent.bottom
right: parent.right
}
ColumnLayout {
id: column
spacing: 0
anchors {
right: parent.right
left: parent.left
margins: 30
top: parent.top
topMargin: 0
bottom: column1.top
bottomMargin: 50
}
Common.TextField {
id: textFieldName
placeholderText: qsTr("Name (required!)")
width: parent.width
Layout.fillWidth: true
onTextChanged: {
if (textFieldName.text.length >= 3)
canSave = true;
else
canSave = false;
}
}
Common.TextField {
id: textFieldDescription
placeholderText: qsTr("Description")
width: parent.width
Layout.fillWidth: true
}
Common.TextField {
id: textFieldYoutubeURL
placeholderText: qsTr("Youtube URL")
width: parent.width
Layout.fillWidth: true
}
Common.TagSelector {
id: textFieldTags
width: parent.width
Layout.fillWidth: true
}
}
Row {
id: column1
height: 80
width: childrenRect.width
spacing: 10
anchors {
right: parent.right
rightMargin: 30
bottomMargin: -10
bottom: parent.bottom
}
Button {
id: btnExit
text: qsTr("Abort")
Material.background: Material.Red
Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: {
root.exit();
ScreenPlay.create.cancel();
}
}
Button {
id: btnSave
objectName: "btnSave"
text: qsTr("Save")
enabled: false
Material.background: Material.accent
Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: {
if (conversionFinishedSuccessful) {
btnSave.enabled = false;
ScreenPlay.create.saveWallpaper(textFieldName.text, textFieldDescription.text, root.filePath, previewSelector.imageSource, textFieldYoutubeURL.text, Create.H264, textFieldTags.getTags());
savePopup.open();
}
}
}
}
}
Popup {
id: savePopup
modal: true
focus: true
width: 250
anchors.centerIn: parent
height: 200
onOpened: timerSave.start()
BusyIndicator {
anchors.centerIn: parent
running: true
}
Text {
text: qsTr("Save Wallpaper...")
color: Material.primaryTextColor
anchors.horizontalCenter: parent.horizontalCenter
anchors.bottom: parent.bottom
anchors.bottomMargin: 30
font.family: ScreenPlay.settings.font
}
Timer {
id: timerSave
interval: 1000 + Math.random() * 1000
onTriggered: {
savePopup.close();
ScreenPlay.util.setNavigationActive(true);
root.exit();
}
}
}
}

View File

@ -0,0 +1,162 @@
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import QtQuick.Dialogs
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../../Common" as Common
import "../../"
Item {
id: root
signal next(var filePath)
ColumnLayout {
id: wrapper
spacing: 40
anchors {
top: parent.top
bottom: btnOpenDocs.top
left: parent.left
right: parent.right
margins: 20
}
Common.Headline {
Layout.fillWidth: true
text: qsTr("Import a .mp4 video")
}
RowLayout {
Layout.fillHeight: true
Layout.fillWidth: true
spacing: 40
ColumnLayout {
Layout.fillWidth: true
Layout.fillHeight: true
spacing: 40
Text {
id: txtDescription
text: qsTr("ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.")
color: Material.primaryTextColor
Layout.fillWidth: true
font.pointSize: 13
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
font.family: ScreenPlay.settings.font
}
DropArea {
id: dropArea
Layout.fillHeight: true
Layout.fillWidth: true
onExited: {
bg.color = Qt.darker(Material.backgroundColor)
}
onEntered: {
bg.color = Qt.darker(Qt.darker(
Material.backgroundColor))
drag.accept(Qt.LinkAction)
}
onDropped: {
let file = ScreenPlay.util.toLocal(drop.urls[0])
bg.color = Qt.darker(Qt.darker(
Material.backgroundColor))
if (file.endsWith(".mp4"))
root.next(drop.urls[0])
else
txtFile.text = qsTr(
"Invalid file type. Must be valid h264 (*.mp4)!")
}
Rectangle {
id: bg
anchors.fill: parent
radius: 3
color: Qt.darker(Material.backgroundColor)
}
Image {
id: bgPattern
anchors.fill: parent
fillMode: Image.Tile
opacity: 0.2
source: "qrc:/assets/images/noisy-texture-3.png"
}
Text {
id: txtFile
text: qsTr("Drop a *.mp4 file here or use 'Select file' below.")
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
color: Material.primaryTextColor
font.pointSize: 13
horizontalAlignment: Qt.AlignHCenter
verticalAlignment: Qt.AlignVCenter
font.family: ScreenPlay.settings.font
anchors {
fill: parent
margins: 40
}
}
}
}
}
}
Button {
id: btnOpenDocs
text: qsTr("Open Documentation")
Material.background: Material.LightGreen
Material.foreground: "white"
icon.source: "qrc:/assets/icons/icon_document.svg"
icon.color: "white"
icon.width: 16
icon.height: 16
font.family: ScreenPlay.settings.font
onClicked: Qt.openUrlExternally(
"https://kelteseth.gitlab.io/ScreenPlayDocs/wallpaper/wallpaper/#performance")
anchors {
bottom: parent.bottom
left: parent.left
margins: 20
}
}
Button {
text: qsTr("Select file")
highlighted: true
font.family: ScreenPlay.settings.font
onClicked: {
fileDialogImportVideo.open()
}
FileDialog {
id: fileDialogImportVideo
nameFilters: ["Video files (*.mp4)"]
onAccepted: {
root.next(fileDialogImportVideo.currentFile)
}
}
anchors {
right: parent.right
bottom: parent.bottom
margins: 20
}
}
}

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../Common" as Common

View File

@ -1,8 +1,8 @@
import QtQuick 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Controls 2.14
import QtQuick.Layouts 1.14
import QtQuick.Dialogs 1.2
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Controls
import QtQuick.Layouts
import ScreenPlay 1.0
import "../../Common" as Common

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.2
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Create 1.0
import "../../Common" as Common

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.15
import QtQuick.Controls.Material 2.3
import QtQuick.Layouts 1.12
import QtQuick.Window 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import QtQuick.Window
import ScreenPlay 1.0
import ScreenPlay.Create 1.0

View File

@ -1,4 +1,4 @@
import QtQuick 2.14
import QtQuick
Item {
id: root

View File

@ -1,4 +1,4 @@
import QtQuick 2.14
import QtQuick
Item {
id: root

View File

@ -1,9 +1,8 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.12
import QtQuick.Controls.Styles 1.4
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Enums.InstalledType 1.0
import ScreenPlay.Enums.SearchType 1.0
@ -73,7 +72,7 @@ Item {
active: false
z: 99
anchors.fill: parent
source: "qrc:/qml/Installed/InstalledWelcomeScreen.qml"
source: "qrc:/ScreenPlay/qml/Installed/InstalledWelcomeScreen.qml"
}
Connections {
@ -244,7 +243,7 @@ Item {
publishedFileID: m_publishedFileID
itemIndex: index
isScrolling: gridView.isScrolling
onOpenContextMenu: {
onOpenContextMenu: (position)=>{
// Set the menu to the current item informations
contextMenu.publishedFileID = delegate.publishedFileID;
contextMenu.absoluteStoragePath = delegate.absoluteStoragePath;

View File

@ -1,7 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Controls.Styles 1.4
import QtQuick.Controls.Material 2.2
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import ScreenPlay 1.0
import "../Common"

View File

@ -1,9 +1,8 @@
import QtQuick 2.0
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.12
import QtQuick.Controls.Styles 1.4
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Enums.InstalledType 1.0
import ScreenPlay.Enums.SearchType 1.0

View File

@ -1,8 +1,7 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12
import QtQuick.Controls.Styles 1.4
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import ScreenPlay 1.0
import ScreenPlay.Enums.InstalledType 1.0
import "../Common/Util.js" as JSUtil
@ -225,7 +224,7 @@ Item {
screenPlayItemImage.state = "loaded"
screenPlayItemImage.exit()
}
onClicked: {
onClicked: (mouse)=> {
if (mouse.button === Qt.LeftButton)
ScreenPlay.util.setSidebarItem(root.screenId, root.type)
else if (mouse.button === Qt.RightButton)

View File

@ -1,4 +1,4 @@
import QtQuick 2.12
import QtQuick
Item {
id: root

View File

@ -1,10 +1,9 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.12
import QtQuick.Extras 1.4
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.12
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Enums.FillMode 1.0
import ScreenPlay.Enums.InstalledType 1.0

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.2
import QtQuick.Layouts 1.3
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
import ScreenPlay.Enums.FillMode 1.0
import "../Common/" as SP

View File

@ -1,8 +1,7 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import ScreenPlay 1.0
Rectangle {
@ -168,15 +167,15 @@ Rectangle {
}
layer.effect: InnerShadow {
cached: true
fast: true
smooth: true
radius: 32
spread: 0.8
verticalOffset: 3
color: "#55000000"
}
// layer.effect: InnerShadow {
// cached: true
// fast: true
// smooth: true
// radius: 32
// spread: 0.8
// verticalOffset: 3
// color: "#55000000"
// }
// Width of the Sidebar or Space that should be used
}

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import ScreenPlay 1.0
import ScreenPlay.Enums.InstalledType 1.0

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.2
import QtQuick.Layouts 1.3
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import QtQuick.Layouts
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import ScreenPlay.Enums.InstalledType 1.0
import "../Common/" as SP
@ -83,7 +83,7 @@ Popup {
monitorWithoutContentSelectable: false
availableWidth: width - 20
availableHeight: 150
onRequestProjectSettings: {
function onRequestProjectSettings() {
if (installedType === InstalledType.VideoWallpaper) {
videoControlWrapper.state = "visible";
customPropertiesGridView.visible = false;

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtGraphicalEffects 1.0
import QtQuick.Dialogs 1.2
import QtQuick.Controls.Material 2.2
import QtQuick.Layouts 1.3
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import Qt.labs.platform 1.1
import QtQuick.Controls.Material
import QtQuick.Layouts
import ScreenPlay 1.0
Item {

View File

@ -1,7 +1,7 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.14
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
Rectangle {

View File

@ -1,8 +1,8 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import ScreenPlay 1.0
import "../Workshop"
import "../Common"
@ -80,7 +80,7 @@ Rectangle {
name: "Create"
text: qsTr("Create")
iconSource: "qrc:/assets/icons/icon_plus.svg"
onPageClicked: root.onPageChanged(name)
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "createTab"
}
@ -91,7 +91,7 @@ Rectangle {
name: "Workshop"
text: qsTr("Workshop")
iconSource: "qrc:/assets/icons/icon_steam.svg"
onPageClicked: root.onPageChanged(name)
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "workshopTab"
}
@ -103,7 +103,7 @@ Rectangle {
text: qsTr("Installed")
amount: ScreenPlay.installedListModel.count
iconSource: "qrc:/assets/icons/icon_installed.svg"
onPageClicked: root.onPageChanged(name)
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "installedTab"
}
@ -114,7 +114,7 @@ Rectangle {
name: "Community"
text: qsTr("Community")
iconSource: "qrc:/assets/icons/icon_community.svg"
onPageClicked: root.onPageChanged(name)
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "communityTab"
}
@ -125,7 +125,7 @@ Rectangle {
name: "Settings"
text: qsTr("Settings")
iconSource: "qrc:/assets/icons/icon_settings.svg"
onPageClicked: root.onPageChanged(name)
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "settingsTab"
}

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.12
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import ScreenPlay 1.0
import "../Common"

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.2
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {
@ -54,7 +54,7 @@ Item {
text: settingsBool.description
wrapMode: Text.WordWrap
linkColor: Material.color(Material.Orange)
onLinkActivated: Qt.openUrlExternally(link)
onLinkActivated: (link) => Qt.openUrlExternally(link)
color: Material.theme === Material.Light ? Qt.lighter(Material.foreground) : Qt.darker(Material.foreground)
font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter

View File

@ -1,9 +1,9 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.12
import QtQuick.Dialogs 1.3
import QtQuick.Layouts 1.3
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Controls
import Qt.labs.platform
import QtQuick.Controls.Material
import QtQuick.Layouts
import Qt5Compat.GraphicalEffects
import ScreenPlay 1.0
import ScreenPlay.Enums.FillMode 1.0
import Settings 1.0
@ -72,7 +72,7 @@ Item {
headline: qsTr("Autostart")
description: qsTr("ScreenPlay will start with Windows and will setup your Desktop every time for you.")
isChecked: ScreenPlay.settings.autostart
onCheckboxChanged: {
onCheckboxChanged: (checked) => {
ScreenPlay.settings.setAutostart(checked);
}
}
@ -98,7 +98,7 @@ Item {
headline: qsTr("Send anonymous crash reports and statistics")
description: qsTr("Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href=\"https://sentry.io\">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!")
isChecked: ScreenPlay.settings.anonymousTelemetry
onCheckboxChanged: {
onCheckboxChanged: (checked) => {
ScreenPlay.settings.setAnonymousTelemetry(checked);
}
}
@ -121,10 +121,8 @@ Item {
folderDialogSaveLocation.open();
}
FileDialog {
FolderDialog {
id: folderDialogSaveLocation
selectFolder: true
folder: ScreenPlay.globalVariables.localStoragePath
onAccepted: {
ScreenPlay.settings.setLocalStoragePath(folderDialogSaveLocation.fileUrls[0]);
@ -271,7 +269,7 @@ Item {
headline: qsTr("Pause wallpaper video rendering while another app is in the foreground")
description: qsTr("We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!")
isChecked: ScreenPlay.settings.checkWallpaperVisible
onCheckboxChanged: {
onCheckboxChanged: (checked) =>{
ScreenPlay.settings.setCheckWallpaperVisible(checked);
}
}
@ -480,7 +478,7 @@ Item {
SettingsButton {
icon.source: "qrc:/assets/icons/icon_launch.svg"
headline: qsTr("Version")
description: qsTr("ScreenPlay Build Version ") + ScreenPlay.settings.gitBuildHash
description: qsTr("ScreenPlay Build Version \n") + ScreenPlay.settings.gitBuildHash
buttonText: qsTr("Open Changelog")
onButtonPressed: Qt.openUrlExternally("https://gitlab.com/kelteseth/ScreenPlay/-/releases")
}

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.2
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.2
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import ScreenPlay 1.0
Control {

View File

@ -1,8 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.12
import QtQuick.Controls.Material 2.2
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import QtQuick.Controls.Material
import ScreenPlay 1.0
Item {

View File

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtQuick.Layouts 1.12
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Layouts
import Qt5Compat.GraphicalEffects
import ScreenPlay 1.0
Item {

View File

@ -1,5 +1,5 @@
import QtQuick 2.12
import QtQuick.Controls.Material 2.12
import QtQuick
import QtQuick.Controls.Material
Item {
property real customWidth: parent.width

View File

@ -1,10 +1,9 @@
import QtQuick 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Material 2.12
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.3
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
Page {
width: parent.width

View File

@ -1,6 +1,5 @@
import QtQuick 2.13
import QtGraphicalEffects 1.0
import Workshop 1.0
import QtQuick
import Qt5Compat.GraphicalEffects
Rectangle {
id: root
@ -45,7 +44,7 @@ Rectangle {
id: bgImage
height: bgImage.sourceSize.height
fillMode: Image.PreserveAspectCrop
//fillMode: Image.PreserveAspectCrop
opacity: 0
source: root.backgroundImage
@ -81,15 +80,13 @@ Rectangle {
}
}
MaskedBlur {
FastBlur {
id: blur
anchors.fill: bgImage
source: bgImage
maskSource: maskSource
radius: 16
cached: true
samples: 24
opacity: 0
}

View File

@ -1,9 +1,9 @@
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Controls.Material 2.12
import QtQuick.Layouts 1.12
import QtGraphicalEffects 1.0
import QtWebEngine 1.8
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import QtQuick.Layouts
import Qt5Compat.GraphicalEffects
import QtWebEngine
import ScreenPlay 1.0

View File

@ -1,8 +1,8 @@
import QtQuick 2.13
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick.Controls.Material.impl 2.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
import Workshop 1.0
import ScreenPlay 1.0

View File

@ -1,7 +1,7 @@
import QtQuick 2.0
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import Workshop 1.0
import ScreenPlay 1.0

View File

@ -1,7 +1,6 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.3
import QtQuick.Controls.Styles 1.4
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
Item {
id: screenPlayItem

View File

@ -1,4 +1,4 @@
import QtQuick 2.12
import QtQuick
Item {
id: screenPlayItemImage

View File

@ -1,9 +1,9 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.11
import QtWebEngine 1.8
import QtQuick.Controls.Material 2.2
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Layouts
import QtWebEngine
import QtQuick.Controls.Material
import Workshop 1.0
import ScreenPlay 1.0
@ -24,24 +24,24 @@ Drawer {
function setWorkshopItem(publishedFileID, imgUrl, videoPreview, subscriptionCount) {
if (root.publishedFileID === publishedFileID) {
if (!root.visible)
root.open();
root.open()
else
root.close();
return ;
root.close()
return
}
webView.opacity = 0;
root.publishedFileID = publishedFileID;
root.imgUrl = imgUrl;
root.subscriptionCount = subscriptionCount;
root.videoPreview = videoPreview;
root.subscribed = false;
txtVotesUp.highlighted = false;
txtVotesDown.highlighted = false;
webView.opacity = 0
root.publishedFileID = publishedFileID
root.imgUrl = imgUrl
root.subscriptionCount = subscriptionCount
root.videoPreview = videoPreview
root.subscribed = false
txtVotesUp.highlighted = false
txtVotesDown.highlighted = false
if (!root.visible)
root.open();
root.open()
steamWorkshop.requestWorkshopItemDetails(publishedFileID);
webView.setVideo();
steamWorkshop.requestWorkshopItemDetails(publishedFileID)
webView.setVideo()
}
edge: Qt.RightEdge
@ -51,43 +51,43 @@ Drawer {
width: 400
interactive: false
Component.onCompleted: {
WebEngine.settings.localContentCanAccessFileUrls = true;
WebEngine.settings.localContentCanAccessRemoteUrls = true;
WebEngine.settings.allowRunningInsecureContent = true;
WebEngine.settings.accelerated2dCanvasEnabled = true;
WebEngine.settings.javascriptCanOpenWindows = false;
WebEngine.settings.showScrollBars = false;
WebEngine.settings.playbackRequiresUserGesture = false;
WebEngine.settings.focusOnNavigationEnabled = true;
WebEngine.settings.localContentCanAccessFileUrls = true
WebEngine.settings.localContentCanAccessRemoteUrls = true
WebEngine.settings.allowRunningInsecureContent = true
WebEngine.settings.accelerated2dCanvasEnabled = true
WebEngine.settings.javascriptCanOpenWindows = false
WebEngine.settings.showScrollBars = false
WebEngine.settings.playbackRequiresUserGesture = false
WebEngine.settings.focusOnNavigationEnabled = true
}
Connections {
function onRequestItemDetailReturned(title, tags, steamIDOwner, description, votesUp, votesDown, url, fileSize, publishedFileId) {
tagListModel.clear();
tagListModel.clear()
// Even if the tags array is empty it still contains
// one empty string, resulting in an empty button
if (tags.length > 1) {
for (var i in tags) {
tagListModel.append({
"name": tags[i]
});
"name": tags[i]
})
}
rpTagList.model = tagListModel;
rpTagList.model = tagListModel
} else {
rpTagList.model = null;
rpTagList.model = null
}
txtTitle.text = title;
const size = Math.floor((1000 * ((fileSize / 1024) / 1000)) / 1000);
txtFileSize.text = qsTr("Size: ") + size + qsTr(" MB");
pbVotes.to = votesDown + votesUp;
pbVotes.value = votesUp;
txtVotesDown.text = votesDown;
txtVotesUp.text = votesUp;
txtTitle.text = title
const size = Math.floor((1000 * ((fileSize / 1024) / 1000)) / 1000)
txtFileSize.text = qsTr("Size: ") + size + " MB"
pbVotes.to = votesDown + votesUp
pbVotes.value = votesUp
txtVotesDown.text = votesDown
txtVotesUp.text = votesUp
if (description === "")
description = qsTr("No description...");
description = qsTr("No description...")
txtDescription.text = description;
pbVotes.hoverText = votesUp + " / " + votesDown;
txtDescription.text = description
pbVotes.hoverText = votesUp + " / " + votesDown
}
target: steamWorkshop
@ -112,22 +112,23 @@ Drawer {
property bool ready: false
function getUpdateVideoCommand() {
let src = "";
src += "var video = document.getElementById('video');\n";
src += "video.src = '" + root.videoPreview + "';\n";
let src = ""
src += "var video = document.getElementById('video');\n"
src += "video.src = '" + root.videoPreview + "';\n"
// Incase a workshop item has no gif preview
src += "video.poster = '" + root.videoPreview + "';\n";
src += "video.play();\n";
return src;
src += "video.poster = '" + root.videoPreview + "';\n"
src += "video.play();\n"
return src
}
function setVideo() {
if (!root.videoPreview.toString().startsWith("https"))
return ;
return
webView.runJavaScript(getUpdateVideoCommand(), function(result) {
webView.opacity = 1;
});
webView.runJavaScript(getUpdateVideoCommand(),
function (result) {
webView.opacity = 1
})
}
anchors.fill: parent
@ -139,9 +140,7 @@ Drawer {
NumberAnimation {
duration: 200
}
}
}
LinearGradient {
@ -166,9 +165,7 @@ Drawer {
position: 1
color: "#00000000"
}
}
}
Text {
@ -189,7 +186,6 @@ Drawer {
margins: 20
left: parent.left
}
}
MouseArea {
@ -210,9 +206,7 @@ Drawer {
fillMode: Image.PreserveAspectFit
anchors.centerIn: parent
}
}
}
ColumnLayout {
@ -248,9 +242,9 @@ Drawer {
ToolTip.visible: hovered
ToolTip.text: qsTr("Click here if you like the content")
onClicked: {
steamWorkshop.vote(root.publishedFileID, true);
txtVotesUp.highlighted = true;
txtVotesDown.highlighted = false;
steamWorkshop.vote(root.publishedFileID, true)
txtVotesUp.highlighted = true
txtVotesDown.highlighted = false
}
}
@ -263,12 +257,11 @@ Drawer {
ToolTip.visible: hovered
ToolTip.text: qsTr("Click here if you do not like the content")
onClicked: {
steamWorkshop.vote(root.publishedFileID, false);
txtVotesUp.highlighted = false;
txtVotesDown.highlighted = true;
steamWorkshop.vote(root.publishedFileID, false)
txtVotesUp.highlighted = false
txtVotesDown.highlighted = true
}
}
}
ProgressBar {
@ -281,7 +274,6 @@ Drawer {
ToolTip.visible: hovered
ToolTip.text: hoverText
}
}
Flickable {
@ -314,11 +306,8 @@ Drawer {
font.family: ScreenPlay.settings.font
onClicked: root.tagClicked(txtTags.text)
}
}
}
}
RowLayout {
@ -347,7 +336,6 @@ Drawer {
font.pointSize: 11
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
}
}
Rectangle {
@ -373,13 +361,9 @@ Drawer {
font.pointSize: 12
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
}
}
}
}
}
RowLayout {
@ -400,7 +384,8 @@ Drawer {
icon.source: "qrc:/assets/icons/icon_open_in_new.svg"
height: 25
text: qsTr("Open In Steam")
onClicked: Qt.openUrlExternally("steam://url/CommunityFilePage/" + root.publishedFileID)
onClicked: Qt.openUrlExternally(
"steam://url/CommunityFilePage/" + root.publishedFileID)
}
Button {
@ -411,15 +396,15 @@ Drawer {
icon.source: "qrc:/assets/icons/icon_download.svg"
text: root.subscribed ? qsTr("Subscribed!") : qsTr("Subscribe")
onClicked: {
root.subscribed = true;
root.steamWorkshop.subscribeItem(root.publishedFileID);
root.subscribed = true
root.steamWorkshop.subscribeItem(root.publishedFileID)
}
}
}
background: Rectangle {
color: Material.theme === Material.Light ? "white" : Qt.darker(Material.background)
color: Material.theme === Material.Light ? "white" : Qt.darker(
Material.background)
opacity: 0.95
}
@ -428,7 +413,6 @@ Drawer {
velocity: 10
easing.type: Easing.InOutQuart
}
}
exit: Transition {
@ -436,7 +420,5 @@ Drawer {
velocity: 10
easing.type: Easing.InOutQuart
}
}
}

View File

@ -1,8 +1,8 @@
import QtQuick 2.13
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import Workshop 1.0
import ScreenPlay 1.0
import "upload/"

View File

@ -1,9 +1,10 @@
import QtQuick 2.13
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import Workshop 1.0
import WorkshopEnums 1.0
import ScreenPlay 1.0
import "upload/"
@ -14,7 +15,7 @@ Item {
id: screenPlayWorkshop
Component.onCompleted: {
if (screenPlayWorkshop.init()) {
stackView.push("qrc:/qml/Workshop/SteamWorkshopStartPage.qml", {
stackView.push("qrc:/ScreenPlay/qml/Workshop/SteamWorkshopStartPage.qml", {
"stackView": stackView,
"screenPlayWorkshop": screenPlayWorkshop,
"steamWorkshop": screenPlayWorkshop.steamWorkshop,

View File

@ -1,9 +1,10 @@
import QtQuick 2.13
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.12
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import Workshop 1.0
import WorkshopEnums 1.0
import ScreenPlay 1.0
import "upload/"
import "../Common" as Common
@ -273,7 +274,7 @@ Item {
text: qsTr("Profile")
onClicked: {
stackView.push(
"qrc:/qml/Workshop/SteamProfile.qml", {
"qrc:/ScreenPlay/qml/Workshop/SteamProfile.qml", {
"screenPlayWorkshop": root.screenPlayWorkshop,
"steamWorkshop": root.steamWorkshop
})
@ -292,7 +293,7 @@ Item {
text: qsTr("Upload")
onClicked: {
stackView.push(
"qrc:/qml/Workshop/upload/UploadProject.qml", {
"qrc:/ScreenPlay/qml/Workshop/upload/UploadProject.qml", {
"screenPlayWorkshop": root.screenPlayWorkshop,
"steamWorkshop": root.steamWorkshop
})

View File

@ -1,19 +1,19 @@
import QtQuick 2.13
import QtQuick.Controls 2.13
import QtQuick.Controls.Material 2.13
import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.12
import Settings 1.0
import ScreenPlay 1.0
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Layouts
import Settings
import ScreenPlay
Item {
id: root
Component.onCompleted: {
if (ScreenPlay.settings.steamVersion) {
workshopLoader.setSource("qrc:/qml/Workshop/SteamWorkshop.qml")
workshopLoader.setSource("qrc:/ScreenPlay/qml/Workshop/SteamWorkshop.qml")
} else {
workshopLoader.setSource("qrc:/qml/Workshop/Forum.qml")
workshopLoader.setSource("qrc:/ScreenPlay/qml/Workshop/Forum.qml")
}
}

View File

@ -1,7 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtQuick.Controls.Styles 1.4
import QtGraphicalEffects 1.0
import QtQuick
import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import Workshop 1.0 as SP
Item {
@ -36,7 +35,7 @@ Item {
active: false
z: 99
anchors.fill: parent
source: "qrc:/qml/Installed/InstalledUserHelper.qml"
source: "qrc:/ScreenPlay/qml/Installed/InstalledUserHelper.qml"
}
transitions: [

View File

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtGraphicalEffects 1.0
import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.2
import QtQuick
import Qt5Compat.GraphicalEffects
import QtQuick.Controls
import QtQuick.Controls.Material
import Workshop 1.0
import ScreenPlay 1.0

Some files were not shown because too many files have changed in this diff Show More