Test repository to check push and ssh key
Find a file
Jim Raykowski 9466ea1af0 tdf#98212 make paragraph dialog alignment tab preview update
Change-Id: Ibd1d4f2c59bb832d6b2bba597e3f022c628e1887
Reviewed-on: https://gerrit.libreoffice.org/43577
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2017-10-20 10:37:03 +02:00
.git-hooks
accessibility
android
animations
apple_remote Following tdf#111561: no need to autorelease "elements" (apple_remote) 2017-10-12 07:41:44 +02:00
avmedia tdf#87808 Add missing tooltips to Media Playback toolbar 2017-10-20 08:21:29 +02:00
basctl turn implicit container explicit in buildable notebooks 2017-10-17 09:55:31 +02:00
basegfx basegfx: consistently use "" and <> in include directives 2017-10-10 07:44:13 +02:00
basic Seems that testMiscOLEStuff() works only as 64-bit on a current Windows 10 2017-10-17 18:57:54 +03:00
bean
bin fix oslibs syntax (have the shell treat it as variable, not command) 2017-10-13 15:42:32 +02:00
binaryurp binaryurp: consistently use "" and <> for include directives 2017-10-11 07:02:55 +02:00
bridges Again, no -fstack-protector-strong for gcc3_linux_aarch64/cpp2uno.cxx 2017-10-19 15:39:35 +02:00
canvas
chart2 tdf#105991 - Changing legend's font also changes the legend position 2017-10-17 15:42:36 +02:00
cli_ure
codemaker loplugin:constmethod in codemaker,registry,store 2017-10-20 08:50:48 +02:00
comphelper
compilerplugins Fully ignore inappropriately named loplugins in unit-test mode 2017-10-20 08:31:30 +02:00
config_host tdf#113211: fix calculations with big integers 2017-10-19 21:55:09 +02:00
configmgr Replace list by vector in components (configmgr) 2017-10-13 07:05:11 +02:00
connectivity Make include files found through -Iconnectivity/source/inc 2017-10-16 17:15:08 +02:00
cppcanvas tdf#31814 Resolve TODO from EMF+ DrawImage and DrawImagePoints 2017-10-16 16:13:45 +02:00
cppu
cppuhelper
cpputools
cui tdf#98212 make paragraph dialog alignment tab preview update 2017-10-20 10:37:03 +02:00
dbaccess use rtl::Reference in ODatabaseContext 2017-10-18 08:35:05 +02:00
desktop set parent of extension file dialog 2017-10-18 21:49:52 +02:00
dictionaries@06a89d28d9 Updated core 2017-10-16 13:17:23 +02:00
distro-configs iOS, actived more 3rd libraries 2017-10-11 13:12:16 +02:00
drawinglayer use std::unique_ptr in wmfemfhelper::TargetHolder 2017-10-18 14:57:10 +02:00
dtrans
editeng use std::unique_ptr in TrieNode 2017-10-19 09:05:05 +02:00
embeddedobj
embedserv
emfio
eventattacher
extensions no need to call acquire() 2017-10-18 08:36:01 +02:00
external EPUB export: better handling of tabs 2017-10-18 20:30:55 +02:00
extras autocorrect pt_PT - added 42 words 2017-10-15 22:08:39 +02:00
filter use std::unique_ptr in EscherSolverContainer 2017-10-20 08:50:25 +02:00
forms use rtl::Reference in forms 2017-10-18 16:11:57 +02:00
formula turn implicit container explicit in buildable notebooks 2017-10-17 09:55:31 +02:00
fpicker
framework tdf#79657 Support add-on controls in the overflow toolbar 2017-10-16 23:34:59 +02:00
helpcompiler
helpcontent2@ebb762cd6a Updated core 2017-10-18 23:59:31 +02:00
hwpfilter use std::unique_ptr in hwpfilter 2017-10-19 11:21:10 +02:00
i18nlangtag
i18npool tdf#96197 i18npool: don't read beyond end of string 2017-10-16 13:28:14 +02:00
i18nutil
icon-themes tdf#75256 Sifr update for open symbol with white background 2017-10-18 07:14:08 +02:00
idl
idlc loplugin:includeform: manual changes to idlc/source/parser.y 2017-10-19 20:12:00 +02:00
include tdf#112100 Select shape name in Navigator 2017-10-20 10:30:12 +02:00
instsetoo_native
io
ios iOS, added extra linker options for kit 2017-10-17 16:16:44 +02:00
javaunohelper
jurt
jvmaccess
jvmfwk Use loop ranges in jvmfwk 2017-10-13 00:19:34 +02:00
l10ntools
librelogo
libreofficekit
lingucomponent strip out trivial indirection 2017-10-18 10:53:02 +02:00
linguistic
lotuswordpro Make include files found through -Ilotuswordpro/inc 2017-10-19 23:07:02 +02:00
m4
mysqlc
nlpsolver
o3tl
odk fix grammar / typos in German ODK example 2017-10-11 19:41:33 +02:00
offapi offapi: clarify TextFitToSizeType documentation some more 2017-10-19 13:35:08 +02:00
officecfg tdf#112879 Update to Chinese (traditional) to reflect current norms 2017-10-19 20:40:55 +02:00
onlineupdate
oovbaapi
oox PPTX export: remember color schemes in theme 2017-10-19 21:02:07 +02:00
opencl
osx
package Replace list by vector InputStreamsList_Impl (package) 2017-10-10 22:08:27 +02:00
postprocess
pyuno
qadevOOo
readlicense_oo
registry loplugin:constmethod in codemaker,registry,store 2017-10-20 08:50:48 +02:00
remotebridges
reportbuilder
reportdesign turn implicit container explicit in buildable notebooks 2017-10-17 09:55:31 +02:00
ridljar
sal loplugin:constmethod in codemaker,registry,store 2017-10-20 08:50:48 +02:00
salhelper
sax
sc tdf#112100 Select shape name in Navigator 2017-10-20 10:30:12 +02:00
scaddins use std::vector<Complex> in ComplexList 2017-10-18 08:37:25 +02:00
sccomp
schema
scp2
scripting
sd Make Library_sdfilt find Library_sd include files via -I 2017-10-19 23:08:12 +02:00
sdext Move sdext/source/pdfimport/tree include files to common include directory 2017-10-17 09:04:56 +02:00
setup_native
sfx2 Replace list by vector in Metadatable (sfx2) 2017-10-19 09:48:29 +02:00
shell
slideshow Move slideshow include files to common include directory 2017-10-19 23:08:58 +02:00
smoketest
solenv Let's have this additional info also for WIN builds 2017-10-19 13:18:32 +02:00
soltools
sot ofz+ubsan: runtime error: left shift cannot be represented in type 2017-10-20 00:39:38 +02:00
starmath
stoc
store loplugin:constmethod in codemaker,registry,store 2017-10-20 08:50:48 +02:00
svgio
svl tdf#33689 Accept English syntax keywords in format strings 2017-10-19 22:13:44 +02:00
svtools svtools: SvTreeListEntry's copy ctor is unnecessary 2017-10-20 07:56:44 +02:00
svx use std::unique_ptr in SvxUnoPropertyMapProvider 2017-10-19 11:04:37 +02:00
sw tdf#107111: DOCX export: restore HideTabLeader... attribute after TOX 2017-10-20 02:07:49 +02:00
swext
sysui
test
testtools
toolkit Replace lists by vectors in controlmodelcontainerbase (toolkit) 2017-10-09 22:53:12 +02:00
tools loplugin:useuniqueptr in tools/inetmsg.hxx 2017-10-17 12:58:33 +02:00
translations@0703aea933 Updated core 2017-10-19 17:31:18 +02:00
ucb
ucbhelper
udkapi Fix typos 2017-10-19 09:49:01 +02:00
uitest don't assume concrete spelling substitutions 2017-10-13 10:29:11 +02:00
UnoControls
unodevtools
unoidl loplugin:includeform: manual changes to unoidl/source/sourceprovider-parser.y 2017-10-19 20:05:11 +02:00
unoil
unotest
unotools tdf#110742 add support for icon themes via extension manager 2017-10-13 09:30:02 +02:00
unoxml Move unoxml/source/events include files to common include directory 2017-10-17 09:05:55 +02:00
ure
uui Don't crash on extension update check 2017-10-13 18:55:15 +02:00
vbahelper
vcl pdfextoutdevdata: Rearrange code for readability and efficiency 2017-10-20 10:33:12 +02:00
winaccessibility
wizards
writerfilter tdf#87533 Fixed initialization of writing mode for paragraph 2017-10-19 22:33:58 +02:00
writerperfect EPUB export: better handling of tabs 2017-10-18 20:30:55 +02:00
xmerge
xmlhelp
xmloff Move SchXMLAutoStylePoolP.hxx next to SchXMLExport.hxx including it 2017-10-19 23:06:04 +02:00
xmlreader
xmlscript loplugin:useuniqueptr in StyleBag 2017-10-17 14:05:14 +02:00
xmlsecurity fix build with system gpgme 2017-10-19 09:04:33 +02:00
.buckconfig
.buckversion
.editorconfig
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub
config_host.mk.in tdf#113211: fix calculations with big integers 2017-10-19 21:55:09 +02:00
config_host_lang.mk.in
configure.ac tdf#113211: fix calculations with big integers 2017-10-19 21:55:09 +02:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst pdfium: update to 3235 2017-10-12 08:19:04 +02: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.Solaris
Repository.mk
RepositoryExternal.mk
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 build chain and runtime baselines

These are the current minimal operating system and compiler versions to run and compile LibreOffice, also used by the TDF builds:

  • Windows:
  • Runtime: Windows 7
  • Build: Cygwin + Visual Studio 2015 Update 3
  • macOS:
  • Runtime: 10.9
  • Build: 10.12 + Xcode 8
  • Linux:
  • Runtime: RHEL 6 or CentOS 6
  • Build: GCC 4.8.1 or Clang
  • iOS (only for LibreOfficeKit):
  • Runtime: 10.3 (only support for newer i devices == 64 bit)
  • Build: Xcode 9.0 and iPhone SDK 10.3

If you want to use Clang with the LibreOffice compiler plugins, the minimal version of Clang is 3.4. Since Xcode doesn't provide the compiler plugin headers, you have to compile your own Clang to use them on macOS.

You can find the TDF configure switches in the distro-configs/ directory.

To setup your initial build environment on Windows and macOS, we provide the LibreOffice Development Environment (LODE) scripts.

For more information see the build instructions for your platform in the TDF wiki.

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.