Test repository to check push and ssh key
Find a file
Stephan Bergmann e8e2b71ea5 Fix GetMnemonicChar
For one, had a (false) occurrence of loplugin:bodynotinblock.  For another,
would have erroneously reported 'A' instead of 'B' for "~~A~B".

Change-Id: I6b2e09ad0d0e132896a9f2802bf4355a25f2d296
Reviewed-on: https://gerrit.libreoffice.org/29808
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-10-14 07:47:30 +00:00
.git-hooks
accessibility loplugin:refcounting 2016-10-11 16:17:55 +02:00
android
animations
apple_remote
avmedia The logic is “ no QuickTime™ in the 10.12 SDK & beyond ” 2016-10-14 06:42:49 +00:00
basctl de-src silly RID_TLB_MACROS resource 2016-10-12 15:01:44 +01:00
basegfx loplugin:constantfunction 2016-10-11 06:15:21 +00:00
basic Improve UNO error reporting. Make exceptions more descriptive. 2016-10-13 14:01:40 +00:00
bean
bin check-elf-dynamic-objects: check sdk/bin too 2016-10-11 18:09:54 +00:00
binaryurp
bridges
canvas
chart2 Use FeatureStateEvent directly for status updates 2016-10-13 11:12:27 +03:00
cli_ure
codemaker Don't allow O[U]StringBuffer in string concatenation 2016-10-12 16:05:32 +02:00
comphelper profilesafe: extended to three modes 2016-10-13 14:43:37 +00:00
compilerplugins loplugin:mergeclasses merge SwTextAttrIterator with SwLanguageIterator 2016-10-14 08:17:50 +02:00
config_host
configmgr profilesafe: Multiple adaptions 2016-10-12 14:08:55 +00:00
connectivity tdf#88205 Adapt uses of css::uno::Sequence to use initializer_list ctor 2016-10-14 06:36:35 +00:00
cppcanvas
cppu
cppuhelper
cpputools
cui flaten array of stringarrays by a level 2016-10-13 10:36:01 +01:00
dbaccess remove (yet yet another) StringListResource implementation 2016-10-13 09:36:51 +01:00
desktop profilesafe: extended to three modes 2016-10-13 14:43:37 +00:00
dictionaries@80f232b1f6
distro-configs
drawinglayer loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
dtrans
editeng pass params to Outliner LINK callbacks on stack 2016-10-13 11:16:13 +00:00
embeddedobj
embedserv
eventattacher
extensions drop unused RID_RSC_BUTTON_IMAGES resource 2016-10-13 09:39:17 +01:00
external upgrade to liblangtag-0.6.2 2016-10-13 16:43:13 +00:00
extras delete emoji autocorrect entries that conflict with entering time 2016-10-13 19:42:22 +02:00
filter Revert "Better wording in UI for in case of PDF export from Calc - tdf#90436" 2016-10-14 06:55:22 +00:00
forms Don't allow O[U]StringBuffer in string concatenation 2016-10-12 16:05:32 +02:00
formula
fpicker ReleaseSolarMutexOnMainThreadContext is unused 2016-10-14 05:36:31 +00:00
framework tdf#88205 Adapt uses of css::uno::Sequence to use initialize_list ctor 2016-10-14 06:31:00 +00:00
helpcompiler
helpcontent2@0f18a22ab6 Updated core 2016-10-13 11:48:29 +00:00
hwpfilter
i18nlangtag
i18npool remove some conversion operator methods 2016-10-11 08:43:33 +00:00
i18nutil
icon-themes tdf#86472 Fix breeze borders and set breeze_dark fallback 2016-10-09 18:19:26 +00:00
idl loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
idlc tdf#96099 Reduce no of typedefs used for trivial containers 2016-10-13 10:15:52 +00:00
include loplugin:mergeclasses merge SvxListBoxControl with SvxUndoRedoControl 2016-10-14 08:17:50 +02:00
instsetoo_native profilesafe: extended to three modes 2016-10-13 14:43:37 +00:00
io
ios
javaunohelper
jurt
jvmaccess
jvmfwk
l10ntools
librelogo
libreofficekit Handle loplugin:fpcomparison false positives by whitelist 2016-10-10 13:10:48 +02:00
lingucomponent Search for old style dictionaries in DICPATH 2016-10-10 20:09:41 +00:00
linguistic
lotuswordpro
m4
mysqlc
nlpsolver
o3tl
odk
offapi tdf#102288 TerminationVetoException should only prevent termination 2016-10-10 10:36:02 +00:00
officecfg tdf#95387 - UI: "Custom Animation" probably should be called just "Animation" 2016-10-14 06:48:31 +00:00
onlineupdate
oovbaapi
oox tdf#103143 Fix importing number of characters from docx files 2016-10-13 19:03:33 +00:00
opencl
osx
package
postprocess The logic is “ no QuickTime™ in the 10.12 SDK & beyond ” 2016-10-14 06:42:49 +00:00
pyuno
qadevOOo Remove no longer relevant qadevOOo/qa 2016-10-10 10:36:40 +00:00
readlicense_oo update credits 2016-10-12 00:08:00 +02:00
registry
remotebridges
reportbuilder
reportdesign move this monstrosity to the last place its used 2016-10-13 09:36:51 +01:00
ridljar
rsc drop RSC_DOCKINGWINDOW* 2016-10-12 11:38:00 +01:00
sal approxEqual: check isFinite() 2016-10-13 15:13:53 +02:00
salhelper
sax loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
sc loplugin:mergeclasse merge ScCbWarningBox with ScReplaceWarnBo 2016-10-14 08:17:50 +02:00
scaddins
sccomp
schema
scp2 Add windows start menu entry for Safe Mode 2016-10-13 12:52:07 +00:00
scripting tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
sd pass params to Outliner LINK callbacks on stack 2016-10-13 11:16:13 +00:00
sdext xmlsecurity: add initial PDFSignatureHelper 2016-10-13 10:44:23 +00:00
setup_native LoadLibraryEx returns null on error 2016-10-13 09:47:08 +00:00
sfx2 sfx2: initial PDF document signatures dialog 2016-10-13 16:04:01 +00:00
shell
slideshow
smoketest
solenv tearDown/clean up solenv test tempdir 2016-10-14 01:07:51 +02:00
soltools
sot tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
starmath flatten RID_LOCALIZED_NAMES by a level 2016-10-13 10:36:01 +01:00
stoc
store
svgio loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
svl improve comment 2016-10-12 10:11:19 +02:00
svtools move this monstrosity to the last place its used 2016-10-13 09:36:51 +01:00
svx loplugin:mergeclasses merge SvxListBoxControl with SvxUndoRedoControl 2016-10-14 08:17:50 +02:00
sw loplugin:mergeclasses merge SwTextAttrIterator with SwLanguageIterator 2016-10-14 08:17:50 +02:00
swext
sysui
test loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
testtools
toolkit loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
tools GetAutoHelpId logically can only return an empty string now 2016-10-12 11:38:00 +01:00
translations@4a45b12af9 Updated core 2016-10-11 21:25:52 +00:00
tubes
ucb tdf#102499 (7): Caching connect timeout or cannot connect. 2016-10-13 12:26:43 +00:00
ucbhelper
udkapi
uitest forgot to actually remove the problematic import 2016-10-11 17:15:57 +02:00
UnoControls
unodevtools
unoidl
unoil
unotest
unotools loplugin:constantfunction 2016-10-11 06:15:21 +00:00
unoxml
ure
uui tdf#74608: Ctor function for css.comp.uui.UUIInteractionRequestStringResolver 2016-10-13 20:26:24 +02:00
vbahelper loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
vcl -Werror=maybe-uninitialized 2016-10-14 09:15:07 +02:00
winaccessibility Fix GetMnemonicChar 2016-10-14 07:47:30 +00:00
windows
wizards Access2Base - CopyObject applied on tables belonging to different databases 2016-10-13 17:00:10 +02:00
writerfilter replace macro with function template 2016-10-14 06:10:17 +00:00
writerperfect tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
xmerge
xmlhelp
xmloff loplugin:unnecessaryoverride 2016-10-13 06:47:44 +00:00
xmlreader
xmlscript
xmlsecurity xmlsecurity: extract certificate from PDF signature 2016-10-14 07:05:52 +00:00
.buckconfig
.buckversion
.editorconfig
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub
config_host.mk.in
config_host_lang.mk.in
configure.ac configure: avoid linking against libgcrypt for libexslt 2016-10-10 16:52:43 +02:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst upgrade to liblangtag-0.6.2 2016-10-13 16:43:13 +00:00
g
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch
Makefile.gbuild
Makefile.in add initial json export for gbuild data 2016-10-13 09:02:25 +00:00
README.cross
README.md README.md: Add CII Best Practices badge 2016-10-10 03:22:53 -05:00
README.Solaris
Repository.mk The logic is “ no QuickTime™ in the 10.12 SDK & beyond ” 2016-10-14 06:42:49 +00:00
RepositoryExternal.mk
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER Use updated vim mode line also for legacy-infected code. 2016-10-13 11:21:40 +02:00
unusedcode.easy
unusedcode.exclude
unusedcode.README

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.