Test repository to check push and ssh key
Find a file
Miklos Vajna c7c8044f57 Indentation fixes
Change-Id: Idcb2b7e01a84d49c3b0cf53f6d53265111e68fdd
2015-12-22 13:44:21 +01:00
.git-hooks
accessibility Remove unused ToolPanel (aka TaskPane) 2015-12-17 08:27:55 +00:00
android
animations
apple_remote
avmedia loplugin::stringconcat 2015-12-20 12:17:40 +01:00
basctl
basebmp
basegfx
basic BASIC : Refactor FoldConstants for extracting it from SwExprNode. 2015-12-22 11:13:03 +00:00
bean
bin Remove outdated industrial icon theme 2015-12-19 08:10:41 +00:00
binaryurp
bridges Kill check for ancient FreeBSD version 2015-12-19 21:09:26 +00:00
canvas Resolves: tdf#93703 0 scaling is CAIRO_STATUS_INVALID_MATRIX 2015-12-21 21:24:27 +00:00
chart2 assert that no ODF import happens without a BaseURL 2015-12-16 20:37:39 +01:00
clew
cli_ure
codemaker
comphelper loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
compilerplugins compilerplugins: avoid std::regex_replace 2015-12-21 17:31:01 +01:00
config_host do not require newest libe-book for build 2015-12-17 23:03:16 +01:00
configmgr
connectivity loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
cppcanvas
cppu
cppuhelper
cpputools
cui loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
dbaccess dbaccess: module_dba not used anymore 2015-12-18 16:51:14 +01:00
desktop loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
dictionaries@38ddd6c1bd
distro-configs
drawinglayer loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
dtrans
editeng cppcheck: false positive memleak 2015-12-20 21:55:42 +01:00
embeddedobj embeddedobj: do not automatically convert alien objects to own 2015-12-20 00:56:06 +01:00
embedserv
eventattacher
extensions tdf#96398 kill remaining NPAPI support for plugins _inside_ LO 2015-12-17 15:31:17 +00:00
external external/libxslt: run macosx-change-install-names.pl for dylib 2015-12-20 00:10:32 +00:00
extras update emoji autocorrect files from po-files 2015-12-15 20:32:00 +01:00
filter coverity#707837 Uninitialized scalar field 2015-12-21 10:46:57 +00:00
forms coverity#1343619 Unchecked return value 2015-12-19 18:10:14 +00:00
formula Formula Wizard: evaluating expressions always in matrix context is wrong 2015-12-18 23:28:14 +01:00
fpicker
framework loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
helpcompiler
helpcontent2@78c7e1c24a Updated core 2015-12-18 17:32:40 +00:00
hwpfilter
i18nlangtag
i18npool
i18nutil coverity#1343620 Unchecked return value 2015-12-19 18:10:13 +00:00
icon-themes Remove outdated industrial icon theme 2015-12-19 08:10:41 +00:00
idl loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
idlc
include loplugin:unusedfields in include/vcl 2015-12-22 09:44:37 +00:00
instsetoo_native
io
ios
javaunohelper related tdf#86784: new API got backported to 5.1 2015-12-21 18:26:14 +01:00
jurt
jvmaccess
jvmfwk
l10ntools Add snide comment 2015-12-20 11:02:50 +02:00
librelogo
libreofficekit coverity#1315075 Uninitialized scalar field 2015-12-21 10:46:57 +00:00
lingucomponent loplugin:unusedfields in lingu,lotuswordpro,mysqlc 2015-12-22 10:16:36 +02:00
linguistic loplugin:unusedfields in lingu,lotuswordpro,mysqlc 2015-12-22 10:16:36 +02:00
lotuswordpro loplugin:unusedfields in lingu,lotuswordpro,mysqlc 2015-12-22 10:16:36 +02:00
m4 add support for version detection of libs 2015-12-17 23:03:14 +01:00
mysqlc loplugin:unusedfields in lingu,lotuswordpro,mysqlc 2015-12-22 10:16:36 +02:00
nlpsolver
o3tl
odk
offapi tdf#96398 kill remaining NPAPI support for plugins _inside_ LO 2015-12-17 15:31:17 +00:00
officecfg tdf#94865 resolve duplicate accelerator - File>Template and File>Export 2015-12-22 11:29:55 +00:00
onlineupdate
oovbaapi
oox tdf#96051: FILESAVE: Roundtrip any PPTX file with Shapes creates invalid OOXML 2015-12-22 10:42:44 +01:00
opencl
osx
package loplugin:unusedfields in oox,package 2015-12-22 09:53:27 +02:00
postprocess
pyuno
qadevOOo coverity#1326924 NS: Suspicious use of non-short-circuit boolean operator 2015-12-21 10:46:57 +00:00
readlicense_oo update credits 2015-12-15 20:18:00 +01:00
registry loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
remotebridges
reportbuilder
reportdesign loplugin:unusedfields in reportdesign 2015-12-22 09:53:27 +02:00
ridljar
rsc
sal sal: replace a list with vector 2015-12-20 00:56:08 +01:00
salhelper
sax
sc loplugin:unusedfields in sc 2015-12-22 09:53:27 +02:00
scaddins
sccomp
scp2 Remove gnome-open support 2015-12-17 13:56:22 +00:00
scripting loplugin:unusedfields in scripting 2015-12-22 09:53:26 +02:00
sd tdf#96051: FILESAVE: Roundtrip any PPTX file with Shapes creates invalid OOXML 2015-12-22 10:42:44 +01:00
sdext loplugin:unusedfields sdext 2015-12-21 13:51:29 +02:00
setup_native
sfx2 loplugin:unusedfields in sfx2,slideshow,starmath,stoc 2015-12-21 13:51:29 +02:00
shell Remove gnome-open support 2015-12-17 13:56:22 +00:00
slideshow loplugin:unusedfields in sfx2,slideshow,starmath,stoc 2015-12-21 13:51:29 +02:00
smoketest
solenv solenv: clarify maven/buck/jar upload howto 2015-12-20 14:37:58 +01:00
soltools
sot
starmath Indentation fixes 2015-12-22 13:44:21 +01:00
stoc loplugin:unusedfields in sfx2,slideshow,starmath,stoc 2015-12-21 13:51:29 +02:00
store loplugin:unusedfields in store,svtools,svx 2015-12-21 13:51:29 +02:00
svgio
svl crashtesting: post NPAPI removal crash fixing 2015-12-21 21:24:27 +00:00
svtools tdf#96637 svtools: fix missing highlight of selected entry in list box 2015-12-21 14:57:06 +01:00
svx Rearrangement of various context menus in Impress 2015-12-22 08:45:02 +00:00
sw Indentation fixes 2015-12-22 13:44:21 +01:00
swext
sysui Remove gnome-open support 2015-12-17 13:56:22 +00:00
test unused code 2015-12-20 16:20:21 +00:00
testtools
toolkit toolkit: mark AccessibleScrollBar:XAccessibleEventBroadcaster as a known issue 2015-12-21 09:19:59 +01:00
tools loplugin:unusedmethods 2015-12-21 10:20:31 +02:00
translations@3e76f6b637 Updated core 2015-12-15 18:43:46 +00:00
tubes
ucb loplugin:unusedfields UnoControls,ucb 2015-12-21 12:45:50 +02:00
ucbhelper
udkapi
UnoControls loplugin:unusedfields UnoControls,ucb 2015-12-21 12:45:50 +02:00
unodevtools
unoidl
unoil
unotest
unotools loplugin:unusedfields unotools,unoxml 2015-12-21 12:45:50 +02:00
unoxml loplugin:unusedfields unotools,unoxml 2015-12-21 12:45:50 +02:00
ure
uui
vbahelper loplugin:unusedfields vbahelper 2015-12-21 12:45:50 +02:00
vcl vcl: switch from ImplFindBySearchName to FindFontFamily 2015-12-22 08:44:12 +00:00
winaccessibility
windows
wizards
writerfilter writerfilter: can use a plain instance for the table sequence here 2015-12-22 09:08:43 +01:00
writerperfect loplugin:unusedfields writerfilter,writerperfect 2015-12-21 12:45:49 +02:00
xmerge
xmlhelp loplugin:unusedfields in xmlhelp,xmloff 2015-12-21 12:45:49 +02:00
xmloff loplugin:unusedfields in include/vcl 2015-12-22 09:44:37 +00:00
xmlreader
xmlscript loplugin:unusedfields in xmlscript,xmlsecurity 2015-12-21 12:45:49 +02:00
xmlsecurity loplugin:unusedfields in xmlscript,xmlsecurity 2015-12-21 12:45:49 +02:00
.buckconfig
.buckversion
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub
config_host.mk.in tdf#96398 kill remaining NPAPI support for plugins _inside_ LO 2015-12-17 15:31:17 +00:00
config_host_lang.mk.in
configure.ac Remove outdated industrial icon theme 2015-12-19 08:10:41 +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 Drop the Windows information, nobody has done that for years 2015-12-17 21:23:24 +02:00
README.md
README.Solaris
Repository.mk tdf#96398 kill remaining NPAPI support for plugins _inside_ LO 2015-12-17 15:31:17 +00:00
RepositoryExternal.mk remove unused gb_LinkTarget__use_npapi_headers 2015-12-18 13:18:11 +01:00
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER
unusedcode.easy unused code 2015-12-22 08:18:48 +00:00
unusedcode.exclude unused code 2015-12-20 16:20:21 +00:00
unusedcode.README

LibreOffice

Coverity Scan Build Status

LibreOffice is an integrated office suite based on copyleft licenses and compatible with most document formats and standards. Libreoffice is backed by The Document Foundation, which represents a large independent community of enterprises, developers and other volunteers moved by the common goal of bringing to the market the best software for personal productivity. LibreOffice is open source, and free to download, use and distribute.

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.