Difference between revisions of "ApCoCoA-1:Eclipse GUI"
From ApCoCoAWiki
S schuster (talk | contribs) m |
S schuster (talk | contribs) |
||
Line 1: | Line 1: | ||
− | + | =The Eclipse GUI Project: Goal of the Project= | |
The overall goal of the project can be described as follows: | The overall goal of the project can be described as follows: | ||
To create a state of the art, platform independent Graphical User Interface for faster CoCoAL program and prototype development. | To create a state of the art, platform independent Graphical User Interface for faster CoCoAL program and prototype development. | ||
− | |||
− | ==Scratchpad | + | |
+ | |||
+ | =Project Plan= | ||
+ | |||
+ | |||
+ | |||
+ | =Scratchpad= | ||
Quick and dirty notes for myself, thought as a basis for extending to a proper developer documentation .... | Quick and dirty notes for myself, thought as a basis for extending to a proper developer documentation .... | ||
− | + | ==General Links== | |
* http://help.eclipse.org/ganymede/index.jsp | * http://help.eclipse.org/ganymede/index.jsp | ||
* http://www.eclipse.org/articles/Article-UI-Guidelines/Index.html and http://wiki.eclipse.org/User_Interface_Guidelines | * http://www.eclipse.org/articles/Article-UI-Guidelines/Index.html and http://wiki.eclipse.org/User_Interface_Guidelines | ||
Line 15: | Line 20: | ||
* http://wiki.eclipse.org/index.php/Eclipse_FAQs | * http://wiki.eclipse.org/index.php/Eclipse_FAQs | ||
− | ===Commands | + | |
+ | ==Developing Plugins for Eclipse within Eclipse== | ||
+ | * Use [http://www.eclipse.org/downloads/|Eclipse for RCP/Plug-in Developers] | ||
+ | * You can browse the code of other plugins (which is a great way to learn to know the Eclipse internals) as follows: | ||
+ | ** In the Eclipse package explorer: Right click > <code>Import...</code> | ||
+ | ** Plug-in development > Plug-ins and Fragments. Next. | ||
+ | ** Select 'Binary projects with linked content' in the 'Import As' section. This is a resource friendly way to import the Plug-in code. Next. | ||
+ | ** Select the plugins you would like to explore and browse. Finish. | ||
+ | |||
+ | ==Commands== | ||
Examples in our GUI: Starting external ApCoCoA process, sending CoCoAL code to esternal ApCoCoA process, history forward/back, starting Server. | Examples in our GUI: Starting external ApCoCoA process, sending CoCoAL code to esternal ApCoCoA process, history forward/back, starting Server. | ||
Line 27: | Line 41: | ||
− | + | ===Links=== | |
* Good starting point: http://richclientplatform.blogspot.com/2007/07/new-menu-contribution-extension.html | * Good starting point: http://richclientplatform.blogspot.com/2007/07/new-menu-contribution-extension.html | ||
Just for redundancy, the previous link mentions among others the following links: | Just for redundancy, the previous link mentions among others the following links: | ||
Line 33: | Line 47: | ||
* http://wiki.eclipse.org/Menu_Contributions | * http://wiki.eclipse.org/Menu_Contributions | ||
* http://wiki.eclipse.org/Platform_Command_Framework | * http://wiki.eclipse.org/Platform_Command_Framework | ||
− | + | ||
+ | ==Preparing a new release== |
Revision as of 08:47, 2 March 2009
The Eclipse GUI Project: Goal of the Project
The overall goal of the project can be described as follows:
To create a state of the art, platform independent Graphical User Interface for faster CoCoAL program and prototype development.
Project Plan
Scratchpad
Quick and dirty notes for myself, thought as a basis for extending to a proper developer documentation ....
General Links
- http://help.eclipse.org/ganymede/index.jsp
- http://www.eclipse.org/articles/Article-UI-Guidelines/Index.html and http://wiki.eclipse.org/User_Interface_Guidelines
- http://blog.eclipse-tips.com/
- http://wiki.eclipse.org/index.php/Eclipse_FAQs
Developing Plugins for Eclipse within Eclipse
- Use for RCP/Plug-in Developers
- You can browse the code of other plugins (which is a great way to learn to know the Eclipse internals) as follows:
- In the Eclipse package explorer: Right click >
Import...
- Plug-in development > Plug-ins and Fragments. Next.
- Select 'Binary projects with linked content' in the 'Import As' section. This is a resource friendly way to import the Plug-in code. Next.
- Select the plugins you would like to explore and browse. Finish.
- In the Eclipse package explorer: Right click >
Commands
Examples in our GUI: Starting external ApCoCoA process, sending CoCoAL code to esternal ApCoCoA process, history forward/back, starting Server.
To add a command, extend these extension points in the plugin.xml:
- org.eclipse.ui.commands: here just an ID together with other attributes (name, category,...) for a certain command is defined.
- org.eclipse.ui.handlers: this is the link between the command ID and an actual handler, ie. a class that does something when the command is called. It is possible to implement more than one handler to a certain command and to determine certain conditions when to use which handler (elements
activeWhen
andenabledWhen
- org.eclipse.ui.menues: here the actual visible menu and toolbar contributions are defined along with declarations, when they are visible, eg. they are visible when, say, an editor "is in a certain context".
- org.eclipse.ui.contexts: this defines a context which is referenced by the visibility check of the menus, toolbars,... The context is set by the following code snippet in the class
ApCoCoAEditor
.
IContextService contextService = (IContextService) getSite().getService(IContextService.class); contextService.activateContext("org.apcocoa.eclipse.contexts.ApCoCoA");
Links
- Good starting point: http://richclientplatform.blogspot.com/2007/07/new-menu-contribution-extension.html
Just for redundancy, the previous link mentions among others the following links:
- http://wiki.eclipse.org/Command_Core_Expressions
- http://wiki.eclipse.org/Menu_Contributions
- http://wiki.eclipse.org/Platform_Command_Framework