Difference between revisions of "Extensions development"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Starting in a language)
(Tools & Frameworks)
 
(69 intermediate revisions by 25 users not shown)
Line 1: Line 1:
[[Category:Extensions]]
+
{{Extensions}}
 +
Developing extensions is an efficient way to bring value to {{AOo}} without diving into core sources. Obviously all developers willing to [[Main_Page|develop at {{AOo}} sources level]] are welcomed.
  
Developping extensions is an efficient way to bring value to OpenOffice.org without diving into core sources. Obviously all developpers willing to [http://wiki.services.openoffice.org/wiki/Main_Page develop at OpenOffice.org sources level] are welcommed
+
{{AOo}} enables third party tools creation through UNO bridges, allowing using many languages.
  
OpenOffice.org enables third party tools creation through UNO bridges, allowing using many languages
+
The principle is to create UNO packages that can be listed in the {{AOo}} [https://extensions.openoffice.org/ Extensions repository] and installed by end-users easily.
  
The principle is to create UNO packages that can be listed in the OpenOffice.org [http://wiki.services.openoffice.org/wiki/Extensions_repository Extensions repository] and installed by end-users easilly
+
This section gives newcomers as well as experienced developers some hints for developing Extensions in various languages and provides tools and frameworks to facilitate that development.
  
This section wants to give newcommers as well as experienced devloppers some hints to develop Extensions in their desired languages and provide them with tools and frameworks that ease and homogenize the development
+
Popular Extensions may be integrated into {{AOo}}, so it is important to follow common policies from the beginning to ease this merging.
  
Finally, popular Extensions may be integrated into OpenOffice.org so it is important to follow common policies from begining to ease this merging
+
Finally, extension developers are invited to join our [https://openoffice.apache.org/mailing-lists.html#api-mailing-list-public API mailing list] to ask questions and share ideas.
  
 
==== Starting in a language ====
 
==== Starting in a language ====
Addons can be written in various languages. Each section is here to give starting informations that let you create your addons. Each section is dedicated to a language. It deals with specific points concerning the Extensions aspact. Ressources regarding the OpenOffice.org API can be found on the [http://api.openoffice.org API project] and UNO bridges languages issues on th [http://udk.openoffice.org UDK project]
+
Addons can be written in various languages. Each section gives starting information to help you create your addon. Each section is dedicated to a language. It deals with specific points concerning the Extensions aspect. Resources regarding the {{AOO}} API can be found on the [https://www.openoffice.org/api/ API project] and the UNO bridge language issues are at [https://www.openoffice.org/udk/ UDK project]. The [[Documentation/DevGuide/OpenOffice.org_Developers_Guide|OpenOffice Developer's Guide]] is a valuable source of information as well.
  
The translations of these pages are welcommed and [http://wiki.services.openoffice.org/wiki/Extensions#Translating_these_pages guidelines are available].
+
The translations of these pages are welcomed and [[Extensions#Translating_these_pages|guidelines are available]].
  
* [http://wiki.services.openoffice.org/wiki/Extensions_development_python Starting in Python]
+
* [[Extensions_development_python|Starting in Python]]
* Starting in Basic
+
* [[Extensions_development_basic|Starting in Basic]] and [[Documentation/BASIC_Guide|Documentation BASIC Guide]]
* [http://wiki.services.openoffice.org/wiki/Extensions_development_java Starting in Java]
+
* [[Extensions_development_java|Starting in Java]]
* Starting in C++
+
* [[Uno/Cpp/Tutorials/Introduction_to_Cpp_Uno|Introduction to C++ and UNO]] and [[Using_Cpp_with_the_OOo_SDK|Using C++ with OOoSDK]]
* Non programatic Extensions
+
* [[Extensions_development_vfp|Starting in Visual FoxPro (French)]]
* Extensions packaging
+
* [[Non-code_extensions|Non programmatic Extensions]]
 +
* [[Extensions_packaging|Extensions packaging]]
 +
* [[Extensions_Integration_into_Installation_Set|Extensions Integration into Installation Set]]
 +
* [[Spellchecker_Integration_into_Installation_Set|Adding Spellchecker Extensions into Installation Set]]
 +
* [[Filter_extensions|Import and Export filter extensions using code or xslt]]
 +
 
 +
==== Articles, Tutorials & Reference Information ====
 +
 
 +
* [[Framework/Article/Generic_UNO_Interfaces_for_complex_toolbar_controls|Generic UNO Interfaces for complex toolbar controls]]
 +
 
 +
* [[Framework/Article/Addon_Menu_Toolbar_Merging|Addon Menu Toolbar Merging]]
 +
 
 +
* [[Framework/Tutorial/Popup_Menu_Controller|Popup Menu Controller]]
 +
 
 +
* [[Framework/Tutorial/Statusbar_Controller|Statusbar Controller]]
 +
 
 +
* [[Documentation/DevGuide/Extensions/Extensions|DevGuide -- Extensions]]
 +
 
 +
==== Books on OpenOffice Basic Programming ====
 +
 
 +
* [http://www.amazon.com/OpenOffice-org-Macros-Explained-Andrew-Pitonyak/dp/1930919514/ OpenOffice.org Macros Explained] by Andrew Pitonyak
 +
* [http://www.lulu.com/content/2905912 OpenOffice.org Basic Crash Course] by Dmitri Popov
 +
* [http://www.amazon.com/Learn-OpenOffice-org-Spreadsheet-Macro-Programming/dp/1847190979/ Learn OpenOffice.org Spreadsheet Macro Programming] by Mark, Alexander Bain
 +
* [http://www.amazon.de/Makros-OpenOffice-org-2-3-StarBasic-OpenOffice/dp/3836211114/ Makros in OpenOffice.org 2.3] von Thomas Krumbein (in German)
 +
* [http://www.eyrolles.com/Informatique/Livre/programmation-openoffice-org-et-libreoffice-9782212132472 Programmation OpenOffice.org et LibreOffice] de Bernard Marcelly, Laurent Godard (in French)
  
 
==== Tools & Frameworks ====
 
==== Tools & Frameworks ====
  
* Translation framework
+
* <s>[http://codesnippets.services.openoffice.org Code snippets available in many languages]</s> <font color="red">DEPRECATED</font>
* Extension Packager
+
* [[API/Samples|Code snippets in the Wiki]] (Sample extensions, etc.)
 +
* [[Extensions_development_translation|Translation framework]]
 +
* [[Extensions_Packager|Extensions Packager]] - BasicAddonBuilder - Extension Compiler
 
* Predefined wizards
 
* Predefined wizards
* Introspection Tools : discover the API
+
* [[Extensions_introspection|Introspection Tools]]: discover the API
 +
* [[OpenOffice_Eclipse_Integration|OpenOffice.org Eclipse Integration]] - OpenOffice.org development with Eclipse
 +
* [[OpenOffice_NetBeans_Integration|OpenOffice.org NetBeans Integration]] - plug-in for NetBeans providing some nice features to simplify the development with and for OpenOffice.org (highlevel wizards, UNOIDL and xcu syntax highlighting, code completion, integrated API reference, …)
 +
* [[Extension_Development_with_IntelliJ_IDEA|Extension Development with IntelliJ IDEA]]: simple introduction how you can use the IntelliJ IDEA to develop OpenOffice.org extensions.
 +
* [[OpenOffice_Maven2_Integration|OpenOffice.org Maven 2 integration]] - Maven plugin to build OpenOffice.org extensions.
 +
* [[OpenOffice_CMake_Integration|OpenOffice.org CMake integration]] - CMake module for development of OpenOffice.org extensions and other OpenOffice.org-relate projects.
 +
 
 +
==== Best Practices ====
 +
* [[Extensions_best_practices|How to write OO.o GUI Extensions today]]
 +
 
 +
==== Project: Enhancing the Extensions Infrastructure of OpenOffice.org ====
 +
* [[Extensions_improvements_proposal|Project Proposal (agreed by the Community June 2006)]]
 +
* [[Extensions_improvements_plan_and_status|Project Status]]
 +
 
 +
==== Improving the Extension Manager ====
 +
* [[Extensions_feature_ideas|Feature ideas]]
 +
[[Category:Extensions]]
 +
[[Category:Build_System]]

Latest revision as of 11:26, 28 August 2022

OOo Extensions project

Please view the wiki usage guidelines
before contributing.

Categories:

Pages:

Extensions on the main site

Extensions in other languages:
ES - FR - IT - JA - NL - OC -

Developing extensions is an efficient way to bring value to Apache OpenOffice without diving into core sources. Obviously all developers willing to develop at Apache OpenOffice sources level are welcomed.

Apache OpenOffice enables third party tools creation through UNO bridges, allowing using many languages.

The principle is to create UNO packages that can be listed in the Apache OpenOffice Extensions repository and installed by end-users easily.

This section gives newcomers as well as experienced developers some hints for developing Extensions in various languages and provides tools and frameworks to facilitate that development.

Popular Extensions may be integrated into Apache OpenOffice, so it is important to follow common policies from the beginning to ease this merging.

Finally, extension developers are invited to join our API mailing list to ask questions and share ideas.

Starting in a language

Addons can be written in various languages. Each section gives starting information to help you create your addon. Each section is dedicated to a language. It deals with specific points concerning the Extensions aspect. Resources regarding the Apache OpenOffice API can be found on the API project and the UNO bridge language issues are at UDK project. The OpenOffice Developer's Guide is a valuable source of information as well.

The translations of these pages are welcomed and guidelines are available.

Articles, Tutorials & Reference Information

Books on OpenOffice Basic Programming

Tools & Frameworks

Best Practices

Project: Enhancing the Extensions Infrastructure of OpenOffice.org

Improving the Extension Manager

Personal tools