Documentation of 'CH.ifa.draw.contrib.GraphicalCompositeFigure' Java class
GraphicalCompositeFigure
CH.ifa.draw.contrib

Class GraphicalCompositeFigure

  • All Implemented Interfaces:
    Layoutable, Figure, FigureChangeListener, Storable, java.io.Serializable, java.lang.Cloneable, java.util.EventListener


    public class GraphicalCompositeFigure
    extends CompositeFigure
    implements Layoutable
    The GraphicalCompositeFigure fills in the gap between a CompositeFigure and other figures which mainly have a presentation purpose. The GraphicalCompositeFigure can be configured with any Figure which takes over the task for rendering the graphical presentation for a CompositeFigure. Therefore, the GraphicalCompositeFigure manages contained figures like the CompositeFigure does, but delegates its graphical presentation to another (graphical) figure which purpose it is to draw the container for all contained figures.
    See Also:
    Serialized Form
    • Constructor Detail

      • GraphicalCompositeFigure

        public GraphicalCompositeFigure()
        Default constructor which uses a RectangleFigure as presentation figure. This constructor is needed by the Storable mechanism.
      • GraphicalCompositeFigure

        public GraphicalCompositeFigure(Figure newPresentationFigure)
        Constructor which creates a GraphicalCompositeFigure with a given graphical figure for presenting it.
        Parameters:
        newPresentationFigure - figure which renders the container
    • Method Detail

      • update

        public void update()
        Expicit update: an updated involves a layout for all contained figures.
      • draw

        public void draw(java.awt.Graphics g)
        Draw the figure. This method is delegated to the encapsulated presentation figure.
        Specified by:
        draw in interface Figure
        Overrides:
        draw in class CompositeFigure
        Parameters:
        g - the Graphics to draw into
        See Also:
        Figure.draw(java.awt.Graphics)
      • handles

        public java.util.Vector handles()
        Return default handles from the presentation figure.
        Specified by:
        handles in interface Figure
        Specified by:
        handles in class AbstractFigure
        Returns:
        a Vector of handles
        See Also:
        Handle
      • getAttribute

        public java.lang.Object getAttribute(java.lang.String name)
        Delegate capabilities for storing and retrieving attributes to a CompositeFigure if the encapsulated presentation figure. If no presentation figure is found then the superclass' getAttribute() will be invoked (which currently returns always "null").
        Specified by:
        getAttribute in interface Figure
        Overrides:
        getAttribute in class AbstractFigure
        Parameters:
        name - name of the attribute whose value should be returned
        Returns:
        value of the attribute with the given name
      • setAttribute

        public void setAttribute(java.lang.String name,
                                 java.lang.Object value)
        Delegate capabilities for storing and retrieving attributes to a CompositeFigure if the encapsulated presentation figure. If no presentation figure is found then the superclass' setAttribute() will be invoked (which currently does not set an attribute).
        Specified by:
        setAttribute in interface Figure
        Overrides:
        setAttribute in class AbstractFigure
        Parameters:
        name - name of the attribute
        value - value associated with this attribute
      • setPresentationFigure

        public void setPresentationFigure(Figure newPresentationFigure)
        Set a figure which renders this CompositeFigure. The presentation tasks for the CompositeFigure are delegated to this presentation figure.
        Parameters:
        newPresentationFigure - figure takes over the presentation tasks
      • getPresentationFigure

        public Figure getPresentationFigure()
        Get a figure which renders this CompositeFigure. The presentation tasks for the CompositeFigure are delegated to this presentation figure.
        Returns:
        figure takes over the presentation tasks
      • layout

        public void layout()
        A layout algorithm is used to define how the child components should be laid out in relation to each other. The task for layouting the child components for presentation is delegated to a Layouter which can be plugged in at runtime.
        Specified by:
        layout in interface Layoutable
      • setLayouter

        public void setLayouter(Layouter newLayouter)
        Set a Layouter object which encapsulated a layout algorithm for this figure. Typically, a Layouter accesses the child components of this figure and arranges their graphical presentation. It is a good idea to set the Layouter in the protected initialize() method so it can be recreated if a GraphicalCompositeFigure is read and restored from a StorableInput stream.
        Specified by:
        setLayouter in interface Layoutable
        Parameters:
        newLayouter - encapsulation of a layout algorithm.
      • getLayouter

        public Layouter getLayouter()
        Get a Layouter object which encapsulated a layout algorithm for this figure. Typically, a Layouter accesses the child components of this figure and arranges their graphical presentation.
        Specified by:
        getLayouter in interface Layoutable
        Returns:
        layout strategy used by this figure
      • read

        public void read(StorableInput dr)
                  throws java.io.IOException
        Reads the contained figures from StorableInput. The figure responsible for graphical presentation is read together with all child components. The Layouter is not stored and therefore not read.
        Specified by:
        read in interface Storable
        Overrides:
        read in class CompositeFigure
        Throws:
        java.io.IOException
      • write

        public void write(StorableOutput dw)
        Writes the contained figures to the StorableOutput. The figure responsible for graphical presentation is written together with all child components. The Layouter is not written.
        Specified by:
        write in interface Storable
        Overrides:
        write in class CompositeFigure

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.