org.jfree.report.util

## Class ComponentDrawable

- java.lang.Object
- - org.jfree.report.util.ComponentDrawable

-     public class ComponentDrawable
      extends java.lang.Object

  Creation-Date: 11.10.2005, 14:03:15
  Author:
    Thomas Morgner

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ComponentDrawable()` Default Constructor.
    `ComponentDrawable(javax.swing.JFrame peerSupply)` Creates a new ComponentDrawable with the given Frame as peer-supply.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `cleanUp()` A helper method that performs some cleanup and disconnects the component from the AWT and the Swing-Framework to avoid memory-leaks.
    `void` | `draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D area)` Draws the component.
    `java.awt.Component` | `getComponent()` Returns the component that should be drawn.
    `java.awt.Dimension` | `getPreferredSize()` Returns the preferred size of the drawable.
    `java.awt.Dimension` | `getSize()` Returns the declared size of the drawable.
    `protected static java.awt.Window` | `getWindowAncestor(java.awt.Component component)` A private helper method that locates the Window to which the component is currently added.
    `boolean` | `isAllowOwnPeer()` Returns, whether components are allowed to provide their own AWT-Window.
    `protected boolean` | `isOwnPeerConnected()` A private helper method that checks, whether the component provides an own peer.
    `boolean` | `isPaintSynchronized()` Returns, whether component operations will happen on the Event-Dispatcher threads.
    `boolean` | `isPreserveAspectRatio()` Returns true, if this drawable will preserve an aspect ratio during the drawing.
    `void` | `setAllowOwnPeer(boolean allowOwnPeer)` Defines, whether components are allowed to provide their own AWT-Window.
    `void` | `setComponent(java.awt.Component component)` Defines the component that should be drawn.
    `void` | `setPaintSynchronized(boolean paintSynchronized)` Defines, whether component operations will happen on the Event-Dispatcher threads.
    `void` | `setPreserveAspectRatio(boolean preserveAspectRatio)` Defines whether the layouter should preserve the aspect ratio of the component's preferred size.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ComponentDrawable

          public ComponentDrawable()

      Default Constructor.

    - #### ComponentDrawable

          public ComponentDrawable(javax.swing.JFrame peerSupply)

      Creates a new ComponentDrawable with the given Frame as peer-supply.
      Parameters:
        `peerSupply` - the frame that should be used as peer-source.

  - ### Method Detail

    - #### isAllowOwnPeer

          public boolean isAllowOwnPeer()

      Returns, whether components are allowed to provide their own AWT-Window.
      Returns:
        true, if foreign peers are allowed, false otherwise.

    - #### setAllowOwnPeer

          public void setAllowOwnPeer(boolean allowOwnPeer)

      Defines, whether components are allowed to provide their own AWT-Window.
      Parameters:
        `allowOwnPeer` - true, if components can provide their own peers, false otherwise.

    - #### isPaintSynchronized

          public boolean isPaintSynchronized()

      Returns, whether component operations will happen on the Event-Dispatcher threads. As the AWT is not synchronized, weird things can happen if AWT functionality is executed on user threads.
      Returns:
        true, if all operations will be done on the AWT-EventDispatcher thread, false if they should be done in the local thread.

    - #### setPaintSynchronized

          public void setPaintSynchronized(boolean paintSynchronized)

      Defines, whether component operations will happen on the Event-Dispatcher threads. As the AWT is not synchronized, weird things can happen if AWT functionality is executed on user threads.
      Parameters:
        `paintSynchronized` - true, if all operations will be done on the AWT-EventDispatcher thread, false if they should be done in the local thread.

    - #### cleanUp

          protected final void cleanUp()

      A helper method that performs some cleanup and disconnects the component from the AWT and the Swing-Framework to avoid memory-leaks.

    - #### getComponent

          public java.awt.Component getComponent()

      Returns the component that should be drawn.
      Returns:
        the component.

    - #### setComponent

          public void setComponent(java.awt.Component component)

      Defines the component that should be drawn.
      Parameters:
        `component` - the component.

    - #### getPreferredSize

          public java.awt.Dimension getPreferredSize()

      Returns the preferred size of the drawable. If the drawable is aspect ratio aware, these bounds should be used to compute the preferred aspect ratio for this drawable.

      This calls `Component.getPreferredSize()` on the given component.
      Returns:
        the preferred size.

    - #### getSize

          public java.awt.Dimension getSize()

      Returns the declared size of the drawable. If the drawable is aspect ratio aware, these bounds should be used to compute the declared aspect ratio for this drawable.

      This calls `Component.getSize()` on the given component.
      Returns:
        the preferred size.

    - #### isOwnPeerConnected

          protected final boolean isOwnPeerConnected()

      A private helper method that checks, whether the component provides an own peer.
      Returns:
        true, if the component has an own peer, false otherwise.

    - #### getWindowAncestor

          protected static java.awt.Window getWindowAncestor(java.awt.Component component)

      A private helper method that locates the Window to which the component is currently added.
      Parameters:
        `component` - the component for which the Window should be returned.
      Returns:
        the AWT-Window that is the (possibly indirect) parent of this component.

    - #### setPreserveAspectRatio

          public void setPreserveAspectRatio(boolean preserveAspectRatio)

      Defines whether the layouter should preserve the aspect ratio of the component's preferred size.
      Parameters:
        `preserveAspectRatio` - true, if the aspect ratio should be preserved, false otherwise.

    - #### isPreserveAspectRatio

          public boolean isPreserveAspectRatio()

      Returns true, if this drawable will preserve an aspect ratio during the drawing.
      Returns:
        true, if an aspect ratio is preserved, false otherwise.

    - #### draw

          public void draw(java.awt.Graphics2D g2,
                           java.awt.geom.Rectangle2D area)

      Draws the component.
      Parameters:
        `g2` - the graphics device.
        `area` - the area inside which the object should be drawn.