diff --git a/ScreenPlay/CMakeLists.txt b/ScreenPlay/CMakeLists.txt
index a4f52235..4ba92846 100644
--- a/ScreenPlay/CMakeLists.txt
+++ b/ScreenPlay/CMakeLists.txt
@@ -136,20 +136,12 @@ set(RESOURCES
assets/icons/icon_emptyWidget.svg
assets/icons/icon_folder_open.svg
assets/icons/icon_forum.svg
- assets/icons/icon_hand_left.svg
- assets/icons/icon_hand_right.svg
- assets/icons/icon_heavy_metal.svg
assets/icons/icon_help_center.svg
assets/icons/icon_indicator_down.svg
assets/icons/icon_info.svg
assets/icons/icon_installed.svg
assets/icons/icon_launch.svg
- assets/icons/icon_library_music.svg
- assets/icons/icon_local_movies.svg
- assets/icons/icon_logo_head.svg
- assets/icons/icon_monitor.svg
assets/icons/icon_movie.svg
- assets/icons/icon_multiple_images.svg
assets/icons/icon_new_releases.svg
assets/icons/icon_open_in_new.svg
assets/icons/icon_pause.svg
@@ -157,8 +149,6 @@ set(RESOURCES
assets/icons/icon_play.svg
assets/icons/icon_plus.svg
assets/icons/icon_report_problem.svg
- assets/icons/icon_scene.svg
- assets/icons/icon_screen.svg
assets/icons/icon_search.svg
assets/icons/icon_settings.svg
assets/icons/icon_share.svg
@@ -167,8 +157,6 @@ set(RESOURCES
assets/icons/icon_supervisor_account.svg
assets/icons/icon_thumb_down.svg
assets/icons/icon_thumb_up.svg
- assets/icons/icon_time.svg
- assets/icons/icon_tv.svg
assets/icons/icon_upload.svg
assets/icons/icon_volume.svg
assets/icons/icon_volume_mute.svg
@@ -261,6 +249,7 @@ find_package(
Qt6
COMPONENTS Core
Quick
+ QuickControls2
Gui
Widgets
WebSockets
@@ -298,6 +287,7 @@ target_link_libraries(
Qt6::Core
Qt6::WebSockets
Qt6::Svg
+ Qt6::QuickControls2
ScreenPlayUtil
ScreenPlayUtilplugin
QArchive
diff --git a/ScreenPlay/assets/icons/icon_code.svg b/ScreenPlay/assets/icons/icon_code.svg
index 8a7562dd..aa09dbd1 100644
--- a/ScreenPlay/assets/icons/icon_code.svg
+++ b/ScreenPlay/assets/icons/icon_code.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_community.svg b/ScreenPlay/assets/icons/icon_community.svg
index 0b6b7eb7..78961b24 100644
--- a/ScreenPlay/assets/icons/icon_community.svg
+++ b/ScreenPlay/assets/icons/icon_community.svg
@@ -1,36 +1 @@
-
-
-
-
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_hand_left.svg b/ScreenPlay/assets/icons/icon_hand_left.svg
deleted file mode 100644
index cdd0309b..00000000
--- a/ScreenPlay/assets/icons/icon_hand_left.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_hand_right.svg b/ScreenPlay/assets/icons/icon_hand_right.svg
deleted file mode 100644
index 0bcab757..00000000
--- a/ScreenPlay/assets/icons/icon_hand_right.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_heavy_metal.svg b/ScreenPlay/assets/icons/icon_heavy_metal.svg
deleted file mode 100644
index 36140a7a..00000000
--- a/ScreenPlay/assets/icons/icon_heavy_metal.svg
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
diff --git a/ScreenPlay/assets/icons/icon_installed.svg b/ScreenPlay/assets/icons/icon_installed.svg
index 9c3a52b7..f531b926 100644
--- a/ScreenPlay/assets/icons/icon_installed.svg
+++ b/ScreenPlay/assets/icons/icon_installed.svg
@@ -1,11 +1 @@
-
-
-
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_library_music.svg b/ScreenPlay/assets/icons/icon_library_music.svg
deleted file mode 100644
index 6e498acd..00000000
--- a/ScreenPlay/assets/icons/icon_library_music.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_local_movies.svg b/ScreenPlay/assets/icons/icon_local_movies.svg
deleted file mode 100644
index f090db78..00000000
--- a/ScreenPlay/assets/icons/icon_local_movies.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_logo_head.svg b/ScreenPlay/assets/icons/icon_logo_head.svg
deleted file mode 100644
index 55507605..00000000
--- a/ScreenPlay/assets/icons/icon_logo_head.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_monitor.svg b/ScreenPlay/assets/icons/icon_monitor.svg
deleted file mode 100644
index 4d31d2d3..00000000
--- a/ScreenPlay/assets/icons/icon_monitor.svg
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
diff --git a/ScreenPlay/assets/icons/icon_movie.svg b/ScreenPlay/assets/icons/icon_movie.svg
index bd751e60..59deab37 100644
--- a/ScreenPlay/assets/icons/icon_movie.svg
+++ b/ScreenPlay/assets/icons/icon_movie.svg
@@ -1,4 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_multiple_images.svg b/ScreenPlay/assets/icons/icon_multiple_images.svg
deleted file mode 100644
index 365e7935..00000000
--- a/ScreenPlay/assets/icons/icon_multiple_images.svg
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
diff --git a/ScreenPlay/assets/icons/icon_plus.svg b/ScreenPlay/assets/icons/icon_plus.svg
index b0986fa8..05a02317 100644
--- a/ScreenPlay/assets/icons/icon_plus.svg
+++ b/ScreenPlay/assets/icons/icon_plus.svg
@@ -1,9 +1 @@
-
-
-
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_scene.svg b/ScreenPlay/assets/icons/icon_scene.svg
deleted file mode 100644
index a511ed92..00000000
--- a/ScreenPlay/assets/icons/icon_scene.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_screen.svg b/ScreenPlay/assets/icons/icon_screen.svg
deleted file mode 100644
index 4ee04364..00000000
--- a/ScreenPlay/assets/icons/icon_screen.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_settings.svg b/ScreenPlay/assets/icons/icon_settings.svg
index 4650aef5..6aeee0f8 100644
--- a/ScreenPlay/assets/icons/icon_settings.svg
+++ b/ScreenPlay/assets/icons/icon_settings.svg
@@ -1,11 +1 @@
-
-
-
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_time.svg b/ScreenPlay/assets/icons/icon_time.svg
deleted file mode 100644
index a3e3fa15..00000000
--- a/ScreenPlay/assets/icons/icon_time.svg
+++ /dev/null
@@ -1,5 +0,0 @@
-
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_tv.svg b/ScreenPlay/assets/icons/icon_tv.svg
deleted file mode 100644
index 286a5952..00000000
--- a/ScreenPlay/assets/icons/icon_tv.svg
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
diff --git a/ScreenPlay/assets/icons/icon_widgets.svg b/ScreenPlay/assets/icons/icon_widgets.svg
index d9bb1549..433aba2a 100644
--- a/ScreenPlay/assets/icons/icon_widgets.svg
+++ b/ScreenPlay/assets/icons/icon_widgets.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/ScreenPlay/main.qml b/ScreenPlay/main.qml
index d81c4043..c4202250 100644
--- a/ScreenPlay/main.qml
+++ b/ScreenPlay/main.qml
@@ -56,7 +56,7 @@ ApplicationWindow {
// Set visible if the -silent parameter was not set (see app.cpp end of constructor).
visible: false
width: 1400
- height: 788
+ height: 810
title: "ScreenPlay Alpha - V" + App.version()
minimumHeight: 450
minimumWidth: 1050
diff --git a/ScreenPlay/qml/Create/Create.qml b/ScreenPlay/qml/Create/Create.qml
index 24a8755f..4c573022 100644
--- a/ScreenPlay/qml/Create/Create.qml
+++ b/ScreenPlay/qml/Create/Create.qml
@@ -8,7 +8,7 @@ import QtQuick.Controls.Material.impl
import ScreenPlayApp
import ScreenPlay
import ScreenPlay.Create
-import ScreenPlay.QMLUtilities
+import ScreenPlayUtil
Item {
id: root
diff --git a/ScreenPlay/qml/Create/CreateSidebar.qml b/ScreenPlay/qml/Create/CreateSidebar.qml
index 38b77561..337b27e6 100644
--- a/ScreenPlay/qml/Create/CreateSidebar.qml
+++ b/ScreenPlay/qml/Create/CreateSidebar.qml
@@ -8,7 +8,7 @@ import QtQuick.Controls.Material.impl
import ScreenPlayApp
import ScreenPlay
import ScreenPlay.Create
-import ScreenPlay.QMLUtilities
+import ScreenPlayUtil
Rectangle {
id: root
diff --git a/ScreenPlay/qml/Create/StartInfo.qml b/ScreenPlay/qml/Create/StartInfo.qml
index 32373036..29dc7d41 100644
--- a/ScreenPlay/qml/Create/StartInfo.qml
+++ b/ScreenPlay/qml/Create/StartInfo.qml
@@ -8,7 +8,6 @@ import QtQuick.Controls.Material.impl
import ScreenPlayApp
import ScreenPlay
import ScreenPlay.Create
-import ScreenPlay.QMLUtilities
import ScreenPlayUtil as Util
Item {
diff --git a/ScreenPlay/qml/Create/StartInfoLinkImage.qml b/ScreenPlay/qml/Create/StartInfoLinkImage.qml
index ec687452..4facab40 100644
--- a/ScreenPlay/qml/Create/StartInfoLinkImage.qml
+++ b/ScreenPlay/qml/Create/StartInfoLinkImage.qml
@@ -8,7 +8,6 @@ import QtQuick.Controls.Material.impl
import ScreenPlayApp
import ScreenPlay
import ScreenPlay.Create
-import ScreenPlay.QMLUtilities
import ScreenPlayUtil
Item {
diff --git a/ScreenPlay/qml/Installed/InstalledNavigation.qml b/ScreenPlay/qml/Installed/InstalledNavigation.qml
index 627c1d56..0ca5191a 100644
--- a/ScreenPlay/qml/Installed/InstalledNavigation.qml
+++ b/ScreenPlay/qml/Installed/InstalledNavigation.qml
@@ -47,6 +47,7 @@ Item {
TabBar {
height: parent.height
+ background: Item {}
anchors {
top: parent.top
topMargin: 5
@@ -55,71 +56,51 @@ Item {
bottom: parent.bottom
}
- TabButton {
- text: qsTr("All")
+ component CustomTabButton: TabButton {
icon.height: 16
icon.width: 16
height: parent.height
width: implicitWidth
+ background: Item {}
+ font.capitalization: Font.MixedCase
+ }
+
+ CustomTabButton {
+ text: qsTr("All")
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_installed.svg"
onClicked: {
setSidebarActive(false)
- App.installedListFilter.sortBySearchType(
- SearchType.All)
+ App.installedListFilter.sortBySearchType(SearchType.All)
}
-
- background: Item {}
}
- TabButton {
+ CustomTabButton {
text: qsTr("Scenes")
- icon.height: 16
- icon.width: 16
- width: implicitWidth
- height: parent.height
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_code.svg"
onClicked: {
setSidebarActive(false)
- App.installedListFilter.sortBySearchType(
- SearchType.Scene)
+ App.installedListFilter.sortBySearchType(SearchType.Scene)
}
-
- background: Item {}
}
- TabButton {
+ CustomTabButton {
text: qsTr("Videos")
- icon.height: 16
- icon.width: 16
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_movie.svg"
onClicked: {
setSidebarActive(false)
App.installedListFilter.sortBySearchType(
SearchType.Wallpaper)
}
-
- background: Item {}
}
- TabButton {
+ CustomTabButton {
text: qsTr("Widgets")
- icon.height: 16
- icon.width: 16
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_widgets.svg"
onClicked: {
setSidebarActive(false)
- App.installedListFilter.sortBySearchType(
- SearchType.Widget)
+ App.installedListFilter.sortBySearchType(SearchType.Widget)
}
-
- background: Item {}
}
-
- background: Item {}
}
Util.Search {
@@ -144,14 +125,12 @@ Item {
ToolTip.delay: 100
ToolTip.timeout: 5000
ToolTip.visible: hovered
- ToolTip.text: (btnSortOrder.sortOrder
- === Qt.AscendingOrder) ? "Install Date Ascending": "Install Date Descending"
+ ToolTip.text: (btnSortOrder.sortOrder === Qt.AscendingOrder) ? "Install Date Ascending" : "Install Date Descending"
onClicked: {
btnSortOrder.sortOrder
= (btnSortOrder.sortOrder
=== Qt.DescendingOrder) ? Qt.AscendingOrder : Qt.DescendingOrder
- App.installedListFilter.setSortOrder(
- btnSortOrder.sortOrder)
+ App.installedListFilter.setSortOrder(btnSortOrder.sortOrder)
}
anchors {
diff --git a/ScreenPlay/qml/Installed/Sidebar.qml b/ScreenPlay/qml/Installed/Sidebar.qml
index 9548762f..04c1af53 100644
--- a/ScreenPlay/qml/Installed/Sidebar.qml
+++ b/ScreenPlay/qml/Installed/Sidebar.qml
@@ -353,8 +353,6 @@ Item {
Material.foreground: "white"
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_plus.svg"
icon.color: "white"
- icon.width: 16
- icon.height: 16
font.pointSize: 12
onClicked: {
const absoluteStoragePath = App.globalVariables.localStoragePath
diff --git a/ScreenPlay/qml/Navigation/Navigation.qml b/ScreenPlay/qml/Navigation/Navigation.qml
index 116d7098..fec57139 100644
--- a/ScreenPlay/qml/Navigation/Navigation.qml
+++ b/ScreenPlay/qml/Navigation/Navigation.qml
@@ -83,85 +83,67 @@ Rectangle {
spacing: 0
- TabButton {
- id: navCreate
- text: qsTr("Create")
+ component CustomTabButton: TabButton {
icon.height: 16
icon.width: 16
font.pointSize: 12
height: parent.height
width: implicitWidth
+ background: Item {}
+ font.capitalization: Font.MixedCase
+ }
+
+ CustomTabButton {
+ id: navCreate
+ icon.height: 22
+ icon.width: 22
+ text: qsTr("Create")
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_plus.svg"
onClicked: {
root.onPageChanged("Create")
}
objectName: "createTab"
- background: Item {}
}
- TabButton {
+ CustomTabButton {
id: navWorkshop
enabled: App.settings.steamVersion
text: qsTr("Workshop")
- icon.height: 16
- icon.width: 16
- font.pointSize: 12
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_steam.svg"
onClicked: {
root.onPageChanged("Workshop")
}
objectName: "workshopTab"
- background: Item {}
}
- TabButton {
+ CustomTabButton {
id: navInstalled
text: qsTr("Installed") + " " + App.installedListModel.count
- icon.height: 16
- icon.width: 16
- font.pointSize: 12
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_installed.svg"
onClicked: {
root.onPageChanged("Installed")
}
objectName: "installedTab"
- background: Item {}
}
- TabButton {
+ CustomTabButton {
id: navCommunity
text: qsTr("Community")
- icon.height: 16
- icon.width: 16
- font.pointSize: 12
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_community.svg"
onClicked: {
root.onPageChanged("Community")
}
objectName: "communityTab"
- background: Item {}
}
- TabButton {
+ CustomTabButton {
id: navSettings
text: qsTr("Settings")
- icon.height: 16
- icon.width: 16
- font.pointSize: 12
- height: parent.height
- width: implicitWidth
icon.source: "qrc:/qml/ScreenPlayApp/assets/icons/icon_settings.svg"
onClicked: {
root.onPageChanged("Settings")
}
objectName: "settingsTab"
- background: Item {}
}
}
@@ -225,12 +207,11 @@ Rectangle {
onSoundEnabledChanged: {
if (miMuteAll.soundEnabled) {
miMuteAll.icon.source = "qrc:/qml/ScreenPlayApp/assets/icons/icon_volume.svg"
- App.screenPlayManager.setAllWallpaperValue("muted",
- "false")
+ App.screenPlayManager.setAllWallpaperValue("muted", "false")
} else {
- miMuteAll.icon.source = "qrc:/qml/ScreenPlayApp/assets/icons/icon_volume_mute.svg"
- App.screenPlayManager.setAllWallpaperValue("muted",
- "true")
+ miMuteAll.icon.source
+ = "qrc:/qml/ScreenPlayApp/assets/icons/icon_volume_mute.svg"
+ App.screenPlayManager.setAllWallpaperValue("muted", "true")
}
}
@@ -250,12 +231,12 @@ Rectangle {
onIsPlayingChanged: {
if (miStopAll.isPlaying) {
miStopAll.icon.source = "qrc:/qml/ScreenPlayApp/assets/icons/icon_pause.svg"
- App.screenPlayManager.setAllWallpaperValue(
- "isPlaying", "true")
+ App.screenPlayManager.setAllWallpaperValue("isPlaying",
+ "true")
} else {
miStopAll.icon.source = "qrc:/qml/ScreenPlayApp/assets/icons/icon_play.svg"
- App.screenPlayManager.setAllWallpaperValue(
- "isPlaying", "false")
+ App.screenPlayManager.setAllWallpaperValue("isPlaying",
+ "false")
}
}
hoverEnabled: true
diff --git a/ScreenPlay/src/app.cpp b/ScreenPlay/src/app.cpp
index 3a969e0c..38d65431 100644
--- a/ScreenPlay/src/app.cpp
+++ b/ScreenPlay/src/app.cpp
@@ -3,6 +3,7 @@
#include "steam/steam_qt_enums_generated.h"
#include
#include
+#include
namespace ScreenPlay {
/*!
@@ -203,6 +204,7 @@ void App::init()
setupKDE();
}
+ QQuickStyle::setStyle("Material");
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/qml/ScreenPlayApp/main.qml")));
// Must be called last to display a error message on startup by the qml engine
diff --git a/ScreenPlay/translations/ScreenPlay_.ts b/ScreenPlay/translations/ScreenPlay_.ts
index c69efc03..aa5a3a14 100644
--- a/ScreenPlay/translations/ScreenPlay_.ts
+++ b/ScreenPlay/translations/ScreenPlay_.ts
@@ -571,6 +571,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_de_DE.ts b/ScreenPlay/translations/ScreenPlay_de_DE.ts
index 2e523a64..f138dab3 100644
--- a/ScreenPlay/translations/ScreenPlay_de_DE.ts
+++ b/ScreenPlay/translations/ScreenPlay_de_DE.ts
@@ -572,6 +572,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_es_ES.ts b/ScreenPlay/translations/ScreenPlay_es_ES.ts
index 97c0424f..43ab28ff 100644
--- a/ScreenPlay/translations/ScreenPlay_es_ES.ts
+++ b/ScreenPlay/translations/ScreenPlay_es_ES.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_fr_FR.ts b/ScreenPlay/translations/ScreenPlay_fr_FR.ts
index bb10d4a0..d64c0597 100644
--- a/ScreenPlay/translations/ScreenPlay_fr_FR.ts
+++ b/ScreenPlay/translations/ScreenPlay_fr_FR.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_it_IT.ts b/ScreenPlay/translations/ScreenPlay_it_IT.ts
index a470a090..e966abbb 100644
--- a/ScreenPlay/translations/ScreenPlay_it_IT.ts
+++ b/ScreenPlay/translations/ScreenPlay_it_IT.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_ko_KR.ts b/ScreenPlay/translations/ScreenPlay_ko_KR.ts
index 35db17a0..22948b39 100644
--- a/ScreenPlay/translations/ScreenPlay_ko_KR.ts
+++ b/ScreenPlay/translations/ScreenPlay_ko_KR.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_nl_NL.ts b/ScreenPlay/translations/ScreenPlay_nl_NL.ts
index 4b15ca90..a5f5d743 100644
--- a/ScreenPlay/translations/ScreenPlay_nl_NL.ts
+++ b/ScreenPlay/translations/ScreenPlay_nl_NL.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_pl_PL.ts b/ScreenPlay/translations/ScreenPlay_pl_PL.ts
index b0656ebf..09ed23ab 100644
--- a/ScreenPlay/translations/ScreenPlay_pl_PL.ts
+++ b/ScreenPlay/translations/ScreenPlay_pl_PL.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_pt_BR.ts b/ScreenPlay/translations/ScreenPlay_pt_BR.ts
index 35030e29..b5a1f413 100644
--- a/ScreenPlay/translations/ScreenPlay_pt_BR.ts
+++ b/ScreenPlay/translations/ScreenPlay_pt_BR.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_ru_RU.ts b/ScreenPlay/translations/ScreenPlay_ru_RU.ts
index c9ac13c8..eb002515 100644
--- a/ScreenPlay/translations/ScreenPlay_ru_RU.ts
+++ b/ScreenPlay/translations/ScreenPlay_ru_RU.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_tr_TR.ts b/ScreenPlay/translations/ScreenPlay_tr_TR.ts
index 59f0c3c8..25867e91 100644
--- a/ScreenPlay/translations/ScreenPlay_tr_TR.ts
+++ b/ScreenPlay/translations/ScreenPlay_tr_TR.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_vi_VN.ts b/ScreenPlay/translations/ScreenPlay_vi_VN.ts
index 0ca796a6..778b713f 100644
--- a/ScreenPlay/translations/ScreenPlay_vi_VN.ts
+++ b/ScreenPlay/translations/ScreenPlay_vi_VN.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlay/translations/ScreenPlay_zh_CN.ts b/ScreenPlay/translations/ScreenPlay_zh_CN.ts
index 50e0ae2f..4e47f088 100644
--- a/ScreenPlay/translations/ScreenPlay_zh_CN.ts
+++ b/ScreenPlay/translations/ScreenPlay_zh_CN.ts
@@ -573,6 +573,10 @@
+
+
+
+
InstalledNavigation
diff --git a/ScreenPlayWorkshop/CMakeLists.txt b/ScreenPlayWorkshop/CMakeLists.txt
index 3ee6e37a..a24385ed 100644
--- a/ScreenPlayWorkshop/CMakeLists.txt
+++ b/ScreenPlayWorkshop/CMakeLists.txt
@@ -9,7 +9,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(
Qt6
- COMPONENTS Core Quick
+ COMPONENTS Core Quick QuickControls2
REQUIRED)
set(QML
@@ -56,12 +56,15 @@ set(HEADER
set(RESOURCES
assets/icons/icon_download.svg
+ assets/icons/icon_file_upload.svg
assets/icons/icon_open_in_new.svg
assets/icons/icon_plus.svg
assets/icons/icon_steam.svg
assets/icons/icon_thumb_down.svg
assets/icons/icon_thumb_up.svg
+ assets/icons/icon_account_circle.svg
assets/icons/icon_arrow_left.svg
+ assets/icons/icon_close.svg
assets/icons/icon_arrow_right.svg
assets/icons/icon_search.svg
assets/icons/icon_info.svg
@@ -128,6 +131,7 @@ if(${SCREENPLAY_STEAM})
target_link_libraries(
tst_ScreenPlayWorkshop
PRIVATE Qt6::Quick
+ Qt6::QuickControls2
${PROJECT_NAME}plugin
ScreenPlayUtilplugin
SteamSDK
diff --git a/ScreenPlayWorkshop/assets/icons/icon_account_circle.svg b/ScreenPlayWorkshop/assets/icons/icon_account_circle.svg
new file mode 100644
index 00000000..cbcf8227
--- /dev/null
+++ b/ScreenPlayWorkshop/assets/icons/icon_account_circle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/ScreenPlayWorkshop/assets/icons/icon_close.svg b/ScreenPlayWorkshop/assets/icons/icon_close.svg
new file mode 100644
index 00000000..bdebbc33
--- /dev/null
+++ b/ScreenPlayWorkshop/assets/icons/icon_close.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/ScreenPlayWorkshop/assets/icons/icon_download.svg b/ScreenPlayWorkshop/assets/icons/icon_download.svg
index 1eeae5cb..1abd62bb 100644
--- a/ScreenPlayWorkshop/assets/icons/icon_download.svg
+++ b/ScreenPlayWorkshop/assets/icons/icon_download.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/ScreenPlayWorkshop/assets/icons/icon_file_upload.svg b/ScreenPlayWorkshop/assets/icons/icon_file_upload.svg
new file mode 100644
index 00000000..eb1d10a5
--- /dev/null
+++ b/ScreenPlayWorkshop/assets/icons/icon_file_upload.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/ScreenPlayWorkshop/assets/icons/icon_search.svg b/ScreenPlayWorkshop/assets/icons/icon_search.svg
index ac6f7145..8a99f822 100644
--- a/ScreenPlayWorkshop/assets/icons/icon_search.svg
+++ b/ScreenPlayWorkshop/assets/icons/icon_search.svg
@@ -1,11 +1 @@
-
-
-
+
\ No newline at end of file
diff --git a/ScreenPlayWorkshop/qml/SteamWorkshopStartPage.qml b/ScreenPlayWorkshop/qml/SteamWorkshopStartPage.qml
index 280a9dcb..877e77df 100644
--- a/ScreenPlayWorkshop/qml/SteamWorkshopStartPage.qml
+++ b/ScreenPlayWorkshop/qml/SteamWorkshopStartPage.qml
@@ -126,15 +126,24 @@ Item {
leftMargin: 100
}
- Text {
- id: bannerTxtUnderline
+ Rectangle {
+ height: 36
+ width: 160
+ color: Material.backgroundColor
+ radius: 4
+ Text {
+ id: bannerTxtUnderline
- property int numberSubscriber: 0
+ property int numberSubscriber: 0
- text: numberSubscriber + " SUBSCRIBED TO:"
- font.pointSize: 12
- color: "white"
- font.weight: Font.Thin
+ text: numberSubscriber + " SUBSCRIBED TO:"
+ font.pointSize: 12
+ color: "white"
+ font.weight: Font.Thin
+ anchors.fill: parent
+ horizontalAlignment: Qt.AlignHCenter
+ verticalAlignment: Qt.AlignVCenter
+ }
}
Text {
@@ -145,6 +154,13 @@ Item {
color: "white"
font.weight: Font.Thin
width: 400
+
+ layer.enabled: true
+ layer.effect: DropShadow {
+ verticalOffset: 2
+ color: "#80000000"
+ radius: 3
+ }
}
RowLayout {
@@ -195,6 +211,12 @@ Item {
color: "white"
font.underline: true
font.weight: Font.Thin
+ layer.enabled: true
+ layer.effect: DropShadow {
+ verticalOffset: 2
+ color: "#80000000"
+ radius:3
+ }
}
}
}
@@ -274,6 +296,7 @@ Item {
}
text: qsTr("Profile")
+ icon.source: "qrc:/qml/ScreenPlayWorkshop/assets/icons/icon_account_circle.svg"
onClicked: {
stackView.push(
"qrc:/qml/ScreenPlayWorkshop/qml/SteamProfile.qml",
@@ -294,6 +317,7 @@ Item {
}
text: qsTr("Upload")
+ icon.source: "qrc:/qml/ScreenPlayWorkshop/assets/icons/icon_file_upload.svg"
onClicked: {
stackView.push(
"qrc:/qml/ScreenPlayWorkshop/qml/upload/UploadProject.qml",
@@ -307,13 +331,30 @@ Item {
Item {
id: searchWrapper
- width: 400
height: 50
anchors {
- verticalCenter: parent.verticalCenter
left: btnSteamUpload.right
+ right: wrapperRight.left
+ rightMargin: 20
leftMargin: 20
+ verticalCenter: parent.verticalCenter
+ }
+ ToolButton {
+ icon.source: "qrc:/qml/ScreenPlayWorkshop/assets/icons/icon_search.svg"
+ onClicked: {
+ root.state = "searching"
+ root.steamWorkshop.searchWorkshopByText(
+ tiSearch.text)
+ }
+ icon.width: 20
+ icon.height: 20
+ anchors {
+ left: parent.left
+ leftMargin: -3
+ bottom: parent.bottom
+ bottomMargin: 3
+ }
}
TextField {
@@ -329,39 +370,40 @@ Item {
root.steamWorkshop.searchWorkshopByText(
tiSearch.text)
}
+ leftInset: -20
+ leftPadding: 20
anchors {
top: parent.top
right: parent.right
bottom: parent.bottom
left: parent.left
- leftMargin: 10
+ leftMargin: 20
}
}
-
ToolButton {
- id: tb
- icon.source: "qrc:/qml/ScreenPlayWorkshop/assets/icons/icon_search.svg"
+ icon.source: "qrc:/qml/ScreenPlayWorkshop/assets/icons/icon_close.svg"
onClicked: {
root.state = "searching"
- root.steamWorkshop.searchWorkshopByText(
- tiSearch.text)
+ tiSearch.text = ""
+ root.steamWorkshop.searchWorkshop(SteamEnums.K_EUGCQuery_RankedByTrend)
}
+ enabled: tiSearch.text !== ""
icon.width: 20
icon.height: 20
anchors {
right: parent.right
+ rightMargin: -3
bottom: parent.bottom
- bottomMargin: 10
+ bottomMargin: 3
}
}
}
RowLayout {
+ id: wrapperRight
spacing: 20
anchors {
- left: searchWrapper.right
- leftMargin: 20
right: cbQuerySort.left
rightMargin: 20
verticalCenter: parent.verticalCenter
@@ -448,7 +490,8 @@ Item {
itemIndex: index
steamWorkshop: root.steamWorkshop
onClicked: {
- sidebar.setWorkshopItem(publishedFileID, imgUrl,
+ sidebar.setWorkshopItem(m_publishedFileID,
+ m_workshopPreview,
additionalPreviewUrl,
subscriptionCount)
}
diff --git a/ScreenPlayWorkshop/qml/TestMain.qml b/ScreenPlayWorkshop/qml/TestMain.qml
index 5decf174..4adc0807 100644
--- a/ScreenPlayWorkshop/qml/TestMain.qml
+++ b/ScreenPlayWorkshop/qml/TestMain.qml
@@ -6,13 +6,30 @@ import ScreenPlayWorkshop
Window {
id: root
- width: 1366
+ width: 1400
height: 768
visible: true
title: qsTr("ScreenPlayWorkshop")
+ Component.onCompleted: root.Material.theme = Material.Dark
Loader {
- anchors.fill: parent
- source:"qrc:/qml/ScreenPlayWorkshop/qml/SteamWorkshop.qml"
+ anchors {
+ top: nav.bottom
+ right: parent.right
+ bottom: parent.bottom
+ left: parent.left
+ }
+
+ source: "qrc:/qml/ScreenPlayWorkshop/qml/SteamWorkshop.qml"
}
+ Rectangle {
+ height: 60
+ color: Material.background
+ id: nav
+ anchors {
+ right: parent.right
+ left: parent.left
+ }
+ }
+
}