Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.text
Class ComponentView

    java.lang.Object
      |
      +--javax.swing.text.View
            |
            +--javax.swing.text.ComponentView

Direct Known Subclasses:
  FormView, ObjectView

public class ComponentView
extends View

Component decorator that implements the view interface. The entire element is used to represent the component. This acts as a gateway from the display-only View implementations to interactive lightweight components (ie it allows components to be embedded into the View hierarchy).

Fields inherited from class javax.swing.text.View
`BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS`

Constructor Summary
`ComponentView(Element elem)` Creates a new ComponentView object.

Method Summary
`protected java.awt.Component` | `createComponent()` Create the component that is associated with this view.
`float` | `getAlignment(int axis)` Determines the desired alignment for this view along an axis.
`java.awt.Component` | `getComponent()` Fetch the component associated with the view.
`float` | `getMaximumSpan(int axis)` Determines the maximum span for this view along an axis.
`float` | `getMinimumSpan(int axis)` Determines the minimum span for this view along an axis.
`float` | `getPreferredSpan(int axis)` Determines the preferred span for this view along an axis.
`java.awt.Shape` | `modelToView(int pos, java.awt.Shape a, Position.Bias b)` Provides a mapping from the coordinate space of the model to that of the view.
`void` | `paint(java.awt.Graphics g, java.awt.Shape a)` Paints a component view.
`void` | `setParent(View p)` Sets the parent for a child view.
`void` | `setSize(float width, float height)` Sets the size of the view.
`int` | `viewToModel(float x, float y, java.awt.Shape a, Position.Bias[] bias)` Provides a mapping from the view coordinate space to the logical coordinate space of the model.

Methods inherited from class javax.swing.text.View
`breakView, changedUpdate, createFragment, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getNextVisualPositionFrom, getParent, getResizeWeight, getStartOffset, getView, getViewCount, getViewFactory, insertUpdate, isVisible, modelToView, modelToView, preferenceChanged, removeUpdate, viewToModel`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ComponentView

    public ComponentView(Element elem)

  Creates a new ComponentView object.
  Parameters:
    `elem` - the element to decorate

Method Detail

### createComponent

    protected java.awt.Component createComponent()

  Create the component that is associated with this view. This will be called when it has been determined that a new component is needed. This would result from a call to setParent or as a result of being notified that attributes have changed.

### getComponent

    public final java.awt.Component getComponent()

  Fetch the component associated with the view.

### paint

    public void paint(java.awt.Graphics g,
                      java.awt.Shape a)

  Paints a component view. The real paint behavior occurs naturally from the association that the component has with its parent container (the same container hosting this view), so this simply allows us to position the component properly relative to the view. Since the coordinate system for the view is simply the parent containers, positioning the child component is easy.
  Parameters:
    `g` - the graphics context
    `a` - the shape
  Overrides:
    paint in class View
  See Also:
    `View.paint(java.awt.Graphics, java.awt.Shape)`

### getPreferredSpan

    public float getPreferredSpan(int axis)

  Determines the preferred span for this view along an axis. This is implemented to return the value returned by Component.getPreferredSize along the axis of interest.
  Parameters:
    `axis` - may be either View.X_AXIS or View.Y_AXIS
  Throws:
    java.lang.IllegalArgumentException - for an invalid axis
  Overrides:
    getPreferredSpan in class View

### getMinimumSpan

    public float getMinimumSpan(int axis)

  Determines the minimum span for this view along an axis. This is implemented to return the value returned by Component.getMinimumSize along the axis of interest.
  Parameters:
    `axis` - may be either View.X_AXIS or View.Y_AXIS
  Throws:
    java.lang.IllegalArgumentException - for an invalid axis
  Overrides:
    getMinimumSpan in class View

### getMaximumSpan

    public float getMaximumSpan(int axis)

  Determines the maximum span for this view along an axis. This is implemented to return the value returned by Component.getMaximumSize along the axis of interest.
  Parameters:
    `axis` - may be either View.X_AXIS or View.Y_AXIS
  Throws:
    java.lang.IllegalArgumentException - for an invalid axis
  Overrides:
    getMaximumSpan in class View

### getAlignment

    public float getAlignment(int axis)

  Determines the desired alignment for this view along an axis. This is implemented to give the alignment of the embedded component.
  Parameters:
    `axis` - may be either View.X_AXIS or View.Y_AXIS
  Overrides:
    getAlignment in class View

### setSize

    public void setSize(float width,
                        float height)

  Sets the size of the view. This is implemented to set the size of the component to match the size of the view.

  The changing of the component size will touch the component lock, which is the one thing that is not safe from the View hierarchy. Therefore, this functionality is executed immediately if on the event thread, or is queued on the event queue if called from another thread (notification of change from an asynchronous update).

  Parameters:
    `width` - the width >= 0
    `height` - the height >= 0
  Overrides:
    setSize in class View

### setParent

    public void setParent(View p)

  Sets the parent for a child view. The parent calls this on the child to tell it who its parent is, giving the view access to things like the hosting Container. The superclass behavior is executed, followed by a call to createComponent if a component has not yet been created and the embedded components parent is set to the value returned by `getContainer`.

  The changing of the component hierarhcy will touch the component lock, which is the one thing that is not safe from the View hierarchy. Therefore, this functionality is executed immediately if on the event thread, or is queued on the event queue if called from another thread (notification of change from an asynchronous update).

  Parameters:
    `p` - the parent
  Overrides:
    setParent in class View

### modelToView

    public java.awt.Shape modelToView(int pos,
                                      java.awt.Shape a,
                                      Position.Bias b)
                               throws BadLocationException

  Provides a mapping from the coordinate space of the model to that of the view.
  Parameters:
    `pos` - the position to convert >= 0
    `a` - the allocated region to render into
  Returns:
    the bounding box of the given position is returned
  Throws:
    BadLocationException - if the given position does not represent a valid location in the associated document
  Overrides:
    modelToView in class View
  See Also:
    `View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)`

### viewToModel

    public int viewToModel(float x,
                           float y,
                           java.awt.Shape a,
                           Position.Bias[] bias)

  Provides a mapping from the view coordinate space to the logical coordinate space of the model.
  Parameters:
    `x` - the X coordinate >= 0
    `y` - the Y coordinate >= 0
    `a` - the allocated region to render into
  Returns:
    the location within the model that best represents the given point in the view
  Overrides:
    viewToModel in class View
  See Also:
    `View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.