30 lines
695 B
QML
30 lines
695 B
QML
// SPDX-License-Identifier: Unlicense
|
|
|
|
import QtQuick.Controls 2.13
|
|
|
|
Button {
|
|
property bool muted
|
|
property alias value: volume.value
|
|
|
|
implicitWidth: implicitHeight
|
|
icon.name: 'audio-volume-' +
|
|
(muted ? 'muted' :
|
|
(value < 0.33 ? 'low' :
|
|
(value < 0.66 ? 'medium' : 'high')))
|
|
|
|
checkable: true
|
|
checked: popup.opened
|
|
|
|
onClicked: popup.opened ? popup.close() : popup.open()
|
|
Popup {
|
|
id: popup
|
|
y: -height
|
|
height: 100
|
|
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutsideParent
|
|
Slider {
|
|
id: volume
|
|
anchors.fill: parent
|
|
orientation: Qt.Vertical
|
|
}
|
|
}
|
|
}
|