Source Directory Structure
Jump to navigation
Jump to search
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