Difference between revisions of "ApCoCoA-1:Eclipse GUI"

From ApCoCoAWiki
Line 13: Line 13:
* 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
* http://blog.eclipse-tips.com/
* http://blog.eclipse-tips.com/
* http://wiki.eclipse.org/index.php/Eclipse_FAQs

Revision as of 19:28, 13 February 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


Quick and dirty notes for myself, thought as a basis for extending to a proper developer documentation ....

General Links


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 and enabledWhen
  • 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);


Just for redundancy, the previous link mentions among others the following links: