chiark / gitweb /
Allow printer window selection from preferences.
authordaid <daid303@gmail.com>
Wed, 12 Feb 2014 14:56:25 +0000 (15:56 +0100)
committerdaid <daid303@gmail.com>
Wed, 12 Feb 2014 14:56:25 +0000 (15:56 +0100)
Cura/gui/preferencesDialog.py
Cura/gui/sceneView.py
Cura/util/profile.py
plugins/PronterfaceUI/script.py

index 0f8dd10f98cc34866aa796ca69b3d7fc9f1365ac..633e387e7ed2e59d9213a9add94acd24e3274bfa 100644 (file)
@@ -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):
index ec88e4c30ce28deac890677d777619de91f346e5..c75d1187d2418b6442673866c783543bf6bb86ac 100644 (file)
@@ -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())):
index b63a04eba3efab4542b8954ed626cd163471259f..141737ce28091370c6ce1c968d84813c27d36c82 100644 (file)
@@ -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')
index 22270cfc9ee1b95c447accc6a0f6f11f09216123..c950f0c581705b5a64f8ec7765b59f43ba631020 100644 (file)
@@ -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.