Copyright 2012-02-25 Werner Randelshofer

ch.randelshofer.view
Class AbstractStructView

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by ch.randelshofer.view.AbstractView
                      extended by ch.randelshofer.view.AbstractStructView
All Implemented Interfaces:
View, java.awt.event.ItemListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.activation.CommandObject, org.jhotdraw.app.Disposable
Direct Known Subclasses:
EXIFView, IFFStructView, JFIFStructView, LPFStructView, MP3StructView, MPEG4StructView, NeoChromeStructView, PictStructView, PNGStructView, QuickTimeStructView, RIFFStructView, SEQStructView, TIFFStructView

public class AbstractStructView
extends AbstractView
implements java.awt.event.ItemListener

AbstractStructView.

Version:
2.2 2010-01-06 Added support for highlighting an area of the raw data.
2.1 2008-11-02 Added "Export Struct..." popup menu to tree.
2.0 2002-06-18 Reworked.
1.1 2002-02-10 DnD-support added.
1.0 2000-09-28
Author:
Werner Randelshofer
See Also:
Serialized Form

Nested Class Summary
protected static interface AbstractStructView.StructNode
           
 
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 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 ch.randelshofer.view.View
REQUEST_INFO_UPDATE_PROPERTY
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AbstractStructView()
          Initializes the Form
 
Method Summary
 void addDropTargetListener(java.awt.dnd.DropTargetListener listener)
          This method adds the given drop target listener to all components of the viewer.
 void dispose()
          This method should be abstract but the form editor in NetBeans 3.4 does not suport abstract classes.
protected  void exportStruct(AbstractStructView.StructNode node, java.io.File file)
           
protected  javax.swing.JSplitPane getSplitPane()
           
protected  javax.swing.JTree getTree()
           
 boolean hasScrollPane()
          Returns true if this viewer has a scrollpane of its own.
 boolean isShowStruct()
           
 void itemStateChanged(java.awt.event.ItemEvent e)
           
 void mergeViewMenuItems(javax.swing.JMenu m)
          Adds menu items to the "View" menu.
 void propertyChange(java.beans.PropertyChangeEvent event)
           
protected  void updateViewProperties()
           
 
Methods inherited from class ch.randelshofer.view.AbstractView
getApplicationProperties, getViewProperties, init, mergeSettingsMenuItems, setApplicationProperties, setCommandContext, setViewProperties, updateApplicationProperties
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, 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, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, 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

AbstractStructView

public AbstractStructView()
Initializes the Form

Method Detail

exportStruct

protected void exportStruct(AbstractStructView.StructNode node,
                            java.io.File file)
                     throws java.io.IOException
Throws:
java.io.IOException

dispose

public void dispose()
Description copied from class: AbstractView
This method should be abstract but the form editor in NetBeans 3.4 does not suport abstract classes.

Specified by:
dispose in interface View
Specified by:
dispose in interface org.jhotdraw.app.Disposable
Overrides:
dispose in class AbstractView

mergeViewMenuItems

public void mergeViewMenuItems(javax.swing.JMenu m)
Description copied from class: AbstractView
Adds menu items to the "View" menu. When the viewer is added to a container with a JMenuBar. Then the container asks the viewer to add his menu items to the "View" menu of the container.

Specified by:
mergeViewMenuItems in interface View
Overrides:
mergeViewMenuItems in class AbstractView

updateViewProperties

protected void updateViewProperties()
Overrides:
updateViewProperties in class AbstractView

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent event)
Specified by:
propertyChange in interface java.beans.PropertyChangeListener
Overrides:
propertyChange in class AbstractView

isShowStruct

public boolean isShowStruct()

hasScrollPane

public boolean hasScrollPane()
Returns true if this viewer has a scrollpane of its own. The container that contains this viewers uses this method to determine if it should wrap a scrollpane around the viewer.

Specified by:
hasScrollPane in interface View
Overrides:
hasScrollPane in class AbstractView
Returns:
true if this viewer has a scrollpane of its own.

getSplitPane

protected javax.swing.JSplitPane getSplitPane()

getTree

protected javax.swing.JTree getTree()

addDropTargetListener

public void addDropTargetListener(java.awt.dnd.DropTargetListener listener)
This method adds the given drop target listener to all components of the viewer.

Specified by:
addDropTargetListener in interface View
Overrides:
addDropTargetListener in class AbstractView

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent e)
Specified by:
itemStateChanged in interface java.awt.event.ItemListener

Copyright 2012-02-25 Werner Randelshofer