Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Graphiti"

Line 5: Line 5:
 
This page contains useful information for developers working on the Graphiti framework itself. Users of the framework (building Graphiti-based tools) should rather have a look onto our Eclipse page at [http://www.eclipse.org/graphiti http://www.eclipse.org/graphiti].  
 
This page contains useful information for developers working on the Graphiti framework itself. Users of the framework (building Graphiti-based tools) should rather have a look onto our Eclipse page at [http://www.eclipse.org/graphiti http://www.eclipse.org/graphiti].  
  
== Central Build<br> ==
+
== Central Build<br> ==
  
=== Build Job<br> ===
+
=== Build Job<br> ===
  
Our central Hudson build job can be found [https://hudson.eclipse.org/hudson/job/gmp-graphiti-nightly/ here]. Graphiti uses [http://www.eclipse.org/buckminster/ Buckminster ]for its automated build and test run. See [[BuildProcessDescription|here]] for a detailed description of the Graphiti build process.<br>
+
Our central Hudson build job can be found [https://hudson.eclipse.org/hudson/job/gmp-graphiti-nightly/ here]. Graphiti uses [http://www.eclipse.org/buckminster/ Buckminster] for its automated build and test run. See [[GraphitiBuildProcessDescription|here]] for a detailed description of the Graphiti build process.<br>  
  
 
== Coding  ==
 
== Coding  ==

Revision as of 10:23, 30 June 2011

BackgroundMain.png

Graphiti - a Graphical Tooling Infrastructure

This page contains useful information for developers working on the Graphiti framework itself. Users of the framework (building Graphiti-based tools) should rather have a look onto our Eclipse page at http://www.eclipse.org/graphiti.

Central Build

Build Job

Our central Hudson build job can be found here. Graphiti uses Buckminster for its automated build and test run. See here for a detailed description of the Graphiti build process.

Coding

API Tooling

We use the Eclipse API tooling to fulfill Eclipse version number and API stability requirements. You have to define an API baseline if you are working on the Graphiti releases 0.8.x (service releases only) and beyond. For service releases use the same version as baseline (e.g. 0.8.0 for Indigo SR1) otherwise the last major release (e.g. 0.8.0 for Juno developement).

Coding Conventions

We use the standard Eclipse formatter for our coding with just one exceptional setting: the maximum line width is changed to 120. This setting can be found in the Eclipse preferences under 'Java -> Code Style -> Formatter' by editing the 'Eclipse [built-in]' profile on tab 'Line Wrapping': set the 'Maximum Line Width' in Section 'General settings' to 120.

To be sure that the formatter is really used for all your changes define your save actions (Eclipe preferences under 'Java -> Editor -> Save Actions') to include 'Format source code' with 'Format edited lines' only. Also enable the 'Organize imports' action on this page to get an automated clean-up of the import statements.

Repository

The source code of Graphiti is publicly available from the Modeling CVS repository. A general page on using CVS with Eclipse can be found here. If you just want to browse the source code without checking out all the projects, you can use this link for the web access to the Eclipse CVS.

CVS Anonymous Access

Please set up the following Eclipse CVS repository location: :pserver:anonymous@dev.eclipse.org:/cvsroot/modeling, folder org.eclipse.gmp/org.eclipse.gmp.graphiti user anonymous with no password.

Committer CVS Access

Same details as anonymous access, using extssh as the connection type and specific username/password as assigned by Eclipse. Eclipse CSV repository location is :extssh:dev.eclipse.org:/cvsroot/modeling, folder org.eclipse.gmp/org.eclipse.gmp.graphiti

Installation

As development IDE you should use the newest Eclipse installation of your choice, at the time this was written the newest Eclipse version was 3.7 (Indigo). You will need SWTBot in your developement IDE to be able to run the Graphiti SWTBot-based UI tests. Also you will need to add Buckminster (version 3.7 at the time this was written) to your installation. For more details see the Getting Started Guide.

Basically you will need the same installation for your target platform as well, but it needs to contain EMF SDK, EMF Transactions SDK and GEF SDK (see getting started guide). Buckminster is not needed here, but SWTBot is. Additionally you will need to install GMF runtime (it hosts some vector support functionality we use from export.batik plugin that you have to collect individually otherwise).

Mailing List

The Graphiti developer mailing list allows to follow and participate in discussions on the Graphiti framework. You can subscribe here.

Back to the top