WISA.wisa3D.builder
Class DataEditorPane

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--WISA.wisa3D.builder.DataEditorPane
All Implemented Interfaces:
Dropable, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.Scrollable, java.io.Serializable

public class DataEditorPane
extends javax.swing.JComponent
implements javax.swing.Scrollable, Dropable

The DataEditorPane is a toolkit for creating and manipulating visad Data-Objects.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
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
DataEditorPane(DataBuilder builder)
          Construct an empty DataEditorPane.
DataEditorPane(DataBuilder builder, visad.DataReferenceImpl data)
          Construct a DataEditorPane and initialize it with the specified Data.
 
Method Summary
 boolean acceptDrop(java.awt.Component target, java.awt.Component drag, int x, int y)
          Returns true if no data is set yet and the drop component is a DataContainer.
 void addChangeListener(javax.swing.event.ChangeListener l)
          Add a ChangeListener to this DataEditorPane.
 boolean drop(java.awt.Component target, java.awt.Component drag, int x, int y)
          Perform a drop.
 visad.DataReferenceImpl getData()
          Get the visad Data-Object this DataEditorPane works with.
 java.awt.Dimension getPreferredScrollableViewportSize()
          Get the preferred size for the scrollable viewport of this DataEditorPane if it is a children of a JScrollPane.
 double getScale()
          Get the scaling factor currently set in this DataEditorPane.
 int getScrollableBlockIncrement(java.awt.Rectangle visibleRect, int orientation, int direction)
           
 boolean getScrollableTracksViewportHeight()
           
 boolean getScrollableTracksViewportWidth()
           
 int getScrollableUnitIncrement(java.awt.Rectangle visibleRect, int orientation, int direction)
           
 DataContainer getSelectedDataContainer()
          Get the currently selected DataContainer or null.
 void paint(java.awt.Graphics g)
          Paint this Component.
protected  void processChangeEvents(javax.swing.event.ChangeEvent e)
          Processes all ChangeEvents of this DataEditorPane.
 void removeChangeListener(javax.swing.event.ChangeListener l)
          Remove a ChangeListener from the list of listeners of this DataEditorPane.
 void setData(visad.DataReferenceImpl data)
          Set the visad Data-Object this DataEditorPane works with.
 void setScale(double scale)
          Set the scaling factor of this DataEditorPane.
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DataEditorPane

public DataEditorPane(DataBuilder builder)
Construct an empty DataEditorPane.


DataEditorPane

public DataEditorPane(DataBuilder builder,
                      visad.DataReferenceImpl data)
Construct a DataEditorPane and initialize it with the specified Data.

Parameters:
data - The initial Data.
Method Detail

setData

public void setData(visad.DataReferenceImpl data)
Set the visad Data-Object this DataEditorPane works with.

Parameters:
data - The new Data.

getData

public visad.DataReferenceImpl getData()
Get the visad Data-Object this DataEditorPane works with.

Returns:
The current Data.

getSelectedDataContainer

public DataContainer getSelectedDataContainer()
Get the currently selected DataContainer or null.

Returns:
The currently selected DataContainer in this DataEditorPane.

setScale

public void setScale(double scale)
Set the scaling factor of this DataEditorPane.

Parameters:
scale - The new scaling factor used for painting the contents.

getScale

public double getScale()
Get the scaling factor currently set in this DataEditorPane.

Returns:
The currently used scaling factor for painting the contents.

addChangeListener

public void addChangeListener(javax.swing.event.ChangeListener l)
Add a ChangeListener to this DataEditorPane. The listener will be informed every time the selection of the DataContainers changes.

Parameters:
l - The listener to be added.

removeChangeListener

public void removeChangeListener(javax.swing.event.ChangeListener l)
Remove a ChangeListener from the list of listeners of this DataEditorPane.

Parameters:
l - The listener to be removed

processChangeEvents

protected void processChangeEvents(javax.swing.event.ChangeEvent e)
Processes all ChangeEvents of this DataEditorPane.

Parameters:
e - The event to be processed.

paint

public void paint(java.awt.Graphics g)
Paint this Component.

Overrides:
paint in class javax.swing.JComponent
Parameters:
g - The Graphics used for painting.

acceptDrop

public boolean acceptDrop(java.awt.Component target,
                          java.awt.Component drag,
                          int x,
                          int y)
Returns true if no data is set yet and the drop component is a DataContainer.

Specified by:
acceptDrop in interface Dropable
Parameters:
target - The Component where to drop.
drag - The Component to be dropped.
x - The x position where to drop.
y - The y position where to drop.
Returns:
True if a drop will be accepted.

drop

public boolean drop(java.awt.Component target,
                    java.awt.Component drag,
                    int x,
                    int y)
Perform a drop.

Specified by:
drop in interface Dropable
Parameters:
target - The Component where to drop.
drag - The Component to be dropped.
x - The x position where to drop.
y - The y position where to drop.
Returns:
True if the drop was successful.

getPreferredScrollableViewportSize

public java.awt.Dimension getPreferredScrollableViewportSize()
Get the preferred size for the scrollable viewport of this DataEditorPane if it is a children of a JScrollPane.

Specified by:
getPreferredScrollableViewportSize in interface javax.swing.Scrollable
Returns:
The preferred size of the scrollable viewport.

getScrollableBlockIncrement

public int getScrollableBlockIncrement(java.awt.Rectangle visibleRect,
                                       int orientation,
                                       int direction)
Specified by:
getScrollableBlockIncrement in interface javax.swing.Scrollable

getScrollableUnitIncrement

public int getScrollableUnitIncrement(java.awt.Rectangle visibleRect,
                                      int orientation,
                                      int direction)
Specified by:
getScrollableUnitIncrement in interface javax.swing.Scrollable

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
Specified by:
getScrollableTracksViewportHeight in interface javax.swing.Scrollable

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
Specified by:
getScrollableTracksViewportWidth in interface javax.swing.Scrollable