Class ChartCanvas

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class ChartCanvas
    extends ToolCanvas
    The container for the chart.
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  ChartCanvas.AgentKeyRenderer
      A key renderer for agents that returns the name of the agent.
      protected class  ChartCanvas.ChartMouseListener
      The mouselistener for displaying the filter menu on pie sections and bar series.
      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • 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 org.jfree.chart.JFreeChart chart
      The chart
      protected org.jfree.chart.ChartPanel chartPanel
      The JFreeChart chart panel
      protected int chartType
      The chart type (pie vs bar)
      static int CHARTTYPE_BARCHART
      The chart type for a bar chart
      static int CHARTTYPE_PIECHART
      The chart type for a pie chart
      protected CategoryPieDataset dataset_received
      The dataset for received messages
      protected CategoryPieDataset dataset_sent
      The dataset for sent messages
      protected CategoryPieDataset dataset_total
      The dataset for messages distribution
      protected boolean forceLabels
      If labels should be displayed, even if they dont fit.
      protected int paintMode
      The paint mode
      protected boolean showLabels
      If labels should be displayed
      protected boolean showLegend
      If the legend should be displayed
      protected java.util.List visible_components
      The list of components displayed in the chart
      protected java.util.List visible_messages
      The list of messages displayed in the chart
      • 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
    • Constructor Summary

      Constructors 
      Constructor Description
      ChartCanvas​(ToolTab tool)
      Constructor for the container.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addAgent​(Component agent)
      Adds an agent.
      void addMessage​(Message message)
      Ad a message.
      void clear()
      Clears the canvas and datasets and lists.
      int getChartType()  
      int getPaintMode()  
      boolean isForceLabels()  
      boolean isShowLabels()  
      boolean isShowLegend()  
      void removeComponent​(Component agent)
      Removes an agent.
      void removeMessage​(Message message)
      Removes a message.
      void repaintCanvas()
      Repaints the chart.
      void setChartType​(int chartType)
      Sets the type of the chart.
      void setForceLabels​(boolean forceLabels)
      An option for the barchart to display labels, even if they dont fit in the bar.
      void setPaintMode​(int paintMode)
      Set the paint mode.
      void setShowLabels​(boolean showLabels)  
      void setShowLegend​(boolean showLegend)  
      void updateComponent​(Component agent, boolean update)
      Updates an agent by adding it, if the agent can be displayed or removing it if present.
      void updateMessage​(Message message, boolean isPresent)
      Update a message by adding it, if the message can be displayed or removing it if present.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
      • 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, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, 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
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, addImpl, 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, remove, removeAll, 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, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • CHARTTYPE_PIECHART

        public static final int CHARTTYPE_PIECHART
        The chart type for a pie chart
        See Also:
        Constant Field Values
      • CHARTTYPE_BARCHART

        public static final int CHARTTYPE_BARCHART
        The chart type for a bar chart
        See Also:
        Constant Field Values
      • visible_messages

        protected java.util.List visible_messages
        The list of messages displayed in the chart
      • visible_components

        protected java.util.List visible_components
        The list of components displayed in the chart
      • dataset_received

        protected CategoryPieDataset dataset_received
        The dataset for received messages
      • dataset_total

        protected CategoryPieDataset dataset_total
        The dataset for messages distribution
      • chartPanel

        protected org.jfree.chart.ChartPanel chartPanel
        The JFreeChart chart panel
      • chart

        protected org.jfree.chart.JFreeChart chart
        The chart
      • chartType

        protected int chartType
        The chart type (pie vs bar)
      • paintMode

        protected int paintMode
        The paint mode
      • showLabels

        protected boolean showLabels
        If labels should be displayed
      • showLegend

        protected boolean showLegend
        If the legend should be displayed
      • forceLabels

        protected boolean forceLabels
        If labels should be displayed, even if they dont fit. (Only applies for the bar chart.)
    • Constructor Detail

      • ChartCanvas

        public ChartCanvas​(ToolTab tool)
        Constructor for the container.
        Parameters:
        tooltab - The tooltab.
    • Method Detail

      • updateMessage

        public void updateMessage​(Message message,
                                  boolean isPresent)
        Update a message by adding it, if the message can be displayed or removing it if present.
        Specified by:
        updateMessage in class ToolCanvas
        Parameters:
        message - The message to add.
        isPresent - true if removal is skipped. (Can be applied to new messages)
      • removeMessage

        public void removeMessage​(Message message)
        Removes a message.
        Specified by:
        removeMessage in class ToolCanvas
        Parameters:
        message - The message to remove.
      • updateComponent

        public void updateComponent​(Component agent,
                                    boolean update)
        Updates an agent by adding it, if the agent can be displayed or removing it if present.
        Specified by:
        updateComponent in class ToolCanvas
        Parameters:
        agent - The agent to add.
        isPresent - true if removal is skipped. (Can be applied to new agents)
      • removeComponent

        public void removeComponent​(Component agent)
        Removes an agent.
        Specified by:
        removeComponent in class ToolCanvas
        Parameters:
        agent - The agent to remove.
      • clear

        public void clear()
        Clears the canvas and datasets and lists.
        Specified by:
        clear in class ToolCanvas
      • repaintCanvas

        public void repaintCanvas()
        Repaints the chart.
        Specified by:
        repaintCanvas in class ToolCanvas
      • addAgent

        public void addAgent​(Component agent)
        Adds an agent.
        Parameters:
        agent - The agent to add.
      • addMessage

        public void addMessage​(Message message)
        Ad a message.
        Parameters:
        message - The message to add.
      • getPaintMode

        public int getPaintMode()
        Returns:
        The paint mode.
      • setPaintMode

        public void setPaintMode​(int paintMode)
        Set the paint mode.
        Parameters:
        paintMode - The paint mode.
      • getChartType

        public int getChartType()
        Returns:
        The chart type.
      • setChartType

        public void setChartType​(int chartType)
        Sets the type of the chart.
        Parameters:
        chartType - The chart type.
      • isShowLabels

        public boolean isShowLabels()
        Returns:
        true if labels are shown.
      • setShowLabels

        public void setShowLabels​(boolean showLabels)
        Parameters:
        showLabels - true if labels are to be shown.
      • isShowLegend

        public boolean isShowLegend()
        Returns:
        true if the legend is shown.
      • setShowLegend

        public void setShowLegend​(boolean showLegend)
        Parameters:
        showLegend - true if the legend is to be shown.
      • isForceLabels

        public boolean isForceLabels()
        Returns:
        true if labels are forced to be displayed regardless of their size.
      • setForceLabels

        public void setForceLabels​(boolean forceLabels)
        An option for the barchart to display labels, even if they dont fit in the bar.
        Parameters:
        forceLabels - true if labels are forced to bedisplayed regardless of their size.