No description
bin | ||
build | ||
description | ||
dialog | ||
dist | ||
idl/org/libreoffice/example | ||
images | ||
registry/org/openoffice/Office | ||
source/org/libreoffice/example | ||
.classpath | ||
.gitignore | ||
.project | ||
.unoproject | ||
description.xml | ||
LICENSE | ||
package.properties | ||
README.md |
LibreOffice Starter Plugin
This repository contains some boilerplate code and config you need to get started to build your own LibreOffice Extension.
You can use this project as a starting point to write your own extension for LibreOffice.
Get started
- Install LibreOffice & LibreOffice SDK (5.0 or greater)
- Install Eclipse & the LOEclipse plugin
- Download this starter project & unzip it
- Import the project in Eclipse (File->Import->Existing Projects into Workspace)
- Let Eclipse know the paths to LibreOffice & the SDK (Project->Properties->UNO Properties)
- Setup Run Configuration
- Go to Run->Run Configurations
- Create a new run configuration of the type "LibreOffice Application"
- Select the project
- Run!
- Hint: Show the error log to view the output of the run configuration (Window->Show View->Error Log)
- The extension will be installed in LibreOffice and you will see a toolbar and a menu entry have been added to Writer.
Development Hints
- The entry point is in source/org/libreoffice/example/comp/StarterProjectImpl.
- Toolbar items and menu entries are defined in registry/org/openoffice/Office/Addons.xcu.
- Shortcuts are defined in registry/org/openoffice/Office/Accelerators.xcu.
- The position of the toolbar is defined in registry/org/openoffice/Office/UI/WriterWindowState.xcu.
- The dialog shown when clicking "Action One" is in dialog/ActionOneDialog.xdl. The dialog itself contains information how to edit it.
- The DialogHelper contains lots of helper methods to work with the dialog.
- Now go on customizing the extension to your needs. You'll find lots of information in the OpenOffice Wiki.
- To debug the Java code, just stick a breakpoint anywhere in Eclipse and start your run configuration in debug mode.