123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- // Copyright (c) 2022 Ultimaker B.V.
- // Cura is released under the terms of the LGPLv3 or higher.
- import QtQuick 2.10
- import QtQuick.Controls 2.3
- import QtQuick.Layouts 2.10
- import UM 1.6 as UM
- import Cura 1.7 as Cura
- Item
- {
- property alias title: sectionTitle.text
- property alias icon: sectionTitle.source
- property Component content: Item { visible: false }
- property alias enableSectionVisible: enableSectionSwitch.visible
- property alias enableSectionChecked: enableSectionSwitch.checked
- property alias enableSectionEnabled: enableSectionSwitch.enabled
- property var enableSectionClicked: { return }
- property int leftColumnWidth: width / 2
- property alias contents: settingColumn.children
- function onEnableSectionChanged(state) {}
- height: childrenRect.height
- Item
- {
- id: sectionHeader
- anchors.top: parent.top
- anchors.right: parent.right
- anchors.left: parent.left
- height: UM.Theme.getSize("section_header").height
- Cura.IconWithText
- {
- id: sectionTitle
- width: leftColumnWidth
- anchors.left: parent.left
- anchors.verticalCenter: parent.verticalCenter
- anchors.leftMargin: - UM.Theme.getSize("thick_lining").width
- source: UM.Theme.getIcon("PrintQuality")
- spacing: UM.Theme.getSize("thick_margin").width
- iconSize: UM.Theme.getSize("medium_button_icon").width
- iconColor: UM.Theme.getColor("text")
- font: UM.Theme.getFont("medium_bold")
- }
- UM.Switch
- {
- id: enableSectionSwitch
- anchors.left: sectionTitle.right
- anchors.verticalCenter: parent.verticalCenter
- visible: false
- onClicked: onEnableSectionChanged(enableSectionSwitch.checked)
- }
- MouseArea
- {
- id: tooltipMouseArea
- anchors.fill: parent
- propagateComposedEvents: true
- hoverEnabled: true
- onEntered: { print("showTooltip") }
- onExited: { print("hideTooltip" ) }
- }
- }
- Loader
- {
- id: contentLoader
- width: parent.width
- height: childrenRect.height
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.verticalCenter: parent.verticalCenter
- sourceComponent: content
- }
- }
|