Skip to main content
Jump to: navigation, search

Difference between revisions of "JWT MultipleViews"

m (Known Problems)
m (ToDo)
Line 47: Line 47:
 
* Adjust plugin.properties
 
* Adjust plugin.properties
 
* Import changes from head
 
* Import changes from head
 +
* ViewData Garbage Collection seems a bit too eager sometimes deleting used information
 +
* external viewdata file should reference original file without path so that files can be moved around
  
 
= Test =
 
= Test =

Revision as of 09:39, 9 March 2009

This site gives some information about the current developments in the multiple views branch. Please feel free to try everything out. The current status should still be considered alpha, therefore if something seems to do not quite what you expect it's most probably a bug ;)

Running

What is needed?

  • jwt-we (view_multiple branch)
  • jwt-meta (in meta directory on CVS)
  • Dependency on GEF Zest (for graph layouting)

Support for Multiple View Data

Done

  • Dimension & Location have been replaced by LayoutData
  • One GraphicalElement can have multiple LayoutDatas (one for each view)
  • LayoutData can be imported from another view or created using a layouting algorithm (from GEF Zest project)
  • Configurable behavior (in preferences) if viewdata is missing
  • LayoutData Wizard (button in toolbar next to view dropdown)
  • View data is stored in separate *.workflow_view file

ToDo

  • Syncronization of LayoutDatas between views (location in one view changes the location in other views)
  • Additional layout algorithms better suited for workflows ([1]), maybe replace Zest to remove dependence

Sourcing out Meta-Model

Done

  • Core Meta Model sourced out in own plugin (jwt-meta)
  • Refactored View elements so that they reference the core elements but not the other way around
  • Adjusted templates/code, regenerated model(s), transferred manually adjusted code into new providers
  • ProviderRegistry allows to inject editor-specific properties (images, visibility, commands, model children) into the model
  • Commands split into core and view commands
  • Garbage collection executed on saving for removing unnecessary view data (References, ReferenceEdges, LayoutData)
  • Included new ATL based converter
  • Both models have been regenerated successfully
  • Removed GEF dependency from jwt-meta (affects CommandStack/Commands)
  • Added NLS messages to genmodel

ToDo

  • Adjust other Plugins
  • Write transformation for old 0.5.0 files
  • Find nice icon for wizard in toolbar
  • Adjust plugin.properties
  • Import changes from head
  • ViewData Garbage Collection seems a bit too eager sometimes deleting used information
  • external viewdata file should reference original file without path so that files can be moved around

Test

The changes above had some serious impact (much more than I initially expected) on almost every aspect of GEF. Therefore, before integrating the new version into the HEAD, the following functions (the usual suspects when something can go wrong) should be confirmed to work in different circumstances.

Things to test

  • Handling of reference edges (creating, deleting, copying, reconnecting, ...)
  • Copy/Cut/Paste and Undo/Redo in different circumstances
  • Deleting (is everything deleted, do errors occur?)
  • LayoutData Wizard and multiple view data in general
  • Drag'n'Drop (Outline -> Outline, Outline -> Editor)
  • Insert Scope from Outline
  • Template import/export
  • Does everything work with multiple open editors (Singleton issues?)
  • Save viewdata in own file .workflow_view

Known Problems

  • Paste issues (most likely due to layoutdata being in clipboard)
  • Layoutdata isn't deleted with GraphicalElements

Back to the top