From 22b70e1a345361674c9fb34fa97c62d807606062 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Tue, 19 Feb 2019 17:06:48 +0100 Subject: Ignore sceneChange signals if the camera triggered them in some places These places weren't interested in all changes. They can probably be more strict, but the camera is a really safe bet (and already greatly decreases the number of updates, especially when just moving the camera) --- plugins/ModelChecker/ModelChecker.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'plugins/ModelChecker') diff --git a/plugins/ModelChecker/ModelChecker.py b/plugins/ModelChecker/ModelChecker.py index d2c2eefac2..1913f39d96 100644 --- a/plugins/ModelChecker/ModelChecker.py +++ b/plugins/ModelChecker/ModelChecker.py @@ -9,6 +9,7 @@ from UM.Application import Application from UM.Extension import Extension from UM.Logger import Logger from UM.Message import Message +from UM.Scene.Camera import Camera from UM.i18n import i18nCatalog from UM.PluginRegistry import PluginRegistry from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator @@ -35,7 +36,12 @@ class ModelChecker(QObject, Extension): ## Pass-through to allow UM.Signal to connect with a pyqtSignal. def _onChanged(self, *args, **kwargs): - self.onChanged.emit() + # Ignore camera updates. + if len(args) == 0: + self.onChanged.emit() + return + if not isinstance(args[0], Camera): + self.onChanged.emit() ## Called when plug-ins are initialized. # -- cgit v1.2.3