mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 06:57:28 -06:00
Use customised TableView for Keep/Discard Changes dialogue
Had to make some more modifications to get it to work again this time, due to the way the width of the table scales with the dialogue. But it's nice now. Contributes to issue CURA-8686.
This commit is contained in:
parent
ec21b167d0
commit
7a1c3e1bd5
2 changed files with 35 additions and 68 deletions
|
@ -1,14 +1,15 @@
|
||||||
// Copyright (c) 2020 Ultimaker B.V.
|
//Copyright (c) 2022 Ultimaker B.V.
|
||||||
//Cura is released under the terms of the LGPLv3 or higher.
|
//Cura is released under the terms of the LGPLv3 or higher.
|
||||||
|
|
||||||
|
import Qt.labs.qmlmodels 1.0
|
||||||
import QtQuick 2.1
|
import QtQuick 2.1
|
||||||
import QtQuick.Controls 1.1
|
import QtQuick.Controls 1.1 as OldControls
|
||||||
import QtQuick.Controls 2.15 as NewControls
|
import QtQuick.Controls 2.15
|
||||||
import QtQuick.Dialogs 1.2
|
import QtQuick.Dialogs 1.2
|
||||||
import QtQuick.Window 2.1
|
import QtQuick.Window 2.1
|
||||||
|
|
||||||
import UM 1.2 as UM
|
import UM 1.2 as UM
|
||||||
import Cura 1.0 as Cura
|
import Cura 1.6 as Cura
|
||||||
|
|
||||||
UM.Dialog
|
UM.Dialog
|
||||||
{
|
{
|
||||||
|
@ -17,6 +18,8 @@ UM.Dialog
|
||||||
|
|
||||||
minimumWidth: UM.Theme.getSize("popup_dialog").width
|
minimumWidth: UM.Theme.getSize("popup_dialog").width
|
||||||
minimumHeight: UM.Theme.getSize("popup_dialog").height
|
minimumHeight: UM.Theme.getSize("popup_dialog").height
|
||||||
|
width: minimumWidth
|
||||||
|
height: minimumHeight
|
||||||
property var changesModel: Cura.UserChangesModel{ id: userChangesModel}
|
property var changesModel: Cura.UserChangesModel{ id: userChangesModel}
|
||||||
onVisibilityChanged:
|
onVisibilityChanged:
|
||||||
{
|
{
|
||||||
|
@ -68,72 +71,31 @@ UM.Dialog
|
||||||
anchors.bottom: optionRow.top
|
anchors.bottom: optionRow.top
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
TableView
|
|
||||||
|
Cura.TableView
|
||||||
{
|
{
|
||||||
anchors.fill: parent
|
|
||||||
height: base.height - 150
|
|
||||||
id: tableView
|
id: tableView
|
||||||
Component
|
anchors
|
||||||
{
|
{
|
||||||
id: labelDelegate
|
top: parent.top
|
||||||
Label
|
left: parent.left
|
||||||
{
|
right: parent.right
|
||||||
property var extruder_name: userChangesModel.getItem(styleData.row).extruder
|
|
||||||
anchors.left: parent.left
|
|
||||||
anchors.leftMargin: UM.Theme.getSize("default_margin").width
|
|
||||||
anchors.right: parent.right
|
|
||||||
elide: Text.ElideRight
|
|
||||||
font: UM.Theme.getFont("system")
|
|
||||||
text:
|
|
||||||
{
|
|
||||||
var result = styleData.value
|
|
||||||
if (extruder_name != "")
|
|
||||||
{
|
|
||||||
result += " (" + extruder_name + ")"
|
|
||||||
}
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
height: base.height - 150
|
||||||
|
|
||||||
Component
|
columnHeaders: [
|
||||||
|
catalog.i18nc("@title:column", "Profile settings"),
|
||||||
|
Cura.MachineManager.activeQualityDisplayNameMap["main"],
|
||||||
|
catalog.i18nc("@title:column", "Current changes")
|
||||||
|
]
|
||||||
|
model: TableModel
|
||||||
{
|
{
|
||||||
id: defaultDelegate
|
TableModelColumn { display: "label" }
|
||||||
Label
|
TableModelColumn { display: "original_value" }
|
||||||
{
|
TableModelColumn { display: "user_value" }
|
||||||
text: styleData.value
|
rows: userChangesModel.items
|
||||||
font: UM.Theme.getFont("system")
|
|
||||||
}
|
}
|
||||||
}
|
sectionRole: "category"
|
||||||
|
|
||||||
TableViewColumn
|
|
||||||
{
|
|
||||||
role: "label"
|
|
||||||
title: catalog.i18nc("@title:column", "Profile settings")
|
|
||||||
delegate: labelDelegate
|
|
||||||
width: (tableView.width * 0.4) | 0
|
|
||||||
}
|
|
||||||
TableViewColumn
|
|
||||||
{
|
|
||||||
role: "original_value"
|
|
||||||
title: Cura.MachineManager.activeQualityDisplayNameMap["main"]
|
|
||||||
width: (tableView.width * 0.3) | 0
|
|
||||||
delegate: defaultDelegate
|
|
||||||
}
|
|
||||||
TableViewColumn
|
|
||||||
{
|
|
||||||
role: "user_value"
|
|
||||||
title: catalog.i18nc("@title:column", "Current changes")
|
|
||||||
width: (tableView.width * 0.3) | 0
|
|
||||||
}
|
|
||||||
section.property: "category"
|
|
||||||
section.delegate: Label
|
|
||||||
{
|
|
||||||
text: section
|
|
||||||
font.bold: true
|
|
||||||
}
|
|
||||||
|
|
||||||
model: userChangesModel
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,7 +108,7 @@ UM.Dialog
|
||||||
anchors.margins: UM.Theme.getSize("default_margin").width
|
anchors.margins: UM.Theme.getSize("default_margin").width
|
||||||
height: childrenRect.height
|
height: childrenRect.height
|
||||||
|
|
||||||
NewControls.ComboBox
|
ComboBox
|
||||||
{
|
{
|
||||||
id: discardOrKeepProfileChangesDropDownButton
|
id: discardOrKeepProfileChangesDropDownButton
|
||||||
width: 300
|
width: 300
|
||||||
|
@ -193,7 +155,7 @@ UM.Dialog
|
||||||
anchors.margins: UM.Theme.getSize("default_margin").width
|
anchors.margins: UM.Theme.getSize("default_margin").width
|
||||||
height: childrenRect.height
|
height: childrenRect.height
|
||||||
|
|
||||||
Button
|
OldControls.Button
|
||||||
{
|
{
|
||||||
id: discardButton
|
id: discardButton
|
||||||
text: catalog.i18nc("@action:button", "Discard changes");
|
text: catalog.i18nc("@action:button", "Discard changes");
|
||||||
|
@ -206,7 +168,7 @@ UM.Dialog
|
||||||
isDefault: true
|
isDefault: true
|
||||||
}
|
}
|
||||||
|
|
||||||
Button
|
OldControls.Button
|
||||||
{
|
{
|
||||||
id: keepButton
|
id: keepButton
|
||||||
text: catalog.i18nc("@action:button", "Keep changes");
|
text: catalog.i18nc("@action:button", "Keep changes");
|
||||||
|
|
|
@ -32,7 +32,12 @@ Cura.TableView
|
||||||
selectedQualityItem: profileOverview.qualityItem == null ? {} : profileOverview.qualityItem
|
selectedQualityItem: profileOverview.qualityItem == null ? {} : profileOverview.qualityItem
|
||||||
}
|
}
|
||||||
|
|
||||||
columnHeaders: [catalog.i18nc("@title:column", "Setting"), catalog.i18nc("@title:column", "Profile"), catalog.i18nc("@title:column", "Current"), catalog.i18nc("@title:column Unit of measurement", "Unit")]
|
columnHeaders: [
|
||||||
|
catalog.i18nc("@title:column", "Setting"),
|
||||||
|
catalog.i18nc("@title:column", "Profile"),
|
||||||
|
catalog.i18nc("@title:column", "Current"),
|
||||||
|
catalog.i18nc("@title:column Unit of measurement", "Unit")
|
||||||
|
]
|
||||||
model: TableModel
|
model: TableModel
|
||||||
{
|
{
|
||||||
TableModelColumn { display: "label" }
|
TableModelColumn { display: "label" }
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue