jfig.gui
Class EditCompoundDialog

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Dialog
                  extended byjfig.gui.EditObjectBaseDialog
                      extended byjfig.gui.EditCompoundDialog
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.event.KeyListener, java.awt.MenuContainer, java.io.Serializable, java.awt.event.WindowListener

public class EditCompoundDialog
extends EditObjectBaseDialog
implements java.awt.event.ActionListener, java.awt.event.KeyListener

dialog to edit a compound object's attribute layer. This class now also implements a subset of the xfig.3.2.3c behaviour, allowing direct editing of the top-level text objects in the compound via additional AWT TextFields on the Dialog window. Note that we currently limit this function to the first ten text objects per compound, to save screen real estate.

EditCompoundDialog:

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
(package private)  java.awt.Panel _textFieldPanel
           
(package private)  java.util.Vector _textFieldVector
           
(package private)  java.util.Vector _textObjectVector
           
(package private)  AttribsControls AC
           
(package private)  java.awt.Button applyButton
           
(package private)  java.awt.Color backgroundColor
           
(package private)  java.awt.Button cancelButton
           
(package private)  FigCompound compound
           
(package private)  java.awt.TextArea coordsTextArea
           
(package private)  FigAttribs currentAttribs
           
(package private)  boolean debug
           
(package private)  java.awt.Font defaultFont
           
(package private)  NumericStateButton depthButton
           
(package private)  java.awt.Label depthLabel
           
(package private)  FigBasicEditor editor
           
static int MAX_TEXT_FIELDS
           
(package private)  java.awt.Button okButton
           
(package private)  FigAttribs savedAttribs
           
(package private)  StatusMessage statusMessage
           
 
Fields inherited from class java.awt.Dialog
 
Fields inherited from class java.awt.Window
 
Fields inherited from class java.awt.Container
 
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
EditCompoundDialog(FigCompound compound, FigBasicEditor editor, java.awt.Frame parent)
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
           
 java.awt.Panel buildAttribsPanel()
          all of the compound attributes, in a nice GridLayout
 java.awt.Panel buildTextFieldPanel()
          create a Panel with TextFields for all top-level text objects on this compound.
 void dbg(java.lang.String msg)
           
 void doCancel()
           
 void keyPressed(java.awt.event.KeyEvent evt)
          keyPressed(): Call the parent if the user presses or .
 void keyReleased(java.awt.event.KeyEvent evt)
           
 void keyTyped(java.awt.event.KeyEvent evt)
           
static void main(java.lang.String[] argv)
          main(), for debugging only
 void message(java.lang.String msg)
           
 void retrieveAttribs(FigAttribs attr)
          utility method to get the current attribute settings from the individual GUI buttons/choices/textfields
 void setCompoundObject(FigCompound compound)
          set a new compound to edit.
 void showAttribs(FigAttribs attr)
          utility method to show the current attribute settings in the individual GUI buttons/choices/textfields
 void updateTextFieldPanel()
          update the TextFields for direct editing of the top-level text objects.
 void updateTextObjects()
           
 
Methods inherited from class jfig.gui.EditObjectBaseDialog
windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 
Methods inherited from class java.awt.Dialog
addNotify, dispose, getAccessibleContext, getTitle, hide, isModal, isResizable, isUndecorated, paramString, setModal, setResizable, setTitle, setUndecorated, show
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, 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, 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, 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, isOpaque, 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, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

editor

FigBasicEditor editor

compound

FigCompound compound

savedAttribs

FigAttribs savedAttribs

currentAttribs

FigAttribs currentAttribs

okButton

java.awt.Button okButton

applyButton

java.awt.Button applyButton

cancelButton

java.awt.Button cancelButton

AC

AttribsControls AC

depthButton

NumericStateButton depthButton

coordsTextArea

java.awt.TextArea coordsTextArea

depthLabel

java.awt.Label depthLabel

statusMessage

StatusMessage statusMessage

defaultFont

java.awt.Font defaultFont

backgroundColor

java.awt.Color backgroundColor

debug

boolean debug

MAX_TEXT_FIELDS

public static final int MAX_TEXT_FIELDS
See Also:
Constant Field Values

_textObjectVector

java.util.Vector _textObjectVector

_textFieldVector

java.util.Vector _textFieldVector

_textFieldPanel

java.awt.Panel _textFieldPanel
Constructor Detail

EditCompoundDialog

public EditCompoundDialog(FigCompound compound,
                          FigBasicEditor editor,
                          java.awt.Frame parent)
Method Detail

setCompoundObject

public void setCompoundObject(FigCompound compound)
set a new compound to edit.


buildAttribsPanel

public java.awt.Panel buildAttribsPanel()
all of the compound attributes, in a nice GridLayout


buildTextFieldPanel

public java.awt.Panel buildTextFieldPanel()
create a Panel with TextFields for all top-level text objects on this compound. To avoid out-of-memory crashes for BIG compounds, we limit the number of text fiels to MAX_TEXT_FIELDS, currently 10.


updateTextFieldPanel

public void updateTextFieldPanel()
update the TextFields for direct editing of the top-level text objects. First, search and cound the text objects in the compound object. Next, if less then MAX_TEXT_FIELDS texts are found, construct the TextFields, add them to the Panel, and display them. If too many are found, display a warning message instead.


updateTextObjects

public void updateTextObjects()

retrieveAttribs

public void retrieveAttribs(FigAttribs attr)
utility method to get the current attribute settings from the individual GUI buttons/choices/textfields


showAttribs

public void showAttribs(FigAttribs attr)
utility method to show the current attribute settings in the individual GUI buttons/choices/textfields


keyPressed

public void keyPressed(java.awt.event.KeyEvent evt)
keyPressed(): Call the parent if the user presses or .

Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent evt)
Specified by:
keyReleased in interface java.awt.event.KeyListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent evt)
Specified by:
keyTyped in interface java.awt.event.KeyListener

doCancel

public void doCancel()
Overrides:
doCancel in class EditObjectBaseDialog

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

message

public void message(java.lang.String msg)

dbg

public void dbg(java.lang.String msg)

main

public static void main(java.lang.String[] argv)
main(), for debugging only