Class HybridPetrinetVisualization

  • All Implemented Interfaces:
    java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ChangeListener, org.processmining.framework.util.Cleanable, org.processmining.framework.util.ui.scalableview.ScalableComponent.UpdateListener, HybridGraphVisualization

    public class HybridPetrinetVisualization
    extends javax.swing.JLayeredPane
    implements org.processmining.framework.util.Cleanable, javax.swing.event.ChangeListener, java.awt.event.MouseMotionListener, org.processmining.framework.util.ui.scalableview.ScalableComponent.UpdateListener, HybridGraphVisualization
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JLayeredPane

        javax.swing.JLayeredPane.AccessibleJLayeredPane
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected com.fluxicon.slickerbox.factory.SlickerDecorator decorator  
      protected com.fluxicon.slickerbox.factory.SlickerFactory factory  
      protected org.processmining.models.jgraph.ProMJGraph graph  
      static int MAX_ZOOM
      The maximal zoom factor for the primary view on the transition system.
      protected org.processmining.framework.util.ui.scalableview.ScalableComponent scalable
      The access to scalable methods of primary view
      protected javax.swing.JScrollPane scroll
      The scroll pane containing the primary view on the transition system.
      static int TAB_HEIGHT  
      static int TAB_WIDTH  
      • Fields inherited from class javax.swing.JLayeredPane

        DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER
      • Fields inherited from class javax.swing.JComponent

        listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • Fields inherited from class java.awt.Component

        accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent e)  
      void addColorPanel()  
      void addExportPanel()  
      void addPIPPanel()  
      void addZoomPanel()  
      void cleanUp()  
      double factorMultiplyGraphToPIP()  
      void finalize()  
      javax.swing.JComponent getComponent()  
      org.processmining.models.graphbased.directed.DirectedGraphElement getElementForLocation​(double x, double y)  
      javax.swing.JScrollBar getHorizontalScrollBar()  
      PIPInteractionPanel getpip()  
      double getScale()
      Returns the zoom factor of the primary view.
      java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphEdge<?,​?>> getSelectedEdges()  
      java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphElement> getSelectedElements()  
      java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphNode> getSelectedNodes()  
      javax.swing.JScrollBar getVerticalScrollBar()  
      javax.swing.JViewport getViewport()  
      void mouseDragged​(java.awt.event.MouseEvent e)  
      void mouseMoved​(java.awt.event.MouseEvent e)  
      void paint​(java.awt.Graphics g)  
      void removeViewInteractionPanel​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel)
      Remove a previously added interaction panel from the ScalableViewPanel.
      protected void repaintPIP​(java.awt.geom.Rectangle2D rect)  
      void scaleToFit()  
      protected double scaleToFit​(org.processmining.models.jgraph.ProMJGraph pipGraph2, java.awt.Container container, boolean reposition)  
      void setLocation​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel, javax.swing.JPanel panelOff, javax.swing.JPanel panelOn)  
      void setScale​(double d)
      Sets the zoom factor of the primary view to the given factor.
      void setSize​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel, javax.swing.JPanel panelOff, javax.swing.JPanel panelOn)
      Adds a button to one of the positions on the screen indicated by the location parameter.
      void showColor​(boolean status)  
      void showConfig​(boolean b)  
      void showLegend​(boolean b)  
      void showPIP​(boolean status)  
      void showZoom​(boolean status)  
      void stateChanged​(javax.swing.event.ChangeEvent e)  
      void updateColor()  
      void updated()
      Deals with change events.
      • Methods inherited from class javax.swing.JLayeredPane

        addImpl, getAccessibleContext, getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paramString, putLayer, remove, removeAll, setLayer, setLayer, setPosition
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • MAX_ZOOM

        public static final int MAX_ZOOM
        The maximal zoom factor for the primary view on the transition system.
        See Also:
        Constant Field Values
      • scalable

        protected final org.processmining.framework.util.ui.scalableview.ScalableComponent scalable
        The access to scalable methods of primary view
      • scroll

        protected javax.swing.JScrollPane scroll
        The scroll pane containing the primary view on the transition system.
      • factory

        protected com.fluxicon.slickerbox.factory.SlickerFactory factory
      • decorator

        protected com.fluxicon.slickerbox.factory.SlickerDecorator decorator
      • graph

        protected org.processmining.models.jgraph.ProMJGraph graph
    • Constructor Detail

      • HybridPetrinetVisualization

        public HybridPetrinetVisualization​(org.processmining.models.jgraph.ProMJGraph jgraph,
                                           HybridPetrinet hPN)
    • Method Detail

      • updateColor

        public void updateColor()
      • addZoomPanel

        public void addZoomPanel()
      • addExportPanel

        public void addExportPanel()
      • addColorPanel

        public void addColorPanel()
      • addPIPPanel

        public void addPIPPanel()
      • showPIP

        public void showPIP​(boolean status)
      • showZoom

        public void showZoom​(boolean status)
      • showColor

        public void showColor​(boolean status)
      • repaintPIP

        protected void repaintPIP​(java.awt.geom.Rectangle2D rect)
      • scaleToFit

        protected double scaleToFit​(org.processmining.models.jgraph.ProMJGraph pipGraph2,
                                    java.awt.Container container,
                                    boolean reposition)
      • paint

        public void paint​(java.awt.Graphics g)
        Overrides:
        paint in class javax.swing.JLayeredPane
      • getElementForLocation

        public org.processmining.models.graphbased.directed.DirectedGraphElement getElementForLocation​(double x,
                                                                                                       double y)
      • getSelectedNodes

        public java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphNode> getSelectedNodes()
      • getSelectedEdges

        public java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphEdge<?,​?>> getSelectedEdges()
      • getSelectedElements

        public java.util.Collection<org.processmining.models.graphbased.directed.DirectedGraphElement> getSelectedElements()
      • cleanUp

        public void cleanUp()
        Specified by:
        cleanUp in interface org.processmining.framework.util.Cleanable
      • stateChanged

        public void stateChanged​(javax.swing.event.ChangeEvent e)
        Specified by:
        stateChanged in interface javax.swing.event.ChangeListener
      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent e)
      • finalize

        public void finalize()
                      throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable
      • removeViewInteractionPanel

        public void removeViewInteractionPanel​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel)
        Remove a previously added interaction panel from the ScalableViewPanel. This can be used to remove an interaction panel from the ScalableViewPanel. If the interaction panel does not exist, nothing will be removed.
        Parameters:
        panel - The panel that should be removed.
      • mouseMoved

        public void mouseMoved​(java.awt.event.MouseEvent e)
        Specified by:
        mouseMoved in interface java.awt.event.MouseMotionListener
      • mouseDragged

        public void mouseDragged​(java.awt.event.MouseEvent e)
        Specified by:
        mouseDragged in interface java.awt.event.MouseMotionListener
      • setSize

        public void setSize​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel,
                            javax.swing.JPanel panelOff,
                            javax.swing.JPanel panelOn)
        Adds a button to one of the positions on the screen indicated by the location parameter. Should be SwingConstants.NORTH_EAST, SwingConstants.SOUTH_EAST SwingConstants.NORTH_WEST, SwingConstants.SOUTH_WEST
        Parameters:
        label -
        listener -
        location -
      • setLocation

        public void setLocation​(org.processmining.framework.util.ui.scalableview.interaction.ViewInteractionPanel panel,
                                javax.swing.JPanel panelOff,
                                javax.swing.JPanel panelOn)
      • getScale

        public double getScale()
        Returns the zoom factor of the primary view.
        Specified by:
        getScale in interface HybridGraphVisualization
        Returns:
        The zoom factor of the primary view.
      • setScale

        public void setScale​(double d)
        Sets the zoom factor of the primary view to the given factor.
        Specified by:
        setScale in interface HybridGraphVisualization
        Parameters:
        d - The given factor.
      • updated

        public void updated()
        Deals with change events.
        Specified by:
        updated in interface org.processmining.framework.util.ui.scalableview.ScalableComponent.UpdateListener
      • scaleToFit

        public void scaleToFit()
      • getComponent

        public javax.swing.JComponent getComponent()