afreechart/src/main/java/org/afree/chart/block/ColumnArrangement.java
/**
     * Calculates and sets the bounds of all the items in the specified
     * container, subject to the given constraint. The <code>Canvas</code>
     * can be used by some items (particularly items containing text) to
     * calculate sizing parameters.
     * 
     * @param container
     *            the container whose items are being arranged.
     * @param canvas
     *            the graphics device.
     * @param constraint
     *            the size constraint.
     * 
     * @return The size of the container after arrangement of the contents.
     */
Calculates and sets the bounds of all the items in the specified
container, subject to the given constraint. The Canvas
can be used by some items (particularly items containing text) to
calculate sizing parameters.

@param container
the container whose items are being arranged.
@param canvas
the graphics device.
@param constraint
the size constraint.

@return The size of the container after arrangement of the contents.
Calculates and sets the bounds of all the items in the specified container subject to the given constraint . The Canvas can be used by some items ( particularly items containing text ) to calculate sizing parameters . @param container the container whose items are being arranged . @param canvas the graphics device . @param constraint the size constraint . @return The size of the container after arrangement of the contents .
public Size2D arrange(BlockContainer container, Canvas canvas,
            RectangleConstraint constraint) {
        LengthConstraintType w = constraint.getWidthConstraintType();
        LengthConstraintType h = constraint.getHeightConstraintType();
        if (w == LengthConstraintType.NONE) {
            if (h == LengthConstraintType.NONE) {
                return arrangeNN(container, canvas);
            } else if (h == LengthConstraintType.FIXED) {
                throw new RuntimeException("Not implemented.");
            } else if (h == LengthConstraintType.RANGE) {
                throw new RuntimeException("Not implemented.");
            }
        } else if (w == LengthConstraintType.FIXED) {
            if (h == LengthConstraintType.NONE) {
                throw new RuntimeException("Not implemented.");
            } else if (h == LengthConstraintType.FIXED) {
                return arrangeFF(container, canvas, constraint);
            } else if (h == LengthConstraintType.RANGE) {
                throw new RuntimeException("Not implemented.");
            }
        } else if (w == LengthConstraintType.RANGE) {
            if (h == LengthConstraintType.NONE) {
                throw new RuntimeException("Not implemented.");
            } else if (h == LengthConstraintType.FIXED) {
                return arrangeRF(container, canvas, constraint);
            } else if (h == LengthConstraintType.RANGE) {
                return arrangeRR(container, canvas, constraint);
            }
        }
        return new Size2D(); 
    }
public Size2D arrange ( BlockContainer container , Canvas canvas , RectangleConstraint constraint ) { LengthConstraintType w = constraint . getWidthConstraintType ( ) ; LengthConstraintType h = constraint . getHeightConstraintType ( ) ; if ( w == LengthConstraintType . NONE ) { if ( h == LengthConstraintType . NONE ) { return arrangeNN ( container , canvas ) ; } else if ( h == LengthConstraintType . FIXED ) { throw new RuntimeException ( "Not implemented." ) ; } else if ( h == LengthConstraintType . RANGE ) { throw new RuntimeException ( "Not implemented." ) ; } } else if ( w == LengthConstraintType . FIXED ) { if ( h == LengthConstraintType . NONE ) { throw new RuntimeException ( "Not implemented." ) ; } else if ( h == LengthConstraintType . FIXED ) { return arrangeFF ( container , canvas , constraint ) ; } else if ( h == LengthConstraintType . RANGE ) { throw new RuntimeException ( "Not implemented." ) ; } } else if ( w == LengthConstraintType . RANGE ) { if ( h == LengthConstraintType . NONE ) { throw new RuntimeException ( "Not implemented." ) ; } else if ( h == LengthConstraintType . FIXED ) { return arrangeRF ( container , canvas , constraint ) ; } else if ( h == LengthConstraintType . RANGE ) { return arrangeRR ( container , canvas , constraint ) ; } } return new Size2D ( ) ; }
Calculates and sets the bounds of all the items in the specified
 container, subject to the given constraint.
Calculates and sets the bounds of all the items in the specified container subject to the given constraint .
// TODO: complete this