From: Steven Abadie Date: Mon, 27 Oct 2014 03:02:43 +0000 (-0600) Subject: Disabled View Mode button until model is loaded. X-Git-Tag: 14.09-1.18~88 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=b2bf7a87a0ec20a2286cc39e5300ef0df25ac8f7;p=cura.git Disabled View Mode button until model is loaded. The View Mode button is now disabled until a model is loaded. This fixes the error caused when the Layer view mode was selected with no model loaded. This commit also included turning re-disabling the print and vide mode buttons when all models are deleted from the scene. --- diff --git a/Cura/gui/sceneView.py b/Cura/gui/sceneView.py index 5296990c..8b304f71 100644 --- a/Cura/gui/sceneView.py +++ b/Cura/gui/sceneView.py @@ -102,7 +102,7 @@ class SceneView(openglGui.glGuiPanel): self.scaleUniform = openglGui.glCheckbox(self.scaleForm, True, (1,8), None) self.viewSelection = openglGui.glComboButton(self, _("View mode"), [7,19,11,15,23], [_("Normal"), _("Overhang"), _("Transparent"), _("X-Ray"), _("Layers")], (-1,0), self.OnViewChange) - + self.viewSelection.setDisabled(True) #self.youMagineButton = openglGui.glButton(self, 26, _("Share on YouMagine"), (2,0), lambda button: youmagineGui.youmagineManager(self.GetTopLevelParent(), self._scene)) #self.youMagineButton.setDisabled(True) @@ -129,6 +129,7 @@ class SceneView(openglGui.glGuiPanel): self._engine._result.setFinished(True) self._engineResultView.setResult(self._engine._result) self.printButton.setBottomText('') + self.viewSelection.setDisabled(False) self.viewSelection.setValue(4) self.printButton.setDisabled(False) #self.youMagineButton.setDisabled(True) @@ -482,6 +483,8 @@ class SceneView(openglGui.glGuiPanel): self._deleteObject(self._scene.objects()[0]) self._animView = openglGui.animation(self, self._viewTarget.copy(), numpy.array([0,0,0], numpy.float32), 0.5) self._engineResultView.setResult(None) + self.viewSelection.setDisabled(True) + self.printButton.setDisabled(True) def OnMultiply(self, e): if self._focusObj is None: @@ -561,6 +564,7 @@ class SceneView(openglGui.glGuiPanel): if self.printButton.getProgressBar() is not None and progressValue >= 0.0 and abs(self.printButton.getProgressBar() - progressValue) < 0.01: return self.printButton.setDisabled(not finished) + self.viewSelection.setDisabled(not finished) if progressValue >= 0.0: self.printButton.setProgressBar(progressValue) else: @@ -618,6 +622,9 @@ class SceneView(openglGui.glGuiPanel): self.glReleaseList.append(m.vbo) if len(self._scene.objects()) == 0: self._engineResultView.setResult(None) + self.printButton.setDisabled(True) + self.viewSelection.setDisabled(True) + self.printButton.setBottomText('') import gc gc.collect() self.sceneUpdated() diff --git a/Cura/gui/util/openglGui.py b/Cura/gui/util/openglGui.py index 4623fbe2..11e08a1c 100644 --- a/Cura/gui/util/openglGui.py +++ b/Cura/gui/util/openglGui.py @@ -576,6 +576,7 @@ class glComboButton(glButton): self._tooltips = tooltips self._comboCallback = callback self._selection = 0 + self._disabled = False def _onComboOpenSelect(self, button): if self.hasFocus(): @@ -628,6 +629,9 @@ class glComboButton(glButton): def getValue(self): return self._selection + def setDisabled(self, value): + self._disabled = value + def setValue(self, value): self._selection = value self._imageID = self._imageIDs[self._selection]