Test repository to check push and ssh key
Find a file
Miklos Vajna 45c2410041 LOK: change type of view ids to uintptr_t
This fixes the following problem:

- createView() = 1
- createView() = 2
- destroyView(1)

and then view #2 was renumbered to 1.

Instead expose the pointer address of the SfxViewShell as the ID, which
is not changing in such a situation.

Note that the SfxViewShell <-> ID mapping is an implementation detail of
SfxLokHelper, and only pointers are converted to IDs, user-supplied IDs
are never converted back to pointers.

Change-Id: If79ef8b99ba391011b5d82b219ad13447d44cd5a
Reviewed-on: https://gerrit.libreoffice.org/26423
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-06-17 16:00:44 +00:00
.git-hooks
accessibility Resolves: tdf#100272 row ally index is ROW_INVALID 2016-06-11 15:53:12 +01:00
android Fix typos 2016-05-16 06:18:47 +00:00
animations
apple_remote apple_remote: autorelease --> release in dealloc (destructor) 2016-03-07 16:07:19 +00:00
avmedia Resolves: tdf#100258 crash on disposing media player 2016-06-07 14:29:45 +01:00
basctl Fixed a typo where highlighting was highlightning 2016-06-16 05:58:03 +00:00
basegfx tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
basic Resolves: tdf#59222 Crash in Basic with an array of values... 2016-06-14 19:54:26 +00:00
bean Remove debug code 2016-05-02 11:04:04 +02:00
bin tdf#100453 – bin/unpack-sources needs to be executable 2016-06-17 16:28:49 +02:00
binaryurp Replace fallthrough comments with new SAL_FALLTHROUGH macro 2016-05-10 16:42:16 +02:00
bridges tdf#39440 Reduced the scope of the variable c 2016-06-08 06:03:08 +00:00
canvas tdf#96099 Remove various smart pointer typedefs in canvas 2016-06-09 12:56:27 +00:00
chart2 Clean up uses of Any::getValue() in chart2 2016-06-17 08:45:28 +02:00
cli_ure Fix typos 2016-05-01 09:46:27 +00:00
codemaker Silence -Werror,-Wimplicit-fallthrough under NDEBUG 2016-05-12 14:15:27 +02:00
comphelper comphelper lok: remove the g_bViewCallback global 2016-06-17 12:47:46 +00:00
compilerplugins loplugin:override: No more need to request dtor be marked 'virtual' 2016-06-17 13:56:58 +02:00
config_host Add MS binary format validator support 2016-06-15 13:54:37 +00:00
configmgr tdf#61396 Possibility to edit a template not in Template Repository 2016-06-15 15:53:40 +00:00
connectivity o3tl::tryGet on a temporary is dangerous 2016-06-10 15:52:05 +02:00
cppcanvas Clean up uses of Any::getValue() in cppcanvas 2016-06-10 18:55:53 +02:00
cppu teach refcounting clang plugin about uno::Reference 2016-05-31 06:25:45 +00:00
cppuhelper cppuhelper: WeakReference isn't thread-safe 2016-06-17 15:10:37 +02:00
cpputools tdf#91794 remove OSL_DEBUG_LEVEL > 1 conditionals 2016-03-11 14:01:07 +00:00
cui cui: fix loplugin:passstuffbyref warnings 2016-06-17 16:14:28 +02:00
dbaccess tdf#42949: clean up includes in include/dbaccess with iwyu 2016-06-16 12:23:15 +00:00
desktop LOK: change type of view ids to uintptr_t 2016-06-17 16:00:44 +00:00
dictionaries@277e232615 Updated core 2016-06-14 13:54:41 +00:00
distro-configs enable breakpad in distro configs 2016-06-07 22:06:42 +00:00
drawinglayer Give unique, comprehensible names to timers tdf#97087 2016-06-13 15:33:27 +00:00
dtrans C++11: disable ctors/operators with delete (dtrans) 2016-05-24 20:44:25 +00:00
editeng comphelper lok: remove the g_bViewCallback global 2016-06-17 12:47:46 +00:00
embeddedobj Resolves: tdf#100140 crash on exit of report design 2016-06-15 17:30:29 +01:00
embedserv tdf#99643 OLE automation bridge: fix 64-bit pointer conversions 2016-06-01 00:11:10 +02:00
eventattacher loplugin:salbool: Automatic rewrite of sal_False/True 2016-04-20 17:25:40 +02:00
extensions Resolves: tdf#96251 address wizard crash when run from start center 2016-06-17 09:16:58 +01:00
external Resolves: tdf#90579 swap_single_to_multi_blocks seems broken 2016-06-17 16:43:55 +01:00
extras tdf#94724: Make Gradient and Hatch preset names consistent 2016-06-16 07:36:08 +00:00
filter Remove the "using namespace std" from filter 2016-06-17 07:41:32 +00:00
forms Clean up uses of Any::getValue() in forms 2016-06-10 18:55:13 +02:00
formula Move accessibility relations to .ui files, Part 9: tdf#87026 2016-06-15 20:26:35 +00:00
fpicker Convert VCL_MESSAGE to scoped enum 2016-06-01 06:46:29 +00:00
framework SaveToolbarController: back to using XStorable 2016-06-17 14:31:46 +03:00
helpcompiler tdf#99589 tolower / toupper - dangerous to Turks ... 2016-05-09 09:30:27 +00:00
helpcontent2@fe617af636 Updated core 2016-06-17 08:49:10 +00:00
hwpfilter tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
i18nlangtag tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
i18npool no-break space between number and percent sign, tdf#63272 2016-06-16 12:58:41 +02:00
i18nutil convert MappingType to scoped enum 2016-05-11 06:55:08 +00:00
icon-themes tdf#83455 Remove color-inverted line images from Sifr 2016-06-11 04:39:50 -05:00
idl tools: rename SvStream::Read/Write to ReadBytes/WriteBytes 2016-06-06 18:09:11 +00:00
idlc Get rid of unnecessary directory levels $D/inc/$D 2016-05-27 17:10:45 +00:00
include LOK: change type of view ids to uintptr_t 2016-06-17 16:00:44 +00:00
instsetoo_native User-Agent: disable reporting of languages. 2016-03-11 15:16:56 +00:00
io remove (un-)definitions of NDEBUG from source files 2016-05-25 13:45:40 +02:00
ios remove that unused old code 2016-04-12 18:36:44 +02:00
javaunohelper
jurt [API CHANGE] Drop deprecated I*Description interfaces 2016-06-07 08:49:31 +00:00
jvmaccess loplugin:passstuffbyref in jvmaccess 2016-04-13 13:27:52 +02:00
jvmfwk passing a NULL pointer to fileno is not allowed 2016-06-15 19:52:10 +00:00
l10ntools loplugin:unusedmethods 2016-06-01 06:48:50 +00:00
librelogo
libreofficekit LOK: change type of view ids to uintptr_t 2016-06-17 16:00:44 +00:00
lingucomponent Fix typos 2016-06-13 06:04:07 +00:00
linguistic Fix typos 2016-06-13 06:04:07 +00:00
lotuswordpro coverity#1362681 Untrusted loop bound 2016-06-11 21:00:55 +01:00
m4 detect Boost.Filesystem 2016-03-08 06:24:27 +01:00
mysqlc Revert "tdf#88206 Change use of cppu::WeakImplHelper*" 2016-06-09 10:25:49 +01:00
nlpsolver
o3tl CppunitTest_sal_osl_file: fix loplugin:cppunitassertequals warnings 2016-06-03 12:08:53 +00:00
odk Mention removed options in javamaker and cppumaker 2016-05-23 09:07:33 +00:00
offapi Resolves: tdf#91365 use underlying numeric value if available [API CHANGE] 2016-06-17 13:38:40 +02:00
officecfg tdf#91781 Move bookmark and cross-reference to root insert menu 2016-06-17 13:44:27 +00:00
onlineupdate tdf#98602 Duplicate code in onlineupdate/ 2016-06-13 07:45:12 +00:00
oovbaapi
oox tdf#42949: clean up includes in include/filter with iwyu 2016-06-15 09:32:21 +00:00
opencl Let loplugin:passstuffbyref also look at fn defn not preceded by any decl 2016-06-08 17:14:34 +02:00
osx
package tdf#98955 hardware_concurrency not ideal for thread pools 2016-06-15 21:28:47 +00:00
postprocess try to debug images_tango.zip failure on arm tinderbox 2016-06-08 12:51:42 +02:00
pyuno Normalize on using @throws instead of @raise[s] 2016-06-06 17:07:35 +02:00
qadevOOo Fix typos 2016-06-13 06:04:07 +00:00
readlicense_oo update credits 2016-06-14 21:57:07 +02:00
registry Replace fallthrough comments with new SAL_FALLTHROUGH macro 2016-05-10 16:42:16 +02:00
remotebridges
reportbuilder
reportdesign tdf#42949: clean up includes in include/dbaccess with iwyu 2016-06-16 12:23:15 +00:00
ridljar error: unknown tag: internal 2016-06-07 11:11:43 +02:00
rsc loplugin:unusedfields 2016-06-02 06:32:07 +00:00
sal Revert "fdo#38913: Prevent invalid parameter handler crashes" 2016-06-17 12:37:19 +00:00
salhelper loplugin:salbool: Automatic rewrite of sal_False/True 2016-04-20 17:25:48 +02:00
sax loplugin:refcounting 2016-06-17 15:58:19 +02:00
sc add NETWORKDAYS_EXCEL2003 test case 2016-06-17 15:22:38 +00:00
scaddins o3tl::tryGet on a temporary is dangerous 2016-06-10 15:52:05 +02:00
sccomp tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
scp2 final solution of the ARCHIVE question 2016-06-01 14:55:27 +02:00
scripting BASIC : Add SbModule::FindMethod 2016-06-12 07:43:03 +00:00
sd comphelper lok: remove the g_bViewCallback global 2016-06-17 12:47:46 +00:00
sdext tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
setup_native Work towards tdf#72606 EasyHack _tstring/TCHAR elimination 2016-06-07 19:43:04 +00:00
sfx2 LOK: change type of view ids to uintptr_t 2016-06-17 16:00:44 +00:00
shell clang-tidy modernize-loop-convert in scripting to svtools 2016-05-11 06:54:34 +00:00
slideshow Slideshow: Add 'Oval' Shape Transition variant 2016-06-10 12:14:40 +02:00
smoketest tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
solenv Improve output of UnoAnyPrinter 2016-06-16 14:53:06 +02:00
soltools Drop redundant parenthesis. 2016-04-10 20:40:32 +01:00
sot tdf#96505 Get rid of cargo cult long integer literals 2016-06-14 13:49:41 +00:00
starmath starmath: more assertions hold 2016-06-16 03:10:43 +00:00
stoc remove some manual ref-counting 2016-06-06 07:01:34 +00:00
store update unusedmethods plugin to deal with constructors 2016-05-18 10:03:44 +00:00
svgio tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
svl properly prefix various global variables and hide them 2016-06-16 15:26:54 +02:00
svtools loplugin:override 2016-06-17 13:54:54 +02:00
svx comphelper lok: remove the g_bViewCallback global 2016-06-17 12:47:46 +00:00
sw tdf#83830: Page Header Panel & Page Footer Panel 2016-06-17 14:02:30 +00:00
swext remove unused imports in java code 2016-06-06 14:28:41 +02:00
sysui tdf#70998 Termchange: Graphic->Image 2016-05-06 12:27:45 +00:00
test Add MS binary format validator support in test fixture 2016-06-17 11:20:06 +00:00
testtools Just use Any::operator <<= for sal_Unicode values 2016-05-30 14:31:24 +02:00
toolkit Add a pause() method to XToolkitExperimental 2016-06-10 16:30:05 +02:00
tools improve formatting of DBG_UNHANDLED_EXCEPTION message 2016-06-13 10:30:28 +02:00
translations@5a19b0e2aa Updated core 2016-06-07 16:45:11 +00:00
tubes tdf#97966 redundant static keywords removed 6 2016-03-11 08:38:11 +00:00
ucb Fix typos 2016-06-13 06:04:07 +00:00
ucbhelper remove some manual ref-counting 2016-06-06 07:01:34 +00:00
udkapi
UnoControls teach refcounting clang plugin about uno::Reference 2016-05-31 06:25:45 +00:00
unodevtools Get rid of unnecessary directory levels $D/inc/$D 2016-05-27 17:10:45 +00:00
unoidl Massage code to avoid warnings 2016-05-12 14:11:38 +02:00
unoil
unotest Fix typos 2016-05-16 06:18:47 +00:00
unotools tdf#89329: use shared_ptr for pImpl in dynamicmenuoptions 2016-06-17 06:47:14 +00:00
unoxml tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
ure Don't put symlink to MacOS folder of sandboxed app 2016-03-04 13:34:48 +01:00
uui This doesn’t need to be translatable 2016-06-15 06:44:01 -05:00
vbahelper tdf#42949: clean up includes in include/filter with iwyu 2016-06-15 09:32:21 +00:00
vcl convert DBG_ASSERT in vcl 2016-06-17 06:38:57 +00:00
winaccessibility SAL_FALLTRHOUGH in Windows-only code 2016-05-25 08:42:15 +02:00
windows Add a README to avoid unrealistic expectations 2016-03-13 09:06:20 +02:00
wizards remove unused imports in java code 2016-06-06 14:28:41 +02:00
writerfilter tdf#91684 RTF import: handle fFlipH and fFlipV shape props 2016-06-16 08:32:20 +00:00
writerperfect tdf#94698 cleanup Makefiles. Get rid of udkapi and offapi 2016-06-09 09:47:11 +00:00
xmerge remove some unused Java code 2016-03-14 13:44:39 +02:00
xmlhelp Convert IteratorState to scoped enum 2016-06-06 07:02:26 +00:00
xmloff convert DBG_ASSERT in xmloff 2016-06-17 06:39:30 +00:00
xmlreader Convert XmlReader::Result to scoped enum 2016-05-25 11:59:08 +00:00
xmlscript remove some manual ref-counting 2016-06-06 07:01:34 +00:00
xmlsecurity loplugin:sallogareas 2016-06-13 10:25:40 +02:00
.buckconfig
.buckversion
.gitattributes
.gitignore Ignore lo.png output from make dump-deps-png 2016-04-09 21:22:19 +02:00
.gitmodules
.gitreview
autogen.sh
BUCK
config.guess
config.sub
config_host.mk.in Add MS binary format validator support 2016-06-15 13:54:37 +00:00
config_host_lang.mk.in
configure.ac Add MS binary format validator support 2016-06-15 13:54:37 +00:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst libxslt: upgrade to release 1.1.29 2016-06-01 15:58:44 +00:00
g it is "git submodule", not "git submodules" 2016-05-17 14:29:39 +02:00
install-sh
leak-suppress.txt ignore a few low level libc leaks for now 2016-03-12 17:20:16 +01:00
Library_merged.mk
lo.xcent.in We don't build the Apple Remote code when sandboxed 2016-03-04 11:27:44 +01:00
logerrit logerrit: disarm the "resubmit" foot-gun 2016-04-27 15:52:40 +02:00
Makefile.fetch Revert "Add --with-prebuilt-openssl" 2016-03-09 12:32:31 +02:00
Makefile.gbuild add build system part for upload crashreport symbols 2016-05-24 04:28:16 +02:00
Makefile.in make the symbol generation also work correctly on windows 2016-05-24 09:13:16 +02:00
README.cross
README.md
README.Solaris remove use of Archive::Zip 2016-06-04 08:09:56 +02:00
Repository.mk fix packimages that broke android build 2016-06-09 19:52:08 +00:00
RepositoryExternal.mk we are using our own minidump_upload executable 2016-06-14 12:04:22 +00:00
RepositoryFixes.mk
RepositoryModule_build.mk
RepositoryModule_host.mk clew: move this foreign code to external/clew 2016-03-21 21:15:44 +00:00
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER add Vim C-indent options to C/C++ template modeline 2016-05-18 20:01:32 +02:00
unusedcode.easy Remove unnecessary typedef (that introduced a reserved identifier) 2016-03-10 18:32:08 +01:00
unusedcode.exclude
unusedcode.README

LibreOffice

Coverity Scan Build Status

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.