Coding style cleanup, pronterface.py, first 25%
parent
97e2b704dd
commit
a052f0fb33
249
pronterface.py
249
pronterface.py
|
@ -204,16 +204,15 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
if self.filename:
|
||||
wx.CallAfter(self.printbtn.Enable)
|
||||
|
||||
|
||||
def sentcb(self,line):
|
||||
if("G1" in line):
|
||||
if("Z" in line):
|
||||
def sentcb(self, line):
|
||||
if "G1" in line:
|
||||
if "Z" in line:
|
||||
try:
|
||||
layer=float(line.split("Z")[1].split()[0])
|
||||
if(layer!=self.curlayer):
|
||||
self.curlayer=layer
|
||||
self.gviz.hilight=[]
|
||||
threading.Thread(target=wx.CallAfter,args=(self.gviz.setlayer,layer)).start()
|
||||
layer = float(line.split("Z")[1].split()[0])
|
||||
if layer != self.curlayer:
|
||||
self.curlayer = layer
|
||||
self.gviz.hilight = []
|
||||
threading.Thread(target = wx.CallAfter, args = (self.gviz.setlayer, layer)).start()
|
||||
except:
|
||||
pass
|
||||
try:
|
||||
|
@ -222,24 +221,24 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
pass
|
||||
#threading.Thread(target=self.gviz.addgcode,args=(line,1)).start()
|
||||
#self.gwindow.p.addgcode(line,hilight=1)
|
||||
if("M104" in line or "M109" in line):
|
||||
if("S" in line):
|
||||
if "M104" in line or "M109" in line:
|
||||
if "S" in line:
|
||||
try:
|
||||
temp=float(line.split("S")[1].split("*")[0])
|
||||
temp = float(line.split("S")[1].split("*")[0])
|
||||
#self.hottgauge.SetTarget(temp)
|
||||
wx.CallAfter(self.graph.SetExtruder0TargetTemperature,temp)
|
||||
wx.CallAfter(self.graph.SetExtruder0TargetTemperature, temp)
|
||||
except:
|
||||
pass
|
||||
try:
|
||||
self.sentlines.put_nowait(line)
|
||||
except:
|
||||
pass
|
||||
if("M140" in line):
|
||||
if("S" in line):
|
||||
if "M140" in line:
|
||||
if "S" in line:
|
||||
try:
|
||||
temp=float(line.split("S")[1].split("*")[0])
|
||||
temp = float(line.split("S")[1].split("*")[0])
|
||||
#self.bedtgauge.SetTarget(temp)
|
||||
wx.CallAfter(self.graph.SetBedTargetTemperature,temp)
|
||||
wx.CallAfter(self.graph.SetBedTargetTemperature, temp)
|
||||
except:
|
||||
pass
|
||||
try:
|
||||
|
@ -247,71 +246,71 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
except:
|
||||
pass
|
||||
|
||||
def do_extrude(self,l=""):
|
||||
def do_extrude(self, l = ""):
|
||||
try:
|
||||
if not (l.__class__=="".__class__ or l.__class__==u"".__class__) or (not len(l)):
|
||||
l=str(self.edist.GetValue())
|
||||
pronsole.pronsole.do_extrude(self,l)
|
||||
if not l.__class__ in (str, unicode) or not len(l):
|
||||
l = str(self.edist.GetValue())
|
||||
pronsole.pronsole.do_extrude(self, l)
|
||||
except:
|
||||
raise
|
||||
|
||||
def do_reverse(self,l=""):
|
||||
def do_reverse(self, l = ""):
|
||||
try:
|
||||
if not (l.__class__=="".__class__ or l.__class__==u"".__class__) or (not len(l)):
|
||||
l=str(float(self.edist.GetValue())*-1.0)
|
||||
if not l.__class__ in (str, unicode) or not len(l):
|
||||
l = str(- float(self.edist.GetValue()))
|
||||
pronsole.pronsole.do_extrude(self,l)
|
||||
except:
|
||||
pass
|
||||
|
||||
def setbedgui(self,f):
|
||||
self.bsetpoint=f
|
||||
def setbedgui(self, f):
|
||||
self.bsetpoint = f
|
||||
#self.bedtgauge.SetTarget(int(f))
|
||||
wx.CallAfter(self.graph.SetBedTargetTemperature,int(f))
|
||||
wx.CallAfter(self.graph.SetBedTargetTemperature, int(f))
|
||||
if f>0:
|
||||
wx.CallAfter(self.btemp.SetValue,str(f))
|
||||
self.set("last_bed_temperature",str(f))
|
||||
wx.CallAfter(self.setboff.SetBackgroundColour,"")
|
||||
wx.CallAfter(self.setboff.SetForegroundColour,"")
|
||||
wx.CallAfter(self.setbbtn.SetBackgroundColour,"#FFAA66")
|
||||
wx.CallAfter(self.setbbtn.SetForegroundColour,"#660000")
|
||||
wx.CallAfter(self.btemp.SetBackgroundColour,"#FFDABB")
|
||||
wx.CallAfter(self.btemp.SetValue, str(f))
|
||||
self.set("last_bed_temperature", str(f))
|
||||
wx.CallAfter(self.setboff.SetBackgroundColour, "")
|
||||
wx.CallAfter(self.setboff.SetForegroundColour, "")
|
||||
wx.CallAfter(self.setbbtn.SetBackgroundColour, "#FFAA66")
|
||||
wx.CallAfter(self.setbbtn.SetForegroundColour, "#660000")
|
||||
wx.CallAfter(self.btemp.SetBackgroundColour, "#FFDABB")
|
||||
else:
|
||||
wx.CallAfter(self.setboff.SetBackgroundColour,"#0044CC")
|
||||
wx.CallAfter(self.setboff.SetForegroundColour,"white")
|
||||
wx.CallAfter(self.setbbtn.SetBackgroundColour,"")
|
||||
wx.CallAfter(self.setbbtn.SetForegroundColour,"")
|
||||
wx.CallAfter(self.btemp.SetBackgroundColour,"white")
|
||||
wx.CallAfter(self.setboff.SetBackgroundColour, "#0044CC")
|
||||
wx.CallAfter(self.setboff.SetForegroundColour, "white")
|
||||
wx.CallAfter(self.setbbtn.SetBackgroundColour, "")
|
||||
wx.CallAfter(self.setbbtn.SetForegroundColour, "")
|
||||
wx.CallAfter(self.btemp.SetBackgroundColour, "white")
|
||||
wx.CallAfter(self.btemp.Refresh)
|
||||
|
||||
def sethotendgui(self,f):
|
||||
self.hsetpoint=f
|
||||
def sethotendgui(self, f):
|
||||
self.hsetpoint = f
|
||||
#self.hottgauge.SetTarget(int(f))
|
||||
wx.CallAfter(self.graph.SetExtruder0TargetTemperature,int(f))
|
||||
if f>0:
|
||||
wx.CallAfter(self.htemp.SetValue,str(f))
|
||||
self.set("last_temperature",str(f))
|
||||
wx.CallAfter(self.settoff.SetBackgroundColour,"")
|
||||
wx.CallAfter(self.settoff.SetForegroundColour,"")
|
||||
wx.CallAfter(self.settbtn.SetBackgroundColour,"#FFAA66")
|
||||
wx.CallAfter(self.settbtn.SetForegroundColour,"#660000")
|
||||
wx.CallAfter(self.htemp.SetBackgroundColour,"#FFDABB")
|
||||
wx.CallAfter(self.graph.SetExtruder0TargetTemperature, int(f))
|
||||
if f > 0:
|
||||
wx.CallAfter(self.htemp.SetValue, str(f))
|
||||
self.set("last_temperature", str(f))
|
||||
wx.CallAfter(self.settoff.SetBackgroundColour, "")
|
||||
wx.CallAfter(self.settoff.SetForegroundColour, "")
|
||||
wx.CallAfter(self.settbtn.SetBackgroundColour, "#FFAA66")
|
||||
wx.CallAfter(self.settbtn.SetForegroundColour, "#660000")
|
||||
wx.CallAfter(self.htemp.SetBackgroundColour, "#FFDABB")
|
||||
else:
|
||||
wx.CallAfter(self.settoff.SetBackgroundColour,"#0044CC")
|
||||
wx.CallAfter(self.settoff.SetForegroundColour,"white")
|
||||
wx.CallAfter(self.settbtn.SetBackgroundColour,"")
|
||||
wx.CallAfter(self.settbtn.SetForegroundColour,"")
|
||||
wx.CallAfter(self.htemp.SetBackgroundColour,"white")
|
||||
wx.CallAfter(self.settoff.SetBackgroundColour, "#0044CC")
|
||||
wx.CallAfter(self.settoff.SetForegroundColour, "white")
|
||||
wx.CallAfter(self.settbtn.SetBackgroundColour, "")
|
||||
wx.CallAfter(self.settbtn.SetForegroundColour, "")
|
||||
wx.CallAfter(self.htemp.SetBackgroundColour, "white")
|
||||
wx.CallAfter(self.htemp.Refresh)
|
||||
|
||||
def do_settemp(self,l=""):
|
||||
def do_settemp(self, l = ""):
|
||||
try:
|
||||
if not (l.__class__=="".__class__ or l.__class__==u"".__class__) or not l:
|
||||
l=str(self.htemp.GetValue().split()[0])
|
||||
l=l.lower().replace(",",".")
|
||||
if not l.__class__ in (str, unicode) or not len(l):
|
||||
l = str(self.htemp.GetValue().split()[0])
|
||||
l = l.lower().replace(",", ".")
|
||||
for i in self.temps.keys():
|
||||
l=l.replace(i,self.temps[i])
|
||||
f=float(l)
|
||||
if f>=0:
|
||||
l = l.replace(i, self.temps[i])
|
||||
f = float(l)
|
||||
if f >= 0:
|
||||
if self.p.online:
|
||||
self.p.send_now("M104 S"+l)
|
||||
print _("Setting hotend temperature to %f degrees Celsius.") % f
|
||||
|
@ -320,20 +319,20 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
print _("Printer is not online.")
|
||||
else:
|
||||
print _("You cannot set negative temperatures. To turn the hotend off entirely, set its temperature to 0.")
|
||||
except Exception,x:
|
||||
except Exception, x:
|
||||
print _("You must enter a temperature. (%s)" % (repr(x),))
|
||||
if self.webInterface:
|
||||
self.webInterface.AddLog("You must enter a temperature. (%s)" % (repr(x),))
|
||||
|
||||
def do_bedtemp(self,l=""):
|
||||
def do_bedtemp(self, l = ""):
|
||||
try:
|
||||
if not (l.__class__=="".__class__ or l.__class__==u"".__class__) or (not len(l)):
|
||||
l=str(self.btemp.GetValue().split()[0])
|
||||
l=l.lower().replace(",",".")
|
||||
if not l.__class__ in (str, unicode) or not len(l):
|
||||
l = str(self.btemp.GetValue().split()[0])
|
||||
l = l.lower().replace(",", ".")
|
||||
for i in self.bedtemps.keys():
|
||||
l=l.replace(i,self.bedtemps[i])
|
||||
f=float(l)
|
||||
if f>=0:
|
||||
l = l.replace(i, self.bedtemps[i])
|
||||
f = float(l)
|
||||
if f >= 0:
|
||||
if self.p.online:
|
||||
self.p.send_now("M140 S"+l)
|
||||
print _("Setting bed temperature to %f degrees Celsius.") % f
|
||||
|
@ -355,17 +354,17 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
pronsole.pronsole.end_macro(self)
|
||||
self.update_macros_menu()
|
||||
|
||||
def delete_macro(self,macro_name):
|
||||
pronsole.pronsole.delete_macro(self,macro_name)
|
||||
def delete_macro(self, macro_name):
|
||||
pronsole.pronsole.delete_macro(self, macro_name)
|
||||
self.update_macros_menu()
|
||||
|
||||
def start_macro(self,macro_name,old_macro_definition=""):
|
||||
def start_macro(self, macro_name, old_macro_definition=""):
|
||||
if not self.processing_rc:
|
||||
def cb(definition):
|
||||
if len(definition.strip())==0:
|
||||
if old_macro_definition!="":
|
||||
dialog = wx.MessageDialog(self,_("Do you want to erase the macro?"),style=wx.YES_NO|wx.YES_DEFAULT|wx.ICON_QUESTION)
|
||||
if dialog.ShowModal()==wx.ID_YES:
|
||||
if len(definition.strip()) == 0:
|
||||
if old_macro_definition != "":
|
||||
dialog = wx.MessageDialog(self, _("Do you want to erase the macro?"), style = wx.YES_NO|wx.YES_DEFAULT|wx.ICON_QUESTION)
|
||||
if dialog.ShowModal() == wx.ID_YES:
|
||||
self.delete_macro(macro_name)
|
||||
return
|
||||
print _("Cancelled.")
|
||||
|
@ -375,11 +374,11 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
self.cur_macro_name = macro_name
|
||||
self.cur_macro_def = definition
|
||||
self.end_macro()
|
||||
macroed(macro_name,old_macro_definition,cb)
|
||||
macroed(macro_name, old_macro_definition, cb)
|
||||
else:
|
||||
pronsole.pronsole.start_macro(self,macro_name,old_macro_definition)
|
||||
pronsole.pronsole.start_macro(self, macro_name, old_macro_definition)
|
||||
|
||||
def catchprint(self,l):
|
||||
def catchprint(self, l):
|
||||
if self.capture_skip_newline and len(l) and not len(l.strip("\n\r")):
|
||||
self.capture_skip_newline = False
|
||||
return
|
||||
|
@ -388,28 +387,28 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
self.capture_skip[pat] -= 1
|
||||
self.capture_skip_newline = True
|
||||
return
|
||||
wx.CallAfter(self.logbox.AppendText,l)
|
||||
wx.CallAfter(self.logbox.AppendText, l)
|
||||
if self.webInterface:
|
||||
self.webInterface.AppendLog(l)
|
||||
|
||||
def scanserial(self):
|
||||
"""scan for available ports. return a list of device names."""
|
||||
baselist=[]
|
||||
if os.name=="nt":
|
||||
baselist = []
|
||||
if os.name == "nt":
|
||||
try:
|
||||
key=_winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,"HARDWARE\\DEVICEMAP\\SERIALCOMM")
|
||||
i=0
|
||||
while(1):
|
||||
baselist+=[_winreg.EnumValue(key,i)[1]]
|
||||
i+=1
|
||||
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,"HARDWARE\\DEVICEMAP\\SERIALCOMM")
|
||||
i = 0
|
||||
while True:
|
||||
baselist += [_winreg.EnumValue(key, i)[1]]
|
||||
i += 1
|
||||
except:
|
||||
pass
|
||||
return baselist+glob.glob('/dev/ttyUSB*') + glob.glob('/dev/ttyACM*') +glob.glob("/dev/tty.*")+glob.glob("/dev/cu.*")+glob.glob("/dev/rfcomm*")
|
||||
return baselist+glob.glob('/dev/ttyUSB*') + glob.glob('/dev/ttyACM*') + glob.glob("/dev/tty.*") + glob.glob("/dev/cu.*") + glob.glob("/dev/rfcomm*")
|
||||
|
||||
def project(self,event):
|
||||
def project(self, event):
|
||||
import projectlayer
|
||||
if(self.p.online):
|
||||
projectlayer.setframe(self,self.p).Show()
|
||||
if self.p.online:
|
||||
projectlayer.setframe(self, self.p).Show()
|
||||
else:
|
||||
print _("Printer is not online.")
|
||||
if self.webInterface:
|
||||
|
@ -419,61 +418,61 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
self.menustrip = wx.MenuBar()
|
||||
# File menu
|
||||
m = wx.Menu()
|
||||
self.Bind(wx.EVT_MENU, self.loadfile, m.Append(-1,_("&Open..."),_(" Opens file")))
|
||||
self.Bind(wx.EVT_MENU, self.do_editgcode, m.Append(-1,_("&Edit..."),_(" Edit open file")))
|
||||
self.Bind(wx.EVT_MENU, self.clearOutput, m.Append(-1,_("Clear console"),_(" Clear output console")))
|
||||
self.Bind(wx.EVT_MENU, self.project, m.Append(-1,_("Projector"),_(" Project slices")))
|
||||
self.Bind(wx.EVT_MENU, self.OnExit, m.Append(wx.ID_EXIT,_("E&xit"),_(" Closes the Window")))
|
||||
self.menustrip.Append(m,_("&File"))
|
||||
self.Bind(wx.EVT_MENU, self.loadfile, m.Append(-1, _("&Open..."), _(" Opens file")))
|
||||
self.Bind(wx.EVT_MENU, self.do_editgcode, m.Append(-1, _("&Edit..."), _(" Edit open file")))
|
||||
self.Bind(wx.EVT_MENU, self.clearOutput, m.Append(-1, _("Clear console"), _(" Clear output console")))
|
||||
self.Bind(wx.EVT_MENU, self.project, m.Append(-1, _("Projector"), _(" Project slices")))
|
||||
self.Bind(wx.EVT_MENU, self.OnExit, m.Append(wx.ID_EXIT, _("E&xit"), _(" Closes the Window")))
|
||||
self.menustrip.Append(m, _("&File"))
|
||||
|
||||
# Settings menu
|
||||
m = wx.Menu()
|
||||
self.macros_menu = wx.Menu()
|
||||
m.AppendSubMenu(self.macros_menu, _("&Macros"))
|
||||
self.Bind(wx.EVT_MENU, self.new_macro, self.macros_menu.Append(-1, _("<&New...>")))
|
||||
self.Bind(wx.EVT_MENU, lambda *e:options(self), m.Append(-1,_("&Options"),_(" Options dialog")))
|
||||
self.Bind(wx.EVT_MENU, lambda *e:options(self), m.Append(-1, _("&Options"),_(" Options dialog")))
|
||||
|
||||
self.Bind(wx.EVT_MENU, lambda x:threading.Thread(target=lambda :self.do_skein("set")).start(), m.Append(-1,_("Slicing Settings"),_(" Adjust slicing settings")))
|
||||
self.Bind(wx.EVT_MENU, lambda x: threading.Thread(target = lambda:self.do_skein("set")).start(), m.Append(-1, _("Slicing Settings"), _(" Adjust slicing settings")))
|
||||
|
||||
self.menustrip.Append(m,_("&Settings"))
|
||||
self.menustrip.Append(m, _("&Settings"))
|
||||
self.update_macros_menu()
|
||||
self.SetMenuBar(self.menustrip)
|
||||
|
||||
def doneediting(self,gcode):
|
||||
f=open(self.filename,"w")
|
||||
def doneediting(self, gcode):
|
||||
f = open(self.filename, "w")
|
||||
f.write("\n".join(gcode))
|
||||
f.close()
|
||||
wx.CallAfter(self.loadfile,None,self.filename)
|
||||
wx.CallAfter(self.loadfile, None, self.filename)
|
||||
|
||||
def do_editgcode(self,e=None):
|
||||
if(self.filename is not None):
|
||||
macroed(self.filename,self.f,self.doneediting,1)
|
||||
def do_editgcode(self, e = None):
|
||||
if self.filename is not None:
|
||||
macroed(self.filename, self.f, self.doneediting, 1)
|
||||
|
||||
def new_macro(self,e=None):
|
||||
dialog = wx.Dialog(self,-1,_("Enter macro name"),size=(260,85))
|
||||
panel = wx.Panel(dialog,-1)
|
||||
def new_macro(self, e = None):
|
||||
dialog = wx.Dialog(self, -1, _("Enter macro name"), size = (260, 85))
|
||||
panel = wx.Panel(dialog, -1)
|
||||
vbox = wx.BoxSizer(wx.VERTICAL)
|
||||
wx.StaticText(panel,-1,_("Macro name:"),(8,14))
|
||||
dialog.namectrl = wx.TextCtrl(panel,-1,'',(110,8),size=(130,24),style=wx.TE_PROCESS_ENTER)
|
||||
wx.StaticText(panel, -1, _("Macro name:"), (8, 14))
|
||||
dialog.namectrl = wx.TextCtrl(panel, -1, '', (110, 8), size=(130, 24), style = wx.TE_PROCESS_ENTER)
|
||||
hbox = wx.BoxSizer(wx.HORIZONTAL)
|
||||
okb = wx.Button(dialog,wx.ID_OK,_("Ok"),size=(60,24))
|
||||
dialog.Bind(wx.EVT_TEXT_ENTER,lambda e:dialog.EndModal(wx.ID_OK),dialog.namectrl)
|
||||
#dialog.Bind(wx.EVT_BUTTON,lambda e:self.new_macro_named(dialog,e),okb)
|
||||
okb = wx.Button(dialog, wx.ID_OK, _("Ok"), size = (60, 24))
|
||||
dialog.Bind(wx.EVT_TEXT_ENTER, lambda e:dialog.EndModal(wx.ID_OK), dialog.namectrl)
|
||||
#dialog.Bind(wx.EVT_BUTTON, lambda e:self.new_macro_named(dialog, e), okb)
|
||||
hbox.Add(okb)
|
||||
hbox.Add(wx.Button(dialog,wx.ID_CANCEL,_("Cancel"),size=(60,24)))
|
||||
hbox.Add(wx.Button(dialog, wx.ID_CANCEL, _("Cancel"), size = (60, 24)))
|
||||
vbox.Add(panel)
|
||||
vbox.Add(hbox,1,wx.ALIGN_CENTER|wx.TOP|wx.BOTTOM,10)
|
||||
vbox.Add(hbox, 1, wx.ALIGN_CENTER|wx.TOP|wx.BOTTOM, 10)
|
||||
dialog.SetSizer(vbox)
|
||||
dialog.Centre()
|
||||
macro = ""
|
||||
if dialog.ShowModal()==wx.ID_OK:
|
||||
if dialog.ShowModal() == wx.ID_OK:
|
||||
macro = dialog.namectrl.GetValue()
|
||||
if macro != "":
|
||||
wx.CallAfter(self.edit_macro,macro)
|
||||
wx.CallAfter(self.edit_macro, macro)
|
||||
dialog.Destroy()
|
||||
return macro
|
||||
|
||||
def edit_macro(self,macro):
|
||||
def edit_macro(self, macro):
|
||||
if macro == "": return self.new_macro()
|
||||
if self.macros.has_key(macro):
|
||||
old_def = self.macros[macro]
|
||||
|
@ -501,14 +500,14 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
except:
|
||||
pass
|
||||
for macro in self.macros.keys():
|
||||
self.Bind(wx.EVT_MENU, lambda x,m=macro:self.start_macro(m,self.macros[m]), self.macros_menu.Append(-1, macro))
|
||||
self.Bind(wx.EVT_MENU, lambda x, m = macro: self.start_macro(m, self.macros[m]), self.macros_menu.Append(-1, macro))
|
||||
|
||||
def OnExit(self, event):
|
||||
self.Close()
|
||||
|
||||
def rescanports(self,event=None):
|
||||
scan=self.scanserial()
|
||||
portslist=list(scan)
|
||||
def rescanports(self, event = None):
|
||||
scan = self.scanserial()
|
||||
portslist = list(scan)
|
||||
if self.settings.port != "" and self.settings.port not in portslist:
|
||||
portslist += [self.settings.port]
|
||||
self.serialport.Clear()
|
||||
|
@ -516,7 +515,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
try:
|
||||
if os.path.exists(self.settings.port) or self.settings.port in scan:
|
||||
self.serialport.SetValue(self.settings.port)
|
||||
elif len(portslist)>0:
|
||||
elif len(portslist) > 0:
|
||||
self.serialport.SetValue(portslist[0])
|
||||
except:
|
||||
pass
|
||||
|
|
Loading…
Reference in New Issue