Libreoffice System Development Kit
LibreOffice 25.8 SDK - Master Documentation Outline
Target Audience: Comfac Interns & Documentation Team Objective: This outline maps out the entire LibreOffice SDK. Links to the original site are blocked by bot-protection. Interns must manually navigate to these sections, copy the text/code, and rebuild these pages as child-pages within the Comfac Wiki.
1. SDK Core & Setup
These pages explain how to configure the environment before writing code.
- Installation Guide: Details on
setsdkenv_unix.sh/setsdkenv_windows.bat, environment variables (likeOO_SDK_HOME), and compiling tools (GNU Make, compilers). - Development Tools: Documentation for tools like
uno,unopkg(for extensions),cppumaker, andjavamaker.
2. API Reference Material (CRITICAL)
This is the dictionary for the AI. It is the most important section to mirror.
- IDL Reference (UNO IDL API): The complete index of all LibreOffice objects, interfaces, services, and properties.
- Java UNO Runtime Reference: API for the Java binding.
- C++ Reference: API for the C++ UNO runtime and helper classes.
- LibreOffice Basic Language Binding: Documentation on accessing UNO via macros.
3. The Developer's Guide
This is the conceptual textbook. Interns must mirror the text and code snippets from every chapter.
- Part 1: Core Fundamentals
- Chapter 1: First Steps (Bootstrapping UNO, environment setup)
- Chapter 2: Professional UNO (Concepts, technologies)
- Chapter 3: Writing UNO Components (Inner workings of service manager, UNOIDL)
- Chapter 4: Extensions (How to package and deploy
.oxtfiles) - Chapter 5: Advanced UNO (Language bindings, core reflection)
- Chapter 6: Office Development (Application framework features)
- Part 2: Document Models
- Chapter 7: Text Documents (Writer objects, formatting, text cursors)
- Chapter 8: Spreadsheet Documents (Calc objects, calculations, cells)
- Chapter 9: Drawings and Presentations (Draw/Impress, shapes, slides)
- Chapter 10: Charts (Embedded graphical representations)
- Part 3: Advanced Features
- Chapter 11: LibreOffice Basic (Macros and dialogs)
- Chapter 12: Database Access (Base connectivity)
- Chapter 13: Forms (Event-driven form controls)
- Chapter 14: Universal Content Broker (UCB) (File and resource access)
- Chapter 15: Configuration Management (Accessing
Tools > Options) - Chapter 16: JavaBean for Office Components (
OfficeBeanintegration) - Chapter 17: Accessibility (Accessibility API implementation)
- Chapter 18: Scripting Framework (JavaScript, Python, BeanShell integration)
- Chapter 19: Graphical User Interfaces (Creating consistent GUIs)
- Appendices
- A. Guidelines and Specifications
- B. IDL Documentation Guidelines
- C. Universal Content Providers
- D. UNOIDL Syntax Specification (IDL Grammar)
4. Framework Tutorials
Specific how-to guides mentioned in the wiki.
- Context Menu Interception
- Popup Menu Controller
- Statusbar Controller
- Accelerators Configuration
- Addon Menu Toolbar Merging
- Asynchronous Callback Service
- Easy To Use Message Boxes
- Generic UNO Interfaces for complex toolbar controls
5. SDK Examples Library
Interns must download the actual source code files for these examples.
- Java Examples:
BookmarkInsertion,HardFormatting,SWriter,StyleCreation,StyleInitialization,TextDocumentStructure,TextReplace,GraphicsInserter,WriterSelector,CalcAddins,ChartTypeChange,EuroAdaption,SCalc,SDraw,DocumentConverter,DocumentLoader,DocumentPrinter,DocumentSaver,Object Inspector,Minimal Component,PropTest,ToDo,EmbeddedObject. - Python Examples:
Tool Panel Poc,Document Converter,DocumentLoader,DocumentPrinter,DocumentSaver,BookmarkInsertion,Hard Formatting,SWriter,StyleCreation,StyleInitialization,TextDocumentStructure,TextReplace,GraphicsInserter,WriterSelector,ChartTypeChange,EuroAdaption,SCalc,SDraw,InputEvents. - C++ Examples:
Draw,DocumentLoader,Counter,Remote client,complextoolbarcontrols. - Basic Examples:
Changing Appearance,Replacing Text,Using Regular Expressions,Inserting Bookmarks,Creating an Index,Adapting to Euroland,Import/Export of ASCII Files,Stock Quotes Updater,Forms and Controls. - Additional Examples Repository: Interns must clone and mirror:
https://gerrit.libreoffice.org/sdk-examples
6. Specifications
- OASIS OpenDocument Format (ODF): TC specifications.
- OpenOffice.org XML File Format: Legacy XML specs.
What is Missing That You Need to Download?
To put it simply, you currently have the "Table of Contents," but your AI tools need the actual "Book". Here is exactly what your interns must scrape and save to the Comfac Wiki:
- The API/IDL Reference: This is the absolute most critical missing piece. The AI needs to know the exact names of the UNO objects, methods, and properties (e.g.,
com.sun.star.text.TextDocument). Your interns must go toapi.libreoffice.org/docs/idl/ref/and scrape the class definitions. - The Actual Code Examples: The
Examples.pdftells us aBookmarkInsertion.javaexists, but the AI needs the actual.javaand.pyfiles to see how the API is called. They need to extract the.zip/.tar.gzof the SDK or pull them from the gerrit repo (https://gerrit.libreoffice.org/sdk-examples). - The Chapter Content: The 19 chapters of the Developer's Guide. The interns need to click into each of those chapters on the TDF Wiki and copy the text and code snippets explaining how the components work.
- Makefiles/Build Instructions: AI agents frequently fail at compiling C++ and Java UNO components because they don't know the specific build flags. The interns need to grab the
setsdkenvscripts and example Makefiles.