Difference between revisions of "Source Directory Structure"
Jump to navigation
Jump to search
Line 20: | Line 20: | ||
**io<sup>†</sup>: Reading/writing files | **io<sup>†</sup>: Reading/writing files | ||
*** svg | *** svg | ||
**libraries: (move | **libraries: (move to "src/3rdparty") | ||
*** adaptagrams | *** adaptagrams | ||
****libavoid | ****libavoid | ||
Line 41: | Line 41: | ||
***snap | ***snap | ||
***toolbar: Toolbars | ***toolbar: Toolbars | ||
***tool<sup>†</sup>: Move to | ***tool<sup>†</sup>: Move to OnScreen, etc. | ||
***tools: Tools | ***tools: Tools | ||
***view<sup>†</sup> ? | ***view<sup>†</sup> What is this? | ||
***widget<sup>†</sup> | ***widget<sup>†</sup> | ||
****basic: Basic custom widgets (e.g. ink-combobox-entry) | ****basic: Basic custom widgets (e.g. ink-combobox-entry) |
Latest revision as of 16:38, 29 April 2018
Proposed directory structure for Inkscape's source code.
- src
- 2geom†: Geometry (move to library)
- actions: GActions, SPActions, Verbs, chemistry (GActions to replace SPActions and Verbs)
- selection
- display†: (Rename 'render'?)
- drawing: Render SVG (DrawingItem and derived classes)
- filters: Render filters
- canvas: UI controls (CanvasItem and derived classes)
common
- drawing: Render SVG (DrawingItem and derived classes)
- extension†
- dbus†
- internal†: (move to io)
- plugins†
- etc.
- io†: Reading/writing files
- svg
- libraries: (move to "src/3rdparty")
- adaptagrams
- libavoid
- libcola
- libvpsc
- libcroco
- libdepixelize
- potrace
- etc.
- adaptagrams
- live-effects
- object†: Object tree (e.g. SPRect)
- containers: (e.g. group)
- shapes: (e.g. rect)
- filters†
- etc.
- ui†
- cache†
- dialog†: Dialogs
- menu: Menus
- snap
- toolbar: Toolbars
- tool†: Move to OnScreen, etc.
- tools: Tools
- view† What is this?
- widget†
- basic: Basic custom widgets (e.g. ink-combobox-entry)
- composite: Composite widgets (e.g. simple-filter-modifier)
- derived: (name?)
- attribute: Widgets that change attributes
- property: Widgets that change properties
- preference: Widgets that change preferences
- onscreen: (knots)
- util†: (Merge helper & util)
- numeric
- color
- svg†
- xml†: XML manipulation (Mostly SVG/Inkscape agnostic)
† Already exists.
A more radical suggestion: Source Directory Structure Screaming Architecture