40 lines
739 B
QML
40 lines
739 B
QML
|
|
import QtQuick;
|
|||
|
|
import QtQuick.Controls;
|
|||
|
|
import QtQuick.Dialogs
|
|||
|
|
|
|||
|
|
Item{
|
|||
|
|
id: control
|
|||
|
|
property var value
|
|||
|
|
implicitHeight: 25
|
|||
|
|
signal asValueChanged(text:var)
|
|||
|
|
|
|||
|
|
function setValue(newValue:var){
|
|||
|
|
if(newValue !== value){
|
|||
|
|
value = newValue
|
|||
|
|
asValueChanged(value)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
Button{
|
|||
|
|
anchors.margins: 2
|
|||
|
|
anchors.fill: parent
|
|||
|
|
palette {
|
|||
|
|
button: value
|
|||
|
|
}
|
|||
|
|
background: Rectangle {
|
|||
|
|
color: value
|
|||
|
|
}
|
|||
|
|
onClicked: {
|
|||
|
|
colorDialog.open()
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
ColorDialog {
|
|||
|
|
id: colorDialog
|
|||
|
|
selectedColor: value
|
|||
|
|
onAccepted: {
|
|||
|
|
control.setValue(selectedColor)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|