Graphical Modeling Framework/Versions/GMF 2.3
Graphical Modeling Framework 2.3 New and Noteworthy items
See GMF Project Plan for more details
Back to Graphical Modeling Framework
Previous Release N&N Pages
GMF 2.2 New and Noteworthy - Released: June , 2009
GMF 2.1 New and Noteworthy - Released: June 12, 2008
GMF 2.0 New and Noteworthy - Released: June 28, 2007
GMF 1.0 New and Noteworthy - Released: June 30, 2006
bugzilla 283717 Custom PropertyTab classes now follow common pattern to produce boilerplate code conditionally, i.e. users may specify existing property tab or let GMF generate a boilerplate code to fill in.
bugzilla 282331 Ant build script for generating GMF diagram editors. GMF comes with a template that generates an Ant build file from a given .genmodel, which can be later run to produce a diagram editor. There are certain distinctions with regular code generation (the one user triggers from UI), namely no code formatting and code merging. Both can be added, if needed, by modification of the Xpand template which produces the Ant build script.
A new quality option is available in Save As Image File dialog to select quality parameter for compression if image format support it (currently only JPEG).
GMF Tooling adopts QVTo 3.0 and OCL 3.0, with the numerous grammar changes and improvements. It's unlikely one with custom templates for GMF 2.2 will notice any issue, nevertheless, it's worth knowing possible cause.
bugzilla 242150 Specification of the output folder is now possible for code generator. Those who didn't like default 'src' value - joy and happiness ;)
bugzilla 256461 EObject is implicit superclass now for any object in GMF Xpand and model validation OCL constraints. You can now access operations from EObject (e.g. eContainer()) without any extra quirks with your models.
bugzilla 138179 Expression-backed labels. This is a long-demanded option. One can use OCL (and any other expression language GMF supports) to define how labels look like. There's new ExpressionLabelMapping concept, with expressions to control label representation at the 'view' (label at rest) and 'edit' (user activated label editing) states. Besides, there's boolean expression that controls whether user-entered text value is correct. Screenshot, below, shows part of ecore.gmfmap model, with ExpressionLabelMapping that fills all three expressions, using different languages for each (OCL, Java and so-called 'literal', as-is, expressions): For each such label mapping, GMF generates IParser implementation class, which need to be further modified by toolsmith to perform text parsing and model update part of the parser contract (updateValues() method in the generated class). Here how it looks in the generated editor:
bugzilla 304421 Code generation now is capable to run in background. Well-known Eclipse feature finally for long-running code generation process.
bugzilla 247542 Generated Preference Pages got more flexible. First, reconciler tries to respect standard pages removed by user (not to generate them after just another Map-to-Gen transformation). Besides, an optional parentCategory attribute now allows to place generated preference page into any arbitrary place in the preference pages tree (even under existing pages contributed from other plug-ins).