Hacking:Source Tree

This page describes how the Seamly2D source is organized - it will describe what's inside each directory of Seamly2D, and should help you navigate your way through the source.

Root directory Edit

The main directory of the project. Open file Seamly2D.pro in Qt Creator for begin work the the code. File ChangeLog.txt contains current changelog state. Don't forget before each pull request to add your changes to this file.

dist Edit

Contains scripts and files for building deb, rpm, ebuild, MacOS and Windows install packages.

scripts Edit

Contains several useful scripts we often use for automate our doings.

share Edit

Contains translation files. The directory mostly used for storing files related to the project, but not need for building. Such files can be svg versions of images, some important documents, special templates.

src Edit

Contains the all source code of Seamly2D.

app Edit

Contains the source code of Seamly2D's binaries.

app/share Edit

Look at this directory if you seek collection of files we use for unit testing and measurement files we deploy with the application.

app/tape Edit

The source code of Seamly2D's measurement editor.

app/seamly2D Edit

The source code of Seamly2D's main binary.

libs Edit

Contains the all source code of related to Seamly2D libraries.

libs/ifc Edit

The Ifc library used for converting old pattern/measurement format to new version.

libs/qmuparser Edit

The math parser library. Used for evaluating formulas, parsing formulas and translation measurement names.

libs/vdxf Edit

The VDxf library used for export a layout to dxf format.

libs/vformat Edit

Contains class for managing measurements.

libs/vgeometry Edit

Contains classes for working with geometric objects: arc, curve, point, etc.

libs/vlayout Edit

The library for generating a layout.

libs/vmisc Edit

The library that contains common classes.

libs/vobj Edit

The VObj library used for export a layout to obj format.

libs/vpatterndb Edit

Contains classes for storing data about pattern.

libs/vpropertyexplorer Edit

Contains classes of the tool property browser. You will see it when click on any object: point, line, curve.

libs/vtools Edit

Contains all calsses of all tools.

libs/vwidgets Edit

Contains classes of custom widgets.

test Edit

Contains the source code of all unit tests.

test/ParserTest Edit

Qmuparser's tests.

test/Seamly2DTest Edit

All Seamly2D's tests.