Versions Compared

Key

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

Pragmatics 2014-10 hasn't been released yet. These release notes are preliminary!

 

KIELER Pragmatics 2014/10

...

As a bonus, we are co-releasing our KLighD-based KIELER Ptolemy Browser.

...

titleWhat's with the new version numbering scheme?

...

.

...

 

Table of Contents
minLevel2

Installation

KIELER Pragmatics 2014/05 10 is provided as a set of features, available to be added to your Eclipse installation via an update site. KIELER Pragmatics 2014/05 10 was tested on Eclipse 4.3 "Kepler", but may also be compatible with other versions of Eclipse.

  • See the KIELER Downloads site for download details.
  • KIELER Pragmatics requires an installed Java Runtime Environment >= version 1.5.
  • The layout components of KIELER can make use of the layout algorithms provided by the Graphviz library. You may want to install that.

See Also refer to the KIELER Tools and LibrariesDownloads page to download the KIELER Ptolemy Browser and the KIELER Web Service.

Release Notes

The 2014/05 release of KIELER Pragmatics continues our efforts to redesign our core APIs, KIML and KLighD. It includes a number of API-breaking changes, so beware of upgrading to this release if you currently do not have time to adapt your code accordingly. 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 2014/

...

10

This is a summary of the API changes introduced with version 2014/0510:

  • KIELER Lightweight Diagrams
  • KIELER Infrastructure for Meta-Layout
  • Renamed LayoutDataService to LayoutMetaDataService and renamed ILayoutData to ILayoutMetaData in order to avoid confusion with the KLayoutData meta model and the respective interface.

  • Removed generic type argument from LayoutOptionData.
  • ILayoutConfig: renamed API method enrich() to getContextValue(..), renamed getValue(..) to getOptionValue(..), renamed setValue(..) to setOptionValue(..), renamed clearValues() to clearOptionValues(..) – see Configuring Automatic Layout for more details.

  • IDiagramLayoutManager does not inherit from IAdapterFactory anymore; adapter values are now accessed with layoutManager.getDiagramConfig().getContextValue(..)

  • Graphiti bridge: moved some methods from KimlGraphitiUtil to GraphitiDiagramLayoutManager in order to allow easier adaptation in subclasses. Furthermore, we now differentiate margins (spacing to visible part of a node) and insets (spacing to nested subgraph).

  • Made a design review of the de.cau.cs.kieler.core plugin and improved the API of some core classes and interfaces.Core Changes
    • IPropertyHolder's setProperty(...) and copyProperties(...) now return IPropertyHolder instead of void, implementations are supposed to return this for convenience
  • KIELER Lightweight Diagrams
    • Added DiagramSyntheses class providing lots of convenience methods for configuring the view model in diagram synthesis implementations (preliminary version introduced with last previous release)
    • IViewer provides getZoomLevel()
    • IViewer provides methods for registering IViewChangeListeners
    • IUpdateStrategy now requires the method requiresDiagramSynthesisReRun(...) that allows to tell KLighD's runtime whether a new synthesis run is required for performing a (certain) diagram update
    • Introduced IKlighdSelection interface abstracting KlighdTreeSelection and KlighdTextSelection
    • Updated layoutDiagram(...) methods in LightDiagramServices

New Features Included in 2014/

...

10

Here's a few highlights of what's new in version 2014/0510:

  • KIELER Lightweight Diagrams
    • KIELER Infrastructure for Meta-Layout
      • Made categorization of the Layout View more understandable.

      • Added a creation method for VolatileLayoutConfig that makes the far too complicated STATIC_CONFIG of layout managers unnecessary.

    • KIELER Layout Algorithms
      • KLay Layered now makes sure that labels of compound node ports placed on the inside of the compound node are not overlapped by nodes inside the compound node.
      • KLay Layered now supports controlling the spacing between and around ports through the new layout options LayoutOptions.PORT_SPACING and LayoutOptions.ADDITIONAL_PORT_SPACING.
      • KLay Layered now understands LayoutOptions.NO_LAYOUT, which can be set to exclude particular graph elements from automatic layout.
      • KLay Layered now understands a new programmatic option for edge thickness.
      • When in hierarchical layout mode, KLay Layered now properly places edge labels of cross-hierarchy edges.
      • When in hierarchical layout mode, KLay Layered can now compact cross-hierarchy edges as it can compact regular edges (Properties.MERGE_HIERARCHICAL_PORTS):
        Image Removed
    • KGraph Text
      • The textual language for defining KGraphs now has a lot more defaults. Node and port labels are automatically extracted from the node's and port's ID. Nodes and ports also have a default size. This makes for shorter diagram descriptionsImproved integration of the magnifying lens (hit alt + ctrl/cmd) and rubber band zoom (press ctrl/cmd and drag on canvas)
      • Enabled the contribution of action invocation buttons (execution of IActions) in the diagram side bar (so far actions could only be executed by clicking on a diagram element of via menu contributions), see related hook in AbstractDiagramSynthesis
      • Added editable flag to KText in order to distinguish cursor selectability and editability 
      • Enabled the zoom level-based visibility of diagram elements (nodes, ports, edges, labels) and figure elements (fine grained figure details, texts, ...), see setUpperVisibilityScaleBound & setLowerVisibilityScaleBound methods in DiagramSyntheses
      • Enabled output-dependent visibility (main diagram, outline, printout, image export) of figure elements (highlightings, fine grained figure details, texts, ...), see corresponding methods in DiagramSyntheses
      • Diagram image export now supports tiled exports enabling the export of huge diagrams, which may be prevented by memory limitations in the past
      • Contributed appropriate print support and (customizable) print dialog with preview
      • Contributed a customized SVG image exporter based on FreeHEP (http://freehep.github.io/freehep-vectorgraphics/) being able to attach semantic data to the image data
      • Contributed generic PortRotationModifier (style modifier) that realizes the rotation of port figures in case ports are moved to a different side by the automatic layout computation
      • Added zoom style ZOOM_TO_ACTUAL_SIZE, added corresponding configuration methods in IAction.ActionResult
      • Added switch in KlighdSynthesisProperties to deactivate minimal diagram figure size estimation in case size data are already available
    • KGraph Text
      • A new option de.cau.cs.kieler.kgraphsynthesis.defaults can enable default values for element sizes and labels to make KGT files more compact.

    Important Bugs Fixed in 2014/10

    Among others, the following bugs were fixed in version 2014/10:

    • KIELER Layout Algorithms
      • In KLay Layered, the polyline edge router could produce results where edges overlapped nodes.
      • In KLay Layered, the polyline edge router could produce weird results when more than one edge leaves a given port.

    Quickstart

    Diagram Layout

    ...

    • Save a Ptolemy model as a .moml file somewhere.
    • Download and start our Ptolemy Model Browser.

      Tiptitle
    • Note for Mac OS UsersOpen your moml file.
    • Double-click actors that have further models inside them. Also double-click modal model states that have refinements. Use the sidebar on the right to influence how your model is displayed.

    Known Problems and Limitations

    • Starting with Mac OS X Mountain Lion, trying to start the Ptolemy Model Browser our software may give you the following an error message similar to this:

      Image Removed

      The problem is not that our application file is damaged in any way. Much rather, we have not invested the money to obtain a proper developer certificate with which this error would not be generated. The Image Added
      The solution is to open your system preferences and navigate to the Security & Privacy settings. Therein, make sure to set either click on Open Anyway if available or change Allow apps downloaded from to Anywhere:.

      Image Removed

      Start the Ptolemy Browser again. This will Image Added
      Starting our software will now result in the following warningmessage:
      Image RemovedImage Added
      Simple Simply click "Open" and you're good to go at last.
    • Open your moml file.
    • Double-click actors that have further models inside them. Also double-click modal model states that have refinements. Use the sidebar on the right to influence how your model is displayed.

    Known Problems and Limitations

    • The Ptolemy Model Viewer .
    • Upon starting the Ptolemy Model Browser, you may get something like this:
      Image Added
      The solution is to exit the application, remove your existing workspace, and restart the Ptolemy Model Browser. Your workspace can be found in your home folder and is called kielerPtolemyWs.
    • The Ptolemy Model Browser can properly display only a limited set of actors. Other actors may look a lot different than they do in Ptolemy.
    • Currently there is no full-blown user documentation integrated. See our KIELER for more information.

    ...