Add visible scrollbar to list of printer profiles

This commit is contained in:
fieldOfView 2020-05-29 12:28:26 +02:00
parent 5749e8b20a
commit 8ce5593eec
3 changed files with 48 additions and 2 deletions

View file

@ -5,7 +5,7 @@ import QtQuick 2.10
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import UM 1.3 as UM import UM 1.3 as UM
import Cura 1.0 as Cura import Cura 1.1 as Cura
// //
@ -68,7 +68,7 @@ Item
height: childrenRect.height height: childrenRect.height
// ScrollView + ListView for selecting a local printer to add // ScrollView + ListView for selecting a local printer to add
ScrollView Cura.ScrollView
{ {
id: scrollView id: scrollView
anchors.left: parent.left anchors.left: parent.left

View file

@ -0,0 +1,45 @@
// 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 } }
}
}
}

View file

@ -35,6 +35,7 @@ RadioButton 1.0 RadioButton.qml
Scrollable 1.0 Scrollable.qml Scrollable 1.0 Scrollable.qml
TabButton 1.0 TabButton.qml TabButton 1.0 TabButton.qml
TextField 1.0 TextField.qml TextField 1.0 TextField.qml
ScrollView 1.0 ScrollView.qml
# Cura/MachineSettings # Cura/MachineSettings