From: daid Date: Wed, 12 Feb 2014 14:56:25 +0000 (+0100) Subject: Allow printer window selection from preferences. X-Git-Tag: 14.02-RC1~10 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=3d853d507445f9176158f0492bddac3513b3e3af;p=cura.git Allow printer window selection from preferences. --- diff --git a/Cura/gui/preferencesDialog.py b/Cura/gui/preferencesDialog.py index 0f8dd10f..633e387e 100644 --- a/Cura/gui/preferencesDialog.py +++ b/Cura/gui/preferencesDialog.py @@ -6,6 +6,7 @@ from Cura.gui import configWizard from Cura.gui import configBase from Cura.util import machineCom from Cura.util import profile +from Cura.util import plugin from Cura.util import resources class preferencesDialog(wx.Dialog): @@ -21,6 +22,12 @@ class preferencesDialog(wx.Dialog): left, right, main = self.panel.CreateConfigPanel(self) + printWindowTypes = ['Basic'] + for p in plugin.getPluginList('printwindow'): + printWindowTypes.append(p.getName()) + configBase.TitleRow(left, _("Print window")) + configBase.SettingRow(left, 'printing_window', printWindowTypes) + configBase.TitleRow(left, _("Colours")) configBase.SettingRow(left, 'model_colour', wx.Colour) for i in xrange(1, extruderCount): diff --git a/Cura/gui/sceneView.py b/Cura/gui/sceneView.py index ec88e4c3..c75d1187 100644 --- a/Cura/gui/sceneView.py +++ b/Cura/gui/sceneView.py @@ -21,6 +21,7 @@ from Cura.util import meshLoader from Cura.util import objectScene from Cura.util import resources from Cura.util import sliceEngine +from Cura.util import plugin from Cura.util import removableStorage from Cura.util import explorer from Cura.util.printerConnection import printerConnectionManager @@ -268,10 +269,15 @@ class SceneView(openglGui.glGuiPanel): menu.Destroy() def _openPrintWindowForConnection(self, connection): - print '_openPrintWindowForConnection', connection.getName() if connection.window is None or not connection.window: - #connection.window = printWindow2.printWindowPlugin(self, connection, "C:/Software/Cura/Cura/plugins/PronterfaceUI/script.py") - connection.window = printWindow2.printWindowBasic(self, connection) + connection.window = None + windowType = profile.getPreference('printing_window') + for p in plugin.getPluginList('printwindow'): + if p.getName() == windowType: + connection.window = printWindow2.printWindowPlugin(self, connection, p.getFullFilename()) + break + if connection.window is None: + connection.window = printWindow2.printWindowBasic(self, connection) connection.window.Show() connection.window.Raise() if not connection.loadGCodeData(StringIO.StringIO(self._engine.getResult().getGCode())): diff --git a/Cura/util/profile.py b/Cura/util/profile.py index b63a04eb..141737ce 100644 --- a/Cura/util/profile.py +++ b/Cura/util/profile.py @@ -358,6 +358,7 @@ setting('model_colour', '#FFC924', str, 'preference', 'hidden').setLabel(_('Mode setting('model_colour2', '#CB3030', str, 'preference', 'hidden').setLabel(_('Model colour (2)'), _('Display color for second extruder')) setting('model_colour3', '#DDD93C', str, 'preference', 'hidden').setLabel(_('Model colour (3)'), _('Display color for third extruder')) setting('model_colour4', '#4550D3', str, 'preference', 'hidden').setLabel(_('Model colour (4)'), _('Display color for forth extruder')) +setting('printing_window', 'Basic', ['Basic'], 'preference', 'hidden').setLabel('Printing window type') setting('window_maximized', 'True', bool, 'preference', 'hidden') setting('window_pos_x', '-1', float, 'preference', 'hidden') diff --git a/plugins/PronterfaceUI/script.py b/plugins/PronterfaceUI/script.py index 22270cfc..c950f0c5 100644 --- a/plugins/PronterfaceUI/script.py +++ b/plugins/PronterfaceUI/script.py @@ -1,6 +1,6 @@ #Name: Pronterface UI #Info: Pronterface like UI for Cura -#Depend: printWindow +#Depend: printwindow #Type: printwindow # Printer UI based on the Printrun interface by Kliment.