> AddElement(X, Y, rotatation, refdes, footprint, etc. etc. etc)
> 
> then PCB would look to see if a component existed at (X, Y) with the
> same rotation, refdes, footprint, etc. and if it did, then PCB would
> just leave it alone.  Otherwise, it would update the parameters which
> are different.

In my case, I added the "AddIf" option.  If I saw an action that said
"AddElement", I'd just add the element, even if it meant duplicating
an existing element (hey, maybe you meant to do that).

> To return to your point about an object ID, the question is:  Does PCB
> need to have an object ID to know about each component, or is it
> enough to identify it by it's placement info?  I dunno the answer, but
> I suspect it's enough to just use graphical info.  Or am I wrong?

PCB objects have OIDs internally but we don't export them nor do we
preserve them across load/save.

I suspect for this task we'll rely on the refdes as the "unique
identifier".

I also think that moving an element is a bad thing to do when forward
annotating.

> I think we are all agreeing that the thing which understands the
> format is inside the SOW.  As such, it logically ends up in libpcb.
> Then both PCB and gsch2pcb (and any other tool which wants it) can
> link to libpcb to get the understanding.

I think we could do a libpcb - core without all the actions and hids.
I'm not sure if we need it for the SoW though.  We'd need to do some
reorganization in some of the core modules though.  I assume you don't
want an autorouter in libpcb... ;-)

> I agree -- preventing PCB from trashing a design by running the same
> action script twice is an important point.  If the actions called out
> by the script just "overlay" those already used to build/update the
> board, then trashing shouldn't happen, right?

With my way, running the script twice *should* be harmless, as long as
you're not in the middle of editing pcb and haven't updated the
schematics first.

Hmmm... I suppose we could add an option for pcb to watch for a given
script file and run it whenever it shows up or is modified.  I'd
rather use DBUS for that, though.


_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev

Reply via email to