Package weka.gui.beans

# Class BeanVisual

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.beans.BeanVisual

All Implemented Interfaces:
  `ImageObserver`, `MenuContainer`, `Serializable`, `Accessible`

public class BeanVisual extends JPanel
BeanVisual encapsulates icons and label for a given bean. Has methods to load icons, set label text and toggle between static and animated versions of a bean's icon.

Since:
  1.0
Version:
  $Revision: 13477 $
Author:
  Mark Hall
See Also:
  - `JPanel`
  - `Serializable`
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class javax.swing.JComponent

  `JComponent.AccessibleJComponent`

  ## Nested classes/interfaces inherited from class java.awt.Component

  `Component.BaselineResizeBehavior`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `EAST_CONNECTOR`
  `static final String`
  `ICON_PATH`
  `static final int`
  `NORTH_CONNECTOR`
  `static final int`
  `SOUTH_CONNECTOR`
  `static final int`
  `WEST_CONNECTOR`

  ### Fields inherited from class javax.swing.JComponent

  `TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

  ### Fields inherited from class java.awt.Component

  `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
  `BeanVisual(String visualName, String iconPath, String animatedIconPath)`
  Constructor

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addPropertyChangeListener(PropertyChangeListener pcl)`
  Add a listener for property change events
  `ImageIcon`
  `getAnimatedIcon()`
  Returns the animated icon
  `String`
  `getAnimatedIconPath()`
  returns the path for the animated icon
  `Point`
  `getClosestConnectorPoint(Point pt)`
  Returns the coordinates of the closest "connector" point to the supplied point.
  `Point`
  `getConnectorPoint(int compassPoint)`
  Returns the coordinates of the connector point given a compass point
  `String`
  `getIconPath()`
  returns the path for the icon
  `ImageIcon`
  `getStaticIcon()`
  Returns the static icon
  `String`
  `getText()`
  Get the visual's label
  `boolean`
  `loadIcons(String iconPath, String animatedIconPath)`
  Loads static and animated versions of a beans icons.
  `void`
  `paintComponent(Graphics gx)`
  `void`
  `removePropertyChangeListener(PropertyChangeListener pcl)`
  Remove a property change listener
  `Image`
  `scale(double percent)`
  `void`
  `scale(int factor)`
  Reduce this BeanVisual's icon size by the given factor
  `void`
  `setAnimated()`
  Deprecated.
  `void`
  `setDisplayConnectors(boolean dc)`
  Turn on/off the connector points
  `void`
  `setDisplayConnectors(boolean dc, Color c)`
  Turn on/off the connector points
  `void`
  `setStatic()`
  Deprecated.
  `void`
  `setText(String text)`
  Set the label for the visual.

  ### Methods inherited from class javax.swing.JPanel

  `getAccessibleContext, getUI, getUIClassID, setUI, updateUI`

  ### Methods inherited from class javax.swing.JComponent

  `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

  ### Methods inherited from class java.awt.Container

  `add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate`

  ### Methods inherited from class java.awt.Component

  `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, repaint, repaint, repaint, 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

  `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### ICON_PATH

    public static final String ICON_PATH
    See Also:
      - Constant Field Values

  - ### NORTH_CONNECTOR

    public static final int NORTH_CONNECTOR
    See Also:
      - Constant Field Values

  - ### SOUTH_CONNECTOR

    public static final int SOUTH_CONNECTOR
    See Also:
      - Constant Field Values

  - ### EAST_CONNECTOR

    public static final int EAST_CONNECTOR
    See Also:
      - Constant Field Values

  - ### WEST_CONNECTOR

    public static final int WEST_CONNECTOR
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### BeanVisual

    public BeanVisual(String visualName, String iconPath, String animatedIconPath)
    Constructor
    Parameters:
      `visualName` - name for the bean
      `iconPath` - path to the icon file
      `animatedIconPath` - path to the animated icon file

- ## Method Details

  - ### scale

    public void scale(int factor)
    Reduce this BeanVisual's icon size by the given factor
    Parameters:
      `factor` - the factor by which to reduce the icon size by

  - ### scale

    public Image scale(double percent)

  - ### loadIcons

    public boolean loadIcons(String iconPath, String animatedIconPath)
    Loads static and animated versions of a beans icons. These are assumed to be defined in the system resource location (i.e. in the CLASSPATH). If the named icons do not exist, no changes to the visual appearance is made. Since default icons for generic types of beans (eg. DataSource, Classifier etc) are assumed to exist, it allows developers to add custom icons for for specific instantiations of these beans (eg. J48, DiscretizeFilter etc) at their leisure.
    Parameters:
      `iconPath` - path to
      `animatedIconPath` - a `String` value

  - ### setText

    public void setText(String text)
    Set the label for the visual. Informs any property change listeners
    Parameters:
      `text` - the label

  - ### getText

    public String getText()
    Get the visual's label
    Returns:
      a `String` value

  - ### setStatic

    @Deprecated public void setStatic()
    Deprecated.
    Set the static version of the icon. This method has been deprecated and now has no affect. A future version of the KnowledgeFlow application may orchestrate the display of which components are active graphically

  - ### setAnimated

    @Deprecated public void setAnimated()
    Deprecated.
    Set the animated version of the icon This method has been deprecated and now has no affect. A future version of the KnowledgeFlow application may orchestrate the display of which components are active graphically

  - ### getClosestConnectorPoint

    public Point getClosestConnectorPoint(Point pt)
    Returns the coordinates of the closest "connector" point to the supplied point. Coordinates are in the parent containers coordinate space.
    Parameters:
      `pt` - the reference point
    Returns:
      the closest connector point

  - ### getConnectorPoint

    public Point getConnectorPoint(int compassPoint)
    Returns the coordinates of the connector point given a compass point
    Parameters:
      `compassPoint` - a compass point
    Returns:
      a `Point` value

  - ### getStaticIcon

    public ImageIcon getStaticIcon()
    Returns the static icon
    Returns:
      an `ImageIcon` value

  - ### getAnimatedIcon

    public ImageIcon getAnimatedIcon()
    Returns the animated icon
    Returns:
      an `ImageIcon` value

  - ### getIconPath

    public String getIconPath()
    returns the path for the icon
    Returns:
      the path for the icon

  - ### getAnimatedIconPath

    public String getAnimatedIconPath()
    returns the path for the animated icon
    Returns:
      the path for the animated icon

  - ### setDisplayConnectors

    public void setDisplayConnectors(boolean dc)
    Turn on/off the connector points
    Parameters:
      `dc` - a `boolean` value

  - ### setDisplayConnectors

    public void setDisplayConnectors(boolean dc, Color c)
    Turn on/off the connector points
    Parameters:
      `dc` - a `boolean` value
      `c` - the Color to use

  - ### addPropertyChangeListener

    public void addPropertyChangeListener(PropertyChangeListener pcl)
    Add a listener for property change events
    Overrides:
      `addPropertyChangeListener` in class `Container`
    Parameters:
      `pcl` - a `PropertyChangeListener` value

  - ### removePropertyChangeListener

    public void removePropertyChangeListener(PropertyChangeListener pcl)
    Remove a property change listener
    Overrides:
      `removePropertyChangeListener` in class `Component`
    Parameters:
      `pcl` - a `PropertyChangeListener` value

  - ### paintComponent

    public void paintComponent(Graphics gx)