Difference between revisions of "Plugin development"

From MidrangeWiki
Jump to: navigation, search
(+links to examples & tutorials)
m (External links: +LPEX 4.4.0)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The Remote System Explorer (RSE) is built on top of [[Eclipse]], and uses the Eclipse user interface, architecture, and frameworks for writing plug-ins. So, in order to understand how to write extensions (more commonly referred to as "plug-ins") for the Remote Systems Explorer ([RSE]), you first need to understand Eclipse.  Eclipse is an integrated development environment that was designed to be extended by tool vendors.  The core of Eclipse consists of a platform (the workbench, workspace, UI, etc....) and mechanism for loading plug-ins (OSGi), Java development tools (JDT) and a plug-in development environment (PDE).  The PDE is tools inside of Eclipse that all plug-in developers should use for writing their plug-ins. 
+
The Remote System Explorer (RSE) is built on top of [[Eclipse]], and uses the Eclipse user interface, architecture, and frameworks for writing plug-ins.  
  
If you look at the Eclipse web site you will find a lot of other projects that extend this core platform.  For example: Data tools, Web tools, testing and performance tools, and modeling tools.  It's important to know this so you don't get overwhelmed when visiting the Eclipse web site.  The resources section of the web site provides resources for all these projects.  So you will find articles on things like "How to process OCL Abstract Syntax Trees" which is just darn scary (and completely unrelated) for developers who just want to extend the RSE.  However you will also find articles on "Creating an Eclipse View" which might be exactly what you want to do!
+
So, in order to understand how to write extensions (more commonly referred to as "plug-ins") for the Remote Systems Explorer ([[RSE]]), you first need to understand Eclipse.   
  
After creating your "Hello World" plug-in, the best place to get started is reading the Eclipse [http://help.eclipse.org/help32/topic/org.eclipse.platform.doc.isv/guide/int.htm Platform Plug-in Developer Guide].  There is also a ton of resources [http://www.eclipse.org/resources/index.php here].   
+
Eclipse is an integrated development environment that was designed to be extended by tool vendors.   
  
The current release of WDSC (7.0) which is based on Eclipse 3.2, but check the [[Eclipse|Eclipse wiki entry]] for the current cross reference.
+
The core of Eclipse consists of a platform (the workbench, workspace, UI, etc....) and mechanism for loading plug-ins (OSGi), Java development tools (JDT) and a plug-in development environment (PDE).
  
There is also a [[midrange.com]] hosted mailing list for WDSC Plug-in Developers ... http://lists.midrange.com/listinfo/wdsc-plugin-dev.
+
The PDE is tools inside of Eclipse that all plug-in developers should use for writing their plug-ins.
  
Here you can find a list of vendors / users you have plug-ins for WDSC [[WDSC/Plugin]].
+
If you look at the Eclipse web site you will find a lot of other projects that extend this core platform. 
 +
 
 +
For example: Data tools, Web tools, testing and performance tools, and modeling tools. 
 +
 
 +
It's important to know this so you don't get overwhelmed when visiting the Eclipse web site. 
 +
 
 +
The resources section of the web site provides resources for all these projects. 
 +
 
 +
So you will find articles on things like "How to process OCL Abstract Syntax Trees" which is just darn scary (and completely unrelated) for developers who just want to extend the RSE. 
 +
 
 +
However you will also find articles on "Creating an Eclipse View" which might be exactly what you want to do!
 +
 
 +
After creating your "Hello World" plug-in, the best place to get started is reading the Eclipse [http://help.eclipse.org/help32/topic/org.eclipse.platform.doc.isv/guide/int.htm Platform Plug-in Developer Guide]. 
 +
 
 +
There is also a ton of resources [http://www.eclipse.org/resources/index.php] here. 
 +
 
 +
You need to write your plug-in to match the release of Eclipse it will run on.  Check the [[Eclipse|Eclipse wiki entry]] for the current cross reference.
 +
 
 +
There is also a [[midrange.com]] hosted mailing list for WDSC / RDi Plug-in Developers ... http://lists.midrange.com/listinfo/wdsc-plugin-dev.
 +
 
 +
Here you can find a list of vendors / users you have plug-ins for [[WDSC/Plugin|WDSC / RDi]].
 +
 
 +
== Community written plug-ins ==
 +
* [[RDP_ToPrefixArea|ToPrefixAreaAction]] Keystroke action to move the cursor between the prefix area and the text area.  With step by step instructions for creating.
 +
* [[RDP_LPEX_profile|LPEX profile]] Example of an LPEX profile that runs when opening an editor tab. With step by step instructions for creating.
 +
* [http://code.midrange.com/6a2096a253.html ConvertFixedToFreeAction] Example of an early bit of code to convert a fixed spec like D-Spec to free form.
  
 
== Eclipse SDK examples ==
 
== Eclipse SDK examples ==
  
Eclipse has a samples plug-in that might be useful for looking at examples of working plug-ins.  Use the Eclipse update manager (not the separate IBM Install manager!) and look for ''Eclipse Project'', then ''SDK Examples.''  As of Eclipse 3.2, the examples provided are:
+
Eclipse has a samples plug-in that might be useful for looking at examples of working plug-ins.   
Field assist example
 
Java editor
 
Template editor
 
Multi page editor
 
Property sheet
 
Readme tool
 
Undo example
 
  
The Readme tool puts a green bar in the lower left of the workbench that you might find annoying.  To disable the Readme tool, go to {{code|C:\Program Files\IBM\SDP70\plugins\org.eclipse.ui.examples.readmetool_3.2.0.I20060605-1400}} and rename {{code|plugin.xml}} to something different like {{code|plugin.xml.off}}.  Restart the [[WDSC_Workbench]] and the message should be gone.  The source for these examples is in {{code|C:\Program Files\IBM\SDP70\plugins\org.eclipse.sdk.examples.source_3.1.100.v20060609m}}  To disable the FieldAssist plug-in, in {{code|C:\Program Files\IBM\SDP70\plugins}} rename {{code|org.eclipse.ui.examples.fieldassist_1.0.0.jar}} to something else, like {{code|org.eclipse.ui.examples.fieldassist_1.0.0.jar.off}} and restart the [[WDSC_Workbench]]
+
Use the Eclipse update manager (not the separate IBM Install manager!) and look for ''Eclipse Project'', then ''SDK Examples.'' 
 +
 
 +
As of Eclipse 3.2, the examples provided are:
 +
*Field assist example
 +
*Java editor
 +
*Template editor
 +
*Multi page editor
 +
*Property sheet
 +
*Readme tool
 +
*Undo example
 +
 
 +
The Readme tool puts a green bar in the lower left of the workbench that you might find annoying.   
 +
 
 +
To disable the Readme tool, go to  
 +
 
 +
{{code|C:\Program Files\IBM\SDP70\plugins\org.eclipse.ui.examples.readmetool_3.2.0.I20060605-1400}}  
 +
 
 +
and rename {{code|plugin.xml}} to something different like {{code|plugin.xml.off}}.   
 +
 
 +
Restart the [[WDSC_Workbench|Workbench]] and the message should be gone.   
 +
 
 +
The source for these examples is in  
 +
 
 +
{{code|C:\Program Files\IBM\SDP70\plugins\org.eclipse.sdk.examples.source_3.1.100.v20060609m}}   
 +
 
 +
To disable the FieldAssist plug-in, goto
 +
 
 +
{{code|C:\Program Files\IBM\SDP70\plugins}}  
 +
 
 +
and rename  
 +
 
 +
{{code|org.eclipse.ui.examples.fieldassist_1.0.0.jar}} to something else, like  
 +
 
 +
{{code|org.eclipse.ui.examples.fieldassist_1.0.0.jar.off}}  
 +
 
 +
and restart the [[WDSC_Workbench|Workbench]]
  
 
== External links ==
 
== External links ==
Following are links to WDSCz (zSeries) which is close enough to our WDSC that the tutorials should help.  Be advised that they are for WDSC 6 (Eclipse 3.0) so they are a little different if you are following along on a later version of WDSC.
+
Following are links to WDSCz (zSeries) which is close enough to our WDSC / RDi that the tutorials should help.   
  
[http://www-128.ibm.com/developerworks/websphere/library/techarticles/0607_casey/0607_casey.html Creating user profiles for the LPEX editor in WebSphere Developer for zSeries v6.0]
+
Be advised that they are for WDSC 6 (Eclipse 3.0) so they are a little different if you are following along on a later version of WDSC / RDi.
 +
 
 +
[http://www.ibm.com/developerworks/websphere/library/techarticles/0607_casey/0607_casey.html Creating user profiles for the LPEX editor in WebSphere Developer for zSeries v6.0]
  
 
[http://www.ibm.com/developerworks/opensource/library/os-eclipse-snippet/index.html?ca=dgr-lnxw09RichEclipse#test Build extensions for Eclipse one snippet at a time]
 
[http://www.ibm.com/developerworks/opensource/library/os-eclipse-snippet/index.html?ca=dgr-lnxw09RichEclipse#test Build extensions for Eclipse one snippet at a time]
  
[http://www-128.ibm.com/developerworks/websphere/library/techarticles/0605_casey/0605_casey.html Extending the LPEX Editor in WebSphere Developer for zSeries v6.0]
+
[http://www.ibm.com/developerworks/websphere/library/techarticles/0605_casey/0605_casey.html Extending the LPEX Editor in WebSphere Developer for zSeries v6.0]
  
 
[http://its.unm.edu/introductions/aix_xlfortran/lpxindex.htm LPEX User's Guide and Reference]
 
[http://its.unm.edu/introductions/aix_xlfortran/lpxindex.htm LPEX User's Guide and Reference]
  
 
[http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/topic/com.ibm.lpex.doc.isv/api/overview-summary.html LPEX v3.2.2 JavaDoc (IBM)]
 
[http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/topic/com.ibm.lpex.doc.isv/api/overview-summary.html LPEX v3.2.2 JavaDoc (IBM)]
 +
 +
[https://www.ibm.com/support/knowledgecenter/SSAE4W_9.6.0/com.ibm.lpex.doc.isv/api/index.html LPEX 4.4.0 (RDi 9.6.0) JavaDoc]
  
 
[http://publib.boulder.ibm.com/iseries/v5r1/ic2924/info/rzahh/javadoc/overview-summary.html IBM v5r1 JavaDoc]
 
[http://publib.boulder.ibm.com/iseries/v5r1/ic2924/info/rzahh/javadoc/overview-summary.html IBM v5r1 JavaDoc]
Line 45: Line 102:
 
== Categories ==
 
== Categories ==
 
[[Category:WDSC]]
 
[[Category:WDSC]]
 +
[[Category:RDi]]
 +
[[Category:Editors]]

Latest revision as of 20:35, 8 February 2018

The Remote System Explorer (RSE) is built on top of Eclipse, and uses the Eclipse user interface, architecture, and frameworks for writing plug-ins.

So, in order to understand how to write extensions (more commonly referred to as "plug-ins") for the Remote Systems Explorer (RSE), you first need to understand Eclipse.

Eclipse is an integrated development environment that was designed to be extended by tool vendors.

The core of Eclipse consists of a platform (the workbench, workspace, UI, etc....) and mechanism for loading plug-ins (OSGi), Java development tools (JDT) and a plug-in development environment (PDE).

The PDE is tools inside of Eclipse that all plug-in developers should use for writing their plug-ins.

If you look at the Eclipse web site you will find a lot of other projects that extend this core platform.

For example: Data tools, Web tools, testing and performance tools, and modeling tools.

It's important to know this so you don't get overwhelmed when visiting the Eclipse web site.

The resources section of the web site provides resources for all these projects.

So you will find articles on things like "How to process OCL Abstract Syntax Trees" which is just darn scary (and completely unrelated) for developers who just want to extend the RSE.

However you will also find articles on "Creating an Eclipse View" which might be exactly what you want to do!

After creating your "Hello World" plug-in, the best place to get started is reading the Eclipse Platform Plug-in Developer Guide.

There is also a ton of resources [1] here.

You need to write your plug-in to match the release of Eclipse it will run on. Check the Eclipse wiki entry for the current cross reference.

There is also a midrange.com hosted mailing list for WDSC / RDi Plug-in Developers ... http://lists.midrange.com/listinfo/wdsc-plugin-dev.

Here you can find a list of vendors / users you have plug-ins for WDSC / RDi.

Community written plug-ins

  • ToPrefixAreaAction Keystroke action to move the cursor between the prefix area and the text area. With step by step instructions for creating.
  • LPEX profile Example of an LPEX profile that runs when opening an editor tab. With step by step instructions for creating.
  • ConvertFixedToFreeAction Example of an early bit of code to convert a fixed spec like D-Spec to free form.

Eclipse SDK examples

Eclipse has a samples plug-in that might be useful for looking at examples of working plug-ins.

Use the Eclipse update manager (not the separate IBM Install manager!) and look for Eclipse Project, then SDK Examples.

As of Eclipse 3.2, the examples provided are:

  • Field assist example
  • Java editor
  • Template editor
  • Multi page editor
  • Property sheet
  • Readme tool
  • Undo example

The Readme tool puts a green bar in the lower left of the workbench that you might find annoying.

To disable the Readme tool, go to

C:\Program Files\IBM\SDP70\plugins\org.eclipse.ui.examples.readmetool_3.2.0.I20060605-1400

and rename plugin.xml to something different like plugin.xml.off.

Restart the Workbench and the message should be gone.

The source for these examples is in

C:\Program Files\IBM\SDP70\plugins\org.eclipse.sdk.examples.source_3.1.100.v20060609m

To disable the FieldAssist plug-in, goto

C:\Program Files\IBM\SDP70\plugins

and rename

org.eclipse.ui.examples.fieldassist_1.0.0.jar to something else, like

org.eclipse.ui.examples.fieldassist_1.0.0.jar.off

and restart the Workbench

External links

Following are links to WDSCz (zSeries) which is close enough to our WDSC / RDi that the tutorials should help.

Be advised that they are for WDSC 6 (Eclipse 3.0) so they are a little different if you are following along on a later version of WDSC / RDi.

Creating user profiles for the LPEX editor in WebSphere Developer for zSeries v6.0

Build extensions for Eclipse one snippet at a time

Extending the LPEX Editor in WebSphere Developer for zSeries v6.0

LPEX User's Guide and Reference

LPEX v3.2.2 JavaDoc (IBM)

LPEX 4.4.0 (RDi 9.6.0) JavaDoc

IBM v5r1 JavaDoc

Eclipse 3.2 Example guide

Eclipse Project update site

Categories