Test repository to check push and ssh key
Find a file
Caolán McNamara dbdc2ffb6f set parent for import macro lib dialog
Change-Id: I8c2174a6acee7aed8dca6d4674538f42cfe28ae6
Reviewed-on: https://gerrit.libreoffice.org/41810
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-09-02 00:36:37 +02:00
.git-hooks
accessibility
android android: remove a hard to address TODO 2017-09-01 11:18:50 +02:00
animations
apple_remote
avmedia bump FileDialogHelper to XFilePicker3 2017-09-01 16:58:41 +02:00
basctl set parent for import macro lib dialog 2017-09-02 00:36:37 +02:00
basegfx basegfx: remove global ImplB2DPolyPolygon 2017-08-25 21:25:39 +02:00
basic Replace list by vector in dllmgr-x86-x64 (basic) 2017-09-01 19:51:07 +02:00
bean
bin
binaryurp Replace use of oslInterlockedCount with std::atomic 2017-08-25 22:46:11 +02:00
bridges Replace use of oslInterlockedCount with std::atomic in bridges 2017-08-28 15:47:32 +02:00
canvas loplugin:constparams: canvas (clang-cl) 2017-08-31 12:14:39 +02:00
chart2 Replace list by vector for tListenerMap (chart2) 2017-09-01 21:26:57 +02:00
cli_ure
codemaker
comphelper gpg4libre/comphelper: add storage helper for GPG encryption data 2017-08-31 12:02:32 +02:00
compilerplugins Revert loplugin:constparam behavior when param is subject of cast 2017-08-31 17:55:52 +02:00
config_host
configmgr loplugin:constparams 2017-08-30 14:15:53 +02:00
connectivity Remove unused m_aBatchVector members 2017-09-01 13:40:35 +02:00
cppcanvas
cppu
cppuhelper
cpputools
cui Get rid of need to use initial :: for ::opencl to avoid clash with sc::opencl 2017-08-25 15:49:34 +03:00
dbaccess Fix typos 2017-09-01 17:15:14 +02:00
desktop tdf#109241 desktop: Win32: prepend "program" dir to $PATH 2017-09-01 23:55:11 +02:00
dictionaries@93db4f58c3
distro-configs
drawinglayer
dtrans loplugin:constparams: dtrans (clang-cl) 2017-08-31 12:14:39 +02:00
editeng OUString: reduce temporaries and constify 2017-08-27 14:10:52 +02:00
embeddedobj loplugin:constparams: embeddedobj (clang-cl) 2017-08-31 12:14:40 +02:00
embedserv loplugin:constparams: embedserv (clang-cl) 2017-08-31 12:14:40 +02:00
emfio Missing include 2017-08-30 08:29:15 +02:00
eventattacher
extensions loplugin:constparams: extensions (clang-cl) 2017-08-31 12:14:40 +02:00
external Adapt external/beanshell to Java 9 2017-08-31 11:52:50 +02:00
extras tdf#112062 Spelling: Grey -> Gray in color palettes 2017-08-29 19:11:37 +02:00
filter Fix typos 2017-09-01 17:15:14 +02:00
forms
formula
fpicker gpg4libre: Encrypt with GPG checkbox in SaveAs file dialog, 1st stab 2017-08-30 13:16:49 +02:00
framework Replace list by vector in substitutepathvars (framework) 2017-09-01 21:40:54 +02:00
helpcompiler
helpcontent2@5c2654302e Updated core 2017-09-01 12:37:50 +02:00
hwpfilter Removed ancient comment 2017-08-29 20:06:27 +02:00
i18nlangtag
i18npool
i18nutil
icon-themes tdf#98315 - Function Wizard showing Breeze icons when in Sifr theme 2017-09-01 03:30:12 +02:00
idl
idlc
include remove some casting 2017-09-02 00:35:28 +02:00
instsetoo_native Check ENABLE_ONLINE_UPDATE_MAR in one more place 2017-08-31 10:41:07 +03:00
io
ios
javaunohelper
jurt
jvmaccess
jvmfwk tdf#100501: Fix thinko 2017-08-28 18:18:12 +02:00
l10ntools inline some use-once typedefs 2017-08-31 12:06:50 +02:00
librelogo
libreofficekit
lingucomponent
linguistic
lotuswordpro
m4
mysqlc Remove unused m_aBatchVector members 2017-09-01 13:40:35 +02:00
nlpsolver
o3tl
odk Use vector and replace m_aBatchList by m_aBatchVector 2017-08-31 21:44:10 +02:00
offapi Fix typos 2017-09-01 17:15:14 +02:00
officecfg add icons to calc functions needed for grouped notebookbar 2017-08-28 10:10:44 +02:00
onlineupdate update the gtk updater icon with the new updater icon 2017-08-29 14:58:48 +02:00
oovbaapi
oox tdf#111884: Implement export of group shapes in pptx. 2017-09-01 14:30:19 +02:00
opencl Get rid of need to use initial :: for ::opencl to avoid clash with sc::opencl 2017-08-25 15:49:34 +03:00
osx
package
postprocess
pyuno
qadevOOo tdf#45904 Move _DataPilotItem Java tests to C++ 2017-08-27 09:52:14 +02:00
readlicense_oo
registry
remotebridges
reportbuilder
reportdesign Fix typos 2017-09-01 17:15:14 +02:00
ridljar i#32546# - Java UnoRuntime.getUniqueKey/generateOid do not work reliably 2017-08-25 19:24:50 +02:00
sal loplugin:cstylecast/nullptr (clang-cl) 2017-08-29 08:32:43 +02:00
salhelper
sax
sc Fix typos 2017-09-01 17:15:14 +02:00
scaddins
sccomp sccomp_lpsolver -> sccomp_solver 2017-08-27 17:33:41 +02:00
schema
scp2 remove some unused macro definitions 2017-08-29 15:19:17 +02:00
scripting inline some use-once typedefs 2017-08-31 12:06:50 +02:00
sd Replace some lists by vectors in sd module 2017-09-01 21:24:41 +02:00
sdext sdext: fix loplugin:constparams warnings 2017-08-31 13:48:20 +02:00
setup_native loplugin:constparams: setup_native (clang-cl) 2017-08-31 12:14:40 +02:00
sfx2 bump FileDialogHelper to XFilePicker3 2017-09-01 16:58:41 +02:00
shell loplugin:constparams: shell (clang-cl) 2017-08-31 12:14:40 +02:00
slideshow
smoketest loplugin:constparams: smoketest (clang-cl) 2017-08-31 12:14:41 +02:00
solenv Adapt getcompver.awk to Java 9 2017-08-30 15:16:22 +02:00
soltools remove some unused macro definitions 2017-08-29 15:19:17 +02:00
sot
starmath Translate German comments/debug strings (leftovers in dirs starmath to sysui) 2017-08-28 12:03:56 +02:00
stoc Translate German comments/debug strings (leftovers in dirs starmath to sysui) 2017-08-28 12:03:56 +02:00
store
svgio
svl loplugin:constparams: svl (clang-cl) 2017-08-31 12:14:41 +02:00
svtools WB_AUTOSIZE is always on for SvtURLBox 2017-08-30 20:13:02 +02:00
svx svx: add mutex guards to SvxFmDrawPage 2017-09-01 23:55:11 +02:00
sw sw: paragraph signatures are detached 2017-09-01 19:52:30 +02:00
swext
sysui
test Remove unused header 2017-08-29 20:03:20 +02:00
testtools
toolkit support XSystemDependentWindowPeer for all toplevel windows 2017-09-02 00:35:07 +02:00
tools
translations@d317414f82
ucb Fix typos 2017-09-01 17:15:14 +02:00
ucbhelper
udkapi
uitest
UnoControls
unodevtools
unoidl
unoil
unotest
unotools inline some use-once typedefs 2017-08-31 12:06:50 +02:00
unoxml unoxml: CDocumentBuilder: just catch all Exception 2017-08-25 17:58:56 +02:00
ure
uui Fix typo 2017-08-26 15:43:44 +02:00
vbahelper inline some use-once typedefs 2017-08-31 12:06:50 +02:00
vcl Use FPicker parentwindow argument to set file picker parent 2017-09-02 00:35:51 +02:00
winaccessibility loplugin:constparams: winaccessibility (clang-cl) 2017-08-31 12:14:41 +02:00
wizards
writerfilter tdf#108765 DOCX: after import, allow default styles again 2017-08-31 20:13:00 +02:00
writerperfect EPUB export: support char props on text outside a span 2017-08-30 10:02:32 +02:00
xmerge
xmlhelp
xmloff Resolves: tdf#112122 Use EndElement instead of dtor to call throwing methods 2017-08-31 20:20:13 +02:00
xmlreader
xmlscript
xmlsecurity xmlsecurity: fix inconsistent param naming in interface/implementation 2017-09-01 10:33:33 +02:00
.buckconfig
.buckversion
.editorconfig
.gitattributes
.gitignore Added VisualStudioCode/unified MSDEV VC.db 2017-08-29 09:41:43 +02:00
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub
config_host.mk.in integrate libqxp 2017-08-28 08:20:47 +02:00
config_host_lang.mk.in
configure.ac integrate libqxp 2017-08-28 08:20:47 +02:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst Upgrade to language-subtag-registry-2017-08-15 2017-08-31 18:55:01 +02:00
g
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch integrate libqxp 2017-08-28 08:20:47 +02:00
Makefile.gbuild
Makefile.in
README.cross
README.md
README.Solaris
Repository.mk
RepositoryExternal.mk integrate libqxp 2017-08-28 08:20:47 +02:00
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER

LibreOffice

Coverity Scan Build Status CII Best Practices

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
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.