harbour-seaprint/qml/components/IntegerSetting.qml

59 lines
1.5 KiB
QML
Raw Normal View History

2019-12-01 22:27:00 +03:00
import QtQuick 2.0
import Sailfish.Silica 1.0
Setting {
id: settingEntry
height: button.height + menu.height
2019-12-01 22:27:00 +03:00
property int low
property int high
ValueButton {
id: button
2019-12-01 22:27:00 +03:00
enabled: valid
label: prettyName
value: choice ? choice : default_choice
onClicked: parent.clicked()
Component.onCompleted: {
console.log("button height: " + button.height)
}
2019-12-01 22:27:00 +03:00
}
onClicked: menu.open(settingEntry)
ContextMenu {
2019-12-01 22:27:00 +03:00
id: menu
enabled: valid
2019-12-01 22:27:00 +03:00
MenuItem {
Slider
{
minimumValue: low
maximumValue: high < 100 ? high : 100
width: parent.width
stepSize: 1
2020-06-16 20:51:29 +03:00
value: choice ? choice : default_choice
2019-12-01 22:27:00 +03:00
onValueChanged:
{
choice = value;
}
}
IconButton
{
anchors.right: parent.right
icon.source: "image://theme/icon-s-edit"
onClicked: {var dialog = pageStack.push(Qt.resolvedUrl("IntegerInputDialog.qml"),
{value: choice, title: prettyName,
min: low, max: high});
dialog.accepted.connect(function() {
choice = dialog.value;
})
}
}
}
}
}