Source code directories

From Apache OpenOffice Wiki
Revision as of 11:50, 15 November 2005 by Thb (Talk | contribs)

Jump to: navigation, search

Below is a (somewhat terse) description of the various directories for OpenOffice source code.

agg antigrain geometry lib (from, a software renderer used in canvas
animation Containers for the css::animation UNO API, used in slideshow and sd
autodoc html pages from c++, java, idl inline documentation
avmedia Audio/Video media implementation - requires a working Java Media Framework (JMF)
  • currently can't play streams only file-system URIs anyway.
basctl controls and dialogs - basic
basegfx algorithms and data types for graphics (e.g. polygons, vectors, matrices and the like - see that used in canvas)
basic basic interpreter
bean office bean <not useful>
beanshell java interpreter - so you can write java in command shell,
berkeleydb external library. simple db - used for search in help and galleries
boost external (C++ template) library:
bridges bridges from various C++ ABIs, Java JNI, MS .Net to UNO and back. Also implementation of the UNO Remote Protocol. And in ooo-build a bridge from Mono to UNO and back.
canvas new canvas implementation to improve rendering, various backends implement the new XCanvas API eg. cairo / DirectX
chart2 new chart not used yet (in OO.o 2.0)
cli_ure Common Lang Infrastructure Uno Runtime Environment -- support assemblies and tools for the MS .Net (and Mono) UNO binding
codemaker UNO interface declaration/stub generators for C++ (headers), Java (class files), ... (the one for .Net is in cli_ure)
configmgr runtime - toolbar, is it gonna do spellchecking, etc.
config_office build configs, configure scripts, autotools, etc.
connectivity database pieces, drivers, etc.
cosv "Common Services," part of autodoc
cppcanvas helper C++ classes for canvas, plus a GDIMetaFile-to-XCanvas converter
cppu type definitions/implementations for the core of UNO. The exported API is in C
cppuhelper helpers for using cppu in C++. e.g. templates for implementing UNO components. bootstrapping stuff - get UNO up & running
cpputools old way of doing component registration. nowdays another stand-alone ui & tools called UNO package
crashrep reports crashes (novell disabled that)
curl external library curl (a URL manipulation engine)
dbaccess data base access tools
default_images all images and resources
desktop what used to be the desktop in SO5 - now the binary
dmake the dmake tool itself, built by running 'bootstrap' after configure
dtrans clipboard abstraction - data transfer
epm enhanced package manager- nasty hack for packaging
  • not useful - but default build uses, every linux packager disables this
eventattacher how basic handles events -
expat external library with added UCS2 support, ... simple SAX parser
extensions browser plugin, activex control, scanner bits
external placeholder for extra code needed to build
extras 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 filter registration and some simple filters (also descriptions
forms embedded forms control and pieces (design forms in documents, fields and database driven)
fpicker native file pickers for Unix and Windows (file open dialog) GTK+, KDE, Windows
Framework UI rewrite, toolbars, menus, UNO stuff, including accelerators & interaction, etc.
goodies graphics filters, 3d and 2d graqphics pieces
helpcontent2 for 2 - english + other languages help content
hsqldb external library. Java database engine. Default database format for
hwpfilter filter for a word processor file format popular in Korea. (Hangul Word Processor)
i18npool internationalization, counting, calendaring, complex text layout
i18nutil small bits of internationalization
icu external library. International (IBM? ;-)) Components for Unicode Complex Text Layout (Indian), Information about characters, number formats, other locale information.
idlc idl compiler
instsetoo_native install set for oo, native installers -
io simple IO wrappers
javaunohelper makes it easy to use UNO with java
jurt and jut java related
jvmaccess, jvmfwk wrappers so you can use all the Java Runtime Environments with their slightly incompatible APIs with ease. Hah.
libwpd external library. Not modified. wordperfect filter - SAX api - emits callbacks when things happen
libxmlsec external library. (Still) heavily patched. to do XML signing, etc.
lingucomponent spellcheck, hyphenator, thesaurus, ...
linguistic  ?
msfontextract external library. for use in FontOOo (unpacking the downloaded Microsoft fonts (webfont))
nas network audio server library
neon web library to help deal with WebDAV or other protocols
netbeans_integration java?
np_sdk Netscape Plugin SDK. Header to build Mozilla plugins.
odk office development kit - implements the first step on the way to the SDK tarball
offapi all of the idl files except those in UNO calls - artificial separation
officecfg defaults, the schema and settings for Openoffice
offuh tiny component to build the idl into c++ headers
oocustomimages themes, custom themes
packages reading and writing zips
padmin printer administration dialog - used lpr - obsolete with CUPS and fontconfig, but still used for some things
portaudio an audio output library for various sound setups.
postprocess build related dependencies -
psprint 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 uno binding for python
qadev  ?
rdbmaker makes registries for openoffice for storing type data, etc./?
readlicense_oo reading oo license when starting up
regexp regular expression matching
registry registry reading, etc.
remotebridges UNO services dealing with interprocess bridges.
rhino java script engine/interpreter
ridljar java thing
rsc resource compiler - turns resource descriptions src and hrc files scattered throughout.
rvpapi  ?
sablot external library. yet another xslt implementation in the tree (in C++)
sal 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 C++ helpers to make use of sal easier
sandbox java applet embedding stuff. Totally useless without a Sun JDK.
sane external scanner library
sax wrapper around expat using UNO
sc calc - the Spreadsheet core
scaddins extra functions for calc
sch current charging engine
scp2 script particles - being rewritten for oo2. all of instalation was driven by starbasic - this is now in instsetoo-nativ
scripting scripting framework - for java, python, etc. to play together and uses UNO - noel working on
sd impress and draw components . impress think as hack on top of draw.
sdk_oo software development kit OO - implements the second step on the way to the SDK tarball (see odk)
setup-native  ?
sfx2 gui code, much of which is now deprecated - list of documents open would be traceked - raw C__ code; gutsy core of document management and loading.
shell system helpers - launching URI, recently used files, system integration, external mailer support, etc.
sj2 java?
slideshow new impress slideshow engine in OO.o 2.0
sndfile soundfile - library for loading all kinds of sound - external lib
so3  ?
solenv make and build infrastructure - solar (think: Sun or Star Division) environment
soltools all sorts of build tools
solver dumping ground for binaries as object output
sot compound file storage tools code (?)
starmath formula editor
stlport external library. STL implementation, from the days when compilers had crappy implementations.
stoc registries, reflection, introspection implementation for UNO
store streams, mmaps, etc.
svtools useful code, common dialogs, file and print dialogs, wizards, vcl filters, lots of helper code
svx graphics related helper code - xoutdev - rendering - this is where a lot of wht work would happen to move to the canvas. svdraw - transparent gradient stuff . lots of the draw and impress code is in this shared lib
sw writer - the word processing core
sysui .desktop files for different distros
toolkit abstract windowing thing- uno imples of windows stuff - so can be used from basic
tools predates sal - string etc . functions, url manip, stream stuff, polygons, etc.
transex3 translation tools
twain Windows scanner support
ucb 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
udkapi low level UNO stuff API idl files
udm part of autodoc
unixODBC external lib
unocontrols separate process and thread for progress bars, etc.
unoil  ?
unotools helpers for C++ use of UNO
unoxml UNO wrappers for XML services
unzip used by installer
ure beginnings of standalone UNO distribution foo.
uui  ?
vcl base windowing toolkit abstraction Visual Class Libraries, and graphical output layer - includes backends for unix & Win32
vos (virt obj system) - deprecated but still used, lots of sal like stuff
wizards java wizards for db setup, importing, tutorials, etc.
writerperfect word perfect filter - wrapper for libwpd
X11_extensions headers for XRender support
xalan external library. java xslt implementation
xmerge , xml2cmp  ?
xmlhelp help reader and viewer for online help
xmloff common xml import and export filter logic
xmlscript  ?
xmlSearch  ?"
xmlSecurity document signing
Personal tools