mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-02 08:44:25 +08:00

The new button should be consistent with the looks of the tool buttons. I've given it the same size as the inner part of the tool buttons, reworked the background so that it matches. I'm also giving it the 'secondary button' style which is also used for one other button. But that other detail button should get the same style anyway so that's fine too. I've also turned this icon into an actual button. That way it can get focus when using keyboard navigation and works better with tools for blind and such. Contributes to issue CURA-8202.
51 lines
1.3 KiB
QML
51 lines
1.3 KiB
QML
// Copyright (c) 2021 Ultimaker B.V.
|
|
// Cura is released under the terms of the LGPLv3 or higher.
|
|
|
|
import QtQuick 2.3
|
|
import QtQuick.Controls 2.4
|
|
import QtQuick.Controls.Styles 1.3
|
|
import UM 1.3 as UM
|
|
import Cura 1.0 as Cura
|
|
|
|
Button
|
|
{
|
|
property var iconSource: null
|
|
width: UM.Theme.getSize("button").width * 0.75 //Matching the size of the content of tool buttons.
|
|
height: UM.Theme.getSize("button").height * 0.75
|
|
|
|
hoverEnabled: true
|
|
|
|
background: Rectangle
|
|
{
|
|
anchors.fill: parent
|
|
radius: 0.5 * width
|
|
color: parent.enabled ? (parent.hovered ? UM.Theme.getColor("monitor_secondary_button_hover") : "transparent") : UM.Theme.getColor("monitor_icon_disabled")
|
|
}
|
|
|
|
UM.RecolorImage
|
|
{
|
|
id: icon
|
|
anchors
|
|
{
|
|
horizontalCenter: parent.horizontalCenter
|
|
verticalCenter: parent.verticalCenter
|
|
}
|
|
color: UM.Theme.getColor("primary")
|
|
height: width
|
|
source: iconSource
|
|
width: Math.round(parent.width / 2)
|
|
}
|
|
|
|
onClicked:
|
|
{
|
|
if (OutputDevice.activeCameraUrl != "")
|
|
{
|
|
OutputDevice.setActiveCameraUrl("")
|
|
}
|
|
else
|
|
{
|
|
OutputDevice.setActiveCameraUrl(modelData.cameraUrl)
|
|
}
|
|
}
|
|
}
|