org.progeeks.meta.swing
Class MetaPanel

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 org.progeeks.meta.swing.MetaPanel
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class MetaPanel
extends javax.swing.JPanel

A JPanel implementation that provides additional container methods for adding MetaObjects and PropertyMutators as if they were actual UI components.

Version:
$Revision: 1.5 $
Author:
Paul Speed
See Also:
Serialized Form

Nested Class Summary
 
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.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
MetaPanel()
          Creates aa MetaPanel with a default factory registry and layout manager.
MetaPanel(FactoryRegistry factories)
          Creates an empty MetaColumnPanel with a default layout manager.
MetaPanel(FactoryRegistry factories, java.awt.LayoutManager layout)
          Creates a meta-panel with the specified factory and layout manager.
MetaPanel(FactoryRegistry factories, java.awt.LayoutManager layout, boolean editable)
          Creates a meta-panel with the specified factory and layout manager.
MetaPanel(MetaPropertyContext context, java.awt.LayoutManager layout)
          Creates a meta-panel with the specified context and layout manager.
 
Method Summary
 void add(java.awt.Component comp, java.lang.Object constraints, int index)
           
 MetaPropertyUI add(PropertyMutator mutator)
          Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.
 MetaPropertyUI add(PropertyMutator mutator, int index)
          Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.
 MetaPropertyUI add(PropertyMutator mutator, java.lang.Object constraints)
          Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.
 MetaPropertyUI add(PropertyMutator mutator, java.lang.Object constraints, int index)
          Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.
protected  void addBlank(int index)
          Inserts an empty space into the data structures that map mutators to components.
protected  MetaPropertyUI createUI(PropertyMutator mutator, int index)
          Creates a meta-property UI for the specified mutator and added the UI to the appropriate data structures.
protected  int getComponentIndex(java.awt.Component comp)
          Returns the index of the specified component.
 MetaPropertyUI getMetaPropertyUI(int index)
          Returns the meta-property UI for the specified index or null if no meta-property UI exists at the specified position.
 PropertyMutator getMutator(int index)
          Returns the mutator at the specified index or null if no mutator exists at the specified position, ie: it's a component that was added manually.
 void remove(int index)
          Removes the component and mutator at the specified index.
 void remove(PropertyMutator mutator)
          Removes the first component associated with the specified mutator.
 void removeAll()
          Removes all components and mutators from this container.
protected  void removeSlot(int index)
          Releases a meta-property UI and removes it from the appropriate data structures.
 
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, 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, 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, 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, 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

MetaPanel

public MetaPanel()
Creates aa MetaPanel with a default factory registry and layout manager.


MetaPanel

public MetaPanel(FactoryRegistry factories)
Creates an empty MetaColumnPanel with a default layout manager.


MetaPanel

public MetaPanel(FactoryRegistry factories,
                 java.awt.LayoutManager layout)
Creates a meta-panel with the specified factory and layout manager.


MetaPanel

public MetaPanel(FactoryRegistry factories,
                 java.awt.LayoutManager layout,
                 boolean editable)
Creates a meta-panel with the specified factory and layout manager.


MetaPanel

public MetaPanel(MetaPropertyContext context,
                 java.awt.LayoutManager layout)
Creates a meta-panel with the specified context and layout manager.

Method Detail

createUI

protected MetaPropertyUI createUI(PropertyMutator mutator,
                                  int index)
Creates a meta-property UI for the specified mutator and added the UI to the appropriate data structures.


addBlank

protected void addBlank(int index)
Inserts an empty space into the data structures that map mutators to components. This helps keep the mutator list in synch with the container's component list.


removeSlot

protected void removeSlot(int index)
Releases a meta-property UI and removes it from the appropriate data structures.


getComponentIndex

protected int getComponentIndex(java.awt.Component comp)
Returns the index of the specified component.


add

public MetaPropertyUI add(PropertyMutator mutator)
Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.

Parameters:
mutator - the mutator for which a component will be created.

add

public MetaPropertyUI add(PropertyMutator mutator,
                          int index)
Adds the specified PropertyMutator to this container by creating a component as appropriate for its type.

Parameters:
mutator - the mutator for which a component will be created.
index - the position at which to insert the mutator, or -1 to append the mutator to the end

add

public MetaPropertyUI add(PropertyMutator mutator,
                          java.lang.Object constraints)
Adds the specified PropertyMutator to this container by creating a component as appropriate for its type. The constraints are passed when the component is added and are specific to the type of layout manager being used.

Parameters:
mutator - the mutator for which a component will be created.
constraints - an object expressing layout contraints for the mutator's UI component

add

public MetaPropertyUI add(PropertyMutator mutator,
                          java.lang.Object constraints,
                          int index)
Adds the specified PropertyMutator to this container by creating a component as appropriate for its type. The constraints are passed when the component is added and are specific to the type of layout manager being used.

Parameters:
mutator - the mutator for which a component will be created.
constraints - an object expressing layout contraints for the mutator's UI component
index - the position at which to insert the mutator, or -1 to append the mutator to the end

add

public void add(java.awt.Component comp,
                java.lang.Object constraints,
                int index)
Overrides:
add in class java.awt.Container

getMutator

public PropertyMutator getMutator(int index)
Returns the mutator at the specified index or null if no mutator exists at the specified position, ie: it's a component that was added manually.


getMetaPropertyUI

public MetaPropertyUI getMetaPropertyUI(int index)
Returns the meta-property UI for the specified index or null if no meta-property UI exists at the specified position.


remove

public void remove(PropertyMutator mutator)
Removes the first component associated with the specified mutator.


remove

public void remove(int index)
Removes the component and mutator at the specified index.

Overrides:
remove in class java.awt.Container

removeAll

public void removeAll()
Removes all components and mutators from this container.

Overrides:
removeAll in class java.awt.Container


Copyright © 2002-2003 Paul Speed. All Rights Reserved.