Test repository to check push and ssh key
Find a file
Eike Rathke 2d636b56d8 add block/subset names new in Unicode Standard 8.0 / ICU 56
Change-Id: I42685ff22f61f2c6c82439dd23393fd1ac17daa0
2015-10-21 14:48:20 +02:00
.git-hooks
accessibility refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
android
animations
apple_remote
avmedia Improve awkward dialog title 2015-10-21 06:43:04 -05:00
basctl loplugin:defaultparams 2015-10-20 11:44:40 +02:00
basebmp
basegfx loplugin:defaultparams 2015-10-20 11:44:45 +02:00
basic loplugin:defaultparams 2015-10-20 11:44:49 +02:00
bean coverity#1326431 Dereference null return value 2015-10-20 21:18:36 +01:00
bin
binaryurp
bridges
canvas
chart2 refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
clew
cli_ure
codemaker loplugin:defaultparams 2015-10-20 11:44:58 +02:00
comphelper Rename some "document name" params to "document URL" 2015-10-20 15:18:26 +02:00
compilerplugins remove untyped Link<> 2015-10-21 07:44:43 +00:00
config_host
configmgr configmgr/dconf: Simplify Fleet Commander write-back mode 2015-10-21 13:59:50 +02:00
connectivity refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
cppcanvas
cppu
cppuhelper
cpputools
cui remove untyped Link<> 2015-10-21 07:44:43 +00:00
dbaccess Fix indentation. 2015-10-21 08:40:26 +02:00
desktop afl-eventtesting: shutdown cleaner to allow things to deregister 2015-10-20 21:18:31 +01:00
dictionaries@c0bdbe9e78
distro-configs
drawinglayer loplugin:defaultparams 2015-10-20 11:45:15 +02:00
dtrans
editeng loplugin:defaultparams 2015-10-20 11:45:21 +02:00
embeddedobj remove untyped Link<> 2015-10-21 07:44:43 +00:00
embedserv
eventattacher
extensions boost::ptr_vector->std::vector 2015-10-21 14:45:34 +02:00
external Upgrade to ICU 56.1 2015-10-21 10:45:56 +02:00
extras
filter sc: initial png export 2015-10-20 18:12:23 +02:00
forms refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
formula loplugin:defaultparams 2015-10-19 17:50:12 +02:00
fpicker remove untyped Link<> 2015-10-21 07:44:43 +00:00
framework impl_mergeMediaDescriptorWithMightExistingModelArgs is a sick function name. 2015-10-21 09:26:09 +02:00
helpcompiler
helpcontent2@fc9a304d9d
hwpfilter com::sun::star->css in hwpfilter/ 2015-10-19 15:33:26 +02:00
i18nlangtag com::sun::star->css in i18nlangtag 2015-10-19 11:06:29 +00:00
i18npool loplugin:defaultparams 2015-10-20 11:45:49 +02:00
i18nutil com::sun::star->css in i18nutil 2015-10-20 07:02:24 +00:00
icon-themes Breeze Icons: Breeze Icons are changed at some icons LO was synced 2015-10-19 21:53:31 +00:00
idl
idlc
include add block/subset names new in Unicode Standard 8.0 / ICU 56 2015-10-21 14:48:20 +02:00
instsetoo_native
io
ios
javaunohelper
jurt coverity#1327460 DLS: Dead local store 2015-10-20 21:18:33 +01:00
jvmaccess
jvmfwk
l10ntools start next find at previous endpos, not one after previous startpos 2015-10-21 14:20:04 +02:00
librelogo
libreofficekit lokdocview: Emit a warning after error 2015-10-21 12:10:49 +00:00
lingucomponent
linguistic
lotuswordpro loplugin:defaultparams 2015-10-20 11:45:55 +02:00
m4
mysqlc refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
nlpsolver More plausible fix 2015-10-21 10:57:59 +02:00
o3tl
odk
offapi Nothing "new" with these 2015-10-21 14:28:49 +03:00
officecfg Clean up documentation of SymbolStyle prop 2015-10-20 14:17:32 +02:00
onlineupdate
oovbaapi
oox loplugin:defaultparams 2015-10-20 11:45:59 +02:00
opencl
osx
package
postprocess sc: initial png export 2015-10-20 18:12:23 +02:00
pyuno
qadevOOo In ValueChanger, don't accidentally modify oldValue 2015-10-21 13:59:09 +02:00
readlicense_oo
registry
remotebridges
reportbuilder
reportdesign loplugin:defaultparams 2015-10-20 11:46:05 +02:00
ridljar coverity#1326356 presumably a deliberate fall through 2015-10-20 21:18:36 +01:00
rsc loplugin:defaultparams 2015-10-20 11:46:10 +02:00
sal
salhelper
sax new loplugin: badvectorinit 2015-10-20 11:35:31 +00:00
sc refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
scaddins loplugin:defaultparams 2015-10-19 17:50:56 +02:00
sccomp
scp2
scripting coverity#1326553 Dereference before null check 2015-10-20 21:18:35 +01:00
sd sd: fix typo in PresenterHelper 2015-10-21 10:10:45 +02:00
sdext loplugin:defaultparams 2015-10-20 11:46:27 +02:00
setup_native
sfx2 refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
shell
slideshow No, it isn't 2015-10-21 11:33:53 +03:00
smoketest
solenv tdf#95169 - copy snk files before using them to link. 2015-10-20 07:51:59 +00:00
soltools
sot loplugin:defaultparams 2015-10-20 11:46:34 +02:00
starmath loplugin:defaultparams 2015-10-20 11:46:38 +02:00
stoc loplugin:defaultparams 2015-10-19 17:51:22 +02:00
store
svgio loplugin:defaultparams 2015-10-20 11:46:42 +02:00
svl refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
svtools refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
svx add block/subset names new in Unicode Standard 8.0 / ICU 56 2015-10-21 14:48:20 +02:00
sw refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
swext coverity#1326963 RV: Bad use of return value 2015-10-20 21:18:34 +01:00
sysui
test loplugin:defaultparams 2015-10-20 11:47:07 +02:00
testtools
toolkit remove untyped Link<> 2015-10-21 07:44:43 +00:00
tools loplugin:defaultparams 2015-10-20 11:47:14 +02:00
translations@b29df8cb30 Updated core 2015-10-19 04:04:58 +00:00
tubes remove untyped Link<> 2015-10-21 07:44:43 +00:00
ucb
ucbhelper
udkapi
UnoControls cleanup some local var declarations 2015-10-19 13:08:29 +02:00
unodevtools
unoidl
unoil
unotest
unotools convert remaing DBG_WARNING to SAL_INFO 2015-10-19 13:08:29 +02:00
unoxml
ure
uui Gracefully handle URLs INetURLObject refuses to parse 2015-10-20 14:46:56 +02:00
vbahelper
vcl refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
winaccessibility
wizards coverity#1326559 Dereference before null check 2015-10-20 21:18:35 +01:00
writerfilter loplugin:defaultparams 2015-10-20 11:47:22 +02:00
writerperfect
xmerge coverity#1326242 Dereference after null check 2015-10-20 21:18:36 +01:00
xmlhelp
xmloff refactor out some com::sun::star typedefs 2015-10-21 14:17:56 +02:00
xmlreader
xmlscript
xmlsecurity remove untyped Link<> 2015-10-21 07:44:43 +00:00
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
config.guess
config.sub
config_host.mk.in Add DLOPEN_LIBS to configure for some cases where -ldl is needed 2015-10-20 15:17:58 +00:00
config_host_lang.mk.in
configure.ac Upgrade to ICU 56.1 2015-10-21 10:45:56 +02:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst Upgrade to ICU 56.1 2015-10-21 10:45:56 +02:00
g
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch
Makefile.gbuild
Makefile.in android/source/AndroidManifest.xml is not generated during the build 2015-10-19 14:00:31 +02:00
README.cross
README.md
README.Solaris
Repository.mk Add DLOPEN_LIBS to configure for some cases where -ldl is needed 2015-10-20 15:17:58 +00:00
RepositoryExternal.mk
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk
TEMPLATE.SOURCECODE.HEADER
unusedcode.easy
unusedcode.exclude
unusedcode.README

LibreOffice

Coverity Scan Build Status

A quick overview of the LibreOffice code structure.

Overview

You can develop for LibreOffice in one of two ways, one recommended and one much less so. First the somewhat less recommended way: it is possible to use the SDK to develop an extension, for which you can read the API docs here and here. This re-uses the (extremely generic) UNO APIs that are also used by macro scripting in StarBasic.

The best way to add a generally useful feature to LibreOffice is to work on the code base however. Overall this way makes it easier to compile and build your code, it avoids any arbitrary limitations of our scripting APIs, and in general is far more simple and intuitive - if you are a reasonably able C++ programmer.

The important bits of code

Each module should have a README file inside it which has some degree of documentation for that module; patches are most welcome to improve those. We have those turned into a web page here:

http://docs.libreoffice.org/

However, there are two hundred modules, many of them of only peripheral interest for a specialist audience. So - where is the good stuff, the code that is most useful. Here is a quick overview of the most important ones:

Module Description
sal/ this provides a simple System Abstraction Layer
tools/ this provides basic internal types: 'Rectangle', 'Color' etc.
vcl/ this is the widget toolkit library and one rendering abstraction
framework UNO framework, responsible for building toolbars, menus, status bars, and the chrome around the document using widgets from VCL, and XML descriptions from /uiconfig/ files
sfx2/ legacy core framework used by Writer/Calc/Draw: document model / load/save / signals for actions etc.
svx/ drawing model related helper code, including much of Draw/Impress

Then applications

Module Description
desktop/ this is where the 'main' for the application lives, init / bootstrap. the name dates back to an ancient StarOffice that also drew a desktop
sw/ Writer
sc/ Calc
sd/ Draw / Impress

There are several other libraries that are helpful from a graphical perspective:

Module Description
basebmp/ enables a VCL compatible rendering API to render to bitmaps, as used for LibreOffice Online, Android, iOS, etc.
basegfx/ algorithms and data-types for graphics as used in the canvas
canvas/ new (UNO) canvas rendering model with various backends
cppcanvas/ C++ helper classes for using the UNO canvas
drawinglayer/ View code to render drawable objects and break them down into primitives we can render more easily.

Finding out more

Beyond this, you can read the README files, send us patches, ask on the mailing list libreoffice@lists.freedesktop.org (no subscription required) or poke people on IRC #libreoffice-dev on irc.freenode.net - we're a friendly and generally helpful mob. We know the code can be hard to get into at first, and so there are no silly questions.