Versions Compared

Key

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

This project is currently not developed further.

Panel
borderStyledashed
titleProject Overview
borderStyledashed

Contributors:

  • Martin Müller
  • Nils Beckel

    Related Publications:

    • Hauke Fuhrmann and Reinhard von Hanxleden. On the Pragmatics of Model-Based Design. In Foundations of Computer Software. Future Trends and Techniques for Development—15th Monterey Workshop, Revised Selected Papers, vol. 6028 of LNCS, p. 116–140, Springer, 2010. (pdf) The original publication is available at link.springer.com.
    • Hauke Fuhrmann and Reinhard von Hanxleden. Taming Graphical Modeling. In Proceedings of the ACM/IEEE 13th International Conference on Model Driven Engineering Languages and Systems (MoDELS’10), vol. 6394 of LNCS, p. 196–210, Springer, 2010. (pdf) The original publication is available at link.springer.com.

    Related Theses:

    • Nils Beckel, View Management for Visual Modeling, October 2009. (pdf)
    • Martin Müller, View Management for Graphical Models, December 2010. (pdf)
    • Hauke Fuhrmann, On the Pragmatics of Graphical Modeling, 2011. Disputation: 2011-05-05 May 5th, 2011 (pdf)

    Introduction

    KIELER View Management (KIVi) is a high-level description engine for dynamic visualizations in diagrams (e.g. for graphical modeling). Its main driver is the availability of automatic layout as provided by KIML. It implements user interaction that builds upon automatic layout and therefore unfolds the full potentials of automatic layout. Different use-case examples are:

    ...

    Follow the Javadoc links to see the corresponding package for the triggers, effects and combinations. It also gives a hint, which plug-ins to load in order to get access to the classes in your own plug-in.

    Trigger(States)

    • SelectionTrigger - Contains the most recent list of selected EObjects and the containing DiagramEditor
    • ButtonTrigger- Generic TriggerState for KIVi buttons registered using the ButtonHandler. Buttons can be defined
    • EffectTrigger - Triggered when a KIVi Effect has been executed
    • ModelChangeTrigger - Contains the most recent change to a semantic model
    • ModelChangeTrigger.DiagramChangeState - Contains the most recent change to a GMF diagram model
    • ModelChangeTrigger.ActiveEditorState - Information about the active editor (not necessarily containing a diagram)
    • DiagramTrigger - Information about the active diagram (e.g. in the active editor or view), used instead of ActiveEditorState with convenient access to diagram and semantic model

    Synccharts and Papyrus UML StateMachine specific

    • StateActivityTrigger - receives the most recent n steps of active states from the KIVi-KIEM data component during simulation of Synccharts or Ptolemy UML StateMachines

    Effects

    • UndoEffect - Pseudo-Effect used to simplify undoing Effects. The only point of contact as a developer is when merging Effects, the other Effect passed may be an UndoEffect containing the actual Effect
    • MenuItemEnableStateEffect - Change the enabled state of a button defined with KVi
    • LayoutEffect - Performs automatic layout with various options
    • SetOptionsEffect - Sets layout option values for a specific model element
    • HighlightEffect - Provides different methods of highlighting an EObject: Change its color, line width, or line style without changing the notation model
    • CompartmentCollapseExpandEffect - Collapse or expand a compartment without changing the notation model
    • ArrowEffect - Draws an arrow between two EObjects
    • AnalysisEffect - Performs graph analysis and shows results in the Analysis view
    • FocusContextEffect - Reduce level of detail for context elements, show all details for focus elements (e.g. by collapsing/expanding compartments)
    • TransformationEffect - Executes a model to model transformation according to passed information.
    • RefreshGMFEditPoliciesEffect - Refreshes the EditPolicies of an GMF editor.
    • UnlockEffect - Notify all waiting threads on a given Object. Can be used to synchronize threads with the execution of effects.

    Combinations

    Synccharts specific