mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-10 16:27:51 -06:00
Only show legend in color: line_type
This commit is contained in:
parent
1d6ef4bc3c
commit
6c19bc1c16
3 changed files with 34 additions and 4 deletions
|
@ -36,6 +36,10 @@ import os.path
|
||||||
|
|
||||||
## View used to display g-code paths.
|
## View used to display g-code paths.
|
||||||
class LayerView(View):
|
class LayerView(View):
|
||||||
|
# Must match LayerView.qml
|
||||||
|
LAYER_VIEW_TYPE_MATERIAL_TYPE = 0
|
||||||
|
LAYER_VIEW_TYPE_LINE_TYPE = 1
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
|
@ -260,6 +264,12 @@ class LayerView(View):
|
||||||
def endRendering(self):
|
def endRendering(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def enableLegend(self):
|
||||||
|
Application.getInstance().setViewLegendItems(self._getLegendItems())
|
||||||
|
|
||||||
|
def disableLegend(self):
|
||||||
|
Application.getInstance().setViewLegendItems([])
|
||||||
|
|
||||||
def event(self, event):
|
def event(self, event):
|
||||||
modifiers = QApplication.keyboardModifiers()
|
modifiers = QApplication.keyboardModifiers()
|
||||||
ctrl_is_active = modifiers == Qt.ControlModifier
|
ctrl_is_active = modifiers == Qt.ControlModifier
|
||||||
|
@ -292,7 +302,8 @@ class LayerView(View):
|
||||||
self._old_composite_shader = self._composite_pass.getCompositeShader()
|
self._old_composite_shader = self._composite_pass.getCompositeShader()
|
||||||
self._composite_pass.setCompositeShader(self._layerview_composite_shader)
|
self._composite_pass.setCompositeShader(self._layerview_composite_shader)
|
||||||
|
|
||||||
Application.getInstance().setViewLegendItems(self._getLegendItems())
|
if self.getLayerViewType() == self.LAYER_VIEW_TYPE_LINE_TYPE:
|
||||||
|
self.enableLegend()
|
||||||
|
|
||||||
elif event.type == Event.ViewDeactivateEvent:
|
elif event.type == Event.ViewDeactivateEvent:
|
||||||
self._wireprint_warning_message.hide()
|
self._wireprint_warning_message.hide()
|
||||||
|
@ -303,7 +314,7 @@ class LayerView(View):
|
||||||
self._composite_pass.setLayerBindings(self._old_layer_bindings)
|
self._composite_pass.setLayerBindings(self._old_layer_bindings)
|
||||||
self._composite_pass.setCompositeShader(self._old_composite_shader)
|
self._composite_pass.setCompositeShader(self._old_composite_shader)
|
||||||
|
|
||||||
Application.getInstance().setViewLegendItems([])
|
self.disableLegend()
|
||||||
|
|
||||||
def _onGlobalStackChanged(self):
|
def _onGlobalStackChanged(self):
|
||||||
if self._global_container_stack:
|
if self._global_container_stack:
|
||||||
|
|
|
@ -158,7 +158,7 @@ Item
|
||||||
border.width: UM.Theme.getSize("default_lining").width
|
border.width: UM.Theme.getSize("default_lining").width
|
||||||
border.color: UM.Theme.getColor("lining")
|
border.color: UM.Theme.getColor("lining")
|
||||||
|
|
||||||
ListModel
|
ListModel // matches LayerView.py
|
||||||
{
|
{
|
||||||
id: layerViewTypes
|
id: layerViewTypes
|
||||||
ListElement {
|
ListElement {
|
||||||
|
@ -179,7 +179,14 @@ Item
|
||||||
model: layerViewTypes
|
model: layerViewTypes
|
||||||
visible: !UM.LayerView.compatibilityMode
|
visible: !UM.LayerView.compatibilityMode
|
||||||
onActivated: {
|
onActivated: {
|
||||||
UM.LayerView.setLayerViewType(layerViewTypes.get(index).type_id);
|
var type_id = layerViewTypes.get(index).type_id;
|
||||||
|
UM.LayerView.setLayerViewType(type_id);
|
||||||
|
if (type_id == 1) {
|
||||||
|
// Line type
|
||||||
|
UM.LayerView.enableLegend();
|
||||||
|
} else {
|
||||||
|
UM.LayerView.disableLegend();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -129,6 +129,18 @@ class LayerViewProxy(QObject):
|
||||||
return active_view.getExtruderCount()
|
return active_view.getExtruderCount()
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def enableLegend(self):
|
||||||
|
active_view = self._controller.getActiveView()
|
||||||
|
if type(active_view) == LayerView.LayerView.LayerView:
|
||||||
|
active_view.enableLegend()
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def disableLegend(self):
|
||||||
|
active_view = self._controller.getActiveView()
|
||||||
|
if type(active_view) == LayerView.LayerView.LayerView:
|
||||||
|
active_view.disableLegend()
|
||||||
|
|
||||||
def _layerActivityChanged(self):
|
def _layerActivityChanged(self):
|
||||||
self.activityChanged.emit()
|
self.activityChanged.emit()
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue