linphone-desktop/Linphone/view/Control/Button/Settings/ComboSetting.qml
Alexandre Jörgensen c73eea248f Format QML files
2026-03-10 12:32:35 +01:00

36 lines
1,023 B
QML

import QtQuick
import QtQuick.Controls.Basic
import QtQuick.Layouts
import Linphone
import "qrc:/qt/qml/Linphone/view/Control/Tool/Helper/utils.js" as Utils
ComboBox {
id: mainItem
Layout.preferredHeight: Utils.getSizeWithScreenRatio(49)
property string propertyName
property var propertyOwner
property var propertyOwnerGui
property alias entries: mainItem.model
oneLine: true
currentIndex: Utils.findIndex(model, function (entry) {
if (propertyOwnerGui)
return Utils.equalObject(entry, propertyOwnerGui.core[propertyName]);
else
return Utils.equalObject(entry, propertyOwner[propertyName]);
})
onCurrentValueChanged: {
if (propertyOwnerGui) {
binding.when = !Utils.equalObject(currentValue, propertyOwnerGui.core[propertyName]);
} else {
binding.when = !Utils.equalObject(currentValue, propertyOwner[propertyName]);
}
}
Binding {
id: binding
target: propertyOwnerGui ? propertyOwnerGui.core : propertyOwner
property: propertyName
value: mainItem.currentValue
when: false
}
}