From 0b8855781c15ea649cc7e7f66fd73517dfd5d664 Mon Sep 17 00:00:00 2001 From: Keegi Date: Thu, 30 Jun 2011 00:31:57 +0300 Subject: [PATCH 1/6] only save feedrates when changed --- pronterface.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pronterface.py b/pronterface.py index 8c63995..cb3ed3a 100644 --- a/pronterface.py +++ b/pronterface.py @@ -395,6 +395,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole): self.gwindow.Show() def setfeeds(self,e): + self.feedrates_changed = True try: self.settings._set("e_feedrate",self.efeedc.GetValue()) except: @@ -436,9 +437,10 @@ class PronterWindow(wx.Frame,pronsole.pronsole): self.statuscheck=0 self.p.recvcb=None self.p.disconnect() - self.save_in_rc("set xy_feedrate","set xy_feedrate %d" % self.settings.xy_feedrate) - self.save_in_rc("set z_feedrate","set z_feedrate %d" % self.settings.z_feedrate) - self.save_in_rc("set e_feedrate","set e_feedrate %d" % self.settings.e_feedrate) + if hasattr(self,"feedrates_changed"): + self.save_in_rc("set xy_feedrate","set xy_feedrate %d" % self.settings.xy_feedrate) + self.save_in_rc("set z_feedrate","set z_feedrate %d" % self.settings.z_feedrate) + self.save_in_rc("set e_feedrate","set e_feedrate %d" % self.settings.e_feedrate) try: self.gwindow.Destroy() except: From 3273f5cc4cc02086ecb087c6635f63132a7107d5 Mon Sep 17 00:00:00 2001 From: Keegi Date: Thu, 30 Jun 2011 00:32:24 +0300 Subject: [PATCH 2/6] save last file path --- pronterface.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pronterface.py b/pronterface.py index cb3ed3a..455da31 100644 --- a/pronterface.py +++ b/pronterface.py @@ -37,6 +37,7 @@ class Tee(object): class PronterWindow(wx.Frame,pronsole.pronsole): def __init__(self, filename=None,size=winsize): pronsole.pronsole.__init__(self) + self.settings.last_file_path = "" self.filename=filename os.putenv("UBUNTU_MENUPROXY","0") wx.Frame.__init__(self,None,title="Printer Interface",size=size); @@ -616,11 +617,13 @@ class PronterWindow(wx.Frame,pronsole.pronsole): thread(target=self.skein_monitor).start() def loadfile(self,event): - basedir="." - try: - basedir=os.path.split(self.filename)[0] - except: - pass + basedir=self.settings.last_file_path + if not os.path.exists(basedir): + basedir = "." + try: + basedir=os.path.split(self.filename)[0] + except: + pass dlg=wx.FileDialog(self,"Open file to print",basedir,style=wx.FD_OPEN|wx.FD_FILE_MUST_EXIST) dlg.SetWildcard("STL and GCODE files (;*.gcode;*.g;*.stl;)") if(dlg.ShowModal() == wx.ID_OK): @@ -628,6 +631,9 @@ class PronterWindow(wx.Frame,pronsole.pronsole): if not(os.path.exists(name)): self.status.SetStatusText("File not found!") return + path = os.path.split(name)[0] + if path != self.settings.last_file_path: + self.set("last_file_path",path) if name.endswith(".stl"): self.skein(name) else: From 35c00f6da9fc24318ec376661af54bdd1b5480a9 Mon Sep 17 00:00:00 2001 From: kliment Date: Thu, 30 Jun 2011 06:54:45 +0200 Subject: [PATCH 3/6] Treat STL and Stl files like stl files and skein them. --- pronterface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pronterface.py b/pronterface.py index 455da31..5d5aca6 100644 --- a/pronterface.py +++ b/pronterface.py @@ -634,7 +634,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole): path = os.path.split(name)[0] if path != self.settings.last_file_path: self.set("last_file_path",path) - if name.endswith(".stl"): + if name.lower().endswith(".stl"): self.skein(name) else: self.f=[i.replace("\n","").replace("\r","") for i in open(name)] From fa53fc900be0e59004e87977586acb6f44bc1c2e Mon Sep 17 00:00:00 2001 From: kliment Date: Thu, 30 Jun 2011 06:57:40 +0200 Subject: [PATCH 4/6] Clear loaded part in gviz window when new part is loaded --- pronterface.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pronterface.py b/pronterface.py index 5d5aca6..f79d3ca 100644 --- a/pronterface.py +++ b/pronterface.py @@ -644,6 +644,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole): def loadviz(self): self.gviz.clear() + self.gwindow.p.clear() for i in self.f: self.gviz.addgcode(i) self.gwindow.p.addgcode(i) From f39d0d915e760d136d095f7342a5ded28aee345c Mon Sep 17 00:00:00 2001 From: kliment Date: Thu, 30 Jun 2011 06:59:11 +0200 Subject: [PATCH 5/6] Only bind paint event once in gviz --- gviz.py | 1 - 1 file changed, 1 deletion(-) diff --git a/gviz.py b/gviz.py index f28dc0b..0884984 100644 --- a/gviz.py +++ b/gviz.py @@ -55,7 +55,6 @@ class gviz(wx.Panel): def clear(self): self.lastpos=[0,0,0,0,0] - self.Bind(wx.EVT_PAINT,self.paint) self.lines={} self.pens={} self.layers=[] From e830702be0012883f8e015a2945c48561f5f41b3 Mon Sep 17 00:00:00 2001 From: kliment Date: Thu, 30 Jun 2011 07:11:58 +0200 Subject: [PATCH 6/6] Remove unused dependency --- printcore.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/printcore.py b/printcore.py index 9a41a2e..a835522 100644 --- a/printcore.py +++ b/printcore.py @@ -2,7 +2,7 @@ from serial import Serial from threading import Thread import time -import getopt, sys +import sys class printcore(): def __init__(self,port=None,baud=None):