Source code directories
From Apache OpenOffice Wiki
This document describes the various directories in the source code for OpenOffice.org till version 3.3.
Please note that only the current directory structure are described.
If you want to know the build order of the modules see the Module Build Order.
Name | Project [1] | Description |
Agg | external | antigrain geometry lib (from http://www.antigrain.com/), a software renderer used in canvas |
Animations | graphics | Containers for the css::animation UNO API, used in slideshow and sd |
Apple remote | external | Does contain the low level code for the Apple Remote on Mac OS X. See Apple Remote Implementation |
Autodoc | tools | html pages from c++, java, idl inline documentation |
Automation | |
Hook for QA automation (TestTool) |
Avmedia | graphics | Audio/Video media implementation - requires a working Java Media Framework (JMF)
|
Basctl | |
controls and dialogs - basic |
Basebmp | gsl | algorithms and data types for bitmap graphics (e.g. line and fill polygon scan conversion, bitmap format iterators, and a SalGraphics-compatible software renderer) |
Basegfx | graphics | algorithms and data types for graphics (e.g. polygons, vectors, matrices and the like - see that used in canvas) |
Basic | |
basic interpreter and TestTool GUI |
bean | api | office bean |
Beanshell | external | java interpreter - so you can write java in command shell,
|
Berkeleydb | external | external library. http://www.sleepycat.com/products/db.shtml simple db - used for search in help and galleries |
binfilter | framework | StarOffice 5.2 file format filters, stripped down (not perfectly) from the SO 5.2 code base. This is huge - avoid building it by giving '--disable-binfilter' on the configure line. |
Boost | external | external (C++ template) library: http://boost.org/native |
bridges | udk | Bridges from various C++ ABIs, Java JNI, MS .Net to Binary Uno. Also implementation of the Uno Remote Protocol. And in ooo-build a bridge from Mono to Uno and back. |
Canvas | gsl | new canvas implementation to improve rendering, various backends implement the new XCanvas API eg. cairo / DirectX |
Chart2 | graphics | new, improved chart implementation, arrived in OO.o 2.3 |
cli_ure | udk | Common Language Infrastructure Uno Runtime Environment -- support assemblies and tools for the MS .Net (and Mono) Uno binding. |
codemaker | udk | Uno interface declaration/stub generators for C++ Uno (headers), Java Uno (class files), CLI (.Net / Mono) Uno. |
|
the configuration database - UNO services and some tools | |
Connectivity | dba | database pieces, drivers, etc. |
Cosv | tools | "Common Services," part of Autodoc |
Cppcanvas | gsl | helper C++ classes for canvas, plus a GDIMetaFile-to-XCanvas converter |
cppu | udk | Binary (read 'C') Uno runtime. |
cppuhelper | udk | C++ Uno runtime, additionally helpers e.g. templates for implementing Uno components, bootstrapping stuff etc. - get Uno up & running. |
cpputools | udk | Binary Uno tools, like uno.exe, regcomp etc. |
Crashrep | |
Crash reporting tool |
Curl | external | external library curl (a URL manipulation engine) |
Dbaccess | dba | data base access tools |
Default images | external | all images and resources |
Desktop | framework | what used to be the desktop in SO5 - now the binary |
Dmake | tools | the dmake tool itself, built by running 'bootstrap' after configure |
Dtrans | gsl | clipboard abstraction - data transfer |
Embeddedobj | framework | Embedding objects |
Embedserv | framework | Embed OOo through OLE2 |
Epm | external | enhanced package manager- nasty hack for packaging
|
Eventattacher | |
how basic handles events - |
Expat | external | external library with added UCS2 support, ... simple SAX parser |
extensions | |
browser plugin, activex control, scanner bits, OOo Improvement program and more |
External | external | placeholder for extra code needed to build |
Extras | installation | templates, clipart galleries, palettes, symbol font etc. |
Fileaccess | |
tiny: implements XSimpleFileAccess interface - that makes the UCB interfaces actually usable (via Uno) and more intuitive. |
Filter | framework | filter registration and configuration, some graphics filters, XML based filters, basic code for Worxelpoint filters |
Forms | gsl | embedded forms control and pieces (design forms in documents, fields and database driven) |
Fpicker | gsl | native file pickers for Unix and Windows (file open dialog) GTK+, KDE, Windows |
Framework | framework | UI rewrite, toolbars, menus, Uno stuff, including accelerators & interaction, etc. |
Goodies | graphics | graphics filters, 3d and 2d graqphics pieces - removed after OOo 3.2 |
Helpcontent2 | installation | for OpenOffice.org 2 - english + other languages help content |
Hsqldb | external | external library. http://hsqldb.org/ Java database engine. Default database format for OpenOffice.org |
Hwpfilter | sw | filter for a word processor file format popular in Korea. (Hangul Word Processor) |
I18npool | l10n | internationalization, counting, calendaring, complex text layout |
I18nutil | l10n | small bits of internationalization |
Icc | external | External library used to build the sRGB profile for PDF/A-1a export. http://www.color.org/ with patches. Generated and used at build time only. More details can be found in icc/README. |
icu | external | external library. International Components for Unicode, http://www.icu-project.org/ with patches. |
Idl | framework | SvIDL Compiler |
idlc | udk | The Uno IDL compiler. |
Instsetoo native | installation | install set for oo, native installers - |
io | |
Provides socket and pipe acceptors / connectors, as well as text input / output streams. |
javaunohelper | udk | Java Uno components implementation helpers. |
jurt | udk | Java Uno Runtime - Basically Java Uno. |
Jvmaccess, Jvmfwk | udk | wrappers so you can use all the Java Runtime Environments with their slightly incompatible APIs with ease. Hah. |
Libwpd | |
external library. Not modified. http://libwpd.sourceforge.net/ wordperfect filter - SAX api - emits callbacks when things happen |
Libxmlsec | |
external library. (Still) heavily patched. http://www.aleksey.com/xmlsec/ to do XML signing, etc. |
Lingucomponent | lingucomponent | spellcheck, hyphenator, thesaurus, ... |
Linguistic | sw | This component manages all registered linguistic module implementations for spellchecker, hyphenator and thesaurus. |
Lpsolve | |
external library that provides a mixed integer linear programming (MILP) solver, see http://lpsolve.sourceforge.net |
MathMLDTD | |
MathMLDTD to implement XML Math format, see http://www.w3.org/TR/REC-MathML |
Msfontextract | |
external library. http://www.kyz.uklinux.net/libmspack/ for use in FontOOo (unpacking the downloaded Microsoft fonts (webfont); removed after 3. |
Nas | external | The Network Audio System (NAS), An Audio Protocol For Networks. See http://radscan.com/nas.html |
Neon | external | web library to help deal with WebDAV or other protocols |
Np sdk | external | Netscape Plugin SDK. Header to build Mozilla plugins. |
Odk | api | office development kit - implements the first step on the way to the OpenOffice.org SDK tarball |
Offapi | api | all of the Uno IDL files except those in udkapi - i.e. the interfaces that are specific to the OpenOffice.org application. |
Officecfg | |
the schema and default settings for the OpenOffice.org configuration database |
Offuh | api | Tiny module to build the generate the C++ Uno headers. |
Ooo custom images | |
themes, custom themes |
oox | |
OpenXML parser |
Package | xml | Reading and writing zips |
Padmin | gsl | printer administration dialog - used lpr - obsolete with CUPS and fontconfig, but still used for some things |
Postprocess | |
Postprocessing and checking of files delivered by other modules. This module has to be the last one before creating install sets in module 'instset_native'. |
Psprint | gsl | postscript print - unix only - implements font discovery, interface to CUPS / lpr, query and basic PS - dump PS on print - actual PS rendering inside vcl ??? |
Psprint config | |
ppds for use by psprint when not using CUPS |
Pyuno | udk | Uno binding for python |
QadevOOo | |
qa testsuite |
rdbmaker | udk | makes registries for openoffice for storing type data, etc./? |
Readlicense oo | |
reading oo license when starting up |
Regexp | |
regular expression matching |
registry | udk | UNO services and types registry access |
remotebridges | udk | Uno services dealing with interprocess bridges. |
Rhino | |
java script engine/interpreter |
ridljar | udk | Generators Java Uno types (like Offuh). |
Rsc | gsl | resource compiler - turns resource descriptions src and hrc files scattered throughout. |
sal | porting | system abstraction layer - rtl, osl and sal (rtl - platform independent strings, osl - platform specific stuff, threads, dynamic loading, process, ipc, etc.). Exports only C API and some inline-methods-only C++ API |
salhelper | udk | C++ helpers to make use of sal easier |
sandbox | |
Generic sandboxing, e.g. used for Java applet embedding stuff. Totally useless without a Sun JDK. Removed after 3.2. |
Sane | external | external scanner library |
Sax | xml | wrapper around expat using Uno. |
Sc | sc | calc - the Spreadsheet core |
Scaddins | |
extra functions for calc |
Scp2 | installation | script particles - being rewritten for oo2. all of installation was driven by starbasic - this is now in instsetoo-native |
Scripting | framework | scripting framework - for java, python, etc. to play together and uses UNO |
Sd | graphics | Impress and Draw components. Think of Impress as hack on top of Draw. |
Sdext | graphics | Extensions for the Impress and Draw applications. |
Setup-native | installation | ? |
Sfx2 | framework | Some gui code; list of documents open would be tracked - raw C++ code; gutsy core of document management and loading. |
Shell | gsl | system helpers - launching URI, recently used files, system integration, external mailer support, gconf integration etc. |
Slideshow | graphics | new impress slideshow engine in OO.o 2.0 |
Smoketestoo native | installation | Test code to launch each component for a smoke test. |
Sndfile | external | soundfile - library for loading all kinds of sound - external lib ??? |
Solenv | tools | make and build infrastructure - solar (think: Sun or Star Division) environment |
Soltools | |
all sorts of build tools |
Sot | |
Code to access files based on OLE Storages and get the bits out of them |
Starmath | sw | formula editor |
stlport | |
external library. STL implementation, from the days when compilers had crappy implementations. |
stoc | udk | Core Components for Binary Uno (e.g. registry access, reflection, introspection). |
Store | |
Storage implementations, used by Uno registries. |
Svtools | framework | Common dialogs, file and print dialogs, wizards, vcl filters, lots of helper code |
Svx | graphics | Graphics related helper code - xoutdev - rendering - This is where a lot of work would happen to move to the canvas. svdraw - transparent gradient stuff. Lot of the Draw and Impress code is in this module. Part if the PPT binary importer is in there too (moved to filter module after 3.2) |
Sw | sw | writer - the word processing core |
Sysui | gsl | .desktop files for different distros |
Toolkit | gsl | abstract windowing thing- Uno implementations of windows stuff - so can be used from basic |
Tools | framework | predates sal - string etc. functions, URL manipulation, stream stuff, polygons, etc. |
Transex3 | l10n | translation tools |
Twain | |
Windows scanner support |
Ucb | |
Universal Content Broker (has ucp) which do things like convert files to strings in content broker world. |
Ucbhelper | |
C++ wrappers to help make using content providers easy |
api | URE API definition - Uno IDL files | |
Udm | tools | part of Autodoc |
UnixODBC | |
external lib |
UnoControls | gsl | separate process and thread for progress bars, etc. |
Unoil | udkapi | Like offuh for Java Uno - Generates Java class files from OOo application Uno types. |
Unotools | udk | helpers for C++ use of UNO |
Unoxml | framework | Uno wrappers for XML services |
Ure | udk | beginnings of standalone UNO distribution foo. |
Uui | |
An Interaction Handler (not only) for the UCB. It uses VCL to visualize and handle interaction requests, for eg. authentication dialogs for file operations. |
Vcl | gsl | base windowing toolkit abstraction Visual Class Libraries, and graphical output layer - includes backends for unix & Win32 |
Vigra | |
Template framework from here. VIGRA stands for "Vision with Generic Algorithms". Used from Basebmp. |
Vos | udk | (Virtual Object System) - deprecated but still used, lots of sal like stuff |
Wizards | installation | java wizards for db setup, importing, tutorials, etc. |
Writerperfect | framework | word perfect filter - wrapper for libwpd |
X11 extensions | |
headers for XRender support |
Xmerge | xml | The XMerge SDK provides a Java-based framework for converting documents between different formats using conversion plugins to read and write each format. See http://xml.openoffice.org/xmerge |
Xml2cmp | |
Comes with the OO SDK. xml2cmp is launched in general by a makefile to extract types from a xml file |
Xmlhelp | |
Help reader and viewer for online help |
Xmloff | xml | OpenDocument import / export filter. |
Xmlscript | |
Implements XML dialogs serialization. |
Xmlsecurity | xml | Document signing |
Accessibility | Accessibility | Accessibility for OpenOffice.org |
Afms | |
|
Apache-commons | |
External Java libraries; used for logging and http/https access in Extensions |
Bitstream vera fonts | |
|
Cairo | |
|
Comphelper | |
Some helper classes for low level work |
Cppunit | |
Obsolete: unit testing now using Googletest. Info |
Dictionaries | Lingucomponent | Default installed dictionaries in extension format |
Drawinglayer | |
|
External images | |
|
Fondu | |
|
Formula | |
|
Graphite | |
|
Guw | |
Obsolete |
Hunspell | |
Hunspell as dictionary support (external library) |
Hyphen | |
Hyphenator (external library) |
Javainstaller2 | Installation | The Java installer for UNIX and Linux |
Jfreereport | |
External Java library providing basic functionality for the report builder |
Jpeg | |
|
L10n | |
Module containing all localization content |
Libegg | |
|
Libtextcat | |
External library providing functionality to guess the language of a text |
Libxml2 | |
|
Libxslt | |
|
Lucene | |
|
Migrationanalysis | |
|
Moz | |
|
Nss | |
Containes the security libraries which are also part of moz. However nss is meant to be more current. |
O3tl | |
|
Oovbaapi | |
|
Oowintool | |
|
Openssl | |
|
Packimages | |
Module that generates packed images lists according to the lists generated from the source code |
Python | |
|
Redland | |
|
Reportbuilder | |
|
Reportdesign | |
|
Saxon | |
|
Sccomp | |
|
Soldep | |
External tool that can generate dependency diagrams from the various build.lst files |
Stax | |
|
Swext | |
Writer extensions (currently only MediaWiki Extension) |
Testautomation | |
All test scripts for the GUI Testtool |
Testshl2 | |
Library utilizing cppunit to implement a unit test framework |
Testtools | |
Some tests for UNO bridges and language bindings |
Tomcat | |
External Java library, used by Apache-Commons |
Unodevtools | |
|
Writerfilter | |
Library containing the docx import filter (and later also doc and rtf import filters) |
Xpdf | |
|
Xsltml | |
|
Zlib | |
|
The directory solver
is not a module, it is the output tree of the build that is created automatically once a build is started.
- ↑ Project hosting this module.