From 1deb61b25f4761b323c86868eeae911fe9c08575 Mon Sep 17 00:00:00 2001 From: Kliment Yanev Date: Thu, 8 Sep 2011 13:35:14 +0200 Subject: [PATCH 1/4] Fix snap to z=0 when autoplating --- plater.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plater.py b/plater.py index ddc3747..d06976b 100755 --- a/plater.py +++ b/plater.py @@ -89,7 +89,7 @@ class showstl(wx.Window): newrow = 0 max = [0,0] for i in self.models: - self.models[i].offsets[2]=-1.0*min(m.facetsminz)[0] + self.models[i].offsets[2]=-1.0*self.models[i].dims[4] x = abs(self.models[i].dims[0] - self.models[i].dims[1]) y = abs(self.models[i].dims[2] - self.models[i].dims[3]) centre = [x/2, y/2] From e28c83c654f3423a44e3a896090d0572667aeea7 Mon Sep 17 00:00:00 2001 From: Kliment Yanev Date: Thu, 8 Sep 2011 13:53:46 +0200 Subject: [PATCH 2/4] Fix listbox to no longer scroll horizontally --- plater.py | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/plater.py b/plater.py index d06976b..a11ee30 100755 --- a/plater.py +++ b/plater.py @@ -16,7 +16,7 @@ class stlwrap: class showstl(wx.Window): def __init__(self,parent,size,pos): wx.Window.__init__(self,parent,size=size,pos=pos) - self.l=wx.ListCtrl(self,style=wx.LC_LIST,size=(300,130),pos=(0,size[1]-130)) + self.l=wx.ListBox(self,size=(300,130),pos=(0,size[1]-130)) self.eb=wx.Button(self,label="Export",pos=(300,size[1]-130)) self.sb=wx.Button(self,label="Snap to Z=0",pos=(300,size[1]-105)) self.cb=wx.Button(self,label="Put at 100,100",pos=(300,size[1]-80)) @@ -42,26 +42,26 @@ class showstl(wx.Window): self.prevsel=-1 def center(self,event): - i=self.l.GetFirstSelected() + i=self.l.GetSelection() if i != -1: - m=self.models[self.l.GetItemText(i)] + m=self.models[self.l.GetString(i)] m.offsets=[100,100,m.offsets[2]] self.Refresh() def snap(self,event): - i=self.l.GetFirstSelected() + i=self.l.GetSelection() if i != -1: - m=self.models[self.l.GetItemText(i)] + m=self.models[self.l.GetString(i)] m.offsets[2]=-1.0*min(m.facetsminz)[0] #print m.offsets[2] self.Refresh() def delete(self,event): - i=self.l.GetFirstSelected() + i=self.l.GetSelection() if i != -1: - del self.models[self.l.GetItemText(i)] - self.l.DeleteItem(i) - self.l.Select(self.l.GetItemCount()-1) + del self.models[self.l.GetString(i)] + self.l.Delete(i) + self.l.Select(self.l.GetCount()-1) self.Refresh() def export(self,event): @@ -179,24 +179,24 @@ class showstl(wx.Window): m.bitmap.SetMask(wx.Mask(m.bitmap,wx.Colour(0,0,0,255))) #print time.time()-t - self.l.Append([stlwrap(self.models[newname],newname)]) - i=self.l.GetFirstSelected() - if i != -1: - self.l.Select(i,0) + self.l.Append(newname) + i=self.l.GetSelection() + if i==wx.NOT_FOUND: + self.l.Select(0) - self.l.Select(self.l.GetItemCount()-1) + self.l.Select(self.l.GetCount()-1) self.Refresh() #print time.time()-t def move(self,event): if event.ButtonUp(wx.MOUSE_BTN_LEFT): if(self.initpos is not None): - i=self.l.GetFirstSelected() - if i != -1: + i=self.l.GetSelection() + if i != wx.NOT_FOUND: p=event.GetPositionTuple() #print (p[0]-self.initpos[0]),(p[1]-self.initpos[1]) t=time.time() - m=self.models[self.l.GetItemText(i)] + m=self.models[self.l.GetString(i)] m.offsets=[m.offsets[0]+0.5*(p[0]-self.initpos[0]),m.offsets[1]-0.5*(p[1]-self.initpos[1]),m.offsets[2]] #self.models[self.l.GetItemText(i)]=self.models[self.l.GetItemText(i)].translate([0.5*(p[0]-self.initpos[0]),0.5*(p[1]-self.initpos[1]),0]) #print time.time()-t @@ -220,10 +220,10 @@ class showstl(wx.Window): def rotateafter(self): if(self.i!=self.previ): - i=self.l.GetFirstSelected() - if i != -1: + i=self.l.GetSelection() + if i != wx.NOT_FOUND: #o=self.models[self.l.GetItemText(i)].offsets - self.models[self.l.GetItemText(i)].rot+=5*(self.i-self.previ) + self.models[self.l.GetString(i)].rot+=5*(self.i-self.previ) #self.models[self.l.GetItemText(i)].offsets=o self.previ=self.i self.Refresh() @@ -234,7 +234,7 @@ class showstl(wx.Window): def rot(self, event): z=event.GetWheelRotation() - s=self.l.GetFirstSelected() + s=self.l.GetSelection() if self.prevsel!=s: self.i=0 self.prevsel=s From 16fd9fd04dffc1a14a6f54b1d7bbf994ae62ceeb Mon Sep 17 00:00:00 2001 From: Kliment Yanev Date: Fri, 9 Sep 2011 18:14:49 +0200 Subject: [PATCH 3/4] Open .gco files --- pronterface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pronterface.py b/pronterface.py index 8acf6de..ea4973d 100755 --- a/pronterface.py +++ b/pronterface.py @@ -1008,7 +1008,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole): 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;*.STL;)")) + dlg.SetWildcard(_("STL and GCODE files (;*.gcode;*.gco;*.g;*.stl;*.STL;)")) if(filename is not None or dlg.ShowModal() == wx.ID_OK): if filename is not None: name=filename From 0da65f14d0ba8c2ca2aa8f615d03d97783143e8b Mon Sep 17 00:00:00 2001 From: Keegi Date: Tue, 13 Sep 2011 14:41:05 +0300 Subject: [PATCH 4/4] Fix exception on removing the last custombutton when there are no other custombuttons --- pronterface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pronterface.py b/pronterface.py index ea4973d..6193729 100755 --- a/pronterface.py +++ b/pronterface.py @@ -727,7 +727,7 @@ class PronterWindow(wx.Frame,pronsole.pronsole): n = button.custombutton self.custombuttons[n]=None self.cbutton_save(n,None) - while self.custombuttons[-1] is None: + while len(self.custombuttons) and self.custombuttons[-1] is None: del self.custombuttons[-1] self.cbuttons_reload()