Difference between revisions of "Extensions development"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Tools & Frameworks)
(Tools & Frameworks)
 
(55 intermediate revisions by 23 users not shown)
Line 1: Line 1:
 
{{Extensions}}
 
{{Extensions}}
Developing extensions is an efficient way to bring value to OpenOffice.org without diving into core sources. Obviously all developers willing to [[Main_Page|develop at OpenOffice.org sources level]] are welcomed.
+
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.
  
OpenOffice.org enables third party tools creation through UNO bridges, allowing using many languages.
+
{{AOo}} 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 {{AOo}} [https://extensions.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 {{AOo}}, so it is important to follow common policies from the beginning 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 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 {{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 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]]
* 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 programmatic 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 ====
  
* [[http://codesnippets.services.openoffice.org|Code snippets available in manny languages]]
+
* <s>[http://codesnippets.services.openoffice.org Code snippets available in many languages]</s> <font color="red">DEPRECATED</font>
 +
* [[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
* 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: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