Difference between revisions of "Extensions development"

From Apache OpenOffice Wiki
Jump to: navigation, search
m (Ideas)
(Books on OpenOffice.org Basic Programming: update last reference)
(29 intermediate revisions by 17 users not shown)
Line 4: Line 4:
 
OpenOffice.org 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 OpenOffice.org [[Extensions_repository|Extensions repository]] and installed by end-users easily.
+
The principle is to create UNO packages that can be listed in the OpenOffice.org [http://extensions.services.openoffice.org Extensions repository] and installed by end-users easily.
  
This section wants to give newcomers as well as experienced developers some hints to develop Extensions in their desired languages and provide them with tools and frameworks that ease and homogenize the development.
+
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.
  
Finally, popular Extensions may be integrated into OpenOffice.org so it is important to follow common policies from beginning to ease this merging.
+
Popular Extensions may be integrated into OpenOffice.org, so it is important to follow common policies from beginning to ease this merging.
 +
 
 +
Finally, extension developers are invited to join our [http://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 aspect. Resources regarding the OpenOffice.org API can be found on the [http://api.openoffice.org API project] and UNO bridges languages issues on the [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 OpenOffice.org API can be found on the [http://api.openoffice.org API project] and the UNO bridge language issues are at [http://udk.openoffice.org UDK project]. The [http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/OpenOffice.org_Developers_Guide OpenOffice.org Developer's Guide] is a valuable source of information as well.
  
 
The translations of these pages are welcomed and [[Extensions#Translating_these_pages|guidelines are available]].
 
The translations of these pages are welcomed and [[Extensions#Translating_these_pages|guidelines are available]].
  
 
* [[Extensions_development_python|Starting in Python]]
 
* [[Extensions_development_python|Starting in Python]]
* [[Extensions_development_basic|Starting in Basic]]
+
* [[Extensions_development_basic|Starting in Basic]] and [[Documentation/BASIC_Guide|Documentation BASIC Guide]]
 
* [[Extensions_development_java|Starting in Java]]
 
* [[Extensions_development_java|Starting in Java]]
* [[Using_Cpp_with_the_OOo_SDK|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]]
 +
* [[Extensions_development_vfp|Starting in Visual FoxPro (French)]]
 
* [[Non-code_extensions|Non programmatic Extensions]]
 
* [[Non-code_extensions|Non programmatic Extensions]]
 
* [[Extensions_packaging|Extensions packaging]]
 
* [[Extensions_packaging|Extensions packaging]]
 
* [[Extensions_Integration_into_Installation_Set|Extensions Integration into Installation Set]]
 
* [[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.org 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 ====
  
 
* [http://codesnippets.services.openoffice.org Code snippets available in many languages]
 
* [http://codesnippets.services.openoffice.org Code snippets available in many languages]
 +
* [[API/Samples|Code snippets in the Wiki]] (Sample extensions, etc.)
 
* [[Extensions_development_translation|Translation framework]]
 
* [[Extensions_development_translation|Translation framework]]
* [[Extensions_Packager|Extensions Packager]]
+
* [[Extensions_Packager|Extensions Packager]] - BasicAddonBuilder - Extension Compiler
 
* Predefined wizards
 
* Predefined wizards
 
* [[Extensions_introspection|Introspection Tools]]: discover the API
 
* [[Extensions_introspection|Introspection Tools]]: discover the API
* [[OpenOffice_Eclipse_Integration|OpenOffice_Eclipse_Integration]] - OpenOffice.org development with Eclipse
+
* [[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, ...)
 
* [[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 ====
 
==== Best Practices ====
Line 43: Line 72:
 
* [[Extensions_feature_ideas|Feature ideas]]
 
* [[Extensions_feature_ideas|Feature ideas]]
 
[[Category:Extensions]]
 
[[Category:Extensions]]
 +
[[Category:Build_System]]

Revision as of 21:40, 9 July 2015

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 OpenOffice.org without diving into core sources. Obviously all developers willing to develop at OpenOffice.org sources level are welcomed.

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 OpenOffice.org 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 OpenOffice.org, so it is important to follow common policies from 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 OpenOffice.org API can be found on the API project and the UNO bridge language issues are at UDK project. The OpenOffice.org 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.org Basic Programming

Tools & Frameworks

Best Practices

Project: Enhancing the Extensions Infrastructure of OpenOffice.org

Improving the Extension Manager

Personal tools