Test repository to check push and ssh key
Find a file
Stephan Bergmann 51e5e4970b Replace OLEString operators with proper functions, for clarity
Change-Id: I1fa309d034e1ec94f38d07ede07e691f1484a4f5
Reviewed-on: https://gerrit.libreoffice.org/29697
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-10-11 14:19:28 +00:00
.git-hooks
accessibility loplugin:refcounting 2016-10-11 16:17:55 +02:00
android
animations
apple_remote SAL_WNODEPRECATED_DECLARATIONS_PUSH/POP around new macOS 10.12 deprecations 2016-10-05 20:29:04 +02:00
avmedia ImageList just reads and discards the MaskColor, so drop it 2016-10-06 13:29:39 +01:00
basctl safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
basegfx loplugin:constantfunction 2016-10-11 06:15:21 +00:00
basic tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
bean
bin repurpose count dialogs 2016-10-11 09:09:22 +01:00
binaryurp
bridges
canvas Resolves: tdf#103026 invalid dash causes CAIRO_STATUS_INVALID_DASH state 2016-10-06 09:56:59 +01:00
chart2 avoid crashes on broken charts, related tdf#98690 2016-10-11 04:16:20 +02:00
cli_ure
codemaker
comphelper profilesafe: Add values for SecureUserConfig 2016-10-11 13:56:22 +02:00
compilerplugins loplugin:constantfunction 2016-10-11 06:15:21 +00:00
config_host
configmgr profilesafe: Add values for SecureUserConfig 2016-10-11 13:56:22 +02:00
connectivity Replace OLEString operators with proper functions, for clarity 2016-10-11 14:19:28 +00:00
cppcanvas
cppu
cppuhelper
cpputools
cui loplugin:constantfunction 2016-10-11 06:15:21 +00:00
dbaccess safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
desktop tdf#102004 Do not open options for extensions without options 2016-10-11 13:50:47 +00:00
dictionaries@80f232b1f6 Updated core 2016-10-08 20:48:35 +00:00
distro-configs
drawinglayer loplugin:constantfunction 2016-10-11 06:15:21 +00:00
dtrans
editeng loplugin:constantfunction 2016-10-11 06:15:21 +00:00
embeddedobj
embedserv
eventattacher
extensions safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
external external/nss: Adapt ASan/UBSan-specific patches to nss 3.27 2016-10-11 09:39:21 +02:00
extras Fix language on Abstract* templates 2016-10-11 08:55:08 +02:00
filter tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
forms loplugin:unnecessaryoverride in forms/framework 2016-10-05 13:53:28 +02:00
formula I can't see any evidence of any remaining magenta mask using image resources 2016-10-06 15:09:22 +01:00
fpicker ImageList just reads and discards the MaskColor, so drop it 2016-10-06 13:29:39 +01:00
framework safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
helpcompiler
helpcontent2@b223bd2e0c Updated core 2016-10-11 10:34:03 +00:00
hwpfilter
i18nlangtag i18nlangtag: fix loplugin:cppunitassertequals warnings 2016-10-07 09:37:57 +00:00
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 tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
idlc Simplify AstExpression::compare 2016-10-06 16:36:26 +02:00
include profilesafe: Add values for SecureUserConfig 2016-10-11 13:56:22 +02:00
instsetoo_native profilesafe: Add values for SecureUserConfig 2016-10-11 13:56:22 +02: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#101390 Add "Dimesion Line" command to the writer arrowsbox. 2016-10-10 23:07:35 +00:00
onlineupdate
oovbaapi
oox tdf#102997 Fix Error in OOXML Transparency Conversion Math 2016-10-07 07:07:19 +00:00
opencl
osx
package
postprocess sidebar theme loads pngs by name that are not picked up automatically 2016-10-07 11:35:01 +01:00
pyuno
qadevOOo Remove no longer relevant qadevOOo/qa 2016-10-10 10:36:40 +00:00
readlicense_oo
registry tdf#100302: gbuild: always use $(LFS_CFLAGS) 2016-10-07 14:58:17 +02:00
remotebridges
reportbuilder
reportdesign safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
ridljar
rsc remove some conversion operator methods 2016-10-11 08:43:33 +00:00
sal Handle loplugin:fpcomparison false positives by whitelist 2016-10-10 13:10:48 +02:00
salhelper
sax
sc Resolves: tdf#101691 re-intern strings of external formula results 2016-10-11 15:24:05 +02:00
scaddins tdf#100496 accept year basis 2 for AMORDEGRC and AMORLINC. 2016-10-05 21:19:25 +00:00
sccomp
schema
scp2
scripting tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
sd convert PageKind to scoped enum 2016-10-11 14:32:40 +02:00
sdext CPPUNIT_ASSERT[_DOUBLES]_EQUAL 2016-10-06 16:35:53 +02:00
setup_native
sfx2 tdf#100352 Provide Catalan classification file 2016-10-11 07:31:01 -05:00
shell
slideshow InfoFont/Color is not used by vcl now 2016-10-05 20:52:29 +01:00
smoketest
solenv tdf#100302: gbuild: always use $(LFS_CFLAGS) 2016-10-07 14:58:17 +02:00
soltools
sot tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
starmath safemode: Add uno command and menu entry 2016-10-10 18:30:57 +00:00
stoc
store tdf#100302: gbuild: always use $(LFS_CFLAGS) 2016-10-07 14:58:17 +02:00
svgio
svl tdf#36038 Import extended LCID from Excel 2016-10-10 21:21:18 +00:00
svtools remove some conversion operator methods 2016-10-11 08:43:33 +00:00
svx Allow entering safemode after crash 2016-10-11 08:55:08 +02:00
sw tdf#103001 DOCX export: fix RelId cache when switching streams 2016-10-11 10:26:58 +00:00
swext
sysui
test CPPUNIT_ASSERT[_DOUBLES]_EQUAL 2016-10-06 16:35:53 +02:00
testtools
toolkit [API CHANGE] Remove css::awt::XStyleSettings InfoTextColor and InfoFont 2016-10-05 20:52:29 +01:00
tools no numericfield, spinfield or spinbutton loaded from .src now 2016-10-10 14:56:58 +01:00
translations@4eddabeb0f Updated core 2016-10-09 10:06:37 +00:00
tubes
ucb tdf#102499 (5): Deal with HTTP unofficial response status codes 2016-10-11 06:06:12 +00:00
ucbhelper
udkapi
uitest make it easier to read the logs 2016-10-11 04:16:20 +02:00
UnoControls
unodevtools
unoidl
unoil
unotest
unotools loplugin:constantfunction 2016-10-11 06:15:21 +00:00
unoxml
ure
uui convert the last two lonely FixedInfos to FixedText 2016-10-05 16:02:59 +01:00
vbahelper
vcl tdf#103103: Many Arabic fonts dont render correctly 2016-10-11 15:56:47 +02:00
winaccessibility cppcheck: uninitMemberVar 2016-10-11 09:21:21 +00:00
windows
wizards
writerfilter
writerperfect tdf#89307: Removed SvRef::operator T*() 2016-10-10 08:48:30 +00:00
xmerge
xmlhelp
xmloff loplugin:constantfunction 2016-10-11 06:15:21 +00:00
xmlreader
xmlscript
xmlsecurity filter: don't loose signing description during pdf export 2016-10-07 15:35:56 +02: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 bump nss to 3.27 2016-10-10 11:13:03 +00:00
g
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch
Makefile.gbuild
Makefile.in
README.cross
README.md README.md: Add CII Best Practices badge 2016-10-10 03:22:53 -05:00
README.Solaris
Repository.mk
RepositoryExternal.mk
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER
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.