Test repository to check push and ssh key
Find a file
Mohammed Abdul Azeem 0632208977 First cut at moving unzipping into new thread:
XBufferedThreadedStream class buffers data in a new thread,
which will be available to be read from parent thread.

Change-Id: I62d367fa1dec23da39aba24b5c765b57707956bb
Reviewed-on: https://gerrit.libreoffice.org/38135
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2017-06-08 14:27:45 +02:00
.git-hooks
accessibility Remove all allocation of VCLExternalSolarLock. 2017-06-05 13:41:38 +02:00
android
animations
apple_remote
avmedia clang-tidy performance-unnecessary-value-param 2017-06-05 09:22:51 +02:00
basctl Remove all allocation of VCLExternalSolarLock. 2017-06-05 13:41:38 +02:00
basegfx cppcheck: knownConditionTrueFalse 2017-06-06 08:25:21 +02:00
basic tdf#108039: check for nullptr in rtl_uString and OUString 2017-06-07 11:48:57 +02:00
bean
bin White-list svx. 2017-06-06 13:26:08 +01:00
binaryurp
bridges
canvas
chart2 clang-tidy performance-type-promotion-in-math-fn 2017-06-08 10:54:50 +02:00
cli_ure
codemaker Remove usage of OString("") 2017-06-04 15:13:17 +02:00
comphelper clang-tidy performance-unnecessary-value-param 2017-06-05 09:22:51 +02:00
compilerplugins getBody() can be null for a defaulted dtor 2017-06-06 09:23:17 +02:00
config_host
configmgr
connectivity Improved loplugin:cstylecast to reference types: connectivity 2017-06-05 21:18:13 +02:00
cppcanvas
cppu
cppuhelper add COVERITY_NOEXCEPT_FALSE 2017-06-06 14:15:43 +02:00
cpputools spelling instanciate -> instantiate 2017-06-05 10:11:33 +02:00
cui add COVERITY_NOEXCEPT_FALSE 2017-06-06 14:15:43 +02:00
dbaccess Translate and fix the from-German translation of "UNO binding" 2017-06-07 21:44:17 +02:00
desktop tdf#36019: Disable context menu entry for extension removal properly 2017-06-06 10:37:48 +02:00
dictionaries@c1631744a5 Updated core 2017-06-07 05:54:05 +02:00
distro-configs
drawinglayer
dtrans
editeng EditEngine Creating SvXMLImportContext for ODF 2017-06-07 14:50:04 +02:00
embeddedobj
embedserv
eventattacher
extensions add COVERITY_NOEXCEPT_FALSE 2017-06-06 14:15:43 +02:00
external external/graphite: Avoid -fsanitize=pointer-overflow 2017-06-07 15:44:50 +02:00
extras
filter replace SVSTREAM_OK with ERRCODE_NONE 2017-06-06 08:15:57 +02:00
forms Translate and fix the from-German translation of "UNO binding" 2017-06-07 21:44:17 +02:00
formula Take new FormulaTokenArrayPlainIterator into use in one simple place 2017-06-07 21:34:02 +03:00
fpicker
framework framework: replace double checked locking patterns 2017-06-08 09:01:42 +02:00
helpcompiler remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
helpcontent2@38734b7d4f Updated core 2017-06-07 19:21:26 +02:00
hwpfilter Improved loplugin:cstylecast to reference types: hwpfilter 2017-06-05 21:18:08 +02:00
i18nlangtag spelling instanciate -> instantiate 2017-06-05 10:11:33 +02:00
i18npool remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
i18nutil Make use of OUString::startsWith rest parameter 2017-06-07 14:02:41 +02:00
icon-themes tdf#106607 - Sifr icon for "Table Styles" needed SVG 2017-06-04 14:16:57 +02:00
idl tdf#39468 Translate German comments and dbg strings (leftovers in h.. to i..) 2017-06-06 13:51:55 +02:00
idlc
include oox: replace PUT_PROP macro with comphelper::makePropertyValue() calls 2017-06-08 12:31:12 +02:00
instsetoo_native
io
ios iOS, add support for arm64 2017-06-07 12:26:24 +02:00
javaunohelper
jurt spelling instanciate -> instantiate 2017-06-05 10:11:33 +02:00
jvmaccess
jvmfwk
l10ntools tdf#106942 Wrong message when lock file is empty or corrupt 2017-06-06 15:58:02 +02:00
librelogo
libreofficekit
lingucomponent
linguistic tdf#108349: fix LanguageType conversions from UNO "short" 2017-06-07 12:59:23 +02:00
lotuswordpro replace SVSTREAM_OK with ERRCODE_NONE 2017-06-06 08:15:57 +02:00
m4
mysqlc
nlpsolver
o3tl
odk typos 2017-06-05 21:29:27 +02:00
offapi Fix @since tag 2017-06-07 14:04:17 +02:00
officecfg
onlineupdate the custom target needs to depend on python 2017-06-08 05:23:30 +02:00
oovbaapi oovbaapi: add Interior.PatternTintAndShade Property (Excel) 2017-06-08 08:06:47 +02:00
oox oox: replace PUT_PROP macro with comphelper::makePropertyValue() calls 2017-06-08 12:31:12 +02:00
opencl no need to construct unique_ptr here 2017-06-04 20:42:45 +02:00
osx
package First cut at moving unzipping into new thread: 2017-06-08 14:27:45 +02:00
postprocess
pyuno
qadevOOo Fix build after f1454b474d 2017-06-08 11:28:20 +02:00
readlicense_oo
registry Improved loplugin:cstylecast to reference types: registry 2017-06-05 21:18:08 +02:00
remotebridges
reportbuilder
reportdesign Improved loplugin:cstylecast to reference types: reportdesign 2017-06-05 21:18:07 +02:00
ridljar
rsc remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
sal Avoid -fsanitize=signed-integer-overflow 2017-06-08 08:58:04 +02:00
salhelper
sax
sc Fix build after f1454b474d 2017-06-08 11:28:20 +02:00
scaddins
sccomp
schema
scp2 scp2: package 64-bit MSVC runtimes for explorer extensions 2017-06-06 13:05:42 +02:00
scripting
sd Eliminate dynamic_cast<const SfxVoidItem*>, use SfxPoolItem::IsVoidItem() 2017-06-06 20:57:45 +02:00
sdext cppcheck: knownConditionTrueFalse 2017-06-06 08:25:21 +02:00
setup_native
sfx2 tdf#106366 Show infobar for all read-only documents 2017-06-08 12:47:54 +02:00
shell
slideshow
smoketest
solenv configure: remove ENABLE_CRASHDUMP placeholder 2017-06-07 17:10:24 +02:00
soltools
sot EditEngine Exporting flat XML from actual clipboard 2017-06-07 14:40:08 +02:00
starmath replace SVSTREAM_OK with ERRCODE_NONE 2017-06-06 08:15:57 +02:00
stoc Improved loplugin:cstylecast to reference types: stoc 2017-06-05 21:18:04 +02:00
store Improved loplugin:cstylecast to reference types: store 2017-06-05 21:18:04 +02:00
svgio cppcheck: knownConditionTrueFalse 2017-06-06 08:25:21 +02:00
svl Eliminate dynamic_cast<const SfxVoidItem*>, use SfxPoolItem::IsVoidItem() 2017-06-06 20:57:45 +02:00
svtools Improved loplugin:cstylecast to reference types: svtools 2017-06-05 21:18:03 +02:00
svx remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
sw nPoolId already points to STR_POOLCOLL_TOX_AUTHORITIES1 at this point 2017-06-08 11:59:05 +02:00
swext tdf#98888: mediawiki inserts redundant emptylines in <ref> 2017-06-07 07:13:54 +02:00
sysui
test tdf#45904 Move java XCellSeries test to c++ 2017-06-08 02:45:54 +02:00
testtools One more test to suppress 2017-06-06 11:35:30 +02:00
toolkit cppcheck: knownConditionTrueFalse 2017-06-06 08:25:21 +02:00
tools add COVERITY_NOEXCEPT_FALSE 2017-06-06 14:15:43 +02:00
translations@633cd82082 Updated core 2017-06-07 04:31:32 +02:00
ucb Make use of OUString::startsWithIgnoreAsciiCase rest parameter 2017-06-07 14:03:13 +02:00
ucbhelper ucb: replace double checked locking patterns 2017-06-06 20:58:18 +02:00
udkapi Fix typos 2017-06-05 17:58:20 +02:00
uitest uitest: disable failing part of manual_tests/calc.py 2017-06-08 12:31:11 +02:00
UnoControls clang-tidy performance-unnecessary-value-param 2017-06-05 09:22:51 +02:00
unodevtools
unoidl
unoil
unotest
unotools remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
unoxml
ure
uui tdf#106942 Wrong message when lock file is empty or corrupt 2017-06-06 15:58:02 +02:00
vbahelper
vcl remove some more qpw depends for the moment 2017-06-07 15:37:05 +01:00
winaccessibility
wizards spelling instanciate -> instantiate 2017-06-05 10:11:33 +02:00
writerfilter Related: tdf#108269 DOCM filter: reuse oox code for VBA data preservation 2017-06-07 19:08:20 +02:00
writerperfect
xmerge
xmlhelp
xmloff remove some unnecessary use of OUStringBuffer 2017-06-08 08:45:56 +02:00
xmlreader
xmlscript
xmlsecurity gpg4libre: add 'Start certificate manager' button 2017-06-07 03:11:19 +02:00
.buckconfig
.buckversion
.editorconfig
.gitattributes
.gitignore
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub iOS, add support for arm64 2017-06-07 12:26:24 +02:00
config_host.mk.in configure: remove ENABLE_CRASHDUMP placeholder 2017-06-07 17:10:24 +02:00
config_host_lang.mk.in
configure.ac configure: remove ENABLE_CRASHDUMP placeholder 2017-06-07 17:10:24 +02: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 make check on linux includes now uicheck 2017-06-06 23:11:26 +02:00
README.cross
README.md
README.Solaris
Repository.mk scp2: package 64-bit MSVC runtimes for explorer extensions 2017-06-06 13:05:42 +02:00
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.