Merge branch 'master' into fix_simple_mode_disabled_features

This commit is contained in:
fieldOfView 2017-09-08 14:24:05 +02:00
commit 0896899179
36 changed files with 718 additions and 623 deletions

View File

@ -90,10 +90,15 @@ class BuildVolume(SceneNode):
#Objects loaded at the moment. We are connected to the property changed events of these objects. #Objects loaded at the moment. We are connected to the property changed events of these objects.
self._scene_objects = set() self._scene_objects = set()
self._change_timer = QTimer() self._scene_change_timer = QTimer()
self._change_timer.setInterval(100) self._scene_change_timer.setInterval(100)
self._change_timer.setSingleShot(True) self._scene_change_timer.setSingleShot(True)
self._change_timer.timeout.connect(self._onChangeTimerFinished) self._scene_change_timer.timeout.connect(self._onSceneChangeTimerFinished)
self._setting_change_timer = QTimer()
self._setting_change_timer.setInterval(100)
self._setting_change_timer.setSingleShot(True)
self._setting_change_timer.timeout.connect(self._onSettingChangeTimerFinished)
self._build_volume_message = Message(catalog.i18nc("@info:status", self._build_volume_message = Message(catalog.i18nc("@info:status",
"The build volume height has been reduced due to the value of the" "The build volume height has been reduced due to the value of the"
@ -104,15 +109,19 @@ class BuildVolume(SceneNode):
# activeQualityChanged is always emitted after setActiveVariant, setActiveMaterial and setActiveQuality. # activeQualityChanged is always emitted after setActiveVariant, setActiveMaterial and setActiveQuality.
# Therefore this works. # Therefore this works.
Application.getInstance().getMachineManager().activeQualityChanged.connect(self._onStackChanged) Application.getInstance().getMachineManager().activeQualityChanged.connect(self._onStackChanged)
# This should also ways work, and it is semantically more correct, # This should also ways work, and it is semantically more correct,
# but it does not update the disallowed areas after material change # but it does not update the disallowed areas after material change
Application.getInstance().getMachineManager().activeStackChanged.connect(self._onStackChanged) Application.getInstance().getMachineManager().activeStackChanged.connect(self._onStackChanged)
# list of settings which were updated
self._changed_settings_since_last_rebuild = []
def _onSceneChanged(self, source): def _onSceneChanged(self, source):
if self._global_container_stack: if self._global_container_stack:
self._change_timer.start() self._scene_change_timer.start()
def _onChangeTimerFinished(self): def _onSceneChangeTimerFinished(self):
root = Application.getInstance().getController().getScene().getRoot() root = Application.getInstance().getController().getScene().getRoot()
new_scene_objects = set(node for node in BreadthFirstIterator(root) if node.callDecoration("isSliceable")) new_scene_objects = set(node for node in BreadthFirstIterator(root) if node.callDecoration("isSliceable"))
if new_scene_objects != self._scene_objects: if new_scene_objects != self._scene_objects:
@ -562,42 +571,67 @@ class BuildVolume(SceneNode):
self._engine_ready = True self._engine_ready = True
self.rebuild() self.rebuild()
def _onSettingChangeTimerFinished(self):
rebuild_me = False
update_disallowed_areas = False
update_raft_thickness = False
update_extra_z_clearance = True
for setting_key in self._changed_settings_since_last_rebuild:
if setting_key == "print_sequence":
machine_height = self._global_container_stack.getProperty("machine_height", "value")
if Application.getInstance().getGlobalContainerStack().getProperty("print_sequence",
"value") == "one_at_a_time" and len(
self._scene_objects) > 1:
self._height = min(self._global_container_stack.getProperty("gantry_height", "value"),
machine_height)
if self._height < machine_height:
self._build_volume_message.show()
else:
self._build_volume_message.hide()
else:
self._height = self._global_container_stack.getProperty("machine_height", "value")
self._build_volume_message.hide()
rebuild_me = True
if setting_key in self._skirt_settings or setting_key in self._prime_settings or setting_key in self._tower_settings or setting_key == "print_sequence" or setting_key in self._ooze_shield_settings or setting_key in self._distance_settings or setting_key in self._extruder_settings:
update_disallowed_areas = True
rebuild_me = True
if setting_key in self._raft_settings:
update_raft_thickness = True
rebuild_me = True
if setting_key in self._extra_z_settings:
update_extra_z_clearance = True
rebuild_me = True
if setting_key in self._limit_to_extruder_settings:
update_disallowed_areas = True
rebuild_me = True
# We only want to update all of them once.
if update_disallowed_areas:
self._updateDisallowedAreas()
if update_raft_thickness:
self._updateRaftThickness()
if update_extra_z_clearance:
self._updateExtraZClearance()
if rebuild_me:
self.rebuild()
# We just did a rebuild, reset the list.
self._changed_settings_since_last_rebuild = []
def _onSettingPropertyChanged(self, setting_key: str, property_name: str): def _onSettingPropertyChanged(self, setting_key: str, property_name: str):
if property_name != "value": if property_name != "value":
return return
rebuild_me = False if setting_key not in self._changed_settings_since_last_rebuild:
if setting_key == "print_sequence": self._changed_settings_since_last_rebuild.append(setting_key)
machine_height = self._global_container_stack.getProperty("machine_height", "value") self._setting_change_timer.start()
if Application.getInstance().getGlobalContainerStack().getProperty("print_sequence", "value") == "one_at_a_time" and len(self._scene_objects) > 1:
self._height = min(self._global_container_stack.getProperty("gantry_height", "value"), machine_height)
if self._height < machine_height:
self._build_volume_message.show()
else:
self._build_volume_message.hide()
else:
self._height = self._global_container_stack.getProperty("machine_height", "value")
self._build_volume_message.hide()
rebuild_me = True
if setting_key in self._skirt_settings or setting_key in self._prime_settings or setting_key in self._tower_settings or setting_key == "print_sequence" or setting_key in self._ooze_shield_settings or setting_key in self._distance_settings or setting_key in self._extruder_settings:
self._updateDisallowedAreas()
rebuild_me = True
if setting_key in self._raft_settings:
self._updateRaftThickness()
rebuild_me = True
if setting_key in self._extra_z_settings:
self._updateExtraZClearance()
rebuild_me = True
if setting_key in self._limit_to_extruder_settings:
self._updateDisallowedAreas()
rebuild_me = True
if rebuild_me:
self.rebuild()
def hasErrors(self) -> bool: def hasErrors(self) -> bool:
return self._has_errors return self._has_errors

View File

@ -76,11 +76,12 @@ class PrintInformation(QObject):
if self._backend: if self._backend:
self._backend.printDurationMessage.connect(self._onPrintDurationMessage) self._backend.printDurationMessage.connect(self._onPrintDurationMessage)
self._job_name = "" self._base_name = ""
self._abbr_machine = "" self._abbr_machine = ""
self._job_name = ""
Application.getInstance().globalContainerStackChanged.connect(self._setAbbreviatedMachineName) Application.getInstance().globalContainerStackChanged.connect(self._setAbbreviatedMachineName)
Application.getInstance().fileLoaded.connect(self.setJobName) Application.getInstance().fileLoaded.connect(self.setBaseName)
Preferences.getInstance().preferenceChanged.connect(self._onPreferencesChanged) Preferences.getInstance().preferenceChanged.connect(self._onPreferencesChanged)
@ -221,15 +222,8 @@ class PrintInformation(QObject):
@pyqtSlot(str) @pyqtSlot(str)
def setJobName(self, name): def setJobName(self, name):
# Ensure that we don't use entire path but only filename self._job_name = name
name = os.path.basename(name) self.jobNameChanged.emit()
# when a file is opened using the terminal; the filename comes from _onFileLoaded and still contains its
# extension. This cuts the extension off if necessary.
name = os.path.splitext(name)[0]
if self._job_name != name:
self._job_name = name
self.jobNameChanged.emit()
jobNameChanged = pyqtSignal() jobNameChanged = pyqtSignal()
@ -237,21 +231,43 @@ class PrintInformation(QObject):
def jobName(self): def jobName(self):
return self._job_name return self._job_name
@pyqtSlot(str, result = str) def _updateJobName(self):
def createJobName(self, base_name): if self._base_name == "":
if base_name == "": self._job_name = ""
return "" self.jobNameChanged.emit()
base_name = self._stripAccents(base_name) return
base_name = self._stripAccents(self._base_name)
self._setAbbreviatedMachineName() self._setAbbreviatedMachineName()
if self._pre_sliced: if self._pre_sliced:
return catalog.i18nc("@label", "Pre-sliced file {0}", base_name) self._job_name = catalog.i18nc("@label", "Pre-sliced file {0}", base_name)
elif Preferences.getInstance().getValue("cura/jobname_prefix"): elif Preferences.getInstance().getValue("cura/jobname_prefix"):
# Don't add abbreviation if it already has the exact same abbreviation. # Don't add abbreviation if it already has the exact same abbreviation.
if base_name.startswith(self._abbr_machine + "_"): if base_name.startswith(self._abbr_machine + "_"):
return base_name self._job_name = base_name
return self._abbr_machine + "_" + base_name else:
self._job_name = self._abbr_machine + "_" + base_name
else: else:
return base_name self._job_name = base_name
self.jobNameChanged.emit()
@pyqtProperty(str)
def baseName(self):
return self._base_name
@pyqtSlot(str)
def setBaseName(self, base_name):
# Ensure that we don't use entire path but only filename
name = os.path.basename(base_name)
# when a file is opened using the terminal; the filename comes from _onFileLoaded and still contains its
# extension. This cuts the extension off if necessary.
name = os.path.splitext(name)[0]
if self._base_name == "" and self._base_name != name:
self._base_name = name
self._updateJobName()
## Created an acronymn-like abbreviated machine name from the currently active machine name ## Created an acronymn-like abbreviated machine name from the currently active machine name
# Called each time the global stack is switched # Called each time the global stack is switched
@ -276,4 +292,4 @@ class PrintInformation(QObject):
## Utility method that strips accents from characters (eg: â -> a) ## Utility method that strips accents from characters (eg: â -> a)
def _stripAccents(self, str): def _stripAccents(self, str):
return ''.join(char for char in unicodedata.normalize('NFD', str) if unicodedata.category(char) != 'Mn') return ''.join(char for char in unicodedata.normalize('NFD', str) if unicodedata.category(char) != 'Mn')

View File

@ -60,7 +60,7 @@ def get_cura_dir_path():
elif Platform.isLinux(): elif Platform.isLinux():
return os.path.expanduser("~/.local/share/cura") return os.path.expanduser("~/.local/share/cura")
elif Platform.isOSX(): elif Platform.isOSX():
return os.path.expanduser("~/Library/Application Support/cura") return os.path.expanduser("~/Library/Logs/cura")
if hasattr(sys, "frozen"): if hasattr(sys, "frozen"):

View File

@ -72,7 +72,7 @@ Item
anchors.left: parent.left anchors.left: parent.left
text: catalog.i18nc("@label","View Mode: Layers") text: catalog.i18nc("@label","View Mode: Layers")
font: UM.Theme.getFont("default_bold"); font: UM.Theme.getFont("default_bold");
color: UM.Theme.getColor("text") color: UM.Theme.getColor("setting_control_text")
Layout.fillWidth: true Layout.fillWidth: true
elide: Text.ElideMiddle; elide: Text.ElideMiddle;
} }
@ -93,7 +93,7 @@ Item
font: UM.Theme.getFont("default"); font: UM.Theme.getFont("default");
visible: !UM.LayerView.compatibilityMode visible: !UM.LayerView.compatibilityMode
Layout.fillWidth: true Layout.fillWidth: true
color: UM.Theme.getColor("text") color: UM.Theme.getColor("setting_control_text")
} }
ListModel // matches LayerView.py ListModel // matches LayerView.py
@ -211,7 +211,7 @@ Item
{ {
text: model.name text: model.name
elide: Text.ElideRight elide: Text.ElideRight
color: UM.Theme.getColor("text") color: UM.Theme.getColor("button_text")
font: UM.Theme.getFont("default") font: UM.Theme.getFont("default")
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.left: extrudersModelCheckBox.left; anchors.left: extrudersModelCheckBox.left;
@ -280,7 +280,7 @@ Item
text: label text: label
font: UM.Theme.getFont("default") font: UM.Theme.getFont("default")
elide: Text.ElideRight elide: Text.ElideRight
color: UM.Theme.getColor("text") color: UM.Theme.getColor("button_text")
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.left: legendModelCheckBox.left; anchors.left: legendModelCheckBox.left;
anchors.right: legendModelCheckBox.right; anchors.right: legendModelCheckBox.right;
@ -343,7 +343,7 @@ Item
Layout.fillWidth: true Layout.fillWidth: true
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
color: UM.Theme.getColor("text") color: UM.Theme.getColor("button_text")
font: UM.Theme.getFont("default") font: UM.Theme.getFont("default")
} }
} }

View File

@ -9,10 +9,10 @@ UM.Dialog
id: base id: base
title: catalog.i18nc("@title:window", "Find & Update plugins") title: catalog.i18nc("@title:window", "Find & Update plugins")
width: 600 width: 600 * Screen.devicePixelRatio
height: 450 height: 450 * Screen.devicePixelRatio
minimumWidth: 350 minimumWidth: 350 * Screen.devicePixelRatio
minimumHeight: 350 minimumHeight: 350 * Screen.devicePixelRatio
Item Item
{ {
anchors.fill: parent anchors.fill: parent

View File

@ -326,16 +326,20 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
return True return True
def _stopCamera(self): def _stopCamera(self):
self._stream_buffer = b""
self._stream_buffer_start_index = -1
if self._camera_timer.isActive(): if self._camera_timer.isActive():
self._camera_timer.stop() self._camera_timer.stop()
if self._image_reply:
try: if self._image_reply:
self._image_reply.abort() try:
self._image_reply.downloadProgress.disconnect(self._onStreamDownloadProgress) self._image_reply.abort()
except RuntimeError: self._image_reply.downloadProgress.disconnect(self._onStreamDownloadProgress)
pass # It can happen that the wrapped c++ object is already deleted. except RuntimeError:
self._image_reply = None pass # It can happen that the wrapped c++ object is already deleted.
self._image_request = None self._image_reply = None
self._image_request = None
def _startCamera(self): def _startCamera(self):
if self._use_stream: if self._use_stream:
@ -1095,8 +1099,11 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
global_container_stack.setMetaDataEntry("network_authentication_id", self._authentication_id) global_container_stack.setMetaDataEntry("network_authentication_id", self._authentication_id)
else: else:
global_container_stack.addMetaDataEntry("network_authentication_id", self._authentication_id) global_container_stack.addMetaDataEntry("network_authentication_id", self._authentication_id)
Application.getInstance().saveStack(global_container_stack) # Force save so we are sure the data is not lost. Logger.log("i", "Authentication succeeded for id %s and key %s", self._authentication_id, self._getSafeAuthKey())
Logger.log("i", "Authentication succeeded for id %s and key %s", self._authentication_id, self._getSafeAuthKey()) Application.getInstance().saveStack(global_container_stack) # Force save so we are sure the data is not lost.
else:
Logger.log("w", "Unable to save authentication for id %s and key %s", self._authentication_id, self._getSafeAuthKey())
else: # Got a response that we didn't expect, so something went wrong. else: # Got a response that we didn't expect, so something went wrong.
Logger.log("e", "While trying to authenticate, we got an unexpected response: %s", reply.attribute(QNetworkRequest.HttpStatusCodeAttribute)) Logger.log("e", "While trying to authenticate, we got an unexpected response: %s", reply.attribute(QNetworkRequest.HttpStatusCodeAttribute))
self.setAuthenticationState(AuthState.NotAuthenticated) self.setAuthenticationState(AuthState.NotAuthenticated)
@ -1165,6 +1172,12 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
return return
self._stream_buffer += self._image_reply.readAll() self._stream_buffer += self._image_reply.readAll()
if len(self._stream_buffer) > 2000000: # No single camera frame should be 2 Mb or larger
Logger.log("w", "MJPEG buffer exceeds reasonable size. Restarting stream...")
self._stopCamera() # resets stream buffer and start index
self._startCamera()
return
if self._stream_buffer_start_index == -1: if self._stream_buffer_start_index == -1:
self._stream_buffer_start_index = self._stream_buffer.indexOf(b'\xff\xd8') self._stream_buffer_start_index = self._stream_buffer.indexOf(b'\xff\xd8')
stream_buffer_end_index = self._stream_buffer.lastIndexOf(b'\xff\xd9') stream_buffer_end_index = self._stream_buffer.lastIndexOf(b'\xff\xd9')

View File

@ -869,7 +869,7 @@
"description": "The extruder train used for printing the outer wall. This is used in multi-extrusion.", "description": "The extruder train used for printing the outer wall. This is used in multi-extrusion.",
"type": "optional_extruder", "type": "optional_extruder",
"default_value": "-1", "default_value": "-1",
"settable_per_mesh": true, "settable_per_mesh": false,
"settable_per_extruder": false, "settable_per_extruder": false,
"settable_per_meshgroup": true, "settable_per_meshgroup": true,
"settable_globally": true, "settable_globally": true,
@ -881,7 +881,7 @@
"description": "The extruder train used for printing the inner walls. This is used in multi-extrusion.", "description": "The extruder train used for printing the inner walls. This is used in multi-extrusion.",
"type": "optional_extruder", "type": "optional_extruder",
"default_value": "-1", "default_value": "-1",
"settable_per_mesh": true, "settable_per_mesh": false,
"settable_per_extruder": false, "settable_per_extruder": false,
"settable_per_meshgroup": true, "settable_per_meshgroup": true,
"settable_globally": true, "settable_globally": true,
@ -936,7 +936,7 @@
"type": "optional_extruder", "type": "optional_extruder",
"default_value": "-1", "default_value": "-1",
"value": "top_bottom_extruder_nr", "value": "top_bottom_extruder_nr",
"settable_per_mesh": true, "settable_per_mesh": false,
"settable_per_extruder": false, "settable_per_extruder": false,
"settable_per_meshgroup": true, "settable_per_meshgroup": true,
"settable_globally": true, "settable_globally": true,
@ -989,7 +989,7 @@
"description": "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion.", "description": "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion.",
"type": "optional_extruder", "type": "optional_extruder",
"default_value": "-1", "default_value": "-1",
"settable_per_mesh": true, "settable_per_mesh": false,
"settable_per_extruder": false, "settable_per_extruder": false,
"settable_per_meshgroup": true, "settable_per_meshgroup": true,
"settable_globally": true, "settable_globally": true,
@ -1312,7 +1312,7 @@
"description": "The extruder train used for printing infill. This is used in multi-extrusion.", "description": "The extruder train used for printing infill. This is used in multi-extrusion.",
"type": "optional_extruder", "type": "optional_extruder",
"default_value": "-1", "default_value": "-1",
"settable_per_mesh": true, "settable_per_mesh": false,
"settable_per_extruder": false, "settable_per_extruder": false,
"settable_per_meshgroup": true, "settable_per_meshgroup": true,
"settable_globally": true, "settable_globally": true,
@ -3015,7 +3015,7 @@
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0.0, "default_value": 0.0,
"minimum_value": "0", "minimum_value": "machine_width / -2 if machine_center_is_zero else 0",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true, "settable_per_extruder": true,
"settable_per_meshgroup": true "settable_per_meshgroup": true
@ -3027,7 +3027,7 @@
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0.0, "default_value": 0.0,
"minimum_value": "0", "minimum_value": "machine_depth / -2 if machine_center_is_zero else 0",
"settable_per_mesh": false, "settable_per_mesh": false,
"settable_per_extruder": true, "settable_per_extruder": true,
"settable_per_meshgroup": true "settable_per_meshgroup": true

View File

@ -353,28 +353,6 @@ UM.MainWindow
action: Cura.Actions.open; action: Cura.Actions.open;
} }
Image
{
id: logo
anchors
{
left: parent.left
leftMargin: UM.Theme.getSize("default_margin").width;
bottom: parent.bottom
bottomMargin: UM.Theme.getSize("default_margin").height;
}
source: UM.Theme.getImage("logo");
width: UM.Theme.getSize("logo").width;
height: UM.Theme.getSize("logo").height;
z: -1;
sourceSize.width: width;
sourceSize.height: height;
}
Toolbar Toolbar
{ {
id: toolbar; id: toolbar;

View File

@ -16,7 +16,7 @@ Button
text: catalog.i18ncp("@label %1 is filled in with the name of an extruder", "Print Selected Model with %1", "Print Selected Models with %1", UM.Selection.selectionCount).arg(extruder.name) text: catalog.i18ncp("@label %1 is filled in with the name of an extruder", "Print Selected Model with %1", "Print Selected Models with %1", UM.Selection.selectionCount).arg(extruder.name)
style: UM.Theme.styles.tool_button; style: UM.Theme.styles.tool_button;
iconSource: checked ? UM.Theme.getIcon("material_selected") : UM.Theme.getIcon("material_not_selected"); iconSource: UM.Theme.getIcon("extruder_button")
checked: ExtruderManager.selectedObjectExtruders.indexOf(extruder.id) != -1 checked: ExtruderManager.selectedObjectExtruders.indexOf(extruder.id) != -1
enabled: UM.Selection.hasSelection enabled: UM.Selection.hasSelection
@ -36,12 +36,7 @@ Button
Item Item
{ {
anchors anchors.centerIn: parent
{
right: parent.right;
top: parent.top;
margins: UM.Theme.getSize("default_lining").width * 3
}
width: UM.Theme.getSize("default_margin").width width: UM.Theme.getSize("default_margin").width
height: UM.Theme.getSize("default_margin").height height: UM.Theme.getSize("default_margin").height
@ -54,22 +49,28 @@ Button
} }
} }
// Material colour circle
// Only draw the filling colour of the material inside the SVG border.
Rectangle Rectangle
{ {
anchors anchors
{ {
left: parent.left; right: parent.right
top: parent.top; top: parent.top
margins: UM.Theme.getSize("default_lining").width * 3 rightMargin: UM.Theme.getSize("extruder_button_material_margin").width
topMargin: UM.Theme.getSize("extruder_button_material_margin").height
} }
color: model.color color: model.color
width: UM.Theme.getSize("default_margin").width width: UM.Theme.getSize("extruder_button_material").width
height: UM.Theme.getSize("default_margin").height height: UM.Theme.getSize("extruder_button_material").height
radius: width / 2
border.width: UM.Theme.getSize("default_lining").width border.width: 1
border.color: UM.Theme.getColor("lining"); border.color: UM.Theme.getColor("extruder_button_material_border")
opacity: !base.enabled ? 0.2 : 1.0
} }
onClicked: onClicked:

View File

@ -13,13 +13,7 @@ Item {
id: base id: base
property bool activity: CuraApplication.platformActivity property bool activity: CuraApplication.platformActivity
property string fileBaseName property string fileBaseName: ""
property variant activeMachineName: Cura.MachineManager.activeMachineName
onActiveMachineNameChanged:
{
printJobTextfield.text = PrintInformation.createJobName(base.fileBaseName);
}
UM.I18nCatalog { id: catalog; name:"cura"} UM.I18nCatalog { id: catalog; name:"cura"}
@ -30,23 +24,26 @@ Item {
target: backgroundItem target: backgroundItem
onHasMesh: onHasMesh:
{ {
base.fileBaseName = name if (base.fileBaseName == "")
{
base.fileBaseName = name;
}
} }
} }
onActivityChanged: { onActivityChanged: {
if (activity == true && base.fileBaseName == ''){ if (activity == true && base.fileBaseName == ''){
//this only runs when you open a file from the terminal (or something that works the same way; for example when you drag a file on the icon in MacOS or use 'open with' on Windows) //this only runs when you open a file from the terminal (or something that works the same way; for example when you drag a file on the icon in MacOS or use 'open with' on Windows)
base.fileBaseName = PrintInformation.jobName; //get the fileBaseName from PrintInformation.py because this saves the filebase when the file is opened using the terminal (or something alike) base.fileBaseName = PrintInformation.baseName; //get the fileBaseName from PrintInformation.py because this saves the filebase when the file is opened using the terminal (or something alike)
printJobTextfield.text = PrintInformation.createJobName(base.fileBaseName); PrintInformation.setBaseName(base.fileBaseName);
} }
if (activity == true && base.fileBaseName != ''){ if (activity == true && base.fileBaseName != ''){
//this runs in all other cases where there is a mesh on the buildplate (activity == true). It uses the fileBaseName from the hasMesh signal //this runs in all other cases where there is a mesh on the buildplate (activity == true). It uses the fileBaseName from the hasMesh signal
printJobTextfield.text = PrintInformation.createJobName(base.fileBaseName); PrintInformation.setBaseName(base.fileBaseName);
} }
if (activity == false){ if (activity == false){
//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)
printJobTextfield.text = ''; PrintInformation.setJobName('')
} }
} }
@ -102,7 +99,7 @@ Item {
width: Math.max(__contentWidth + UM.Theme.getSize("default_margin").width, 50) width: Math.max(__contentWidth + UM.Theme.getSize("default_margin").width, 50)
maximumLength: 120 maximumLength: 120
property int unremovableSpacing: 5 property int unremovableSpacing: 5
text: '' text: PrintInformation.jobName
horizontalAlignment: TextInput.AlignRight horizontalAlignment: TextInput.AlignRight
onTextChanged: { onTextChanged: {
PrintInformation.setJobName(text); PrintInformation.setJobName(text);

View File

@ -97,36 +97,36 @@ SettingItem
} }
label: Item label: Item
{ {
Label
{
id: extruderText
anchors.verticalCenter: parent.verticalCenter
text: control.currentText
font: UM.Theme.getFont("default")
color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text")
elide: Text.ElideLeft
verticalAlignment: Text.AlignVCenter
}
Rectangle Rectangle
{ {
id: swatch id: swatch
height: UM.Theme.getSize("setting_control").height / 2 height: UM.Theme.getSize("setting_control").height / 2
width: height width: height
anchors.verticalCenter: parent.verticalCenter
border.width: UM.Theme.getSize("default_lining").width
border.color: enabled ? UM.Theme.getColor("setting_control_border") : UM.Theme.getColor("setting_control_disabled_border")
color: control.color
}
Label
{
anchors anchors
{ {
left: swatch.right; right: arrow.left
right: arrow.left;
verticalCenter: parent.verticalCenter verticalCenter: parent.verticalCenter
margins: UM.Theme.getSize("default_lining").width margins: UM.Theme.getSize("default_margin").width / 4
} }
width: parent.width - swatch.width;
text: control.currentText border.width: UM.Theme.getSize("default_lining").width * 2
font: UM.Theme.getFont("default") border.color: enabled ? UM.Theme.getColor("setting_control_border") : UM.Theme.getColor("setting_control_disabled_border")
color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text") radius: width / 2
elide: Text.ElideRight color: control.color
verticalAlignment: Text.AlignVCenter
} }
UM.RecolorImage UM.RecolorImage
{ {

View File

@ -116,29 +116,10 @@ SettingItem
} }
label: Item label: Item
{ {
Rectangle
{
id: swatch
height: UM.Theme.getSize("setting_control").height / 2
width: height
anchors.verticalCenter: parent.verticalCenter
border.width: UM.Theme.getSize("default_lining").width
border.color: enabled ? UM.Theme.getColor("setting_control_border") : UM.Theme.getColor("setting_control_disabled_border")
color: control.color
}
Label Label
{ {
anchors anchors.verticalCenter: parent.verticalCenter
{ width: parent.width - swatch.width - arrow.width;
left: swatch.right;
right: arrow.left;
verticalCenter: parent.verticalCenter
margins: UM.Theme.getSize("default_lining").width
}
width: parent.width - swatch.width;
text: control.currentText text: control.currentText
font: UM.Theme.getFont("default") font: UM.Theme.getFont("default")
@ -147,6 +128,25 @@ SettingItem
elide: Text.ElideRight elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
} }
Rectangle
{
id: swatch
height: UM.Theme.getSize("setting_control").height / 2
width: height
anchors
{
right: arrow.left;
verticalCenter: parent.verticalCenter
margins: UM.Theme.getSize("default_margin").width / 4
}
border.width: UM.Theme.getSize("default_lining").width * 2
border.color: enabled ? UM.Theme.getColor("setting_control_border") : UM.Theme.getColor("setting_control_disabled_border")
radius: width / 2
color: control.color
}
UM.RecolorImage UM.RecolorImage
{ {
id: arrow id: arrow

View File

@ -121,7 +121,7 @@ Rectangle
anchors.leftMargin: UM.Theme.getSize("sidebar_margin").width anchors.leftMargin: UM.Theme.getSize("sidebar_margin").width
anchors.top: headerSeparator.bottom anchors.top: headerSeparator.bottom
anchors.topMargin: UM.Theme.getSize("sidebar_margin").height anchors.topMargin: UM.Theme.getSize("sidebar_margin").height
width: parent.width * 0.45 - 2 * UM.Theme.getSize("sidebar_margin").width width: parent.width * 0.45
font: UM.Theme.getFont("large") font: UM.Theme.getFont("large")
color: UM.Theme.getColor("text") color: UM.Theme.getColor("text")
visible: !monitoringPrint visible: !monitoringPrint
@ -181,7 +181,7 @@ Rectangle
color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active_text") : color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active_text") :
control.hovered ? UM.Theme.getColor("action_button_hovered_text") : control.hovered ? UM.Theme.getColor("action_button_hovered_text") :
UM.Theme.getColor("action_button_text") UM.Theme.getColor("action_button_text")
font: UM.Theme.getFont("default") font: (control.checked || control.pressed) ? UM.Theme.getFont("default_bold") : UM.Theme.getFont("default")
text: control.text; text: control.text;
} }
} }
@ -223,7 +223,7 @@ Rectangle
{ {
id: globalProfileLabel id: globalProfileLabel
text: catalog.i18nc("@label","Profile:"); text: catalog.i18nc("@label","Profile:");
width: parent.width * 0.45 - UM.Theme.getSize("sidebar_margin").width width: parent.width * 0.45 - UM.Theme.getSize("sidebar_margin").width - 2
font: UM.Theme.getFont("default"); font: UM.Theme.getFont("default");
color: UM.Theme.getColor("text"); color: UM.Theme.getColor("text");
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
@ -247,7 +247,7 @@ Rectangle
} }
enabled: !header.currentExtruderVisible || header.currentExtruderIndex > -1 enabled: !header.currentExtruderVisible || header.currentExtruderIndex > -1
width: parent.width * 0.7 + UM.Theme.getSize("sidebar_margin").width width: parent.width * 0.55
height: UM.Theme.getSize("setting_control").height height: UM.Theme.getSize("setting_control").height
anchors.left: globalProfileLabel.right anchors.left: globalProfileLabel.right
anchors.right: parent.right anchors.right: parent.right

View File

@ -17,28 +17,51 @@ Column
property int currentExtruderIndex: ExtruderManager.activeExtruderIndex; property int currentExtruderIndex: ExtruderManager.activeExtruderIndex;
property bool currentExtruderVisible: extrudersList.visible; property bool currentExtruderVisible: extrudersList.visible;
spacing: UM.Theme.getSize("sidebar_margin").height spacing: UM.Theme.getSize("sidebar_margin").width * 0.9
signal showTooltip(Item item, point location, string text) signal showTooltip(Item item, point location, string text)
signal hideTooltip() signal hideTooltip()
Item
{
anchors
{
left: parent.left
right: parent.right
}
visible: extruderSelectionRow.visible
height: UM.Theme.getSize("default_lining").height
width: height
}
Item
{
anchors
{
left: parent.left
leftMargin: UM.Theme.getSize("sidebar_margin").width
right: parent.right
rightMargin: UM.Theme.getSize("sidebar_margin").width
}
visible: extruderSelectionRow.visible
height: UM.Theme.getSize("default_lining").hieght
width: height
}
Item Item
{ {
id: extruderSelectionRow id: extruderSelectionRow
width: parent.width width: parent.width
height: UM.Theme.getSize("sidebar_tabs").height height: UM.Theme.getSize("sidebar_tabs").height * 2 / 3
visible: machineExtruderCount.properties.value > 1 && !sidebar.monitoringPrint visible: machineExtruderCount.properties.value > 1 && !sidebar.monitoringPrint
Rectangle anchors
{ {
id: extruderSeparator left: parent.left
visible: machineExtruderCount.properties.value > 1 && !sidebar.monitoringPrint leftMargin: UM.Theme.getSize("sidebar_margin").width * 0.7
right: parent.right
width: parent.width rightMargin: UM.Theme.getSize("sidebar_margin").width * 0.7
height: parent.height topMargin: UM.Theme.getSize("sidebar_margin").height
color: UM.Theme.getColor("sidebar_lining")
anchors.top: extruderSelectionRow.top
} }
ListView ListView
@ -53,8 +76,10 @@ Column
anchors anchors
{ {
left: parent.left left: parent.left
leftMargin: UM.Theme.getSize("default_margin").width / 2
right: parent.right right: parent.right
bottom: extruderSelectionRow.bottom rightMargin: UM.Theme.getSize("default_margin").width / 2
verticalCenter: parent.verticalCenter
} }
ExclusiveGroup { id: extruderMenuGroup; } ExclusiveGroup { id: extruderMenuGroup; }
@ -92,61 +117,116 @@ Column
style: ButtonStyle style: ButtonStyle
{ {
background: Rectangle background: Item
{ {
border.width: UM.Theme.getSize("default_lining").width
border.color: control.checked ? UM.Theme.getColor("tab_checked_border") :
control.pressed ? UM.Theme.getColor("tab_active_border") :
control.hovered ? UM.Theme.getColor("tab_hovered_border") : UM.Theme.getColor("tab_unchecked_border")
color: control.checked ? UM.Theme.getColor("tab_checked") :
control.pressed ? UM.Theme.getColor("tab_active") :
control.hovered ? UM.Theme.getColor("tab_hovered") : UM.Theme.getColor("tab_unchecked")
Behavior on color { ColorAnimation { duration: 50; } }
Rectangle Rectangle
{ {
id: highlight anchors.fill: parent
visible: control.checked
anchors.left: parent.left
anchors.right: parent.right
anchors.top: parent.top
height: UM.Theme.getSize("sidebar_header_highlight").height
color: UM.Theme.getColor("sidebar_header_bar")
}
Rectangle
{
id: swatch
visible: index > -1
height: UM.Theme.getSize("setting_control").height / 2
width: height
anchors.left: parent.left
anchors.leftMargin: (parent.height - height) / 2
anchors.verticalCenter: parent.verticalCenter
color: model.color
border.width: UM.Theme.getSize("default_lining").width border.width: UM.Theme.getSize("default_lining").width
border.color: UM.Theme.getColor("setting_control_border") border.color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active_border") :
control.hovered ? UM.Theme.getColor("action_button_hovered_border") :
UM.Theme.getColor("action_button_border")
color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active") :
control.hovered ? UM.Theme.getColor("action_button_hovered") :
UM.Theme.getColor("action_button")
Behavior on color { ColorAnimation { duration: 50; } }
} }
Text Item
{ {
anchors.verticalCenter: parent.verticalCenter id: extruderButtonFace
anchors.left: swatch.visible ? swatch.right : parent.left anchors.centerIn: parent
anchors.leftMargin: swatch.visible ? UM.Theme.getSize("sidebar_margin").width / 2 : UM.Theme.getSize("sidebar_margin").width width: {
anchors.right: parent.right var extruderTextWidth = extruderStaticText.visible ? extruderStaticText.width : 0;
anchors.rightMargin: UM.Theme.getSize("sidebar_margin").width / 2 var iconWidth = extruderIconItem.width;
return extruderTextWidth + iconWidth + UM.Theme.getSize("default_margin").width / 2;
}
color: control.checked ? UM.Theme.getColor("tab_checked_text") : // Static text "Extruder"
control.pressed ? UM.Theme.getColor("tab_active_text") : Text
control.hovered ? UM.Theme.getColor("tab_hovered_text") : UM.Theme.getColor("tab_unchecked_text") {
id: extruderStaticText
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
font: UM.Theme.getFont("default") color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active_text") :
text: control.text control.hovered ? UM.Theme.getColor("action_button_hovered_text") :
elide: Text.ElideRight UM.Theme.getColor("action_button_text")
font: control.checked ? UM.Theme.getFont("default_bold") : UM.Theme.getFont("default")
text: catalog.i18nc("@label", "Extruder")
visible: width < (control.width - extruderIconItem.width - UM.Theme.getSize("default_margin").width)
elide: Text.ElideRight
}
// Everthing for the extruder icon
Item
{
id: extruderIconItem
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
property var sizeToUse:
{
var minimumWidth = control.width < UM.Theme.getSize("button").width ? control.width : UM.Theme.getSize("button").width;
var minimumHeight = control.height < UM.Theme.getSize("button").height ? control.height : UM.Theme.getSize("button").height;
var minimumSize = minimumWidth < minimumHeight ? minimumWidth : minimumHeight;
minimumSize -= UM.Theme.getSize("default_margin").width / 2;
return minimumSize;
}
width: sizeToUse
height: sizeToUse
UM.RecolorImage {
id: mainCircle
anchors.fill: parent
sourceSize.width: parent.width
sourceSize.height: parent.width
source: UM.Theme.getIcon("extruder_button")
color: extruderNumberText.color
}
Text
{
id: extruderNumberText
anchors.centerIn: parent
text: index + 1;
color: (control.checked || control.pressed) ? UM.Theme.getColor("action_button_active_text") :
control.hovered ? UM.Theme.getColor("action_button_hovered_text") :
UM.Theme.getColor("action_button_text")
font: UM.Theme.getFont("default_bold")
}
// Material colour circle
// Only draw the filling colour of the material inside the SVG border.
Rectangle
{
anchors
{
right: parent.right
top: parent.top
rightMargin: parent.sizeToUse * 0.01
topMargin: parent.sizeToUse * 0.05
}
color: model.color
width: parent.width * 0.35
height: parent.height * 0.35
radius: width / 2
border.width: 1
border.color: UM.Theme.getColor("extruder_button_material_border")
opacity: !control.checked ? 0.6 : 1.0
}
}
} }
} }
label: Item { } label: Item {}
} }
} }
} }
@ -260,7 +340,7 @@ Column
Item Item
{ {
id: materialInfoRow id: materialInfoRow
height: UM.Theme.getSize("sidebar_setup").height height: UM.Theme.getSize("sidebar_setup").height / 2
visible: (Cura.MachineManager.hasVariants || Cura.MachineManager.hasMaterials) && !sidebar.monitoringPrint && !sidebar.hideSettings visible: (Cura.MachineManager.hasVariants || Cura.MachineManager.hasMaterials) && !sidebar.monitoringPrint && !sidebar.hideSettings
anchors anchors
@ -277,14 +357,31 @@ Column
anchors.right: parent.right anchors.right: parent.right
width: parent.width * 0.7 + UM.Theme.getSize("sidebar_margin").width width: parent.width * 0.7 + UM.Theme.getSize("sidebar_margin").width
UM.RecolorImage
{
id: warningImage
anchors.right: materialInfoLabel.left
anchors.rightMargin: UM.Theme.getSize("default_margin").width
anchors.verticalCenter: parent.Bottom
source: UM.Theme.getIcon("warning")
width: UM.Theme.getSize("section_icon").width
height: UM.Theme.getSize("section_icon").height
//sourceSize.width: width + 5
//sourceSize.height: width + 5
color: UM.Theme.getColor("material_compatibility_warning")
visible: !Cura.MachineManager.isCurrentSetupSupported
}
Text Text
{ {
id: materialInfoLabel id: materialInfoLabel
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
text: catalog.i18nc("@label", "Check material compability"); text: catalog.i18nc("@label", "Check material compatibility")
font: UM.Theme.getFont("default"); font: UM.Theme.getFont("default");
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignTop
anchors.top: parent.top anchors.top: parent.top
anchors.right: parent.right
anchors.bottom: parent.bottom anchors.bottom: parent.bottom
color: UM.Theme.getColor("text") color: UM.Theme.getColor("text")
@ -314,21 +411,6 @@ Column
onExited: base.hideTooltip(); onExited: base.hideTooltip();
} }
} }
UM.RecolorImage
{
id: warningImage
anchors.right: parent.right
anchors.verticalCenter: parent.Bottom
source: UM.Theme.getIcon("warning")
width: UM.Theme.getSize("section_icon").width
height: UM.Theme.getSize("section_icon").height
//sourceSize.width: width + 5
//sourceSize.height: width + 5
color: UM.Theme.getColor("setting_validation_warning")
visible: !Cura.MachineManager.isCurrentSetupSupported
}
} }
} }

View File

@ -40,7 +40,7 @@ Item
id: infillCellLeft id: infillCellLeft
anchors.top: parent.top anchors.top: parent.top
anchors.left: parent.left anchors.left: parent.left
anchors.topMargin: UM.Theme.getSize("sidebar_margin").height anchors.topMargin: UM.Theme.getSize("sidebar_margin").height * 0.8
width: UM.Theme.getSize("sidebar").width * .45 - UM.Theme.getSize("sidebar_margin").width width: UM.Theme.getSize("sidebar").width * .45 - UM.Theme.getSize("sidebar_margin").width
height: childrenRect.height height: childrenRect.height
@ -276,7 +276,7 @@ Item
property alias _hovered: enableSupportMouseArea.containsMouse property alias _hovered: enableSupportMouseArea.containsMouse
anchors.top: infillCellRight.bottom anchors.top: infillCellRight.bottom
anchors.topMargin: UM.Theme.getSize("sidebar_margin").height * 2 anchors.topMargin: UM.Theme.getSize("sidebar_margin").height
anchors.left: infillCellRight.left anchors.left: infillCellRight.left
style: UM.Theme.styles.checkbox; style: UM.Theme.styles.checkbox;

View File

@ -16,7 +16,7 @@ Rectangle
anchors.left: parent.left anchors.left: parent.left
anchors.right: parent.right anchors.right: parent.right
height: UM.Theme.getSize("sidebar_header").height height: UM.Theme.getSize("sidebar_header").height
color: UM.Theme.getColor("sidebar_header_bar") color: "transparent"
property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0 property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0
property bool printerAcceptsCommands: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands property bool printerAcceptsCommands: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands
@ -29,9 +29,25 @@ Rectangle
name:"cura" name:"cura"
} }
Image
{
id: logo
anchors.left: parent.left
anchors.leftMargin: UM.Theme.getSize("default_margin").width
anchors.verticalCenter: parent.verticalCenter
source: UM.Theme.getImage("logo");
width: UM.Theme.getSize("logo").width;
height: UM.Theme.getSize("logo").height;
sourceSize.width: width;
sourceSize.height: height;
}
Row Row
{ {
anchors.left: parent.left anchors.left: logo.right
anchors.leftMargin: UM.Theme.getSize("topbar_logo_right_margin").width
anchors.right: machineSelection.left anchors.right: machineSelection.left
anchors.rightMargin: UM.Theme.getSize("default_margin").width anchors.rightMargin: UM.Theme.getSize("default_margin").width
spacing: UM.Theme.getSize("default_margin").width spacing: UM.Theme.getSize("default_margin").width
@ -41,7 +57,6 @@ Rectangle
id: showSettings id: showSettings
height: UM.Theme.getSize("sidebar_header").height height: UM.Theme.getSize("sidebar_header").height
onClicked: base.stopMonitoringPrint() onClicked: base.stopMonitoringPrint()
iconSource: UM.Theme.getIcon("tab_settings");
property color overlayColor: "transparent" property color overlayColor: "transparent"
property string overlayIconSource: "" property string overlayIconSource: ""
text: catalog.i18nc("@title:tab", "Prepare") text: catalog.i18nc("@title:tab", "Prepare")
@ -49,53 +64,21 @@ Rectangle
checked: !base.monitoringPrint checked: !base.monitoringPrint
exclusiveGroup: sidebarHeaderBarGroup exclusiveGroup: sidebarHeaderBarGroup
style: UM.Theme.styles.topbar_header_tab style: UM.Theme.styles.topbar_header_tab
} }
Button Button
{ {
id: showMonitor id: showMonitor
width: UM.Theme.getSize("topbar_button").width
height: UM.Theme.getSize("sidebar_header").height height: UM.Theme.getSize("sidebar_header").height
onClicked: base.startMonitoringPrint() onClicked: base.startMonitoringPrint()
text: catalog.i18nc("@title:tab", "Monitor") text: catalog.i18nc("@title:tab", "Monitor")
iconSource: UM.Theme.getIcon("tab_monitor") property string iconSource:
property color overlayColor:
{
if(!printerAcceptsCommands)
{
return UM.Theme.getColor("status_unknown");
}
if(Cura.MachineManager.printerOutputDevices[0].printerState == "maintenance")
{
return UM.Theme.getColor("status_busy");
}
switch(Cura.MachineManager.printerOutputDevices[0].jobState)
{
case "printing":
case "pre_print":
case "wait_cleanup":
case "pausing":
case "resuming":
return UM.Theme.getColor("status_busy");
case "ready":
case "":
return UM.Theme.getColor("status_ready");
case "paused":
return UM.Theme.getColor("status_paused");
case "error":
return UM.Theme.getColor("status_stopped");
case "offline":
return UM.Theme.getColor("status_offline");
default:
return UM.Theme.getColor("text_reversed");
}
}
property string overlayIconSource:
{ {
if(!printerConnected) if(!printerConnected)
{ {
return ""; return UM.Theme.getIcon("tab_status_unknown");
} }
else if(!printerAcceptsCommands) else if(!printerAcceptsCommands)
{ {
@ -111,10 +94,11 @@ Rectangle
{ {
case "printing": case "printing":
case "pre_print": case "pre_print":
case "wait_cleanup":
case "pausing": case "pausing":
case "resuming": case "resuming":
return UM.Theme.getIcon("tab_status_busy"); return UM.Theme.getIcon("tab_status_busy");
case "wait_cleanup":
return UM.Theme.getIcon("tab_status_finished");
case "ready": case "ready":
case "": case "":
return UM.Theme.getIcon("tab_status_connected") return UM.Theme.getIcon("tab_status_connected")
@ -123,7 +107,7 @@ Rectangle
case "error": case "error":
return UM.Theme.getIcon("tab_status_stopped") return UM.Theme.getIcon("tab_status_stopped")
default: default:
return "" return UM.Theme.getIcon("tab_status_unknown")
} }
} }
@ -131,18 +115,19 @@ Rectangle
checked: base.monitoringPrint checked: base.monitoringPrint
exclusiveGroup: sidebarHeaderBarGroup exclusiveGroup: sidebarHeaderBarGroup
style: UM.Theme.styles.topbar_header_tab style: UM.Theme.styles.topbar_header_tab_no_overlay
} }
ExclusiveGroup { id: sidebarHeaderBarGroup } ExclusiveGroup { id: sidebarHeaderBarGroup }
} }
ToolButton ToolButton
{ {
id: machineSelection id: machineSelection
text: Cura.MachineManager.activeMachineName text: Cura.MachineManager.activeMachineName
width: UM.Theme.getSize("sidebar").width; width: UM.Theme.getSize("sidebar").width
height: UM.Theme.getSize("sidebar_header").height height: UM.Theme.getSize("sidebar_header").height
tooltip: Cura.MachineManager.activeMachineName tooltip: Cura.MachineManager.activeMachineName
@ -199,7 +184,7 @@ Rectangle
text: control.text; text: control.text;
elide: Text.ElideRight; elide: Text.ElideRight;
anchors.left: parent.left; anchors.left: parent.left;
anchors.leftMargin: UM.Theme.getSize("default_margin").width anchors.leftMargin: UM.Theme.getSize("default_margin").width * 2
anchors.right: downArrow.left; anchors.right: downArrow.left;
anchors.rightMargin: control.rightMargin; anchors.rightMargin: control.rightMargin;
anchors.verticalCenter: parent.verticalCenter; anchors.verticalCenter: parent.verticalCenter;

View File

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="30"
height="30"
viewBox="0 0 30 30"
version="1.1"
id="svg4595"
sodipodi:docname="extruder_button.svg"
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)">
<metadata
id="metadata4599">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Artboard 3 Copy</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1137"
id="namedview4597"
showgrid="false"
inkscape:pagecheckerboard="true"
inkscape:zoom="23.442308"
inkscape:cx="4.9163727"
inkscape:cy="17.941232"
inkscape:window-x="2552"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg4595" />
<!-- Generator: Sketch 43.1 (39012) - http://www.bohemiancoding.com/sketch -->
<title
id="title4584">Artboard 3 Copy</title>
<desc
id="desc4586">Created with Sketch.</desc>
<defs
id="defs4588" />
<ellipse
id="path13"
cx="14.999999"
cy="15"
style="fill:none;stroke:#ffffff;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
rx="13.735848"
ry="13.735849" />
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="30"
height="30"
viewBox="0 0 30 30"
version="1.1"
id="svg4668"
sodipodi:docname="material_not_selected.svg"
inkscape:version="0.92.1 r">
<metadata
id="metadata4672">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Artboard 3</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1266"
inkscape:window-height="1411"
id="namedview4670"
showgrid="false"
inkscape:pagecheckerboard="true"
inkscape:zoom="9.0769231"
inkscape:cx="-5.7118644"
inkscape:cy="13"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg4668" />
<!-- Generator: Sketch 43.1 (39012) - http://www.bohemiancoding.com/sketch -->
<title
id="title4657">Artboard 3</title>
<desc
id="desc4659">Created with Sketch.</desc>
<defs
id="defs4661" />
<g
id="Feature-apply-material-to-model"
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1"
transform="translate(0,2)">
<g
id="Artboard-3"
style="fill:#ffffff">
<g
id="Group-19">
<path
d="m 13,26 h 1.000227 C 22.844516,26 30,18.836556 30,10 h -1 c 0,8.284271 -6.717306,15 -14.999491,15 H 13 Z"
id="Combined-Shape-Copy-64"
inkscape:connector-curvature="0" />
<path
d="M 0,13 C 0,5.8202982 5.8187196,0 13,0 20.179702,0 26,5.8187196 26,13 26,20.179702 20.18128,26 13,26 5.8202982,26 0,20.18128 0,13 Z m 1.2380952,0 C 1.2380952,19.497349 6.5040794,24.761905 13,24.761905 19.497349,24.761905 24.761905,19.495921 24.761905,13 24.761905,6.5026511 19.495921,1.2380952 13,1.2380952 6.5026511,1.2380952 1.2380952,6.5040794 1.2380952,13 Z M 1.8,12.866667 C 1.8,12.384683 2.1844415,12 2.6586742,12 H 6.1413258 C 6.6091548,12 7,12.38802 7,12.866667 7,13.348651 6.6155584,13.733333 6.1413258,13.733333 H 2.6586742 C 2.1908452,13.733333 1.8,13.345313 1.8,12.866667 Z m 17,0 C 18.8,12.384683 19.184442,12 19.658674,12 h 3.482652 C 23.609155,12 24,12.38802 24,12.866667 c 0,0.481984 -0.384442,0.866666 -0.858674,0.866666 H 19.658674 C 19.190845,13.733333 18.8,13.345313 18.8,12.866667 Z m 1.943614,8.064088 c -0.338454,0.338455 -0.889195,0.336457 -1.22,0.0057 L 17.061008,18.4738 c -0.335334,-0.335333 -0.335163,-0.879186 0.0057,-1.22 0.338454,-0.338455 0.889195,-0.336457 1.22,-0.0057 l 2.462607,2.462607 c 0.335333,0.335333 0.335162,0.879186 -0.0057,1.22 z M 7.5236141,8.9364067 5.0610076,6.4738002 C 4.7256744,6.138467 4.7258451,5.594614 5.0666591,5.2537999 5.4051135,4.9153455 5.9558542,4.9173433 6.2866593,5.2481484 L 8.7492659,7.7107549 C 9.084599,8.0460881 9.0844284,8.5899412 8.7436144,8.9307552 8.40516,9.2692096 7.8544192,9.2672118 7.5236141,8.9364067 Z M 5.0666591,20.930755 c -0.340814,-0.340814 -0.3409847,-0.884667 -0.00565,-1.22 l 2.4626065,-2.462607 c 0.3308051,-0.330805 0.8815459,-0.332803 1.2200003,0.0057 0.340814,0.340814 0.3409846,0.884667 0.00565,1.22 L 6.2866593,20.936407 C 5.9558542,21.267212 5.4051135,21.26921 5.0666591,20.930755 Z M 17.066659,8.9307552 c -0.340814,-0.340814 -0.340985,-0.8846671 -0.0057,-1.2200003 l 2.462606,-2.4626065 c 0.330805,-0.3308051 0.881546,-0.3328029 1.22,0.00565 0.340814,0.3408141 0.340985,0.8846671 0.0057,1.2200003 l -2.462607,2.4626065 c -0.330805,0.3308051 -0.881546,0.3328029 -1.219999,-0.00565 z M 13.133333,2 C 13.615317,2 14,2.3844416 14,2.8586742 V 6.3413258 C 14,6.8091548 13.61198,7.2 13.133333,7.2 12.65135,7.2 12.266667,6.8155584 12.266667,6.3413258 V 2.8586742 C 12.266667,2.3908452 12.654687,2 13.133333,2 Z m 0,17 C 13.615317,19 14,19.384442 14,19.858674 v 3.482652 C 14,23.809155 13.61198,24.2 13.133333,24.2 12.65135,24.2 12.266667,23.815558 12.266667,23.341326 V 19.858674 C 12.266667,19.390845 12.654687,19 13.133333,19 Z M 8.6666667,13 c 0,-2.393234 1.9449693,-4.3333333 4.3333333,-4.3333333 2.393234,0 4.333333,1.9449693 4.333333,4.3333333 0,2.393234 -1.944969,4.333333 -4.333333,4.333333 -2.393234,0 -4.3333333,-1.944969 -4.3333333,-4.333333 z m 1.2380952,0 c 0,1.705974 1.3857851,3.095238 3.0952381,3.095238 1.705974,0 3.095238,-1.385785 3.095238,-3.095238 0,-1.705974 -1.385785,-3.0952381 -3.095238,-3.0952381 -1.705974,0 -3.0952381,1.3857851 -3.0952381,3.0952381 z"
id="Combined-Shape-Copy-60"
inkscape:connector-curvature="0" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.1 KiB

View File

@ -1,78 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="30"
height="30"
viewBox="0 0 30 30"
version="1.1"
id="svg4595"
sodipodi:docname="material_selected.svg"
inkscape:version="0.92.1 r">
<metadata
id="metadata4599">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Artboard 3 Copy</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2502"
inkscape:window-height="1411"
id="namedview4597"
showgrid="false"
inkscape:pagecheckerboard="true"
inkscape:zoom="23.442308"
inkscape:cx="18.780195"
inkscape:cy="17.941232"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg4595" />
<!-- Generator: Sketch 43.1 (39012) - http://www.bohemiancoding.com/sketch -->
<title
id="title4584">Artboard 3 Copy</title>
<desc
id="desc4586">Created with Sketch.</desc>
<defs
id="defs4588" />
<g
id="Feature-apply-material-to-model"
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1"
transform="translate(0,2)">
<g
id="Artboard-3-Copy"
style="fill:#ffffff">
<g
id="Group-20-Copy">
<path
d="M 13,26 C 5.8202982,26 0,20.179702 0,13 0,5.8202982 5.8202982,0 13,0 c 7.179702,0 13,5.8202982 13,13 0,7.179702 -5.820298,13 -13,13 z m 0,-8.666667 c 2.393234,0 4.333333,-1.940099 4.333333,-4.333333 0,-2.393234 -1.940099,-4.3333333 -4.333333,-4.3333333 -2.393234,0 -4.3333333,1.9400993 -4.3333333,4.3333333 0,2.393234 1.9400993,4.333333 4.3333333,4.333333 z m 0,1.733334 c -0.481984,0 -0.866667,0.384441 -0.866667,0.858674 v 3.482651 c 0,0.467829 0.38802,0.858675 0.866667,0.858675 0.481984,0 0.866667,-0.384442 0.866667,-0.858675 v -3.482651 c 0,-0.467829 -0.38802,-0.858674 -0.866667,-0.858674 z M 13,1.7333333 c -0.481984,0 -0.866667,0.3844416 -0.866667,0.8586743 v 3.4826515 c 0,0.4678291 0.38802,0.8586742 0.866667,0.8586742 0.481984,0 0.866667,-0.3844415 0.866667,-0.8586742 V 2.5920076 C 13.866667,2.1241785 13.478647,1.7333333 13,1.7333333 Z M 8.6231145,8.6231145 C 8.9639285,8.2823004 8.9640991,7.7384474 8.628766,7.4031142 L 6.1661595,4.9405077 C 5.8353543,4.6097026 5.2846136,4.6077048 4.9461592,4.9461592 4.6053452,5.2869732 4.6051746,5.8308263 4.9405077,6.1661595 L 7.4031142,8.628766 C 7.7339193,8.9595711 8.2846601,8.9615689 8.6231145,8.623116 Z M 20.756448,20.756448 c 0.340814,-0.340814 0.340984,-0.884667 0.0057,-1.22 l -2.462606,-2.462607 c -0.330805,-0.330805 -0.881546,-0.332803 -1.220001,0.0057 -0.340814,0.340815 -0.340984,0.884668 -0.0057,1.220001 l 2.462607,2.462606 c 0.330805,0.330805 0.881545,0.332803 1.22,-0.0057 z M 18.299493,8.628766 20.762099,6.1661595 c 0.335333,-0.3353332 0.335163,-0.8791863 -0.0057,-1.2200003 -0.338455,-0.3384544 -0.889195,-0.3364566 -1.22,-0.00565 l -2.462607,2.4626065 c -0.335333,0.3353332 -0.335163,0.8791862 0.0057,1.2200003 0.338455,0.3384544 0.889196,0.3364566 1.220001,0.00565 z M 4.9461592,20.756448 c 0.3384544,0.338454 0.8891951,0.336456 1.2200003,0.0057 L 8.628766,18.299493 C 8.9640991,17.96416 8.9639285,17.420307 8.6231145,17.079492 8.2846601,16.741038 7.7339193,16.743036 7.4031142,17.073841 l -2.4626065,2.462607 c -0.3353331,0.335333 -0.3351625,0.879186 0.00565,1.22 z M 6.9333333,13 c 0,-0.481984 -0.3844415,-0.866667 -0.8586742,-0.866667 H 2.5920076 c -0.4678291,0 -0.8586743,0.38802 -0.8586743,0.866667 0,0.481984 0.3844416,0.866667 0.8586743,0.866667 h 3.4826515 c 0.4678291,0 0.8586742,-0.38802 0.8586742,-0.866667 z m 17.3333337,0 c 0,-0.481984 -0.384442,-0.866667 -0.858675,-0.866667 h -3.482651 c -0.467829,0 -0.858674,0.38802 -0.858674,0.866667 0,0.481984 0.384441,0.866667 0.858674,0.866667 h 3.482651 c 0.467829,0 0.858675,-0.38802 0.858675,-0.866667 z"
id="Combined-Shape-Copy-58"
transform="rotate(-90,13,13)"
inkscape:connector-curvature="0" />
<path
d="m 13,26 h 1.000227 C 22.844516,26 30,18.836556 30,10 h -1 c 0,8.284271 -6.717306,15 -14.999491,15 H 13 Z"
id="Combined-Shape-Copy-59"
inkscape:connector-curvature="0" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.8 KiB

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg">
<path d="M26,0 L0,0 L0,28 L2.73151751,28 C3.13618677,27.6 3.74319066,27.3 4.45136187,27.3 L21.5486381,27.3 C22.2568093,27.3 22.8638132,27.6 23.2684825,28 L26,28 L26,0 Z M23.5719844,21 C23.5719844,22.3 22.459144,23.4 21.1439689,23.4 L4.95719844,23.4 C3.64202335,23.4 2.52918288,22.3 2.52918288,21 L2.52918288,3.1 C2.52918288,2.7 2.83268482,2.4 3.23735409,2.4 L22.8638132,2.4 C23.2684825,2.4 23.5719844,2.7 23.5719844,3.1 L23.5719844,21 Z" />
</svg>

Before

Width:  |  Height:  |  Size: 592 B

View File

@ -1,3 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 37.5 30">
<path d="M15.658 26.184h10.526V27.5H15.658v-1.316zm0-2.631h9.21v1.315h-9.21v-1.315zm0-2.632h7.895v1.316h-7.895V20.92zm0-2.632h6.58v1.316h-6.58V18.29zm0-2.631h5.263v1.316h-5.263v-1.316zm0-2.632h3.947v1.316h-3.947v-1.316zm0-2.631h2.632v1.316h-2.632v-1.316zm0-2.632h5.263V9.08h-5.263V7.763zm0-2.631h7.895v1.315h-7.895V5.132zm0-2.632h10.526v1.316H15.658V2.5zm-11.842 0l7.895 8.553L3.816 27.5h10.526v-25H3.816z" />
</svg>

Before

Width:  |  Height:  |  Size: 484 B

View File

@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg"> <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g transform="translate(15.5, 4)"> <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<circle fill="#0CA9E3" cx="9" cy="9" r="8.5" stroke="#18294D" /> <title>Busy</title>
<circle fill="#FFFFFF" cx="4" cy="9" r="1.75" /> <desc>Created with Sketch.</desc>
<circle fill="#FFFFFF" cx="9" cy="9" r="1.75" /> <defs></defs>
<circle fill="#FFFFFF" cx="14" cy="9" r="1.75" /> <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-17.000000, -22.000000)"></g>
<g id="Busy" fill="#D8D8D8">
<path d="M7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 C10.8659932,0 14,3.13400675 14,7 C14,10.8659932 10.8659932,14 7,14 Z M9.5,7 C9.5,7.83420277 10.1715729,8.5 11,8.5 C11.8342028,8.5 12.5,7.82842712 12.5,7 C12.5,6.16579723 11.8284271,5.5 11,5.5 C10.1657972,5.5 9.5,6.17157288 9.5,7 Z M1.5,7 C1.5,7.83420277 2.17157288,8.5 3,8.5 C3.83420277,8.5 4.5,7.82842712 4.5,7 C4.5,6.16579723 3.82842712,5.5 3,5.5 C2.16579723,5.5 1.5,6.17157288 1.5,7 Z M5.5,7 C5.5,7.83420277 6.17157288,8.5 7,8.5 C7.83420277,8.5 8.5,7.82842712 8.5,7 C8.5,6.16579723 7.82842712,5.5 7,5.5 C6.16579723,5.5 5.5,6.17157288 5.5,7 Z" id="Combined-Shape"></path>
</g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 440 B

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,7 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg"> <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g transform="translate(15.5, 4)"> <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<circle fill="#10CB00" cx="9" cy="9" r="8.5" stroke="#18294D" /> <title>Connected</title>
<polyline fill="none" stroke="#FFFFFF" stroke-width="2" points="5.643,8.645 8.116,11.12 12.36,6.88" /> <desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-165.000000, -22.000000)"></g>
<g id="Connected" fill="#0CA9E3">
<path d="M0,7 C0,3.13400675 3.14187327,0 7,0 C10.8659932,0 14,3.14187327 14,7 C14,10.8659932 10.8581267,14 7,14 C3.13400675,14 0,10.8581267 0,7 Z M6.18,10.3625 L11.1325,5.415 L9.7175,4 L6.1825,7.5325 L4.415,5.765 L3,7.18 L6.18,10.3625 Z" id="Combined-Shape"></path>
</g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 379 B

After

Width:  |  Height:  |  Size: 878 B

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<title>Wait cleanup</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-84.000000, -22.000000)"></g>
<g id="Wait-cleanup" fill="#7FDB16">
<path d="M7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 C10.8659932,0 14,3.13400675 14,7 C14,10.8659932 10.8659932,14 7,14 Z M8.07520384,11.2263517 L8.07520384,10.7137766 C8.07520384,10.2581543 7.84739269,10.0018668 7.36329399,10.0018668 L6.73681332,10.0018668 C6.28119101,10.0018668 6.02490346,10.2296779 6.02490346,10.7137766 L6.02490346,11.2263517 C6.02490346,11.681974 6.25271461,11.9382616 6.73681332,11.9382616 L7.36329399,11.9382616 C7.8189163,11.9382616 8.07520384,11.7104504 8.07520384,11.2263517 Z M8.04672745,7.78070802 L8.21758581,2.74038625 C8.21758581,2.25628755 7.98977466,2 7.50567596,2 L6.59443134,2 C6.11033264,2 5.88252149,2.25628755 5.88252149,2.74038625 L6.05337986,7.78070802 C6.08185625,8.23633033 6.3381438,8.49261788 6.7937661,8.49261788 L7.3063412,8.49261788 C7.76196351,8.49261788 8.04672745,8.23633033 8.04672745,7.78070802 Z" id="Combined-Shape"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,8 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg"> <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g transform="translate(15.5, 4)"> <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<circle fill="#FF8C10" cx="9" cy="9" r="8.5" stroke="#18294D" /> <title>paused</title>
<rect fill="#FFFFFF" x="6" y="6" width="2" height="6" /> <desc>Created with Sketch.</desc>
<rect fill="#FFFFFF" x="10" y="6" width="2" height="6" /> <defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-246.000000, -22.000000)"></g>
<g id="paused" fill="#F5A623">
<path d="M7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 C10.8659932,0 14,3.13400675 14,7 C14,10.8659932 10.8659932,14 7,14 Z M4.33333333,4.11111111 L4.33333333,9.88888889 L6.11111111,9.88888889 L6.11111111,4.11111111 L4.33333333,4.11111111 Z M7.88888889,4.11111111 L7.88888889,9.88888889 L9.66666667,9.88888889 L9.66666667,4.11111111 L7.88888889,4.11111111 Z" id="Combined-Shape"></path>
</g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 1016 B

View File

@ -1,8 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg"> <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g transform="translate(15.5, 4)"> <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<circle fill="#D0021B" cx="9" cy="9" r="8.5" stroke="#18294D" /> <title>Aborted</title>
<line x1="6" y1="6" x2="12" y2="12" stroke-width="2" stroke="#FFFFFF" /> <desc>Created with Sketch.</desc>
<line x1="6" y1="12" x2="12" y2="6" stroke-width="2" stroke="#FFFFFF" /> <defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-303.000000, -22.000000)"></g>
<g id="Aborted" fill="#D0021B">
<path d="M7.006431,8.15087791 L8.99372277,9.86752475 L10.1369901,8.54194059 L8.1500273,6.82616116 L9.86540931,4.83910045 L8.54098909,3.69576014 L6.82576597,5.68263681 L4.8380396,3.96619802 L3.69512871,5.29053465 L5.6823619,7.00713089 L3.96564795,8.9957345 L5.29006817,10.1390748 L7.006431,8.15087791 Z M7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 C10.8659932,0 14,3.13400675 14,7 C14,10.8659932 10.8659932,14 7,14 Z" id="Combined-Shape"></path>
</g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 430 B

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg width="35" height="28" viewBox="0 0 35 28" xmlns="http://www.w3.org/2000/svg"> <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g transform="translate(15.5, 4)"> <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
<circle cx="9" cy="9" r="8.5" fill="#8B9595" stroke="#18294D" /> <title>Unknown</title>
<path fill="#FFFFFF" d="M9.013 3.5C7.29 3.5 6.533 4.515 6.236 5.12 5.989 5.623 5.997 6.057 6.001 6.138L7.59 6.058 7.591 6.082C7.591 6.081 7.594 5.964 7.664 5.821 7.905 5.33 8.347 5.091 9.013 5.091 9.47 5.091 9.817 5.217 10.075 5.475 10.477 5.878 10.556 6.485 10.555 6.626 10.554 6.812 10.49 7.77 9.306 8.386 8.318 8.899 7.752 9.906 7.752 11.147L7.752 11.621 9.343 11.618 9.342 11.147C9.342 10.697 9.463 10.097 10.039 9.798 12.035 8.76 12.144 6.98 12.146 6.633 12.148 6.141 11.952 5.106 11.202 4.353 10.647 3.795 9.89 3.5 9.013 3.5Z"/> <desc>Created with Sketch.</desc>
<rect fill="#FFFFFF" x="7.818" y="13.136" width="1.591" height="1.25" /> <defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="00-printer-status-overview" transform="translate(-407.000000, -62.000000)" fill="#D8D8D8" opacity="0.231600996">
<rect id="Rectangle-12" x="379" y="0" width="261" height="163"></rect>
</g>
<g id="Unknown" fill="#000000">
<path d="M7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 C10.8659932,0 14,3.13400675 14,7 C14,10.8659932 10.8659932,14 7,14 Z M6.78333984,11.3842884 C7.41672998,11.3842884 7.93020964,10.8704803 7.93020964,10.2374186 C7.93020964,9.60435702 7.41672998,9.09087736 6.78333984,9.09087736 C6.1499497,9.09087736 5.63647003,9.6040285 5.63647003,10.2374186 C5.63647003,10.8708088 6.1499497,11.3842884 6.78333984,11.3842884 Z M7.5343408,7.73605322 C8.81853274,7.61975648 9.82775188,6.53727696 9.82808041,5.22351806 C9.82808041,3.83222799 8.69632261,2.7004702 7.30503254,2.7004702 C5.91374248,2.7004702 4.78198468,3.83255652 4.78198468,5.22351806 L6.33589307,5.22351806 C6.33589307,4.68967004 6.77052748,4.25503562 7.30470402,4.25503562 C7.83920908,4.25503562 8.27351498,4.68967004 8.27351498,5.22351806 C8.27351498,5.75802312 7.83920908,6.19232901 7.30470402,6.19232901 L5.9801039,6.19232901 L5.9801039,8.54355994 L7.5343408,8.54355994 L7.5343408,7.73605322 Z" id="Combined-Shape"></path>
</g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 874 B

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -90,36 +90,100 @@ QtObject {
} }
} }
property Component topbar_header_tab_no_overlay: Component {
ButtonStyle {
background: Rectangle {
implicitHeight: Theme.getSize("topbar_button").height
implicitWidth: Theme.getSize("topbar_button").width
color: "transparent"
anchors.fill: parent
Rectangle
{
id: underline
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
width: parent.width
height: Theme.getSize("sidebar_header_highlight").height
color: control.checked ? UM.Theme.getColor("sidebar_header_highlight") : "transparent"
visible: control.hovered || control.checked
}
}
label: Rectangle {
implicitHeight: Theme.getSize("topbar_button_icon").height
implicitWidth: Theme.getSize("topbar_button").width
color: "transparent"
anchors.fill: parent
Item
{
anchors.centerIn: parent
width: textLabel.width + icon.width + Theme.getSize("default_margin").width / 2
Label
{
id: textLabel
text: control.text
anchors.right: icon.visible ? icon.left : parent.right
anchors.rightMargin: icon.visible ? Theme.getSize("default_margin").width / 2 : 0
anchors.verticalCenter: parent.verticalCenter;
font: control.checked ? UM.Theme.getFont("large") : UM.Theme.getFont("large_nonbold")
color:
{
if(control.hovered)
{
return UM.Theme.getColor("topbar_button_text_hovered");
}
if(control.checked)
{
return UM.Theme.getColor("topbar_button_text_active");
}
else
{
return UM.Theme.getColor("topbar_button_text_inactive");
}
}
}
Image
{
id: icon
visible: control.iconSource != ""
anchors.right: parent.right
anchors.verticalCenter: parent.verticalCenter
opacity: !control.enabled ? 0.2 : 1.0
source: control.iconSource
width: visible ? Theme.getSize("topbar_button_icon").width : 0
height: Theme.getSize("topbar_button_icon").height
sourceSize: Theme.getSize("topbar_button_icon")
}
}
}
}
}
property Component topbar_header_tab: Component { property Component topbar_header_tab: Component {
ButtonStyle { ButtonStyle {
background: Item { background: Item {
implicitWidth: Theme.getSize("topbar_button").width; implicitHeight: Theme.getSize("topbar_button").height
implicitHeight: Theme.getSize("topbar_button").height; implicitWidth: Theme.getSize("topbar_button").width + Theme.getSize("topbar_button_icon").width
Rectangle { Rectangle {
id: buttonFace; id: buttonFace;
anchors.fill: parent; anchors.fill: parent;
property bool down: control.pressed || (control.checkable && control.checked);
color: { color: "transparent"
if(control.pressed || (control.checkable && control.checked)) {
return Theme.getColor("sidebar_header_active");
} else if(control.hovered) {
return Theme.getColor("sidebar_header_hover");
} else {
return Theme.getColor("sidebar_header_bar");
}
}
Behavior on color { ColorAnimation { duration: 50; } } Behavior on color { ColorAnimation { duration: 50; } }
Rectangle { Rectangle {
id: underline; id: underline;
anchors.left: parent.left anchors.horizontalCenter: parent.horizontalCenter
anchors.right: parent.right
anchors.bottom: parent.bottom anchors.bottom: parent.bottom
height: UM.Theme.getSize("sidebar_header_highlight").height width: Theme.getSize("topbar_button").width + Theme.getSize("topbar_button_icon").width
height: Theme.getSize("sidebar_header_highlight").height
color: control.checked ? UM.Theme.getColor("sidebar_header_highlight") : UM.Theme.getColor("sidebar_header_highlight_hover") color: control.checked ? UM.Theme.getColor("sidebar_header_highlight") : UM.Theme.getColor("sidebar_header_highlight_hover")
visible: control.hovered || control.checked visible: control.hovered || control.checked
} }
@ -129,57 +193,60 @@ QtObject {
label: Item label: Item
{ {
implicitHeight: Theme.getSize("topbar_button_icon").height implicitHeight: Theme.getSize("topbar_button_icon").height
implicitWidth: Theme.getSize("topbar_button").width; implicitWidth: Theme.getSize("topbar_button").width + Theme.getSize("topbar_button_icon").width
Item Item
{ {
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter; anchors.verticalCenter: parent.verticalCenter;
width: childrenRect.width width: childrenRect.width
height: Theme.getSize("topbar_button_icon").height height: Theme.getSize("topbar_button_icon").height
UM.RecolorImage
{
id: icon
color: UM.Theme.getColor("text_emphasis")
opacity: !control.enabled ? 0.2 : 1.0
source: control.iconSource
width: Theme.getSize("topbar_button_icon").width
height: Theme.getSize("topbar_button_icon").height
sourceSize: Theme.getSize("topbar_button_icon")
}
Image
{
visible: control.overlayIconSource != ""
opacity: !control.enabled ? 0.2 : 1.0
source: control.overlayIconSource
width: Theme.getSize("topbar_button_icon").width
height: Theme.getSize("topbar_button_icon").height
sourceSize: Theme.getSize("topbar_button_icon")
}
Label Label
{ {
text: control.text; text: control.text;
anchors.left: icon.right anchors.right: (icon.visible || overlayIcon.visible) ? icon.left : parent.right
anchors.leftMargin: Theme.getSize("default_margin").width anchors.rightMargin: (icon.visible || overlayIcon.visible) ? Theme.getSize("default_margin").width : 0
anchors.verticalCenter: parent.verticalCenter; anchors.verticalCenter: parent.verticalCenter;
font: UM.Theme.getFont("large"); font: control.checked ? UM.Theme.getFont("large") : UM.Theme.getFont("large_nonbold")
color: color:
{ {
if(control.hovered) if(control.hovered)
{ {
return UM.Theme.getColor("sidebar_header_text_hover"); return UM.Theme.getColor("topbar_button_text_hovered");
} }
if(control.checked) if(control.checked)
{ {
return UM.Theme.getColor("sidebar_header_text_active"); return UM.Theme.getColor("topbar_button_text_active");
} }
else else
{ {
return UM.Theme.getColor("sidebar_header_text_inactive"); return UM.Theme.getColor("topbar_button_text_inactive");
} }
} }
} }
UM.RecolorImage
{
visible: control.iconSource != ""
id: icon
color: UM.Theme.getColor("text_emphasis")
opacity: !control.enabled ? 0.2 : 1.0
source: control.iconSource
width: visible ? Theme.getSize("topbar_button_icon").width : 0
height: Theme.getSize("topbar_button_icon").height
sourceSize: Theme.getSize("topbar_button_icon")
}
UM.RecolorImage
{
id: overlayIcon
visible: control.overlayIconSource != "" && control.iconSource != ""
color: control.overlayColor
opacity: !control.enabled ? 0.2 : 1.0
source: control.overlayIconSource
width: visible ? Theme.getSize("topbar_button_icon").width : 0
height: Theme.getSize("topbar_button_icon").height
sourceSize: Theme.getSize("topbar_button_icon")
}
} }
} }
} }
@ -242,6 +309,8 @@ QtObject {
} }
Behavior on color { ColorAnimation { duration: 50; } } Behavior on color { ColorAnimation { duration: 50; } }
border.width: (control.hasOwnProperty("needBorder") && control.needBorder) ? 2 : 0
border.color: Theme.getColor("tool_button_border")
UM.RecolorImage { UM.RecolorImage {
id: tool_button_arrow id: tool_button_arrow
@ -612,24 +681,11 @@ QtObject {
} }
label: Item label: Item
{ {
Rectangle
{
id: swatch
height: UM.Theme.getSize("setting_control").height / 2
width: height
anchors.left: parent.left
anchors.leftMargin: UM.Theme.getSize("default_lining").width
anchors.verticalCenter: parent.verticalCenter
color: if (control.color_override != "") {return control.color_override} else {return control.color;}
border.width: UM.Theme.getSize("default_lining").width
border.color: !enabled ? UM.Theme.getColor("setting_control_disabled_border") : UM.Theme.getColor("setting_control_border")
}
Label Label
{ {
anchors.left: swatch.right anchors.left: parent.left
anchors.leftMargin: UM.Theme.getSize("default_lining").width anchors.leftMargin: UM.Theme.getSize("default_lining").width
anchors.right: downArrow.left anchors.right: swatch.left
anchors.rightMargin: UM.Theme.getSize("default_lining").width anchors.rightMargin: UM.Theme.getSize("default_lining").width
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -640,7 +696,25 @@ QtObject {
elide: Text.ElideRight elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
} }
Rectangle
{
id: swatch
height: UM.Theme.getSize("setting_control").height / 2
width: height
anchors
{
right: downArrow.left;
verticalCenter: parent.verticalCenter
margins: UM.Theme.getSize("default_margin").width / 4
}
border.width: UM.Theme.getSize("default_lining").width * 2
border.color: enabled ? UM.Theme.getColor("setting_control_border") : UM.Theme.getColor("setting_control_disabled_border")
radius: width / 2
color: if (control.color_override != "") {return control.color_override} else {return control.color;}
}
UM.RecolorImage UM.RecolorImage
{ {
id: downArrow id: downArrow

View File

@ -9,6 +9,10 @@
"bold": true, "bold": true,
"family": "Open Sans" "family": "Open Sans"
}, },
"large_nonbold": {
"size": 1.25,
"family": "Open Sans"
},
"default": { "default": {
"size": 1.15, "size": 1.15,
"family": "Open Sans" "family": "Open Sans"
@ -50,7 +54,7 @@
"colors": { "colors": {
"sidebar": [255, 255, 255, 255], "sidebar": [255, 255, 255, 255],
"lining": [127, 127, 127, 255], "lining": [192, 193, 194, 255],
"viewport_overlay": [24, 41, 77, 192], "viewport_overlay": [24, 41, 77, 192],
"primary": [12, 169, 227, 255], "primary": [12, 169, 227, 255],
@ -59,32 +63,36 @@
"border": [127, 127, 127, 255], "border": [127, 127, 127, 255],
"secondary": [245, 245, 245, 255], "secondary": [245, 245, 245, 255],
"text": [24, 41, 77, 255], "topbar_button_text_active": [0, 0, 0, 255],
"topbar_button_text_inactive": [128, 128, 128, 255],
"topbar_button_text_hovered": [0, 0, 0, 255],
"text": [0, 0, 0, 255],
"text_detail": [174, 174, 174, 128], "text_detail": [174, 174, 174, 128],
"text_link": [12, 169, 227, 255], "text_link": [12, 169, 227, 255],
"text_inactive": [174, 174, 174, 255], "text_inactive": [174, 174, 174, 255],
"text_hover": [70, 84, 113, 255], "text_hover": [70, 84, 113, 255],
"text_pressed": [12, 169, 227, 255], "text_pressed": [12, 169, 227, 255],
"text_subtext": [70, 84, 113, 255], "text_subtext": [0, 0, 0, 255],
"text_emphasis": [255, 255, 255, 255], "text_emphasis": [255, 255, 255, 255],
"text_scene": [24, 41, 77, 255], "text_scene": [24, 41, 77, 255],
"text_scene_hover": [70, 84, 113, 255], "text_scene_hover": [70, 84, 113, 255],
"error": [255, 140, 0, 255], "error": [255, 140, 0, 255],
"sidebar_header_bar": [24, 41, 77, 255], "sidebar_header_bar": [31, 36, 39, 255],
"sidebar_header_active": [70, 84, 113, 255], "sidebar_header_active": [68, 72, 75, 255],
"sidebar_header_hover": [24, 41, 77, 255], "sidebar_header_hover": [68, 72, 75, 255],
"sidebar_header_highlight": [12, 169, 227, 255], "sidebar_header_highlight": [68, 192, 255, 255],
"sidebar_header_highlight_hover": [255, 255, 255, 255], "sidebar_header_highlight_hover": [68, 192, 255, 255],
"sidebar_header_text_inactive": [255, 255, 255, 255], "sidebar_header_text_inactive": [255, 255, 255, 255],
"sidebar_header_text_active": [255, 255, 255, 255], "sidebar_header_text_active": [255, 255, 255, 255],
"sidebar_header_text_hover": [255, 255, 255, 255], "sidebar_header_text_hover": [255, 255, 255, 255],
"sidebar_lining": [245, 245, 245, 255], "sidebar_lining": [245, 245, 245, 255],
"button": [24, 41, 77, 255], "button": [31, 36, 39, 255],
"button_hover": [70, 84, 113, 255], "button_hover": [68, 72, 75, 255],
"button_active": [32, 166, 219, 255], "button_active": [68, 72, 75, 255],
"button_active_hover": [12, 169, 227, 255], "button_active_hover": [68, 72, 75, 255],
"button_text": [255, 255, 255, 255], "button_text": [255, 255, 255, 255],
"button_text_hover": [255, 255, 255, 255], "button_text_hover": [255, 255, 255, 255],
"button_text_active": [255, 255, 255, 255], "button_text_active": [255, 255, 255, 255],
@ -92,9 +100,14 @@
"button_disabled": [24, 41, 77, 255], "button_disabled": [24, 41, 77, 255],
"button_disabled_text": [255, 255, 255, 101], "button_disabled_text": [255, 255, 255, 101],
"button_tooltip": [12, 169, 227, 255], "button_tooltip": [31, 36, 39, 255],
"button_tooltip_border": [24, 41, 77, 255], "button_tooltip_border": [68, 192, 255, 255],
"button_tooltip_text": [24, 41, 77, 255], "button_tooltip_text": [192, 193, 194, 255],
"extruder_button_material_border": [255, 255, 255, 255],
"sync_button_text": [120, 120, 120, 255],
"sync_button_text_hovered": [0, 0, 0, 255],
"tab_checked": [255, 255, 255, 255], "tab_checked": [255, 255, 255, 255],
"tab_checked_border": [255, 255, 255, 255], "tab_checked_border": [255, 255, 255, 255],
@ -111,13 +124,13 @@
"tab_background": [245, 245, 245, 255], "tab_background": [245, 245, 245, 255],
"action_button": [255, 255, 255, 255], "action_button": [255, 255, 255, 255],
"action_button_text": [24, 41, 77, 255], "action_button_text": [0, 0, 0, 255],
"action_button_border": [127, 127, 127, 255], "action_button_border": [127, 127, 127, 255],
"action_button_hovered": [255, 255, 255, 255], "action_button_hovered": [255, 255, 255, 255],
"action_button_hovered_text": [24, 41, 77, 255], "action_button_hovered_text": [24, 41, 77, 255],
"action_button_hovered_border": [12, 169, 227, 255], "action_button_hovered_border": [12, 169, 227, 255],
"action_button_active": [12, 169, 227, 255], "action_button_active": [255, 255, 255, 255],
"action_button_active_text": [255, 255, 255, 255], "action_button_active_text": [0, 0, 0, 255],
"action_button_active_border": [12, 169, 227, 255], "action_button_active_border": [12, 169, 227, 255],
"action_button_disabled": [245, 245, 245, 255], "action_button_disabled": [245, 245, 245, 255],
"action_button_disabled_text": [127, 127, 127, 255], "action_button_disabled_text": [127, 127, 127, 255],
@ -149,7 +162,7 @@
"setting_control_highlight": [255, 255, 255, 0], "setting_control_highlight": [255, 255, 255, 0],
"setting_control_border": [127, 127, 127, 255], "setting_control_border": [127, 127, 127, 255],
"setting_control_border_highlight": [12, 169, 227, 255], "setting_control_border_highlight": [12, 169, 227, 255],
"setting_control_text": [24, 41, 77, 255], "setting_control_text": [127, 127, 127, 255],
"setting_control_depth_line": [127, 127, 127, 255], "setting_control_depth_line": [127, 127, 127, 255],
"setting_control_button": [127, 127, 127, 255], "setting_control_button": [127, 127, 127, 255],
"setting_control_button_hover": [70, 84, 113, 255], "setting_control_button_hover": [70, 84, 113, 255],
@ -157,12 +170,14 @@
"setting_control_disabled_text": [127, 127, 127, 255], "setting_control_disabled_text": [127, 127, 127, 255],
"setting_control_disabled_border": [127, 127, 127, 255], "setting_control_disabled_border": [127, 127, 127, 255],
"setting_unit": [127, 127, 127, 255], "setting_unit": [127, 127, 127, 255],
"setting_validation_error_background": [255, 57, 14, 255], "setting_validation_error_background": [255, 66, 60, 255],
"setting_validation_error": [127, 127, 127, 255], "setting_validation_error": [127, 127, 127, 255],
"setting_validation_warning_background": [255, 186, 15, 255], "setting_validation_warning_background": [255, 145, 62, 255],
"setting_validation_warning": [127, 127, 127, 255], "setting_validation_warning": [127, 127, 127, 255],
"setting_validation_ok": [255, 255, 255, 255], "setting_validation_ok": [255, 255, 255, 255],
"material_compatibility_warning": [0, 0, 0, 255],
"progressbar_background": [245, 245, 245, 255], "progressbar_background": [245, 245, 245, 255],
"progressbar_control": [24, 41, 77, 255], "progressbar_control": [24, 41, 77, 255],
@ -175,10 +190,10 @@
"checkbox": [255, 255, 255, 255], "checkbox": [255, 255, 255, 255],
"checkbox_hover": [255, 255, 255, 255], "checkbox_hover": [255, 255, 255, 255],
"checkbox_border": [127, 127, 127, 255], "checkbox_border": [64, 69, 72, 255],
"checkbox_border_hover": [12, 169, 227, 255], "checkbox_border_hover": [12, 169, 227, 255],
"checkbox_mark": [24, 41, 77, 255], "checkbox_mark": [119, 122, 124, 255],
"checkbox_text": [24, 41, 77, 255], "checkbox_text": [166, 168, 169, 255],
"mode_switch": [255, 255, 255, 255], "mode_switch": [255, 255, 255, 255],
"mode_switch_hover": [255, 255, 255, 255], "mode_switch_hover": [255, 255, 255, 255],
@ -189,9 +204,11 @@
"mode_switch_text_hover": [24, 41, 77, 255], "mode_switch_text_hover": [24, 41, 77, 255],
"mode_switch_text_checked": [12, 169, 227, 255], "mode_switch_text_checked": [12, 169, 227, 255],
"tooltip": [12, 169, 227, 255], "tooltip": [68, 192, 255, 255],
"tooltip_text": [255, 255, 255, 255], "tooltip_text": [255, 255, 255, 255],
"tool_button_border": [39, 44, 48, 255],
"message_background": [24, 41, 77, 255], "message_background": [24, 41, 77, 255],
"message_text": [255, 255, 255, 255], "message_text": [255, 255, 255, 255],
"message_border": [24, 41, 77, 255], "message_border": [24, 41, 77, 255],
@ -204,7 +221,7 @@
"message_progressbar_background": [255, 255, 255, 255], "message_progressbar_background": [255, 255, 255, 255],
"message_progressbar_control": [12, 169, 227, 255], "message_progressbar_control": [12, 169, 227, 255],
"tool_panel_background": [255, 255, 255, 255], "tool_panel_background": [31, 36, 39, 255],
"status_offline": [0, 0, 0, 255], "status_offline": [0, 0, 0, 255],
"status_ready": [0, 205, 0, 255], "status_ready": [0, 205, 0, 255],
@ -259,7 +276,10 @@
"default_margin": [1.0, 1.0], "default_margin": [1.0, 1.0],
"default_lining": [0.08, 0.08], "default_lining": [0.08, 0.08],
"default_arrow": [0.8, 0.8], "default_arrow": [0.8, 0.8],
"logo": [9.5, 2.0], "logo": [7.6, 1.6],
"extruder_button_material_margin": [0.50, 0.9],
"extruder_button_material": [0.75, 0.75],
"sidebar": [35.0, 10.0], "sidebar": [35.0, 10.0],
"sidebar_margin": [1.71, 1.43], "sidebar_margin": [1.71, 1.43],
@ -297,8 +317,9 @@
"button_icon": [2.5, 2.5], "button_icon": [2.5, 2.5],
"button_lining": [0, 0], "button_lining": [0, 0],
"topbar_button": [17, 4], "topbar_logo_right_margin": [3, 0],
"topbar_button_icon": [3.125, 2.5], "topbar_button": [8, 4],
"topbar_button_icon": [1.2, 1.2],
"button_tooltip": [1.0, 1.3], "button_tooltip": [1.0, 1.3],
"button_tooltip_arrow": [0.25, 0.25], "button_tooltip_arrow": [0.25, 0.25],
@ -332,6 +353,7 @@
"save_button_specs_icons": [1.4, 1.4], "save_button_specs_icons": [1.4, 1.4],
"modal_window_minimum": [60.0, 45], "modal_window_minimum": [60.0, 45],
"license_window_minimum": [45, 45],
"wizard_progress": [10.0, 0.0], "wizard_progress": [10.0, 0.0],
"message": [30.0, 5.0], "message": [30.0, 5.0],

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(15.5, 4)">
<circle fill="#0CA9E3" cx="9" cy="9" r="8.5" stroke="#272C30" />
<circle fill="#FFFFFF" cx="4" cy="9" r="1.75" />
<circle fill="#FFFFFF" cx="9" cy="9" r="1.75" />
<circle fill="#FFFFFF" cx="14" cy="9" r="1.75" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 440 B

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(15.5, 4)">
<circle fill="#10CB00" cx="9" cy="9" r="8.5" stroke="#272C30" />
<polyline fill="none" stroke="#FFFFFF" stroke-width="2" points="5.643,8.645 8.116,11.12 12.36,6.88" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 379 B

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(15.5, 4)">
<circle fill="#FF8C10" cx="9" cy="9" r="8.5" stroke="#272C30" />
<rect fill="#FFFFFF" x="6" y="6" width="2" height="6" />
<rect fill="#FFFFFF" x="10" y="6" width="2" height="6" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 399 B

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35px" height="28px" viewBox="0 0 35 28" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(15.5, 4)">
<circle fill="#D0021B" cx="9" cy="9" r="8.5" stroke="#272C30" />
<line x1="6" y1="6" x2="12" y2="12" stroke-width="2" stroke="#FFFFFF" />
<line x1="6" y1="12" x2="12" y2="6" stroke-width="2" stroke="#FFFFFF" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 430 B

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="35" height="28" viewBox="0 0 35 28" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(15.5, 4)">
<circle cx="9" cy="9" r="8.5" fill="#8B9595" stroke="#272C30" />
<path fill="#FFFFFF" d="M9.013 3.5C7.29 3.5 6.533 4.515 6.236 5.12 5.989 5.623 5.997 6.057 6.001 6.138L7.59 6.058 7.591 6.082C7.591 6.081 7.594 5.964 7.664 5.821 7.905 5.33 8.347 5.091 9.013 5.091 9.47 5.091 9.817 5.217 10.075 5.475 10.477 5.878 10.556 6.485 10.555 6.626 10.554 6.812 10.49 7.77 9.306 8.386 8.318 8.899 7.752 9.906 7.752 11.147L7.752 11.621 9.343 11.618 9.342 11.147C9.342 10.697 9.463 10.097 10.039 9.798 12.035 8.76 12.144 6.98 12.146 6.633 12.148 6.141 11.952 5.106 11.202 4.353 10.647 3.795 9.89 3.5 9.013 3.5Z"/>
<rect fill="#FFFFFF" x="7.818" y="13.136" width="1.591" height="1.25" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 874 B

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="82px" height="18px" viewBox="0 0 82 18" version="1.1" xmlns="http://www.w3.org/2000/svg">
<polygon fill="#20A6DB" points="82 10.3797468 77.8757345 10.3797468 75.7721519 12.4764557 75.7721519 16.6075949 79.9067798 16.6075949 82 14.5108861" />
<path fill="#FFFFFF" d="M0,9.32538529 C0,14.168804 3.22511,17.6455696 8.53908129,17.6455696 L16.6075949,17.6455696 L16.6075949,13.294146 L8.53908129,13.294146 C5.8534025,13.2832128 4.53351762,11.4792306 4.53351762,9.32538529 C4.53351762,7.17153994 5.8534025,5.40035747 8.53908129,5.37849102 L16.6075949,5.37849102 L16.6075949,1.03800064 L8.53908129,1.03800064 C3.21363275,1.02706742 0,4.47103333 0,9.32538529 Z" />
<path fill="#FFFFFF" d="M33.004725,9.78605176 C33.004725,12.2613239 31.20074,13.5835846 29.0468913,13.5835846 C26.8930426,13.5835846 25.1218573,12.2613239 25.1218573,9.78605176 L25.1218573,1.03797468 L20.7594937,1.03797468 L20.7594937,9.78605176 C20.7594937,14.6837056 24.203465,17.6455696 29.0468913,17.6455696 C33.8903176,17.6455696 37.3670886,14.6731275 37.3670886,9.78605176 L37.3670886,1.03797468 L33.004725,1.03797468 L33.004725,9.78605176 L33.004725,9.78605176 Z" />
<path fill="#FFFFFF" d="M62.1251127,1.03797468 C57.0530042,1.03797468 53.9746835,4.47968021 53.9746835,9.31992005 C53.9746835,14.1601599 57.0530042,17.6346436 62.1251127,17.6346436 L63.9217127,17.6346436 L63.9217127,13.297002 L62.1251127,13.297002 C59.5616713,13.2860759 58.3018603,11.4832778 58.3018603,9.3308461 C58.3018603,7.17841439 59.5616713,5.4083944 62.1251127,5.38654231 L66.2112822,5.38654231 L66.2112822,11.0680879 L66.2112822,13.297002 L66.2112822,17.6455696 L70.5822785,17.6455696 L70.5822785,17.3942705 L70.5822785,13.297002 L70.5822785,5.38654231 L70.5822785,1.80279813 L70.5822785,1.03797468 L62.1251127,1.03797468 Z" />
<path fill="#FFFFFF" d="M41.5189873,8.10074451 L41.5189873,16.6075949 L45.8823067,16.6075949 L45.8823067,8.10074451 C45.8823067,5.99540589 47.1558644,4.26411221 49.7472774,4.24273822 L52.9367089,4.24273822 L52.9367089,0 L49.7472774,0 C44.6198234,0 41.5189873,3.36640438 41.5189873,8.10074451 Z" />
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -243,7 +243,7 @@
"button_icon": [2.5, 2.5], "button_icon": [2.5, 2.5],
"button_lining": [0, 0], "button_lining": [0, 0],
"topbar_button": [17, 4], "topbar_button": [8, 4],
"button_tooltip": [1.0, 1.3], "button_tooltip": [1.0, 1.3],
"button_tooltip_arrow": [0.25, 0.25], "button_tooltip_arrow": [0.25, 0.25],
@ -278,7 +278,6 @@
"save_button_specs_icons": [1.4, 1.4], "save_button_specs_icons": [1.4, 1.4],
"modal_window_minimum": [60.0, 45], "modal_window_minimum": [60.0, 45],
"license_window_minimum": [45, 45],
"wizard_progress": [10.0, 0.0], "wizard_progress": [10.0, 0.0],
"message": [30.0, 5.0], "message": [30.0, 5.0],