Dan McMahill wrote:
Ales Hvezda wrote:

Hi Dan again,

[snip]

- list of schematics
- output file name for the netlist
- name of the .pcb file
- name of the gsch2pcb project file
- any special flags to pass to gsch2pcb



    One more question, how are you going to get the user to specify
the list of schematics that belong into the project file?


That's a good question. Something I've been struggling with and not having time to clearly think over is a more complete set of GUI types of functions I might need to support not only this but on down the road how to set up a simulator.

In the extreme short term, emacs will let the user specify the list of schematics. In the longer term, I'm just not sure. It would be nice I suppose to have a dialog box with the list of files and a way to add/remove them. I haven't come up with a simple way that doens't involve moving more down the guile-gnome path (which I'd rather not go down).

actually, to reply to myself here, I think what I probably need is a generic attribute type structure and a "edit attributes" dialog box.

In the latest PCB code, the export HID's like gerber, png, ps, etc. have attributes like "filename", "add drill helper", etc that control how the export is done. The export dialog boxes for the GUI are totally generic. They look at the attribute list for the particular HID and build an appropriate dialog box for editing those attributes. It is way cool because if you were to add, for example, an HPGL export HID, the entire export dialog box would happen automatically with no extra code needed.

So, I'm thinking I should implement a similar thing here. I'll have to think a bit about how this works in scheme but it should be possible. This way pcb-mode calls (gschem-attrib-dialog pcb:attribs) to do any sort of pcb project setup and gnucap-mode (whenever it gets written) calls (gschem-attrib-dialog gnucap:attribs) to do any sort of simulation setup.

If I go this way, then setup files for the various modes can probably all use the same "save project/state/whatever" code.

-Dan

Reply via email to