Ehh, it seems that I did not push to main repository the previous patches, I will check what happened tomorrow morning, sorry about this…
Miguel Angel Ajo http://www.nbee.es (http://www.nbee.es/) +34911407752 skype: ajoajoajo On Monday, 15 de April de 2013 at 23:13, Miguel Angel Ajo wrote: > Thanks a lot Wayne, > > Don't worry at all, the refactoring needed to be done, and it's high > priority, > you're making our lives easier in the future, some pain now it's ok. > > If you had simple to run tests in the scripting you'd have detected it > very > easily, but we didn't provide this. And, at the moment I write this, the > methods were not available yet, only the m_xx , but I wasn't still confident > to start touching code that wasn't mine (even asking), I wrote my own > python wrappers from GetXX to m_XX, which didn't necessarily need to > match what it was finally done, because I did it and told nobody :) > > Keep the good refactoring work, it's good for all :) > > > Miguel Angel Ajo > http://www.nbee.es (http://www.nbee.es/) > +34911407752 > skype: ajoajoajo > > > On Monday, 15 de April de 2013 at 16:47, Wayne Stambaugh wrote: > > > On 4/15/2013 5:35 AM, Miguel Angel Ajo wrote: > > > Hi Matthew, sorry for my slow response,but finally I could check and > > > commit your patch, thanks for the 2nd version too. It's in release 4100 > > > > > > I found the GetText/TextPosition missing in TEXTE_PCB too, I think we > > > should ask Wayne Stambaugh, > > > > > > Wayne, What should we use one to get a TEXTE_PCB position? > > > > GetTextPosition(). The TEXTE_PCB object does not have a GetPosition() > > function. I apologize for breaking the Python scripting support. In > > the future I will try to be more aware of the impact of my changes to > > the Python scripting. To help mitigate the problem int the future, > > please avoid directly accessing public member variables and use the > > access functions whenever they are available. I knew encapsulating > > EDA_TEXT was going to cause problems but it's been on my personal to do > > list for a long long time. I just couldn't stand it any more so I broke > > down an fixed it. Thank you for your patience and your help. > > > > Best Regards, > > > > Wayne > > > > > > > > Miguel Angel Ajo > > > http://www.nbee.es <http://www.nbee.es/> > > > +34911407752 > > > skype: ajoajoajo > > > > > > On Wednesday, 10 de April de 2013 at 22:21, Matthew Beckler wrote: > > > > > > > Thanks for the feedback, I have prepared a new patch that removes the > > > > simple pass-through python-only accessor methods as discussed. I > > > > applied the changes to the scripting example files, and tested the > > > > createPcb.py and listPcbLibrary.py. There was a problem with the > > > > listPcb.py script, in trying to call GetText() and GetPosition() on a > > > > TEXTE_PCB object. I am not sure how to fix that one immediately > > > > offhand, but I will look into it more in the next days. > > > > > > > > Thanks, > > > > Matthew Beckler > > > > Wayne and Layne, LLC > > > > > > > > > > > > On Mon, Apr 8, 2013 at 7:22 PM, Cirilo Bernardo > > > > <[email protected] (mailto:[email protected]) > > > > <mailto:[email protected]>> wrote: > > > > > Using 'XXX()' instead of 'GetXXX()' makes more sense if you're > > > > > replacing a pair of Get/Set routines, but this is really only a > > > > > consistency issue with Python. > > > > > > > > > > - Cirilo > > > > > > > > > > PS. Sorry for the top post; goddamned Yahoo doesn't allow a user to > > > > > create messages in a sensible fashion anymore. Stinking google's > > > > > screwing things up too. Is there anyone out there who still gives > > > > > you good old plain text and quoting/indentation? > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > From: Miguel Angel Ajo <[email protected] > > > > > > (mailto:[email protected]) <mailto:[email protected]>> > > > > > > To: Matthew Beckler <[email protected] > > > > > > (mailto:[email protected]) > > > > > > <mailto:[email protected]>> > > > > > > Cc: KiCad Developers <[email protected] > > > > > > (mailto:[email protected]) > > > > > > > > > > > > > > > > <mailto:[email protected]>> > > > > > > Sent: Tuesday, April 9, 2013 6:27 AM > > > > > > Subject: Re: [Kicad-developers] Patch to fix pcbnew example scripts > > > > > > and SWIG interface > > > > > > > > > > > > > > > > > > Hey, thanks a lot Matthew, > > > > > > > > > > > > > > > > > > This happened because of the ongoing class interface cleanup Wayne > > > > > > is working on, > > > > > > I will apply the patch as soon as I check it, > > > > > > > > > > > > > > > > > > I put the GetValue / GetPads, etc in place, to be ready for those > > > > > > changes, > > > > > > but then It seems that later I forgot while writing the examples.. > > > > > > > > > > > > > > > > > > I think that it could make sense to change the GetXXX() to XXX() > > > > > > directly, just > > > > > > removing the wrappers, and keeping everything else the same way. > > > > > > > > > > > > > > > > > > What do you think? > > > > > > > > > > > > > > > > > > Greetings, > > > > > > Mike. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Miguel Angel Ajo > > > > > > http://www.nbee.es/ > > > > > > +34911407752 <tel:%2B34911407752> > > > > > > skype: ajoajoajo > > > > > > > > > > > > > > > > > > On Monday, 8 de April de 2013 at 21:43, Matthew Beckler wrote: > > > > > > Hello, > > > > > > > > > > > > > > > > > > > > > I've been trying to explore the python scripting interface for > > > > > > > pcbnew. I see that some changes have been made to the > > > > > > > pcbnew/class_module.h file, such that GetReference() returns a > > > > > > > wxString& and Reference() returns the TEXTE_MODULE& itself. > > > > > > > > > > > > > > > > > > > > > To get the scripting examples to work again, I made a few small > > > > > > > changes in pcbnew/scripting/module.i : > > > > > > > > > > > > > > > > > > > > > === modified file 'pcbnew/scripting/module.i' > > > > > > > --- pcbnew/scripting/module.i2012-05-16 09:35:18 +0000 > > > > > > > +++ pcbnew/scripting/module.i2013-04-08 19:27:00 +0000 > > > > > > > @@ -33,10 +33,10 @@ > > > > > > > %pythoncode > > > > > > > { > > > > > > > > > > > > > > - def GetPads(self): return self.m_Pads > > > > > > > - def GetDrawings(self): return self.m_Drawings > > > > > > > - def GetReferenceObj(self): return self.m_Reference > > > > > > > - def GetValueObj(self): return self.m_Value > > > > > > > + def GetPads(self): return self.Pads() > > > > > > > + def GetDrawings(self): return self.GraphicalItems() > > > > > > > + def GetReferenceObj(self): return self.Reference() > > > > > > > + def GetValueObj(self): return self.Value() > > > > > > > > > > > > > > #def SaveToLibrary(self,filename): > > > > > > > # return SaveModuleToLibrary(filename,self) > > > > > > > @@ -52,10 +52,10 @@ > > > > > > > > > > > > > > if type(itemC) is D_PAD: > > > > > > > item.thisown=0 > > > > > > > - self.m_Pads.PushBack(itemC) > > > > > > > + self.GetPads().PushBack(itemC) > > > > > > > elif type(itemC) in [ TEXTE_PCB, DIMENSION, TEXTE_MODULE, > > > > > > > DRAWSEGMENT,EDGE_MODULE]: > > > > > > > item.thisown = 0 > > > > > > > - self.m_Drawings.PushBack(item) > > > > > > > + self.GetDrawings().PushBack(item) > > > > > > > } > > > > > > > > > > > > > > } > > > > > > > > > > > > > > > > > > > > > I also made some changes to two of the example scripts in > > > > > > > pcbnew/scripting/examples/ to work with these new functions > > > > > > > instead of accessing e.g. m_Reference directly (as that member is > > > > > > > now Private). > > > > > > > > > > > > > > > > > > > > > Hopefully I have prepared the patch correctly and followed all > > > > > > > coding standards. Please let me know if I need to fix the patch > > > > > > > in any way. > > > > > > > > > > > > > > > > > > > > > Thanks much, > > > > > > > Matthew Beckler > > > > > > > > > > > > > > Wayne and Layne, LLC > > > > > > > _______________________________________________ > > > > > > > Mailing list: https://launchpad.net/~kicad-developers > > > > > > > Post to : [email protected] > > > > > > > (mailto:[email protected]) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > <mailto:[email protected]> > > > > > > > Unsubscribe : https://launchpad.net/~kicad-developers > > > > > > > More help : https://help.launchpad.net/ListHelp > > > > > > > > > > > > > > Attachments: > > > > > > > - mbeckler_patch_pcbnew_scripting_module_createPcb_createFPC40.py > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > Mailing list: https://launchpad.net/~kicad-developers > > > > > > Post to : [email protected] > > > > > > (mailto:[email protected]) > > > > > > > > > > > > > > > > <mailto:[email protected]> > > > > > > Unsubscribe : https://launchpad.net/~kicad-developers > > > > > > More help : https://help.launchpad.net/ListHelp > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Attachments: > > > > - mbeckler_pcbnew_scripting_unencapsulate.patch > > > > > > > > > > > > > > > > > > > >
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

