jwo.landserf.gui
Class DigitizeBox

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by jwo.utils.gui.JWDialogue
                          extended by jwo.landserf.gui.DigitizeBox
All Implemented Interfaces:
ActionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, DocumentListener, RootPaneContainer, WindowConstants, FootprintListener

public class DigitizeBox
extends JWDialogue
implements ActionListener, FootprintListener, DocumentListener

Allows vector screen digitization to take place including the user selection of object type (POINT, LINE, AREA) and object attribute.

Version:
2.3, 30th October, 2008.
Author:
Jo Wood.
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog
 
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class jwo.utils.gui.JWDialogue
DIALOGUE, MONOLOGUE
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DigitizeBox(VectorMap vectorMap, GISFrame gisFrame)
          Creates a non-modal screen digitization box for inputting coordinates, attribute and object type.
 
Method Summary
 void actionPerformed(ActionEvent event)
          Checks for button presses and clears or stores the last digitized points.
 void changedUpdate(DocumentEvent docEvent)
          Responds to a change in attribute text field and checks whether the attribute is valid.
 boolean checkInput()
          Checks that the last digitized object was stored before closing.
 void commitChanges()
          Commits changes to digitized vector map.
 void footprintReceived(Footprint fp)
          Responds to a broadcast coordinate pair and updates vector object accordingly.
 VectorMap getDigitizedVectorMap()
          Deprecated. There should now be no need to extract the original and digitized vectors. Instead, call commitChanges to combine the two vectors.
 VectorMap getOriginalVectorMap()
          Deprecated. There should now be no need to extract the original and digitized vectors. Instead, call commitChanges to combine the two vectors.
 void insertUpdate(DocumentEvent docEvent)
          Responds to an insert in the attribute filed and ensures it is valid.
 void removeUpdate(DocumentEvent docEvent)
          Responds to the removal of a character in the attribute filed and ensures it is valid.
 
Methods inherited from class jwo.utils.gui.JWDialogue
addDialogueListener, closedown, getContentPane, isChanged, removeDialogueListener, setFullBackground
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Dialog
addNotify, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DigitizeBox

public DigitizeBox(VectorMap vectorMap,
                   GISFrame gisFrame)
Creates a non-modal screen digitization box for inputting coordinates, attribute and object type.

Parameters:
vectorMap - Vector map in which to add or edit digitized objects.
gisFrame - Frame from which dialogue was called.
Method Detail

getOriginalVectorMap

public VectorMap getOriginalVectorMap()
Deprecated. There should now be no need to extract the original and digitized vectors. Instead, call commitChanges to combine the two vectors.

Reports the original vector map used to create bounds of the digitized map. This allows the separation of the original and extra digitized objects in a vector map to be store separately, and combined if necessary.

Returns:
Original vector map

commitChanges

public void commitChanges()
Commits changes to digitized vector map. It is only after this method is called that any additions or edits to the original vector map supplied to the constructor of this class are actually made.


getDigitizedVectorMap

public VectorMap getDigitizedVectorMap()
Deprecated. There should now be no need to extract the original and digitized vectors. Instead, call commitChanges to combine the two vectors.

Reports the newly digitized vector map. Note this only contains the newly digitized objects, and not any of the objects that formed part of the original vector map.

Returns:
Digitized vector map

checkInput

public boolean checkInput()
Checks that the last digitized object was stored before closing.

Overrides:
checkInput in class JWDialogue
Returns:
True if object was stored or user is happy to discard last object without storing it.

footprintReceived

public void footprintReceived(Footprint fp)
Responds to a broadcast coordinate pair and updates vector object accordingly.

Specified by:
footprintReceived in interface FootprintListener
Parameters:
fp - Footprint broadcast. If MERWidth is negative, the point is considered to represent an interior ring (hole or island) if part of a polygon object.

actionPerformed

public void actionPerformed(ActionEvent event)
Checks for button presses and clears or stores the last digitized points.

Specified by:
actionPerformed in interface ActionListener
Parameters:
event - Action event representing button press.

changedUpdate

public void changedUpdate(DocumentEvent docEvent)
Responds to a change in attribute text field and checks whether the attribute is valid. If it is, the option to store the attribute is enabled.

Specified by:
changedUpdate in interface DocumentListener
Parameters:
docEvent - Event representing a change in the attribute text field.

insertUpdate

public void insertUpdate(DocumentEvent docEvent)
Responds to an insert in the attribute filed and ensures it is valid.

Specified by:
insertUpdate in interface DocumentListener
Parameters:
docEvent - Event representing an insert in a text field.

removeUpdate

public void removeUpdate(DocumentEvent docEvent)
Responds to the removal of a character in the attribute filed and ensures it is valid.

Specified by:
removeUpdate in interface DocumentListener
Parameters:
docEvent - Event representing an insert in a text field.


Copyright Jo Wood, 1996-2009, last modified, 17th April, 2009