The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Graph::Easy::Group - Represents a group of nodes in a simple graph

SYNOPSIS

        use Graph::Easy;

        my $bonn = Graph::Easy::Node->new('Bonn');

        $bonn->set_attribute('border', 'solid 1px black');

        my $berlin = Graph::Easy::Node->new( name => 'Berlin' );

        my $cities = Graph::Easy::Group->new(
                name => 'Cities',
        );
        $cities->set_attribute('border', 'dashed 1px blue');

        $cities->add_nodes ($bonn);
        # $bonn will be ONCE in the group
        $cities->add_nodes ($bonn, $berlin);

DESCRIPTION

A Graph::Easy::Node represents a node in a simple graph. Each node has contents (a text, an image or another graph), and dimension plus an origin. The origin is typically determined by a graph layouter module like Graph::Easy.

METHODS

new()

        my $group = Graph::Easy::Group->new( $options );

Create a new, empty group. $options are the possible options, see Graph::Easy::Node for a list.

error()

        $last_error = $group->error();

        $group->error($error);                  # set new messags
        $group->error('');                      # clear error

Returns the last error message, or '' for no error.

as_ascii()

        my $ascii = $group->as_ascii();

Return the group as a little box drawn in ASCII art as a string.

name()

        my $name = $group->name();

Return the name of the group.

id()

        my $id = $group->id();

Returns the group's unique ID number.

set_attribute()

        $group->set_attribute('border-style', 'none');

Sets the specified attribute of this (and only this!) group to the specified value.

add_node()

        $group->add_node($node);

Add the specified node to this group.

add_nodes()

        $group->add_nodes($node, $node2, ... );

Add all the specified nodes to this group.

add_cell()

        $group->add_cell($cell);

Add a cell to the list of cells this group covers.

cells()

        my @cells = $group->cells();

Returns a list of all cells that belong to this group.

nodes()

        my @nodes = $group->nodes();

Returns a list of all nodes that belong to this group.

clear_cells()

        $group->clear_cells();

Clears the cells associated with this group.

as_txt()

        my $txt = $group->as_txt();

Returns the group as Graph::Easy textual description.

EXPORT

None by default.

SEE ALSO

Graph::Easy.

AUTHOR

Copyright (C) 2004 - 2005 by Tels http://bloodgate.com

See the LICENSE file for more details.