> > Thus, you are not the common case, and will not use the magic update > > button. > > Well, there is no reason the magic update button can't trigger a command > to produce the netlist and parts-list files, then have PCB read them..
I mentioned that the command to run could be configurable. > Is the input which PCB reads a netlist + parts list with enough info to > update the board? > > Or is it an action script which contains specific verbs, such as "place > component X", "delete component Y"? It's an action list, but my plan is to add new actions that are more high-level, like "start element list, here's an element, here's an element, end list" and let pcb worry about *how* (or even *if*) to do the add/remove steps. I see no reason to not *also* add actions like "delete element" or "place element at X,Y,R" but that would be for power users, not the 90% case. > I had thought we were leaning towards describing what "should be" on the Sample action script: NetClearNetlist() NetAddConnection(unnamed_net31,R914-2) NetAddConnection(unnamed_net31,LED905-2) NetAddConnection(unnamed_net30,R913-2) NetAddConnection(unnamed_net30,LED904-2) NetAddConnection(unnamed_net29,R912-2) NetAddConnection(unnamed_net29,LED903-2) NetAddConnection(unnamed_net28,R910-2) NetAddConnection(unnamed_net28,CONN900-1) NetAddConnection(CLOCK3,R906-2) . . . NetAddConnection(unnamed_net2,R907-1) NetAddConnection(unnamed_net2,U903-2) NetAddConnection(unnamed_net1,R908-1) NetAddConnection(unnamed_net1,U903-1) ElementNoteAddStart() ElementAddIf(C902,0.1uF,0603dj.fp) ElementSetAttr(C902,device,CAPACITOR) ElementSetAttr(C902,manufacturer,Kemet) ElementSetAttr(C902,manufacturer_part_number,C0603C104K4RACTU) ElementSetAttr(C902,vendor,digikey) ElementSetAttr(C902,vendor_part_number,399-1096-1-ND) ElementAddIf(C901,0.1uF,0603dj.fp) ElementSetAttr(C901,device,CAPACITOR) ElementSetAttr(C901,manufacturer,Kemet) ElementSetAttr(C901,manufacturer_part_number,C0603C104K4RACTU) ElementSetAttr(C901,vendor,digikey) ElementSetAttr(C901,vendor_part_number,399-1096-1-ND) . . . ElementAddIf(C906,0.1uF,0603dj.fp) ElementSetAttr(C906,device,CAPACITOR) ElementSetAttr(C906,manufacturer,Kemet) ElementSetAttr(C906,manufacturer_part_number,C0603C104K4RACTU) ElementSetAttr(C906,vendor,digikey) ElementSetAttr(C906,vendor_part_number,399-1096-1-ND) ElementNoteAddDone() When PCB sees the "done" action, it erases any appropriate elements that weren't mentioned since the "start" action. _______________________________________________ geda-dev mailing list geda-dev@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev