RibbonTabPage and example: Update to avoid warning and properly define progressbar_slider.

This commit is contained in:
Mentalflow 2025-05-24 01:27:15 +08:00
parent c367541af8
commit 27c845b7d9
Signed by: Mentalflow
GPG Key ID: 5AE68D4401A2EE71
4 changed files with 64 additions and 50 deletions

View File

@ -36,15 +36,15 @@ RibbonTabBar {
RibbonTabPage{
id: basic_page
title: qsTr("Basic")
property var sliderLayout: getItem(0).sliderLayout
property var sliderWithBtn: getItem(0).sliderWithBtn
property var sliderWithoutBtn: getItem(0).sliderWithoutBtn
property var switchLayout: getItem(1).switchLayout
property var btnWithColorAndGrabberText: getItem(1).btnWithColorAndGrabberText
property var checkBoxLayout: getItem(2).checkBoxLayout
property var buttonLayout: getItem(3).buttonLayout
property var btnWithoutBgAndLabel: getItem(3).btnWithoutBgAndLabel
property var pushButtonLayout: getItem(4).pushButtonLayout
property var sliderLayout
property var sliderWithBtn
property var sliderWithoutBtn
property var switchLayout
property var btnWithColorAndGrabberText
property var checkBoxLayout
property var buttonLayout
property var btnWithoutBgAndLabel
property var pushButtonLayout
onContainerItemUpdated: {
if(getItem(0)){
@ -329,8 +329,8 @@ RibbonTabBar {
RibbonTabPage{
id: input_page
title: qsTr("Input")
property var lineEditLayout: getItem(0).lineEditLayout
property var lineEditWithIcon: getItem(0).lineEditWithIcon
property var lineEditLayout
property var lineEditWithIcon
onContainerItemUpdated: {
if(getItem(0)){
@ -503,9 +503,16 @@ RibbonTabBar {
}
}
RibbonTabPage{
id: progress_page
title: qsTr("Progress")
property var progressbarSlider
onContainerItemUpdated:{
if(getItem(0))
progressbarSlider = getItem(0).progressbarSlider
}
RibbonTabGroup{
width: progressbar_slider.width + 30
property var progressbarSlider: progressbar_slider
RibbonSlider{
id: progressbar_slider
anchors.centerIn: parent
@ -526,22 +533,22 @@ RibbonTabBar {
ColumnLayout{
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Top
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Left
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Right
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Bottom
}
}
@ -577,7 +584,7 @@ RibbonTabBar {
barWidth: 100
indeterminate: false
showText: false
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
}
}
}
@ -593,26 +600,26 @@ RibbonTabBar {
RowLayout{
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Top
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Left
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Right
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Bottom
}
RibbonProgressRing{
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
centerInTextLabel: true
}
}
@ -652,7 +659,7 @@ RibbonTabBar {
barWidth: 30
indeterminate: false
showText: false
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
}
}
}

View File

@ -36,15 +36,15 @@ RibbonTabBar {
RibbonTabPage{
id: basic_page
title: qsTr("Basic")
property var sliderLayout: getItem(0).sliderLayout
property var sliderWithBtn: getItem(0).sliderWithBtn
property var sliderWithoutBtn: getItem(0).sliderWithoutBtn
property var switchLayout: getItem(1).switchLayout
property var btnWithColorAndGrabberText: getItem(1).btnWithColorAndGrabberText
property var checkBoxLayout: getItem(2).checkBoxLayout
property var buttonLayout: getItem(3).buttonLayout
property var btnWithoutBgAndLabel: getItem(3).btnWithoutBgAndLabel
property var pushButtonLayout: getItem(4).pushButtonLayout
property var sliderLayout
property var sliderWithBtn
property var sliderWithoutBtn
property var switchLayout
property var btnWithColorAndGrabberText
property var checkBoxLayout
property var buttonLayout
property var btnWithoutBgAndLabel
property var pushButtonLayout
onContainerItemUpdated: {
if(getItem(0)){
@ -329,8 +329,8 @@ RibbonTabBar {
RibbonTabPage{
id: input_page
title: qsTr("Input")
property var lineEditLayout: getItem(0).lineEditLayout
property var lineEditWithIcon: getItem(0).lineEditWithIcon
property var lineEditLayout
property var lineEditWithIcon
onContainerItemUpdated: {
if(getItem(0)){
@ -503,9 +503,16 @@ RibbonTabBar {
}
}
RibbonTabPage{
id: progress_page
title: qsTr("Progress")
property var progressbarSlider
onContainerItemUpdated:{
if(getItem(0))
progressbarSlider = getItem(0).progressbarSlider
}
RibbonTabGroup{
width: progressbar_slider.width + 30
property var progressbarSlider: progressbar_slider
RibbonSlider{
id: progressbar_slider
anchors.centerIn: parent
@ -526,22 +533,22 @@ RibbonTabBar {
ColumnLayout{
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Top
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Left
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Right
}
RibbonProgressBar{
barWidth: 100
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Bottom
}
}
@ -577,7 +584,7 @@ RibbonTabBar {
barWidth: 100
indeterminate: false
showText: false
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
}
}
}
@ -593,26 +600,26 @@ RibbonTabBar {
RowLayout{
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Top
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Left
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Right
}
RibbonProgressRing{
barWidth: 30
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
textLabelPosition: RibbonProgressBar.LabelPosition.Bottom
}
RibbonProgressRing{
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
centerInTextLabel: true
}
}
@ -652,7 +659,7 @@ RibbonTabBar {
barWidth: 30
indeterminate: false
showText: false
value: progressbar_slider.value / 100
value: progress_page.progressbarSlider ? progress_page.progressbarSlider.value / 100 : 0
}
}
}

View File

@ -11,7 +11,7 @@ Item {
property bool needActive: SwipeView.isCurrentItem || SwipeView.isNextItem || SwipeView.isPreviousItem
property var delegateList: []
readonly property var contentItem: main_loader.item.containerItem
readonly property var contentItem: main_loader.item ? main_loader.item.containerItem : undefined
signal containerItemUpdated()
clip: true
@ -45,7 +45,7 @@ Item {
model: control.delegateList
Loader{
required property var modelData
width: item.width
width: item ? item.width : 0
Layout.fillHeight: true
active: control.needActive
sourceComponent: control.delegateList[modelData.index].content
@ -56,7 +56,7 @@ Item {
onLoaded: containerItemUpdated()
}
function getItem( index : int ){
function getItem( index ){
return contentItem.children[index].item
}

View File

@ -11,7 +11,7 @@ Item {
property bool needActive: SwipeView.isCurrentItem || SwipeView.isNextItem || SwipeView.isPreviousItem
property var delegateList: []
readonly property var contentItem: main_loader.item.containerItem
readonly property var contentItem: main_loader.item ? main_loader.item.containerItem : undefined
signal containerItemUpdated()
clip: true
@ -45,7 +45,7 @@ Item {
model: control.delegateList
Loader{
required property var modelData
width: item.width
width: item ? item.width : 0
Layout.fillHeight: true
active: control.needActive
sourceComponent: control.delegateList[modelData.index].content
@ -56,7 +56,7 @@ Item {
onLoaded: containerItemUpdated()
}
function getItem( index : int ){
function getItem( index ){
return contentItem.children[index].item
}