Merge branch 'replace_controls_1_for_controls_2' of github.com:Ultimaker/Cura into CURA-8949_preferences_styling

This commit is contained in:
Jaime van Kessel 2022-02-18 10:24:06 +01:00
commit 48fa6cddf0
14 changed files with 146 additions and 289 deletions

View File

@ -1,4 +1,4 @@
// Copyright (c) 2018 Ultimaker B.V.
// Copyright (c) 2022 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.2
@ -7,13 +7,13 @@ import QtQuick.Layouts 1.1
import QtQuick.Window 2.1
import QtQuick.Dialogs 1.2 // For filedialog
import UM 1.2 as UM
import UM 1.5 as UM
import Cura 1.0 as Cura
Cura.MachineAction
{
anchors.fill: parent;
anchors.fill: parent
property bool printerConnected: Cura.MachineManager.printerConnected
property var activeOutputDevice: printerConnected ? Cura.MachineManager.printerOutputDevices[0] : null
property bool canUpdateFirmware: activeOutputDevice ? activeOutputDevice.activePrinter.canUpdateFirmware : false
@ -25,25 +25,22 @@ Cura.MachineAction
UM.I18nCatalog { id: catalog; name: "cura"}
spacing: UM.Theme.getSize("default_margin").height
Label
UM.Label
{
width: parent.width
text: catalog.i18nc("@title", "Update Firmware")
wrapMode: Text.WordWrap
font.pointSize: 18
}
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
text: catalog.i18nc("@label", "Firmware is the piece of software running directly on your 3D printer. This firmware controls the step motors, regulates the temperature and ultimately makes your printer work.")
}
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
text: catalog.i18nc("@label", "The firmware shipping with new printers works, but new versions tend to have more features and improvements.");
text: catalog.i18nc("@label", "The firmware shipping with new printers works, but new versions tend to have more features and improvements.")
}
Row
@ -55,7 +52,7 @@ Cura.MachineAction
Button
{
id: autoUpgradeButton
text: catalog.i18nc("@action:button", "Automatically upgrade Firmware");
text: catalog.i18nc("@action:button", "Automatically upgrade Firmware")
enabled: parent.firmwareName != "" && canUpdateFirmware
onClicked:
{
@ -66,7 +63,7 @@ Cura.MachineAction
Button
{
id: manualUpgradeButton
text: catalog.i18nc("@action:button", "Upload custom Firmware");
text: catalog.i18nc("@action:button", "Upload custom Firmware")
enabled: canUpdateFirmware
onClicked:
{
@ -75,20 +72,18 @@ Cura.MachineAction
}
}
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
visible: !printerConnected && !updateProgressDialog.visible
text: catalog.i18nc("@label", "Firmware can not be updated because there is no connection with the printer.");
text: catalog.i18nc("@label", "Firmware can not be updated because there is no connection with the printer.")
}
Label
{
width: parent.width
wrapMode: Text.WordWrap
visible: printerConnected && !canUpdateFirmware
text: catalog.i18nc("@label", "Firmware can not be updated because the connection with the printer does not support upgrading firmware.");
text: catalog.i18nc("@label", "Firmware can not be updated because the connection with the printer does not support upgrading firmware.")
}
}
@ -122,7 +117,7 @@ Cura.MachineAction
{
anchors.fill: parent
Label
UM.Label
{
anchors
{
@ -157,7 +152,7 @@ Cura.MachineAction
wrapMode: Text.Wrap
}
ProgressBar
UM.ProgressBar
{
id: prog
value: (manager.firmwareUpdater != null) ? manager.firmwareUpdater.firmwareProgress / 100 : 0
@ -171,8 +166,8 @@ Cura.MachineAction
}
anchors
{
left: parent.left;
right: parent.right;
left: parent.left
right: parent.right
}
}
}
@ -180,9 +175,9 @@ Cura.MachineAction
rightButtons: [
Button
{
text: catalog.i18nc("@action:button","Close");
enabled: (manager.firmwareUpdater != null) ? manager.firmwareUpdater.firmwareUpdateState != 1 : true;
onClicked: updateProgressDialog.visible = false;
text: catalog.i18nc("@action:button", "Close")
enabled: manager.firmwareUpdater != null ? manager.firmwareUpdater.firmwareUpdateState != 1 : true
onClicked: updateProgressDialog.visible = false
}
]
}

View File

@ -18,6 +18,8 @@ UM.Dialog
width: minimumWidth
height: minimumHeight
GridLayout
{
UM.I18nCatalog { id: catalog; name: "cura" }
@ -26,7 +28,7 @@ UM.Dialog
rowSpacing: UM.Theme.getSize("thin_margin").height
columns: 2
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Height (mm)")
@ -39,7 +41,7 @@ UM.Dialog
}
}
TextField
Cura.TextField
{
id: peak_height
Layout.fillWidth: true
@ -57,7 +59,7 @@ UM.Dialog
y: peak_height.y + peak_height.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Base (mm)")
@ -71,7 +73,7 @@ UM.Dialog
}
}
TextField
Cura.TextField
{
id: base_height
selectByMouse: true
@ -89,7 +91,7 @@ UM.Dialog
y: base_height.y + base_height.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Width (mm)")
@ -102,7 +104,7 @@ UM.Dialog
}
}
TextField
Cura.TextField
{
id: width
selectByMouse: true
@ -121,7 +123,7 @@ UM.Dialog
y: width.y + width.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Depth (mm)")
@ -134,7 +136,7 @@ UM.Dialog
}
}
TextField
Cura.TextField
{
id: depth
Layout.fillWidth: true
@ -153,7 +155,7 @@ UM.Dialog
y: depth.y + depth.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: ""
@ -166,7 +168,7 @@ UM.Dialog
}
}
ComboBox
Cura.ComboBox
{
id: lighter_is_higher
Layout.fillWidth: true
@ -184,7 +186,7 @@ UM.Dialog
y: lighter_is_higher.y + lighter_is_higher.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Color Model")
@ -197,7 +199,7 @@ UM.Dialog
}
}
ComboBox
Cura.ComboBox
{
id: color_model
Layout.fillWidth: true
@ -215,7 +217,7 @@ UM.Dialog
y: color_model.y + color_model.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "1mm Transmittance (%)")
@ -228,7 +230,7 @@ UM.Dialog
}
}
TextField
Cura.TextField
{
id: transmittance
Layout.fillWidth: true
@ -246,7 +248,7 @@ UM.Dialog
y: transmittance.y + transmittance.height + UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
Layout.fillWidth: true
text: catalog.i18nc("@action:label", "Smoothing")

View File

@ -4,8 +4,8 @@
import QtQuick 2.2
import QtQuick.Controls 2.1
import UM 1.1 as UM
import UM 1.5 as UM
import Cura 1.0 as Cura
import ".."
Button {
@ -33,7 +33,7 @@ Button {
source: UM.Theme.getIcon(definition.icon)
color: base.hovered ? palette.highlight : palette.buttonText
}
Label
UM.Label
{
id: label
anchors.verticalCenter: parent.verticalCenter

View File

@ -6,7 +6,6 @@ import QtQuick.Layouts 1.1
import QtQuick.Controls 2.1
import UM 1.5 as UM
import Cura 1.0 as Cura
UM.TooltipArea

View File

@ -42,7 +42,7 @@ UM.Dialog
listview.model.filter = new_filter
}
TextField
Cura.TextField
{
id: filterInput
selectByMouse: true

View File

@ -37,22 +37,17 @@ Cura.MachineAction
SystemPalette { id: palette }
UM.I18nCatalog { id: catalog; name:"cura" }
Label
UM.Label
{
id: pageTitle
width: parent.width
text: catalog.i18nc("@title:window", "Connect to Networked Printer")
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
font.pointSize: 18
}
Label
UM.Label
{
id: pageDescription
width: parent.width
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
text: catalog.i18nc("@label", "To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.") + "\n\n" + catalog.i18nc("@label", "Select your printer from the list below:")
}
@ -158,13 +153,11 @@ Cura.MachineAction
}
}
}
Label
UM.Label
{
id: discoveryTip
anchors.left: parent.left
anchors.right: parent.right
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
text: catalog.i18nc("@label", "If your printer is not listed, read the <a href='%1'>network printing troubleshooting guide</a>").arg("https://ultimaker.com/en/cura/troubleshooting/network?utm_source=cura&utm_medium=software&utm_campaign=manage-network-printer");
onLinkActivated: Qt.openUrlExternally(link)
}
@ -175,32 +168,27 @@ Cura.MachineAction
width: Math.round(parent.width * 0.5)
visible: base.selectedDevice ? true : false
spacing: UM.Theme.getSize("default_margin").height
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
text: base.selectedDevice ? base.selectedDevice.name : ""
font: UM.Theme.getFont("large_bold")
elide: Text.ElideRight
renderType: Text.NativeRendering
}
Grid
{
visible: base.completeProperties
width: parent.width
columns: 2
Label
property real labelWidth: Math.round(width * 0.5)
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text: catalog.i18nc("@label", "Type")
}
Label
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text:
{
if (base.selectedDevice) {
@ -209,41 +197,31 @@ Cura.MachineAction
return ""
}
}
Label
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text: catalog.i18nc("@label", "Firmware version")
}
Label
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text: base.selectedDevice ? base.selectedDevice.firmwareVersion : ""
}
Label
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text: catalog.i18nc("@label", "Address")
}
Label
UM.Label
{
width: Math.round(parent.width * 0.5)
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
width: labelWidth
text: base.selectedDevice ? base.selectedDevice.ipAddress : ""
}
}
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
text:{
// The property cluster size does not exist for older UM3 devices.
if(!base.selectedDevice || base.selectedDevice.clusterSize == null || base.selectedDevice.clusterSize == 1)
@ -261,11 +239,9 @@ Cura.MachineAction
}
}
Label
UM.Label
{
width: parent.width
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
visible: base.selectedDevice != null && !base.completeProperties
text: catalog.i18nc("@label", "The printer at this address has not yet responded." )
}
@ -316,15 +292,13 @@ Cura.MachineAction
anchors.fill: parent
spacing: UM.Theme.getSize("default_margin").height
Label
UM.Label
{
text: catalog.i18nc("@label", "Enter the IP address of your printer on the network.")
width: parent.width
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
}
TextField
Cura.TextField
{
id: addressField
width: parent.width

View File

@ -1,9 +1,8 @@
// Copyright (c) 2021 Ultimaker B.V.
// Copyright (c) 2022 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Controls.Styles 1.1
import QtQuick.Controls 2.1
import QtQuick.Layouts 1.1
import UM 1.5 as UM
@ -29,7 +28,8 @@ Item
{
if (!activity)
{
//When there is no mesh in the buildplate; the printJobTextField is set to an empty string so it doesn't set an empty string as a jobName (which is later used for saving the file)
// When there is no mesh in the buildplate; the printJobTextField is set to an empty string so it doesn't
// set an empty string as a jobName (which is later used for saving the file)
PrintInformation.baseName = ""
}
}
@ -64,9 +64,9 @@ Item
anchors.left: printJobPencilIcon.right
anchors.leftMargin: UM.Theme.getSize("narrow_margin").width
height: UM.Theme.getSize("jobspecs_line").height
width: Math.max(__contentWidth + UM.Theme.getSize("default_margin").width, 50)
width: Math.max(contentWidth + UM.Theme.getSize("default_margin").width, 50)
maximumLength: 120
text: (PrintInformation === null) ? "" : PrintInformation.jobName
text: PrintInformation === null ? "" : PrintInformation.jobName
horizontalAlignment: TextInput.AlignLeft
property string textBeforeEdit: ""
@ -91,17 +91,10 @@ Item
validator: RegExpValidator {
regExp: /^[^\\\/\*\?\|\[\]]*$/
}
style: TextFieldStyle
{
textColor: UM.Theme.getColor("text_scene")
font: UM.Theme.getFont("default")
background: Rectangle
{
opacity: 0
border.width: 0
}
}
color: UM.Theme.getColor("text_scene")
background: Item {}
selectByMouse: true
}
}
@ -125,10 +118,7 @@ Item
anchors.leftMargin: UM.Theme.getSize("default_margin").width
}
Component.onCompleted:
{
base.addAdditionalComponents("jobSpecsButton")
}
Component.onCompleted: base.addAdditionalComponents("jobSpecsButton")
Connections
{

View File

@ -183,7 +183,7 @@ Item
visible: showProgress
}
ProgressBar
UM.ProgressBar
{
id: progressBar;
minimumValue: 0;
@ -218,8 +218,6 @@ Item
return false;
}
}
style: UM.Theme.styles.progressbar;
property string backgroundColor: UM.Theme.getColor("progressbar_background");
property string controlColor: base.statusColor;

View File

@ -148,7 +148,7 @@ UM.PreferencesPage
UM.I18nCatalog{id: catalog; name: "cura"}
width: preferencesScrollView.width - preferencesScrollBar.width
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label", "Interface")
@ -160,7 +160,7 @@ UM.PreferencesPage
columns: 4
width: parent.width
Label
UM.Label
{
id: languageLabel
text: "Language:" //Don't translate this, to make it easier to find the language drop-down if you can't read the current language.
@ -202,7 +202,7 @@ UM.PreferencesPage
}
}
ComboBox
Cura.ComboBox
{
id: languageComboBox
@ -233,13 +233,13 @@ UM.PreferencesPage
}
}
Label
UM.Label
{
id: currencyLabel
text: catalog.i18nc("@label", "Currency:")
}
TextField
Cura.TextField
{
id: currencyField
selectByMouse: true
@ -247,7 +247,7 @@ UM.PreferencesPage
onTextChanged: UM.Preferences.setValue("cura/currency", text)
}
Label
UM.Label
{
id: themeLabel
text: catalog.i18nc("@label","Theme:")
@ -266,7 +266,7 @@ UM.PreferencesPage
}
}
ComboBox
Cura.ComboBox
{
id: themeComboBox
@ -290,7 +290,7 @@ UM.PreferencesPage
}
}
Label
UM.Label
{
id: languageCaption
@ -314,7 +314,7 @@ UM.PreferencesPage
text: catalog.i18nc("@info:tooltip", "Slice automatically when changing settings.")
CheckBox
Cura.CheckBox
{
id: autoSliceCheckbox
checked: boolCheck(UM.Preferences.getValue("general/auto_slice"))
@ -331,7 +331,7 @@ UM.PreferencesPage
width: UM.Theme.getSize("default_margin").width
}
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label", "Viewport behavior")
@ -344,7 +344,7 @@ UM.PreferencesPage
text: catalog.i18nc("@info:tooltip", "Highlight unsupported areas of the model in red. Without support these areas will not print properly.")
CheckBox
Cura.CheckBox
{
id: showOverhangCheckbox
@ -363,7 +363,7 @@ UM.PreferencesPage
text: catalog.i18nc("@info:tooltip", "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry.")
CheckBox
Cura.CheckBox
{
id: showXrayErrorCheckbox
@ -380,7 +380,7 @@ UM.PreferencesPage
height: childrenRect.height;
text: catalog.i18nc("@info:tooltip", "Moves the camera so the model is in the center of the view when a model is selected")
CheckBox
Cura.CheckBox
{
id: centerOnSelectCheckbox
text: catalog.i18nc("@action:button","Center camera when item is selected");
@ -395,7 +395,7 @@ UM.PreferencesPage
height: childrenRect.height;
text: catalog.i18nc("@info:tooltip", "Should the default zoom behavior of cura be inverted?")
CheckBox
Cura.CheckBox
{
id: invertZoomCheckbox
text: catalog.i18nc("@action:button", "Invert the direction of camera zoom.");
@ -416,7 +416,7 @@ UM.PreferencesPage
height: childrenRect.height;
text: zoomToMouseCheckbox.enabled ? catalog.i18nc("@info:tooltip", "Should zooming move in the direction of the mouse?") : catalog.i18nc("@info:tooltip", "Zooming towards the mouse is not supported in the orthographic perspective.")
CheckBox
Cura.CheckBox
{
id: zoomToMouseCheckbox
text: catalog.i18nc("@action:button", "Zoom toward mouse direction")
@ -447,7 +447,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should models on the platform be moved so that they no longer intersect?")
CheckBox
Cura.CheckBox
{
id: pushFreeCheckbox
text: catalog.i18nc("@option:check", "Ensure models are kept apart")
@ -461,7 +461,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should models on the platform be moved down to touch the build plate?")
CheckBox
Cura.CheckBox
{
id: dropDownCheckbox
text: catalog.i18nc("@option:check", "Automatically drop models to the build plate")
@ -478,7 +478,7 @@ UM.PreferencesPage
text: catalog.i18nc("@info:tooltip","Show caution message in g-code reader.")
CheckBox
Cura.CheckBox
{
id: gcodeShowCautionCheckbox
@ -495,7 +495,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should layer be forced into compatibility mode?")
CheckBox
Cura.CheckBox
{
id: forceLayerViewCompatibilityModeCheckbox
text: catalog.i18nc("@option:check", "Force layer view compatibility mode (restart required)")
@ -510,7 +510,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should Cura open at the location it was closed?")
CheckBox
Cura.CheckBox
{
id: restoreWindowPositionCheckbox
text: catalog.i18nc("@option:check", "Restore window position on start")
@ -528,7 +528,7 @@ UM.PreferencesPage
{
spacing: 4 * screenScaleFactor
Label
UM.Label
{
text: catalog.i18nc("@window:text", "Camera rendering:")
}
@ -542,7 +542,7 @@ UM.PreferencesPage
}
}
ComboBox
Cura.ComboBox
{
id: cameraComboBox
@ -573,7 +573,7 @@ UM.PreferencesPage
width: UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label","Opening and saving files")
@ -585,7 +585,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip","Should opening files from the desktop or external applications open in the same instance of Cura?")
CheckBox
Cura.CheckBox
{
id: singleInstanceCheckbox
text: catalog.i18nc("@option:check","Use a single instance of Cura")
@ -601,7 +601,7 @@ UM.PreferencesPage
text: catalog.i18nc("@info:tooltip","Should the build plate be cleared before loading a new model in the single instance of Cura?")
enabled: singleInstanceCheckbox.checked
CheckBox
Cura.CheckBox
{
id: singleInstanceClearBeforeLoadCheckbox
text: catalog.i18nc("@option:check","Clear buildplate before loading model into the single instance")
@ -616,7 +616,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip","Should models be scaled to the build volume if they are too large?")
CheckBox
Cura.CheckBox
{
id: scaleToFitCheckbox
text: catalog.i18nc("@option:check","Scale large models")
@ -631,7 +631,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip","An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?")
CheckBox
Cura.CheckBox
{
id: scaleTinyCheckbox
text: catalog.i18nc("@option:check","Scale extremely small models")
@ -646,7 +646,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip","Should models be selected after they are loaded?")
CheckBox
Cura.CheckBox
{
id: selectModelsOnLoadCheckbox
text: catalog.i18nc("@option:check","Select models when loaded")
@ -661,7 +661,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should a prefix based on the printer name be added to the print job name automatically?")
CheckBox
Cura.CheckBox
{
id: prefixJobNameCheckbox
text: catalog.i18nc("@option:check", "Add machine prefix to job name")
@ -676,7 +676,7 @@ UM.PreferencesPage
height: childrenRect.height
text: catalog.i18nc("@info:tooltip", "Should a summary be shown when saving a project file?")
CheckBox
Cura.CheckBox
{
text: catalog.i18nc("@option:check", "Show summary dialog when saving project")
checked: boolCheck(UM.Preferences.getValue("cura/dialog_on_project_save"))
@ -694,12 +694,12 @@ UM.PreferencesPage
{
spacing: 4 * screenScaleFactor
Label
UM.Label
{
text: catalog.i18nc("@window:text", "Default behavior when opening a project file: ")
}
ComboBox
Cura.ComboBox
{
id: choiceOnOpenProjectDropDownButton
width: Math.round(250 * screenScaleFactor)
@ -755,18 +755,18 @@ UM.PreferencesPage
{
spacing: 4 * screenScaleFactor
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label", "Profiles")
}
Label
UM.Label
{
text: catalog.i18nc("@window:text", "Default behavior for changed setting values when switching to a different profile: ")
}
ComboBox
Cura.ComboBox
{
id: choiceOnProfileOverrideDropDownButton
width: Math.round(250 * screenScaleFactor)
@ -810,7 +810,7 @@ UM.PreferencesPage
width: UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label", "Privacy")
@ -821,7 +821,7 @@ UM.PreferencesPage
height: visible ? childrenRect.height : 0
text: catalog.i18nc("@info:tooltip", "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored.")
CheckBox
Cura.CheckBox
{
id: sendDataCheckbox
text: catalog.i18nc("@option:check","Send (anonymous) print information")
@ -848,7 +848,7 @@ UM.PreferencesPage
width: UM.Theme.getSize("default_margin").height
}
Label
UM.Label
{
font.bold: true
text: catalog.i18nc("@label", "Updates")
@ -860,7 +860,7 @@ UM.PreferencesPage
height: visible ? childrenRect.height : 0
text: catalog.i18nc("@info:tooltip", "Should Cura check for updates when the program is started?")
CheckBox
Cura.CheckBox
{
id: checkUpdatesCheckbox
text: catalog.i18nc("@option:check","Check for updates on start")
@ -913,7 +913,7 @@ UM.PreferencesPage
height: visible ? childrenRect.height : 0
text: catalog.i18nc("@info:tooltip", "Should an automatic check for new plugins be done every time Cura is started? It is highly recommended that you do not disable this!")
CheckBox
Cura.CheckBox
{
id: pluginNotificationsUpdateCheckbox
text: catalog.i18nc("@option:check", "Get notifications for plugin updates")

View File

@ -148,32 +148,32 @@ Item
}
Label { width: informationPage.columnWidth; height: parent.rowHeight; verticalAlignment: Qt.AlignVCenter; text: catalog.i18nc("@label", "Display Name") }
ReadOnlyTextField
Cura.TextField
{
id: displayNameTextField;
width: informationPage.columnWidth;
text: properties.name;
readOnly: !base.editingEnabled;
enabled: base.editingEnabled;
onEditingFinished: base.updateMaterialDisplayName(properties.name, text)
}
Label { width: informationPage.columnWidth; height: parent.rowHeight; verticalAlignment: Qt.AlignVCenter; text: catalog.i18nc("@label", "Brand") }
ReadOnlyTextField
Cura.TextField
{
id: brandTextField;
width: informationPage.columnWidth;
text: properties.brand;
readOnly: !base.editingEnabled;
id: brandTextField
width: informationPage.columnWidth
text: properties.brand
enabled: base.editingEnabled
onEditingFinished: base.updateMaterialBrand(properties.brand, text)
}
Label { width: informationPage.columnWidth; height: parent.rowHeight; verticalAlignment: Qt.AlignVCenter; text: catalog.i18nc("@label", "Material Type") }
ReadOnlyTextField
Cura.TextField
{
id: materialTypeField;
width: informationPage.columnWidth;
text: properties.material;
readOnly: !base.editingEnabled;
id: materialTypeField
width: informationPage.columnWidth
text: properties.material
enabled: base.editingEnabled
onEditingFinished: base.updateMaterialType(properties.material, text)
}
@ -206,12 +206,12 @@ Item
}
// pretty color name text field
ReadOnlyTextField
Cura.TextField
{
id: colorLabel;
width: parent.width - colorSelector.width - parent.spacing
text: properties.color_name;
readOnly: !base.editingEnabled
enabled: base.editingEnabled
onEditingFinished: base.setMetaDataEntry("color_name", properties.color_name, text)
}
@ -363,10 +363,11 @@ Item
ReadOnlyTextArea
{
text: properties.description;
width: 2 * informationPage.columnWidth
width: informationPage.columnWidth * 2
height: 0.75 * informationPage.columnWidth
wrapMode: Text.WordWrap
readOnly: !base.editingEnabled;
readOnly: !base.editingEnabled
onEditingFinished: base.setMetaDataEntry("description", properties.description, text)
}
@ -375,11 +376,11 @@ Item
ReadOnlyTextArea
{
text: properties.adhesion_info;
text: properties.adhesion_info
width: 2 * informationPage.columnWidth
wrapMode: Text.WordWrap
readOnly: !base.editingEnabled;
height: 0.75 * informationPage.columnWidth
readOnly: !base.editingEnabled
onEditingFinished: base.setMetaDataEntry("adhesion_info", properties.adhesion_info, text)
}

View File

@ -2,9 +2,10 @@
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.1
import QtQuick.Controls 1.1
import QtQuick.Controls 2.15
import UM 1.5 as UM
Item
ScrollView
{
id: base
@ -15,27 +16,25 @@ Item
property bool readOnly: false
width: textArea.width
height: textArea.height
TextArea
{
id: textArea
enabled: !base.readOnly
opacity: base.readOnly ? 0.5 : 1.0
selectByMouse: true
anchors.fill: parent
Keys.onReturnPressed:
background: Rectangle
{
base.editingFinished()
radius: UM.Theme.getSize("setting_control_radius").width
color: textArea.enabled ? UM.Theme.getColor("setting_control") : UM.Theme.getColor("setting_control_disabled")
}
Keys.onEnterPressed:
{
base.editingFinished()
}
color: UM.Theme.getColor("text")
font: UM.Theme.getFont("default")
Keys.onReturnPressed: base.editingFinished()
Keys.onEnterPressed: base.editingFinished()
onActiveFocusChanged:
{

View File

@ -1,48 +0,0 @@
// Copyright (c) 2016 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
// Different than the name suggests, it is not always read-only.
import QtQuick 2.1
import QtQuick.Controls 1.1
Item
{
id: base
property alias text: textField.text
signal editingFinished();
property bool readOnly: false
width: textField.width
height: textField.height
TextField
{
id: textField
enabled: !base.readOnly
opacity: base.readOnly ? 0.5 : 1.0
anchors.fill: parent
onEditingFinished: base.editingFinished()
Keys.onEnterPressed: base.editingFinished()
Keys.onReturnPressed: base.editingFinished()
}
Label
{
visible: base.readOnly
text: textField.text
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.leftMargin: textField.__panel ? textField.__panel.leftMargin : 0
color: palette.buttonText
}
SystemPalette { id: palette }
}

View File

@ -17,8 +17,6 @@ TextField
property alias leftIcon: iconLeft.source
UM.I18nCatalog { id: catalog; name: "cura" }
hoverEnabled: true
selectByMouse: true
font: UM.Theme.getFont("default")

View File

@ -9,57 +9,6 @@ import UM 1.1 as UM
QtObject
{
property Component progressbar: Component
{
ProgressBarStyle
{
background: Rectangle
{
implicitWidth: UM.Theme.getSize("message").width - (UM.Theme.getSize("default_margin").width * 2)
implicitHeight: UM.Theme.getSize("progressbar").height
color: control.hasOwnProperty("backgroundColor") ? control.backgroundColor : UM.Theme.getColor("progressbar_background")
radius: UM.Theme.getSize("progressbar_radius").width
}
progress: Rectangle
{
color:
{
if(control.indeterminate)
{
return "transparent";
}
else if(control.hasOwnProperty("controlColor"))
{
return control.controlColor;
}
else
{
return UM.Theme.getColor("progressbar_control");
}
}
radius: UM.Theme.getSize("progressbar_radius").width
Rectangle
{
radius: UM.Theme.getSize("progressbar_radius").width
color: control.hasOwnProperty("controlColor") ? control.controlColor : UM.Theme.getColor("progressbar_control")
width: UM.Theme.getSize("progressbar_control").width
height: UM.Theme.getSize("progressbar_control").height
visible: control.indeterminate
SequentialAnimation on x
{
id: xAnim
property int animEndPoint: UM.Theme.getSize("message").width - Math.round((UM.Theme.getSize("default_margin").width * 2.5)) - UM.Theme.getSize("progressbar_control").width
running: control.indeterminate && control.visible
loops: Animation.Infinite
NumberAnimation { from: 0; to: xAnim.animEndPoint; duration: 2000;}
NumberAnimation { from: xAnim.animEndPoint; to: 0; duration: 2000;}
}
}
}
}
}
property Component scrollview: Component
{
ScrollViewStyle