mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-04-29 23:34:32 +08:00
46 lines
1.4 KiB
QML
46 lines
1.4 KiB
QML
// Copyright (c) 2020 Ultimaker B.V.
|
|
// Toolbox is released under the terms of the LGPLv3 or higher.
|
|
|
|
import QtQuick 2.10
|
|
import QtQuick.Controls 2.3
|
|
|
|
import UM 1.1 as UM
|
|
|
|
ScrollView
|
|
{
|
|
clip: true
|
|
|
|
// Setting this property to false hides the scrollbar both when the scrollbar is not needed (child height < height)
|
|
// and when the scrollbar is not actively being hovered or pressed
|
|
property bool scrollAlwaysVisible: true
|
|
|
|
ScrollBar.vertical: ScrollBar
|
|
{
|
|
hoverEnabled: true
|
|
policy: parent.scrollAlwaysVisible ? ScrollBar.AlwaysOn : ScrollBar.AsNeeded
|
|
anchors.top: parent.top
|
|
anchors.right: parent.right
|
|
anchors.bottom: parent.bottom
|
|
|
|
contentItem: Rectangle
|
|
{
|
|
implicitWidth: UM.Theme.getSize("scrollbar").width
|
|
opacity: (parent.active || parent.parent.scrollAlwaysVisible) ? 1.0 : 0.0
|
|
radius: Math.round(width / 2)
|
|
color:
|
|
{
|
|
if (parent.pressed)
|
|
{
|
|
return UM.Theme.getColor("scrollbar_handle_down")
|
|
}
|
|
else if (parent.hovered)
|
|
{
|
|
return UM.Theme.getColor("scrollbar_handle_hover")
|
|
}
|
|
return UM.Theme.getColor("scrollbar_handle")
|
|
}
|
|
Behavior on color { ColorAnimation { duration: 100; } }
|
|
Behavior on opacity { NumberAnimation { duration: 100 } }
|
|
}
|
|
}
|
|
} |