UI update
This commit is contained in:
@@ -2,78 +2,90 @@
|
|||||||
;Format: {file, class, model/version, ["message"]}
|
;Format: {file, class, model/version, ["message"]}
|
||||||
|
|
||||||
;Kero
|
;Kero
|
||||||
|
{
|
||||||
{
|
{
|
||||||
images/kero/kero_build_1.png,
|
images/kero/kero_build_1.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_build_2.png,
|
images/kero/kero_build_2.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_build_3.png,
|
images/kero/kero_build_3.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_build_4.png,
|
images/kero/kero_build_4.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_build_error.png,
|
images/kero/kero_build_error.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_choice.png,
|
images/kero/kero_choice.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_hello.png,
|
images/kero/kero_hello.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_login.png,
|
images/kero/kero_login.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_no_results.png,
|
images/kero/kero_no_results.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_run_1.png,
|
images/kero/kero_run_1.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_run_2.png,
|
images/kero/kero_run_2.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_run_3.png,
|
images/kero/kero_run_3.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_run_4.png,
|
images/kero/kero_run_4.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_warning.png,
|
images/kero/kero_warning.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
}
|
},
|
||||||
{
|
{
|
||||||
images/kero/kero_success.png,
|
images/kero/kero_success.png,
|
||||||
placeholders,
|
placeholders,
|
||||||
chatgpt5
|
chatgpt5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
images/kero/kero_spotlight.png,
|
||||||
|
placeholders,
|
||||||
|
chatgpt5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
images/kero/kero_star.png,
|
||||||
|
placeholders,
|
||||||
|
chatgpt5
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -97,6 +97,8 @@ qt_add_resources(${CMAKE_PROJECT_NAME} "app_images"
|
|||||||
"images/kero/kero_run_3.png"
|
"images/kero/kero_run_3.png"
|
||||||
"images/kero/kero_run_4.png"
|
"images/kero/kero_run_4.png"
|
||||||
"images/kero/kero_success.png"
|
"images/kero/kero_success.png"
|
||||||
|
"images/kero/kero_spotlight.png"
|
||||||
|
"images/kero/kero_star.png"
|
||||||
"images/kero/kero_warning.png"
|
"images/kero/kero_warning.png"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import QtQuick
|
import QtQuick
|
||||||
import QtQuick.Controls
|
import QtQuick.Controls 2.0
|
||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
import QtQuick.Effects
|
import QtQuick.Effects
|
||||||
|
|
||||||
@@ -47,37 +47,84 @@ Item
|
|||||||
resultsPerPage: 0
|
resultsPerPage: 0
|
||||||
}
|
}
|
||||||
|
|
||||||
Rectangle
|
ScrollView
|
||||||
{
|
|
||||||
anchors.fill: parent
|
|
||||||
color: palette.base
|
|
||||||
|
|
||||||
ColumnLayout
|
|
||||||
{
|
{
|
||||||
id: resultsLayout
|
id: resultsLayout
|
||||||
visible: opacity > 0.01
|
visible: opacity > 0.01
|
||||||
anchors.fill: parent
|
anchors.right: parent.right
|
||||||
anchors.margins: Constants.mediumMargin
|
anchors.left: parent.left
|
||||||
|
anchors.top: parent.top
|
||||||
|
anchors.bottom: parent.bottom
|
||||||
|
|
||||||
|
ScrollBar.horizontal.interactive: false
|
||||||
|
ScrollBar.vertical.interactive: true
|
||||||
|
|
||||||
|
onWidthChanged: content.width = width
|
||||||
|
|
||||||
|
Column
|
||||||
|
{
|
||||||
|
id: content
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.top: parent.top
|
||||||
|
|
||||||
|
VerticalSpacer{ height: Constants.largeMargin }
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
height: childrenRect.height
|
||||||
|
anchors.margins: Constants.largeMargin
|
||||||
|
|
||||||
|
color: palette.base
|
||||||
|
border.color: palette.midlight
|
||||||
|
|
||||||
|
Column
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
|
||||||
|
KeroHeader
|
||||||
|
{
|
||||||
|
height: 180
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
}
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
height: childrenRect.height
|
||||||
|
|
||||||
|
color: palette.window
|
||||||
|
|
||||||
|
Column
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.margins: Constants.largeMargin
|
||||||
|
|
||||||
Text
|
Text
|
||||||
{
|
{
|
||||||
Layout.alignment: Qt.AlignTop
|
anchors.left: parent.left
|
||||||
Layout.preferredHeight: 50
|
anchors.right: parent.right
|
||||||
|
height: 36
|
||||||
|
|
||||||
color: palette.text
|
color: palette.text
|
||||||
font.pixelSize: Constants.h2Font.pixelSize
|
font.pixelSize: Constants.h2Font.pixelSize
|
||||||
font.bold: true
|
font.bold: true
|
||||||
text: qsTr("Newest Wallpaper Packs")
|
text: qsTr("Featured Live Wallpapers")
|
||||||
verticalAlignment: Qt.AlignVCenter
|
verticalAlignment: Qt.AlignVCenter
|
||||||
}
|
}
|
||||||
|
|
||||||
HorizontalPaginator
|
HorizontalPaginator
|
||||||
{
|
{
|
||||||
id: packsPaginator
|
anchors.left: parent.left
|
||||||
Layout.fillWidth: true
|
anchors.right: parent.right
|
||||||
Layout.preferredHeight: 245
|
height: 245
|
||||||
Layout.alignment: Qt.AlignTop
|
|
||||||
|
|
||||||
|
id: packsPaginator
|
||||||
model: packsModel
|
model: packsModel
|
||||||
delegate: ItemDelegate
|
delegate: ItemDelegate
|
||||||
{
|
{
|
||||||
@@ -125,8 +172,9 @@ Item
|
|||||||
|
|
||||||
Text
|
Text
|
||||||
{
|
{
|
||||||
Layout.alignment: Qt.AlignTop
|
anchors.left: parent.left
|
||||||
Layout.preferredHeight: 50
|
anchors.right: parent.right
|
||||||
|
height: 36
|
||||||
|
|
||||||
color: palette.text
|
color: palette.text
|
||||||
font.pixelSize: Constants.h2Font.pixelSize
|
font.pixelSize: Constants.h2Font.pixelSize
|
||||||
@@ -138,9 +186,9 @@ Item
|
|||||||
HorizontalPaginator
|
HorizontalPaginator
|
||||||
{
|
{
|
||||||
id: imagesPaginator
|
id: imagesPaginator
|
||||||
Layout.fillWidth: true
|
anchors.left: parent.left
|
||||||
Layout.preferredHeight: 245
|
anchors.right: parent.right
|
||||||
Layout.alignment: Qt.AlignTop
|
height: 245
|
||||||
|
|
||||||
model: imagesModel
|
model: imagesModel
|
||||||
delegate: ItemDelegate
|
delegate: ItemDelegate
|
||||||
@@ -180,10 +228,122 @@ Item
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VerticalSpacer{ height: Constants.largeMargin }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VerticalSpacer{ height: Constants.largeMargin }
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
height: childrenRect.height
|
||||||
|
anchors.margins: Constants.largeMargin
|
||||||
|
|
||||||
|
color: palette.base
|
||||||
|
border.color: palette.midlight
|
||||||
|
|
||||||
|
Column
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
|
||||||
|
KeroHeader
|
||||||
|
{
|
||||||
|
height: 180
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
title: qsTr("New & Popular Wallpapers")
|
||||||
|
image: "qrc:/images/kero/kero_star.png"
|
||||||
|
}
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.margins: Constants.largeMargin
|
||||||
|
height: childrenRect.height
|
||||||
|
|
||||||
|
color: palette.window
|
||||||
|
|
||||||
|
Column
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
|
||||||
Text
|
Text
|
||||||
{
|
{
|
||||||
Layout.alignment: Qt.AlignTop
|
anchors.left: parent.left
|
||||||
Layout.preferredHeight: 50
|
anchors.right: parent.right
|
||||||
|
height: 36
|
||||||
|
|
||||||
|
color: palette.text
|
||||||
|
font.pixelSize: Constants.h2Font.pixelSize
|
||||||
|
font.bold: true
|
||||||
|
text: qsTr("Newest Wallpaper Packs")
|
||||||
|
verticalAlignment: Qt.AlignVCenter
|
||||||
|
}
|
||||||
|
|
||||||
|
HorizontalPaginator
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
height: 245
|
||||||
|
|
||||||
|
id: packsPaginator2
|
||||||
|
model: packsModel
|
||||||
|
delegate: ItemDelegate
|
||||||
|
{
|
||||||
|
width: resultWidth
|
||||||
|
height: resultHeight
|
||||||
|
|
||||||
|
required property string name
|
||||||
|
required property string author
|
||||||
|
required property string description
|
||||||
|
required property string uuid
|
||||||
|
required property string thumbnail
|
||||||
|
required property string authorId
|
||||||
|
required property int index
|
||||||
|
|
||||||
|
SearchResultItem
|
||||||
|
{
|
||||||
|
anchors.fill: parent
|
||||||
|
title: parent.name
|
||||||
|
author: parent.author
|
||||||
|
description: parent.description
|
||||||
|
thumbnail: parent.thumbnail
|
||||||
|
uuid: parent.uuid
|
||||||
|
|
||||||
|
selected: packsPaginator2.currentIndex === parent.index
|
||||||
|
|
||||||
|
onTriggered: () => packsPaginator2.currentIndex = parent.index
|
||||||
|
|
||||||
|
onViewMoreTriggered: () =>
|
||||||
|
{
|
||||||
|
showWallpaperPopup(parent.index)
|
||||||
|
}
|
||||||
|
|
||||||
|
onThumbnailChanged: () =>
|
||||||
|
{
|
||||||
|
console.log(index + " " + thumbnail + " " + parent.thumbnail)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onViewMoreTriggered: () =>
|
||||||
|
{
|
||||||
|
showFeaturedPacksPage()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Text
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
height: 36
|
||||||
|
|
||||||
color: palette.text
|
color: palette.text
|
||||||
font.pixelSize: Constants.h2Font.pixelSize
|
font.pixelSize: Constants.h2Font.pixelSize
|
||||||
@@ -195,9 +355,10 @@ Item
|
|||||||
HorizontalPaginator
|
HorizontalPaginator
|
||||||
{
|
{
|
||||||
id: videosPaginator
|
id: videosPaginator
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.preferredHeight: 245
|
anchors.left: parent.left
|
||||||
Layout.alignment: Qt.AlignTop
|
anchors.right: parent.right
|
||||||
|
height: 245
|
||||||
|
|
||||||
model: videosModel
|
model: videosModel
|
||||||
delegate: ItemDelegate
|
delegate: ItemDelegate
|
||||||
@@ -232,8 +393,13 @@ Item
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* spacer */
|
VerticalSpacer{ height: Constants.largeMargin }
|
||||||
Item { Layout.fillHeight: true }
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VerticalSpacer{}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,5 +21,6 @@ qt6_add_qml_module(KomplexHubModule_Controls
|
|||||||
QML_FILES
|
QML_FILES
|
||||||
QML_FILES VideoView.qml
|
QML_FILES VideoView.qml
|
||||||
QML_FILES PackView.qml
|
QML_FILES PackView.qml
|
||||||
|
QML_FILES VerticalSpacer.qml
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ Item
|
|||||||
signal viewMoreTriggered()
|
signal viewMoreTriggered()
|
||||||
|
|
||||||
id: rootItem
|
id: rootItem
|
||||||
|
clip: true
|
||||||
|
|
||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
@@ -57,6 +58,7 @@ Item
|
|||||||
id: resultsView
|
id: resultsView
|
||||||
Layout.fillHeight: true
|
Layout.fillHeight: true
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
|
clip: true
|
||||||
|
|
||||||
spacing: Constants.mediumMargin
|
spacing: Constants.mediumMargin
|
||||||
|
|
||||||
@@ -132,7 +134,7 @@ Item
|
|||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
Layout.fillHeight: true
|
Layout.fillHeight: true
|
||||||
Layout.preferredWidth: 128
|
Layout.preferredWidth: 64
|
||||||
Rectangle
|
Rectangle
|
||||||
{
|
{
|
||||||
id: gradientMap
|
id: gradientMap
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import QtQuick
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
height: 36
|
||||||
|
color: "transparent"
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
}
|
||||||
@@ -11,4 +11,5 @@ qt6_add_qml_module(KomplexHubModule_Kero
|
|||||||
"KeroLoadingAnimation.qml"
|
"KeroLoadingAnimation.qml"
|
||||||
"KeroNoResultsAvatar.qml"
|
"KeroNoResultsAvatar.qml"
|
||||||
"KeroWarningAvatar.qml"
|
"KeroWarningAvatar.qml"
|
||||||
|
QML_FILES KeroHeader.qml
|
||||||
)
|
)
|
||||||
@@ -0,0 +1,82 @@
|
|||||||
|
import QtQuick
|
||||||
|
import QtQuick.Controls 2.0
|
||||||
|
import QtQuick.Layouts
|
||||||
|
import KomplexHub
|
||||||
|
|
||||||
|
Item
|
||||||
|
{
|
||||||
|
property string title: qsTr("Wallpaper Spotlight")
|
||||||
|
property string description: qsTr("Featured Images and Live Wallpaper Packs")
|
||||||
|
property color color: palette.alternateBase
|
||||||
|
property string image: "qrc:/images/kero/kero_spotlight.png"
|
||||||
|
|
||||||
|
id: rootItem
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
anchors.fill: parent
|
||||||
|
color: rootItem.color
|
||||||
|
border.color: palette.midlight
|
||||||
|
|
||||||
|
RowLayout
|
||||||
|
{
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
|
Item
|
||||||
|
{
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.fillWidth: true
|
||||||
|
}
|
||||||
|
|
||||||
|
Rectangle
|
||||||
|
{
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.preferredWidth: height
|
||||||
|
Layout.alignment: Qt.AlignLeft
|
||||||
|
|
||||||
|
color: "transparent"
|
||||||
|
|
||||||
|
Image
|
||||||
|
{
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
|
source: image
|
||||||
|
antialiasing: true
|
||||||
|
fillMode: Image.PreserveAspectFit
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ColumnLayout
|
||||||
|
{
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.alignment: Qt.AlignLeft
|
||||||
|
|
||||||
|
Text
|
||||||
|
{
|
||||||
|
color: palette.text
|
||||||
|
text: rootItem.title
|
||||||
|
font: Constants.h1Font
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom
|
||||||
|
}
|
||||||
|
|
||||||
|
Text
|
||||||
|
{
|
||||||
|
id: errorText
|
||||||
|
text: rootItem.description
|
||||||
|
color: palette.text.darker()
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom
|
||||||
|
Layout.bottomMargin: Constants.largeMargin
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Item
|
||||||
|
{
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.fillWidth: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 60 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 51 KiB |
Reference in New Issue
Block a user