1. GUI: Drawing objects (done)
Provide tools for placing and editing drawing objects on a sheet
Milestones:
- wirenet draw/merge
- wirenet del
- wirenet undo
- rectangle (filled/unfilled), polygon
- text (basic implementation)
- arcs and circles
2. Object attribute access (done)
Provide CLI tools and dialog boxes for accessign drawing object attributes
Milestones:
- object-specific property dialog boxe for wirenets
- object-specific property dialog boxe for symbols/components
- generic propedit()
- generic query()
- finish the basic menu system
3. Symbol support (done)
Implement basic support for symbols and build the initial symbol lib
Milestones:
- symbol lib support (backing code)
- symbol lib dialog
- parametric symbols
- placement GUI, rotate
- symbol lib: basic passives, diodes and leds
- symbol lib: transistors, slotted opamps and comparators
- symbol lib: misc (titlebox, mounting holes, etc)
- symbol lib: basic connectors
4. File formats
Finish I/O plugins for the two most important file formats
Milestones:
- lihata sheet (native file format)
- lihata symbol (native file format)
- tEDAx netlist export (portable interface to PCB editors)
5. Internal mechanisms, part 1
Abstract model compiler and device mapper
Milestones:
- compiler for nets and components
- implement and test filter-like plugin mechanisms
- implement devmap as a filter-like plugin
- develop a minimal devmap database for testing
6. Internal mechanisms, part 2
Data model generalism and reuse
Milestones:
- support multiple sheets (flat multi-page designs)
- buffer operations: copy and paste
- buffer operations: import, export, serialization
- buffer operations: transformations (rotate, mirror)
7. Automation
Features used in workflow automation
Milestones:
- back annotation
- minimal user scripting