Test repository to check push and ssh key
Find a file
Noel Grandin 9cfa287272 convert Link<> to typed
Change-Id: I04987cc8c3eab52a7191d75cf0a9cde9049bfbd4
2015-10-19 09:05:56 +02:00
.git-hooks
accessibility Revert "bin confusion with name AccessibleGridControlTableImplHelper" 2015-10-13 08:49:00 +02:00
android android: show flat ODS files in the doc browser 2015-10-15 08:50:50 +02:00
animations
apple_remote
avmedia avmedia/quicktime: replace OSL_TRACE with SAL_INFO 2015-10-14 06:54:37 +00:00
basctl sfx items: Kill the unreadable SFX_REQUEST_ARG, use a template param instead. 2015-10-16 12:12:27 +02:00
basebmp -fsanitize=shift-exponent 2015-10-16 17:03:57 +02:00
basegfx
basic calling IsSet() before Call() on Link<> is unnecessary 2015-10-15 12:29:01 +02:00
bean cid#1326334 Unguarded read 2015-10-16 12:51:40 +02:00
bin drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
binaryurp
bridges
canvas
chart2 tdf#94960, Revert "it is insane to not map line and ..." 2015-10-18 14:52:12 +02:00
clew
cli_ure remove some useless comments 2015-10-13 10:07:49 +02:00
codemaker
comphelper cppcheck:noExplicitConstructor 2015-10-18 06:12:13 +00:00
compilerplugins loplugin:mergeclasses, merge IControlContext with OBrowserListBox 2015-10-13 10:07:50 +02:00
config_host Pass ENABLE_LIBLANGTAG into code via config_liblangtag.h 2015-10-14 10:14:18 +02:00
configmgr
connectivity tdf#72205 a VARCHAR and a LONGVARCHAR should compare equal 2015-10-18 16:46:16 +00:00
cppcanvas
cppu
cppuhelper remove some useless comments 2015-10-13 10:07:49 +02:00
cpputools
cui sfx items: Kill the SFX_ITEMSET_GET macro. 2015-10-19 07:20:33 +02:00
dbaccess sfx items: Kill the SFX_ITEMSET_GET macro. 2015-10-19 07:20:33 +02:00
desktop drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
dictionaries@c0bdbe9e78 Updated core 2015-10-15 08:30:16 +00:00
distro-configs drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
drawinglayer remove some useless comments 2015-10-13 10:07:49 +02:00
dtrans
editeng cppcheck:nullPointerRedundantCheck 2015-10-19 06:48:51 +00:00
embeddedobj
embedserv
eventattacher cppcheck:noExplicitConstructor 2015-10-18 06:12:13 +00:00
extensions cppcheck:noExplicitConstructor 2015-10-18 06:12:13 +00:00
external tdf#95024 fix compound word handling for new Hungarian orthography 2015-10-14 01:23:23 +02:00
extras update emoji autocorrect files from po-files 2015-10-18 02:07:01 -05:00
filter lok svg export: Default to exporting all slides, use the interactive SVG. 2015-10-16 17:05:34 +02:00
forms calling IsSet() before Call() on Link<> is unnecessary 2015-10-15 12:29:01 +02:00
formula convert Link<> to typed 2015-10-16 09:11:29 +00:00
fpicker convert Link<> to typed 2015-10-16 09:11:29 +00:00
framework convert "continue" flag to an enum 2015-10-16 10:56:05 +02:00
helpcompiler
helpcontent2@fc9a304d9d Updated core 2015-10-18 15:22:43 +00:00
hwpfilter
i18nlangtag Pass ENABLE_LIBLANGTAG into code via config_liblangtag.h 2015-10-14 10:14:18 +02:00
i18npool Fix typo 2015-10-19 10:07:50 +09:00
i18nutil
icon-themes Breeze Icon: add missing linked file - fixed 2015-10-14 20:19:10 +00:00
idl
idlc
include sfx items: Kill the SFX_ITEMSET_GET macro. 2015-10-19 07:20:33 +02:00
instsetoo_native drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
io coverity#1327454 Uncaught exception 2015-10-17 14:46:27 +01:00
ios
javaunohelper coverity#1326731 Dm: Dubious method used 2015-10-15 14:26:05 +01:00
jurt use AtomicInteger for _life_count 2015-10-15 11:28:09 +02:00
jvmaccess
jvmfwk
l10ntools
librelogo
libreofficekit Bump gtk+ version to 2.18 2015-10-14 08:09:40 +00:00
lingucomponent
linguistic
lotuswordpro clang-analyzer-deadcode.DeadStores 2015-10-13 18:30:31 +02:00
m4
mysqlc
nlpsolver coverity#1326260 Explicit null dereferenced 2015-10-15 14:26:07 +01:00
o3tl
odk coverity#1326731 Dm: Dubious method used 2015-10-15 14:26:05 +01:00
offapi Allow injection of keyboard and mouse events through UNO 2015-10-16 12:03:30 +00:00
officecfg tdf#59418 : Use both F4 and SHIFT+F4 for absolute reference toggle in calc 2015-10-17 15:21:12 +00:00
onlineupdate
oovbaapi
oox coverity#1327457 Uninitialized scalar field 2015-10-17 14:46:25 +01:00
opencl
osx
package
postprocess drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
pyuno
qadevOOo cid#1327106 UrF: Unread field 2015-10-16 14:40:24 +02:00
readlicense_oo update credits 2015-10-15 02:27:17 +02:00
registry
remotebridges
reportbuilder cid#1327023 to cid#1327077 SIC: Inner class could be made static 2015-10-15 09:23:16 +02:00
reportdesign Revert "cppcheck:duplInheritedMember" 2015-10-19 09:00:04 +02:00
ridljar [API CHANGE] Remove deprecated com.sun.star.uno.Union class 2015-10-15 09:20:24 +02:00
rsc
sal Resolves: #i126586# FreeBSD automation deadlock: osl_closeSocket()... 2015-10-14 09:17:44 +01:00
salhelper
sax
sc convert Link<> to typed 2015-10-19 09:05:56 +02:00
scaddins cppcheck:variableScope 2015-10-13 06:22:33 +00:00
sccomp
scp2 drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
scripting cid#1326721 to cid#1326726 Dm: Dubious method used 2015-10-16 12:50:49 +02:00
sd convert Link<> to typed 2015-10-19 09:05:56 +02:00
sdext Fix building with --enable-pdfimport on FreeBSD. 2015-10-13 09:21:03 +01:00
setup_native deb system integration postinst and postrm scripts are not needed here 2015-10-17 21:13:12 +02:00
sfx2 sfx items: Kill the SFX_ITEMSET_GET macro. 2015-10-19 07:20:33 +02:00
shell drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
slideshow slideshow: remove unecessary boost/bind includes 2015-10-19 06:52:58 +00:00
smoketest coverity#1326133 Logically dead code 2015-10-15 11:38:57 +01:00
solenv Missing dependencies 2015-10-16 17:55:13 +02:00
soltools
sot sot: prefix remaining StgStrm members 2015-10-13 09:37:49 +02:00
starmath convert Link<> to typed 2015-10-16 09:11:29 +00:00
stoc
store coverity#1326107 Unchecked return value 2015-10-14 10:59:43 +01:00
svgio make test more readable - use Primitive2DSequence 2015-10-14 22:39:44 +02:00
svl cppcheck:variableScope 2015-10-13 06:22:33 +00:00
svtools mark number as untranslatable 2015-10-18 11:58:49 +00:00
svx reorganise code, no behaviour change intended 2015-10-18 20:54:49 +02:00
sw Revert "cppcheck:duplInheritedMember" 2015-10-19 09:00:04 +02:00
swext coverity#1326241 Dereference after null check 2015-10-15 14:26:07 +01:00
sysui PREFIXDIR must be /usr for .deb system integration package 2015-10-17 20:11:43 +02:00
test
testtools cppcheck:variableScope 2015-10-15 06:49:23 +00:00
toolkit Allow injection of keyboard and mouse events through UNO 2015-10-16 12:03:30 +00:00
tools Reuse FRound from tools/helpers.hxx 2015-10-15 21:42:59 +02:00
translations@b29df8cb30 Updated core 2015-10-19 04:04:58 +00:00
tubes cppcheck:variableScope 2015-10-15 06:49:23 +00:00
ucb cppcheck:variableScope 2015-10-15 06:49:23 +00:00
ucbhelper
udkapi
UnoControls
unodevtools
unoidl
unoil
unotest
unotools calling IsSet() before Call() on Link<> is unnecessary 2015-10-15 12:29:01 +02:00
unoxml
ure
uui convert Link<> to typed 2015-10-16 09:11:29 +00:00
vbahelper
vcl Success is no reason to be scared 2015-10-18 10:59:28 +03:00
winaccessibility
wizards coverity#1326409 Dereference null return value 2015-10-15 11:38:52 +01:00
writerfilter tdf#36117 .docx preserve page vertical alignment after RT 2015-10-19 04:35:55 +00:00
writerperfect
xmerge coverity#1326266 Explicit null dereferenced 2015-10-15 14:26:08 +01:00
xmlhelp
xmloff cppcheck:variableScope 2015-10-15 06:49:23 +00:00
xmlreader
xmlscript
xmlsecurity
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
config.guess
config.sub
config_host.mk.in drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
config_host_lang.mk.in
configure.ac drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst
g
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch
Makefile.gbuild
Makefile.in
README.cross
README.md
README.Solaris drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
Repository.mk drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
RepositoryExternal.mk drop gconf integration as per ESC decision 2015-10-16 13:50:28 +00:00
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.