Difference between revisions of "GEPS 008: File Organization"

From Gramps
Jump to: navigation, search
(New page to propose a new file structure for the source code.)
 
Line 9: Line 9:
 
=== src/gen/lib ===
 
=== src/gen/lib ===
 
The lib directory contains the classes for the database objects.
 
The lib directory contains the classes for the database objects.
 +
 +
=== src/gen/filters ===
 +
The filters directory contains the code for filtering objects.
 +
 +
=== src/gen/mime ===
 +
The mime directory contains the code for handling mime types in Gramps.
  
 
== src/gui/ ==
 
== src/gui/ ==
This directory contains the code for the desktop graphical user interface.
+
This directory contains the code for the desktop graphical user interface. Any file that imports GTK or glade should live in this directory or a subdirectory of this directory.
 +
 
 +
=== src/gui/views/ ===
 +
This directory contains the code for the various graphical "views" in the GUI.
 +
 
 +
=== src/gui/models/ ===
 +
This directory contains the code for the models used in the GUI.
 +
 
 +
=== src/gui/tabs/ ===
 +
This directory contains the code for the tabs used in the GUI.
 +
 
 +
=== src/gui/editors/ ===
 +
This directory contains the code for the object editors used in the GUI.
 +
 
 +
=== src/gui/merge/ ===
 +
This directory contains the code for merging objects in the GUI.
  
 
== src/cli/ ==
 
== src/cli/ ==
 
This directory contains the code for the command line interface.
 
This directory contains the code for the command line interface.
 +
 +
== src/plugins/ ==
 +
This directory contains all the plugins for Gramps.
 +
 +
=== src/plugins/docgen/ ===
 +
This directory contains all the document generator plugins.
 +
 +
=== src/plugins/gramplet/ ===
 +
This directory contains all the gramplet plugins.
 +
 +
=== src/plugins/tool/ ===
 +
This directory contains all the tool plugins.
 +
 +
=== src/plugins/report/ ===
 +
This directory contains all the report plugins.

Revision as of 21:37, 21 June 2008

The purpose of this page is to facilitate a discussion on the organization of the source files for Gramps. The following suggestion represents a possible future organization for the source files:

src/gen/

This directory contains the core components of Gramps.

src/gen/db

The db directory contains the code for manipulating the Gramps database.

src/gen/lib

The lib directory contains the classes for the database objects.

src/gen/filters

The filters directory contains the code for filtering objects.

src/gen/mime

The mime directory contains the code for handling mime types in Gramps.

src/gui/

This directory contains the code for the desktop graphical user interface. Any file that imports GTK or glade should live in this directory or a subdirectory of this directory.

src/gui/views/

This directory contains the code for the various graphical "views" in the GUI.

src/gui/models/

This directory contains the code for the models used in the GUI.

src/gui/tabs/

This directory contains the code for the tabs used in the GUI.

src/gui/editors/

This directory contains the code for the object editors used in the GUI.

src/gui/merge/

This directory contains the code for merging objects in the GUI.

src/cli/

This directory contains the code for the command line interface.

src/plugins/

This directory contains all the plugins for Gramps.

src/plugins/docgen/

This directory contains all the document generator plugins.

src/plugins/gramplet/

This directory contains all the gramplet plugins.

src/plugins/tool/

This directory contains all the tool plugins.

src/plugins/report/

This directory contains all the report plugins.