Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning

This version has not been released yet. Thus, these release notes are preliminary.

KIELER Pragmatics 2015/02

We are happy to provide release 2015/02 of the KIELER Pragmatics Project! KIELER Pragmatics is a framework for enhanced user interaction in graphical modeling that builds on the Eclipse platform. This document describes how to install the release and highlights the most exciting new features.

...

You can find a list of solved tickets for this release at our issue tracking system. Release notes of older releases can be found at our Release Notes page.

If you're wondering where components have gone that were traditionally a part of KIELER, you might not know yet that the KIELER was split into two separate projects, KIELER Pragmatics and KIELER Semantics, which release pretty much independently.

API Changes in

...

2015/

...

02

This is a summary of the API changes introduced with version 20142015/1202:

  • KIELER Infrastructure for Meta Layout Algorithms
      KLay Layered's layout option Properties.MERGE_PORTS was renamed to Properties.MERGE_EDGES. Its ID was changed from
    • We reworked our support for the GML graph format. It is not based on Xtext anymore but on a dedicated internal format and lightweight parser and serializer.
      Existing KLighD diagram syntheses can be migrated using the following 4 steps:
      1. Adapt the imports de.cau.cs.kieler.
      klay.layered.mergePorts to 
      1. kiml.formats.gml.gml.* to de.cau.cs.kieler.
      klay
      1. kiml.formats.
      layered
      1. gml.
      mergeEdges.Similarly, KLay Layered's layout option Properties.MERGE_HIERARCHICAL_PORTS was renamed to Properties.MERGE_HIERARCHICAL_EDGES. Its ID was
      1. *. Note that there are new subclasses CollectionElementStringElementNumberElement.
      2. The root element changed from de.cau.cs.kieler.
      klay
      1. kiml.
      layered
      1. formats.
      mergeHierarchicalPorts to de
      1. gml.
      cau.cs.kieler.klay.layered.mergeHierarchicalEdges.The
      1. gml.GmlModel to de.cau.cs.kieler.
      klay
      1. kiml.
      layered.distributeNodes property was renamed to de.cau.cs.kieler.klay.layered.wideNodesOnMultipleLayers and allows for two modes now.
      • CAREFUL avoiding node/edge overlaps

      • AGGRESSIVE often more compact but does not guarantee to avoid node/edge overlaps

  • KIELER Lightweight Diagrams
    • Feature composition changed s.t. de.cau.cs.kieler.klighd.feature only contains essential runtime plugins
      • does not require Xtext & KIELER KIVi anymore
      • those components are still part of our SDK feature de.cau.cs.kieler.klighd.sdk.feature
    • Plugin de.cau.cs.kieler.klighd.ui does not register the generic DiagramEditorPart and menu contributions like 'Save As Image...' anymore
      • registrations have been moved to plugin de.cau.cs.kieler.klighd.ui.contrib3x that is part of our SDK feature de.cau.cs.kieler.klighd.sdk.feature
      • nonetheless implementations remain at their previous place and can be specialized (subclassed)
    • Consolidation of the printing facilities
      • consolidation of the export branding infrastructure (see IExportBranding for details on that feature)

...

      1. formats.gml.GMLModel
      2. Add the following extension to your synthesis

        Code Block
        languagescala
        private def Iterable<Element> getElements(Element e) {
            switch(e) {
               CollectionElement: return (e as CollectionElement).getElements()
               default: return Collections.emptyList
            } 
        }
      3. Change any call of the getEContainer method to getContainer. Note that in Xtend this might read e.eContainer and should be changed to e.container

New Features Included in 2015/02

Here's a few highlights of what's new in version 20142015/1202:

  • KIELER Layout Algorithms
    • A new interactive node placement algorithm in KLay Layered keeps the y coordinates of nodes intact if they don't overlap. This node placement algorithm is supposed to be used together with the interactive implementations of the other layout phases.
  • KIELER Lightweight Diagrams
    • upcoming ViewChange notifications received by IViewChangeListeners can now be suppressed, see ViewChange.suppressSubsequent...Notifications(...)
    • introduced dedicated zoom style ZOOM_TO_FOCUS_AND_INCREASE_TO_FIT
      • 'increase to fit' behavior is now skipped while by applying the existing zoom style ZOOM_TO_FOCUS
    • KLighD now ships a generic graph visualization that allows to inspect the structure of graphs specified in any format that is supported by KIML.

    • The wizard for new KLighD projects received some love. We polished it's UI and generated code and added some tooltips.
    • We replaced the Batik SVG exporter with a customized exporter that is based on FreeHEP.

      • It supports semantic data to be added to the generated SVG.

      • Color gradients obey to the specified rotation angle.

  • KGraph Editor Product
    • Layout options can now be configured using a textual DSL.

    • GrAna analyses can be specified using a textual DSL and executed either via the UI or headlessly.

...

    • KLay Layered now supports more than one label for any given port.
      Image Added
    • KLay Layered now supports separate node label placements for each node label.
      Image Added
    • KLay Layered can now place ports more flexibly through the layout options Port Alignment and Additional Port Space.
      Image Added
    • KLay Layered now features a new spline edge router. This is still experimental code – use at your own risk!
      Image Added
  • KIELER Lightweight Diagrams
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1531

      Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1545

Important Bugs Fixed in 2015/02

Among others, the following bugs were fixed in version 20142015/1202:

  • KIELER Layout Algorithms
    • Computing layouts with the layout direction set to UP failed for compound nodes in KLay Layered.
    • KLay Force allowed the object spacing to be zero, which does not make sense and, more importantly, crashed the algorithm.
  • KGraph Text
    • Converting KGX files into the KGT format failed when certain properties were set.
  • KIELER Lightweight Diagrams
    • We fixed an issue where the allocated memory of views was not released properly.Under certain conditions, the Graphviz Layout Provider failed to find the Graphviz executables on Windows even though they were already in the Path. While fixing this, we also improved the automatic detection of the installation location of Graphviz executables on Windows.
    • Layout of hierarchical diagrams could lead to broken edge routing.
  • KIELER Lightweight Diagrams
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1512
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1527
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1536
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1551
    • Jira
      serverKIELER JIRA
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
      keyKIPRA-1555
    • See the full list of related issues

Quickstart

Diagram Layout

One of the core features of KIELER Pragmatics is the KIELER Infrastructure for Meta-Layout (KIML). It provides the glue between diagram editors and layout algorithms. If you have installed layout support for GMF editors, you may want to try the following:

...