Hi,
I solved with a trick
try:
board_drawings=board.GetDrawings()
except:
board_drawings=board.DrawingsList()
for drw in board_drawings:
for one plugin, and with a similar trick for the other;
but your solution is cleaner.
is the
diff --git a/pcbnew/swig/module.i b/pcbnew/swig/module.i
correct?
I see there is a block comment before @line 45
/*
%extend MODULE
...
Applying the patch I cannot make any plugins running
but if I de-comment that block it works...
Thx
Maurice
On 06/26/2017 2:24 PM, Maciej Sumiński wrote:
Hi Maurice,
This is due to the recent commit that enables iterators for DLISTs. We
have forgotten that such change impacts the Python interface.
I propose to keep the old interface, otherwise we will face many reports
when a script works correctly with the stable release, but not with
nightlies.
Would you check if the attached patch fixes the problem? If so, I will
push it.
Regards,
Orson
On 06/26/2017 10:23 AM, easyw wrote:
Hi,
I can confirm the same error on windows 10.
I get also an other kind of error in my annular plugin that worked till now
"for pad in module.Pads():
TypeError 'SwigPyObject' object is not iterable"
BR
Maurice
On 06/25/2017 5:46 PM, Simon Küppers wrote:
Hi,
I just updated KiCad on Linux Mint using the Launchpad PPA to test the
new connection algorithm. However, a SWIG error starts to pop up in my
python plugins.
Right now I can produce the error, when calling GetDrawings on the board
object (which worked a few days ago). It looks like the SWIG wrappers
are desynchronized from the C++-code. Is that (at all) possible?
This is the Traceback I get:
----
Traceback (most recent call last):
File "/home/sk/.kicad_plugins/action_viafence/viafence_action.py",
line 160, in Run
boardItem = self.boardObj.GetDrawings().GetFirst()
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 18508, in
GetDrawings
def GetDrawings(self): return self.m_Drawings
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 17803, in
<lambda>
__getattr__ = lambda self, name: _swig_getattr(self, BOARD, name)
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 74, in
_swig_getattr
return _swig_getattr_nondynamic(self, class_type, name, 0)
File "/usr/lib/python2.7/dist-packages/pcbnew.py", line 69, in
_swig_getattr_nondynamic
return object.__getattr__(self, name)
AttributeError: type object 'object' has no attribute '__getattr__'
Best Regards
Simon
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp