Modular file format support (new feature/enhancement)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pcb |
Triaged
|
Wishlist
|
Unassigned |
Bug Description
The attached patch implements modular system to support multiple PCB file formats. Attached is also the template of the file-format plugin with instructions.
The patch is not too big, but it touches various parts of PCB, so it is possible that some corner cases are not handled properly. Comments and bug reports are welcome.
The modular systems utlilizes existing plugin system; new type of plugin is added to support various file formats. This approach allows to implement additional file formats as independent shared library with minimal effort. The whole implementation of new file format is reduced to serialization and deserialization of PCBType data structure, no PCB tweaking is necessary. The template with instructions is provided, as mentioned above.
- modular system is available for all layout operations (Load, Save, Save As, Load to buffer, Revert, auto-backup); the element operations will be added later.
- action "SaveTo(
- GUI (GTK only at the moment) was adjusted to allow select file format; for "save" operations it specifies desired format, for "open" operations it is used as filter
- file format is detected automatically by modular framework
- the versioning system (based on PCB file version #defines) is available - each plugin should confirm it's capability to save data of required version (like 20110603); if not, the file format cannot be used
- load-only and save-only formats are supported. If save-only format is used, the layout is not marked as "saved".
- the current PCB format is converted to built-in plugin.
Changed in pcb: | |
status: | New → Triaged |
importance: | Undecided → Wishlist |
milestone: | none → next-feature-release |
Changed in pcb: | |
milestone: | pcb-4.1.0 → pcb-4.2.0 |
Changed in pcb: | |
milestone: | pcb-4.2.0 → future-feature-release |
Hi Milan,
Your file formats patch is now pushed to "home/bert/ LP1532611" for review.
Thanks and kind regards,
Bert Timmerman.