Difference between revisions of "Source Directory Structure"
Jump to navigation
Jump to search
(2 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
*src | *src | ||
**2geom<sup>†</sup> Geometry (move to library) | **2geom<sup>†</sup>: Geometry (move to library) | ||
**display<sup>†</sup> (Rename 'render'?) | **actions: GActions, SPActions, Verbs, chemistry (GActions to replace SPActions and Verbs) | ||
*** | ***selection | ||
****filters Render filters | **display<sup>†</sup>: (Rename 'render'?) | ||
*** | ***drawing: Render SVG (DrawingItem and derived classes) | ||
*** | ****filters: Render filters | ||
***canvas: UI controls (CanvasItem and derived classes) | |||
***<strike>common</strike> | |||
**extension<sup>†</sup> | **extension<sup>†</sup> | ||
***dbus<sup>†</sup> | ***dbus<sup>†</sup> | ||
***internal<sup>†</sup> (move to io) | ***internal<sup>†</sup>: (move to io) | ||
***plugins<sup>†</sup> | ***plugins<sup>†</sup> | ||
***etc. | ***etc. | ||
**io<sup>†</sup> Reading/writing files | **io<sup>†</sup>: Reading/writing files | ||
**libraries (move | *** svg | ||
***libavoid | **libraries: (move to "src/3rdparty") | ||
***libcola | *** adaptagrams | ||
****libavoid | |||
****libcola | |||
****libvpsc | |||
***libcroco | ***libcroco | ||
***libdepixelize | ***libdepixelize | ||
***potrace | ***potrace | ||
***etc. | ***etc. | ||
**live-effects | |||
**object<sup>†</sup>: Object tree (e.g. SPRect) | |||
***containers: (e.g. group) | |||
***shapes: (e.g. rect) | |||
**object<sup>†</sup> Object tree (e.g. SPRect) | |||
***containers (e.g. group) | |||
***shapes (e.g. rect) | |||
***filters<sup>†</sup> | ***filters<sup>†</sup> | ||
***etc. | ***etc. | ||
**ui<sup>†</sup> | **ui<sup>†</sup> | ||
***cache<sup>†</sup> | ***cache<sup>†</sup> | ||
***dialog<sup>†</sup> Dialogs | ***dialog<sup>†</sup>: Dialogs | ||
***menu Menus | ***menu: Menus | ||
***toolbar Toolbars | ***snap | ||
***tool<sup>†</sup> Move to | ***toolbar: Toolbars | ||
***tools Tools | ***tool<sup>†</sup>: Move to OnScreen, etc. | ||
***view<sup>†</sup> ? | ***tools: Tools | ||
***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) | ****composite: Composite widgets (e.g. simple-filter-modifier) | ||
****composite Composite widgets (e.g. simple-filter-modifier) | ****derived: (name?) | ||
****derived (name?) | *****attribute: Widgets that change attributes | ||
*****attribute Widgets that change attributes | *****property: Widgets that change properties | ||
*****property Widgets that change properties | *****preference: Widgets that change preferences | ||
*****preference Widgets that change preferences | ***onscreen: (knots) | ||
***onscreen (knots) | **util<sup>†</sup>: (Merge helper & util) | ||
**util<sup>†</sup> (Merge helper & util) | |||
***numeric | ***numeric | ||
***color | ***color | ||
***svg<sup>†</sup> | ***svg<sup>†</sup> | ||
**xml<sup>†</sup> XML manipulation (Mostly SVG/Inkscape agnostic) | **xml<sup>†</sup>: XML manipulation (Mostly SVG/Inkscape agnostic) | ||
<sup>†</sup> Already exists. | <sup>†</sup> Already exists. | ||
A more radical suggestion: [[Source Directory Structure Screaming Architecture]] | A more radical suggestion: [[Source Directory Structure Screaming Architecture]] |
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