RibbonTour, RibbonTourItem: Performance improved in properties change and color.

This commit is contained in:
Mentalflow 2025-05-24 00:49:55 +08:00
parent d8d698c7e2
commit fa7439f243
Signed by: Mentalflow
GPG Key ID: 5AE68D4401A2EE71
4 changed files with 20 additions and 14 deletions

View File

@ -34,7 +34,7 @@ Popup {
y: (Overlay.overlay.height - height) / 2
closePolicy: Popup.NoAutoClose
Overlay.modal:Rectangle{
color: !RibbonTheme.isDarkMode ? Qt.rgba(255,255,255,0.5) : Qt.rgba(0,0,0,0.5)
color: !RibbonTheme.isDarkMode ? RibbonUI.alpha("white", 0.5) : RibbonUI.alpha("black", 0.5)
}
Overlay.modeless:Rectangle{
color:"transparent"
@ -56,7 +56,7 @@ Popup {
radius: 7
maskOpacity: blurEnabled ? 0.9 : 1
maskBorderColor: RibbonTheme.modernStyle ?
RibbonTheme.isDarkMode ? "#7A7A7A" : "#2C59B7" :
RibbonTheme.isDarkMode ? "#7A7A7A" : "#2C59B7" :
RibbonTheme.isDarkMode ? "#5C5D5D" : "#B5B4B5"
maskBorderWidth: 1
}
@ -154,15 +154,10 @@ Popup {
if(data_container.resources[index] instanceof RibbonTourItem)
{
let item = data_container.resources[index]
item.titleChanged.connect(function(){
item.propertiesUpdated.connect(function(){
item.getPropertiesReady()
targetList[item.id] = item.properties
})
if(item.text){
item.textChanged.connect(function(){
targetList[item.id].text = item.text
})
}
item.id = targetList.length
item.getPropertiesReady()
targetList.push(item.properties)

View File

@ -10,4 +10,12 @@ RibbonObject {
property var enterFunc
property var exitFunc
property_names: ['title','text','target','enterFunc','exitFunc']
signal propertiesUpdated()
onTitleChanged: propertiesUpdated()
onTextChanged: propertiesUpdated()
onTargetChanged: propertiesUpdated()
onEnterFuncChanged: propertiesUpdated()
onExitFuncChanged: propertiesUpdated()
}

View File

@ -155,15 +155,10 @@ Popup {
if(data_container.resources[index] instanceof RibbonTourItem)
{
let item = data_container.resources[index]
item.titleChanged.connect(function(){
item.propertiesUpdated.connect(function(){
item.getPropertiesReady()
targetList[item.id] = item.properties
})
if(item.text){
item.textChanged.connect(function(){
targetList[item.id].text = item.text
})
}
item.id = targetList.length
item.getPropertiesReady()
targetList.push(item.properties)

View File

@ -10,4 +10,12 @@ RibbonObject {
property var enterFunc
property var exitFunc
property_names: ['title','text','target','enterFunc','exitFunc']
signal propertiesUpdated()
onTitleChanged: propertiesUpdated()
onTextChanged: propertiesUpdated()
onTargetChanged: propertiesUpdated()
onEnterFuncChanged: propertiesUpdated()
onExitFuncChanged: propertiesUpdated()
}