chiark / gitweb /
Simplify the printer interface.
authordaid <daid303@gmail.com>
Tue, 3 Apr 2012 15:01:51 +0000 (17:01 +0200)
committerdaid <daid303@gmail.com>
Tue, 3 Apr 2012 15:01:51 +0000 (17:01 +0200)
Cura/gui/machineCom.py
Cura/gui/printWindow.py

index 2ba186aeb61812355e19de43f7cdfddd596e74c5..7c1de22f02e37ff3f3758ed90fb47227348e87de 100644 (file)
@@ -110,7 +110,6 @@ class VirtualPrinter():
        def write(self, data):
                if self.readList == None:
                        return
-               time.sleep(0.001)
                print "Send: %s" % (data.rstrip())
                self.readList.append("ok\n")
 
@@ -121,6 +120,7 @@ class VirtualPrinter():
                        time.sleep(0.1)
                        if self.readList == None:
                                return ''
+               time.sleep(0.001)
                print "Recv: %s" % (self.readList[0].rstrip())
                return self.readList.pop(0)
        
index ea86a6c9df04381ce87845d2646375a6ad644e5e..8607f68ccbe29b51511d142924c52b3bacd0b245 100644 (file)
@@ -13,6 +13,7 @@ def printFile(filename):
        global printWindowHandle\r
        if printWindowHandle == None:\r
                printWindowHandle = printWindow()\r
+               printWindowHandle.OnConnect(None)\r
        printWindowHandle.Show(True)\r
        printWindowHandle.Raise()\r
        printWindowHandle.LoadGCodeFile(filename)\r
@@ -45,13 +46,13 @@ class printWindow(wx.Frame):
                \r
                self.sizer.Add(boxsizer, pos=(0,0), span=(4,1), flag=wx.EXPAND)\r
                \r
-               self.connectButton = wx.Button(self.panel, -1, 'Connect')\r
-               self.loadButton = wx.Button(self.panel, -1, 'Load GCode')\r
+               #self.connectButton = wx.Button(self.panel, -1, 'Connect')\r
+               #self.loadButton = wx.Button(self.panel, -1, 'Load GCode')\r
                self.printButton = wx.Button(self.panel, -1, 'Print GCode')\r
                self.cancelButton = wx.Button(self.panel, -1, 'Cancel print')\r
                self.progress = wx.Gauge(self.panel, -1)\r
-               self.sizer.Add(self.connectButton, pos=(0,1))\r
-               self.sizer.Add(self.loadButton, pos=(1,1))\r
+               #self.sizer.Add(self.connectButton, pos=(0,1))\r
+               #self.sizer.Add(self.loadButton, pos=(1,1))\r
                self.sizer.Add(self.printButton, pos=(2,1))\r
                self.sizer.Add(self.cancelButton, pos=(3,1))\r
                self.sizer.Add(self.progress, pos=(4,0), span=(1,2), flag=wx.EXPAND)\r
@@ -59,8 +60,8 @@ class printWindow(wx.Frame):
                self.sizer.AddGrowableCol(0)\r
                \r
                self.Bind(wx.EVT_CLOSE, self.OnClose)\r
-               self.connectButton.Bind(wx.EVT_BUTTON, self.OnConnect)\r
-               self.loadButton.Bind(wx.EVT_BUTTON, self.OnLoad)\r
+               #self.connectButton.Bind(wx.EVT_BUTTON, self.OnConnect)\r
+               #self.loadButton.Bind(wx.EVT_BUTTON, self.OnLoad)\r
                self.printButton.Bind(wx.EVT_BUTTON, self.OnPrint)\r
                self.cancelButton.Bind(wx.EVT_BUTTON, self.OnCancel)\r
                \r
@@ -72,8 +73,8 @@ class printWindow(wx.Frame):
                self.UpdateProgress()\r
        \r
        def UpdateButtonStates(self):\r
-               self.connectButton.Enable(not self.machineConnected)\r
-               self.loadButton.Enable(self.printIdx == None)\r
+               #self.connectButton.Enable(not self.machineConnected)\r
+               #self.loadButton.Enable(self.printIdx == None)\r
                self.printButton.Enable(self.machineConnected and self.gcodeList != None and self.printIdx == None)\r
                self.cancelButton.Enable(self.printIdx != None)\r
        \r
@@ -128,6 +129,8 @@ class printWindow(wx.Frame):
                self.Destroy()\r
 \r
        def LoadGCodeFile(self, filename):\r
+               if self.printIdx != None:\r
+                       return\r
                gcodeList = ["M110"]\r
                for line in open(filename, 'r'):\r
                        if ';' in line:\r
@@ -174,6 +177,9 @@ class printWindow(wx.Frame):
                                        else:\r
                                                if self.sendLine(self.printIdx):\r
                                                        self.printIdx += 1\r
+                                               else:\r
+                                                       self.printIdx = None\r
+                                                       wx.CallAfter(self.UpdateButtonStates)\r
                                                wx.CallAfter(self.UpdateProgress)\r
                                elif "resend" in line.lower() or "rs" in line:\r
                                        try:\r