mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-10 08:17:49 -06:00
Add optional empty placeholder for CuraView
CURA-6469
This commit is contained in:
parent
3bec7cdf8b
commit
1b9bf6f0b9
3 changed files with 24 additions and 5 deletions
|
@ -3,8 +3,11 @@
|
||||||
|
|
||||||
from PyQt5.QtCore import pyqtProperty, QUrl
|
from PyQt5.QtCore import pyqtProperty, QUrl
|
||||||
|
|
||||||
|
from UM.Resources import Resources
|
||||||
from UM.View.View import View
|
from UM.View.View import View
|
||||||
|
|
||||||
|
from cura.CuraApplication import CuraApplication
|
||||||
|
|
||||||
|
|
||||||
# Since Cura has a few pre-defined "space claims" for the locations of certain components, we've provided some structure
|
# Since Cura has a few pre-defined "space claims" for the locations of certain components, we've provided some structure
|
||||||
# to indicate this.
|
# to indicate this.
|
||||||
|
@ -12,13 +15,20 @@ from UM.View.View import View
|
||||||
# the stageMenuComponent returns an item that should be used somehwere in the stage menu. It's up to the active stage
|
# the stageMenuComponent returns an item that should be used somehwere in the stage menu. It's up to the active stage
|
||||||
# to actually do something with this.
|
# to actually do something with this.
|
||||||
class CuraView(View):
|
class CuraView(View):
|
||||||
def __init__(self, parent = None) -> None:
|
def __init__(self, parent = None, use_empty_menu_placeholder: bool = False) -> None:
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
|
|
||||||
|
self._empty_menu_placeholder_url = QUrl(Resources.getPath(CuraApplication.ResourceTypes.QmlFiles,
|
||||||
|
"EmptyViewMenuComponent.qml"))
|
||||||
|
self._use_empty_menu_placeholder = use_empty_menu_placeholder
|
||||||
|
|
||||||
@pyqtProperty(QUrl, constant = True)
|
@pyqtProperty(QUrl, constant = True)
|
||||||
def mainComponent(self) -> QUrl:
|
def mainComponent(self) -> QUrl:
|
||||||
return self.getDisplayComponent("main")
|
return self.getDisplayComponent("main")
|
||||||
|
|
||||||
@pyqtProperty(QUrl, constant = True)
|
@pyqtProperty(QUrl, constant = True)
|
||||||
def stageMenuComponent(self) -> QUrl:
|
def stageMenuComponent(self) -> QUrl:
|
||||||
return self.getDisplayComponent("menu")
|
url = self.getDisplayComponent("menu")
|
||||||
|
if not url.toString() and self._use_empty_menu_placeholder:
|
||||||
|
url = self._empty_menu_placeholder_url
|
||||||
|
return url
|
||||||
|
|
|
@ -10,21 +10,21 @@ from UM.Math.Color import Color
|
||||||
from UM.PluginRegistry import PluginRegistry
|
from UM.PluginRegistry import PluginRegistry
|
||||||
from UM.Platform import Platform
|
from UM.Platform import Platform
|
||||||
from UM.Event import Event
|
from UM.Event import Event
|
||||||
from UM.View.View import View
|
|
||||||
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
|
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
|
||||||
|
|
||||||
from UM.View.RenderBatch import RenderBatch
|
from UM.View.RenderBatch import RenderBatch
|
||||||
from UM.View.GL.OpenGL import OpenGL
|
from UM.View.GL.OpenGL import OpenGL
|
||||||
|
|
||||||
from cura.CuraApplication import CuraApplication
|
from cura.CuraApplication import CuraApplication
|
||||||
|
from cura.CuraView import CuraView
|
||||||
from cura.Scene.ConvexHullNode import ConvexHullNode
|
from cura.Scene.ConvexHullNode import ConvexHullNode
|
||||||
|
|
||||||
from . import XRayPass
|
from . import XRayPass
|
||||||
|
|
||||||
## View used to display a see-through version of objects with errors highlighted.
|
## View used to display a see-through version of objects with errors highlighted.
|
||||||
class XRayView(View):
|
class XRayView(CuraView):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__()
|
super().__init__(parent = None, use_empty_menu_placeholder = True)
|
||||||
|
|
||||||
self._xray_shader = None
|
self._xray_shader = None
|
||||||
self._xray_pass = None
|
self._xray_pass = None
|
||||||
|
|
9
resources/qml/EmptyViewMenuComponent.qml
Normal file
9
resources/qml/EmptyViewMenuComponent.qml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
// Copyright (c) 2019 Ultimaker B.V.
|
||||||
|
// Cura is released under the terms of the LGPLv3 or higher.
|
||||||
|
|
||||||
|
import QtQuick 2.10
|
||||||
|
import QtQuick.Controls 2.3
|
||||||
|
|
||||||
|
|
||||||
|
// Empty placeholder
|
||||||
|
Item { }
|
Loading…
Add table
Add a link
Reference in a new issue