# ECellTree

## Name

ECellTree --

## Synopsis

    #define     E_CELL_TREE_TYPE
    typedef     ECellTree;
    ECell*      e_cell_tree_new                 (GdkPixbuf *open_pixbuf,
                                                 GdkPixbuf *closed_pixbuf,
                                                 gboolean draw_lines,
                                                 ECell *subcell);
    void        e_cell_tree_construct           (ECellTree *ect,
                                                 GdkPixbuf *open_pixbuf,
                                                 GdkPixbuf *closed_pixbuf,
                                                 gboolean draw_lines,
                                                 ECell *subcell);

## Object Hierarchy

      GtkObject
       +----ECell
             +----ECellTree

## Description

## Details

### E_CELL_TREE_TYPE

    #define E_CELL_TREE_TYPE        (e_cell_tree_get_type ())

### ECellTree

    typedef struct {
    	ECell parent;

    	gboolean draw_lines;

    	GdkPixbuf   *open_pixbuf;
    	GdkPixbuf   *closed_pixbuf;

    	ECell *subcell;
    } ECellTree;

### e_cell_tree_new ()

    ECell*      e_cell_tree_new                 (GdkPixbuf *open_pixbuf,
                                                 GdkPixbuf *closed_pixbuf,
                                                 gboolean draw_lines,
                                                 ECell *subcell);

Creates a new ECell renderer that can be used to render tree effects that come from an ETreeModel. Various assumptions are made as to the fact that the ETableModel the ETable this cell is associated with is in fact an ETreeModel. The cell uses special columns to get at structural information (needed to draw the lines/icons.

`open_pixbuf` : | pixbuf to be used instead of the '-' icon.
`closed_pixbuf` : | pixbuf to be used instead of the '+' icon.
`draw_lines` : | whether or not to draw the lines between parents/children/siblings.
`subcell` : | the ECell to render to the right of the tree effects.
Returns : | an ECell object that can be used to render trees.

### e_cell_tree_construct ()

    void        e_cell_tree_construct           (ECellTree *ect,
                                                 GdkPixbuf *open_pixbuf,
                                                 GdkPixbuf *closed_pixbuf,
                                                 gboolean draw_lines,
                                                 ECell *subcell);

Constructs an ECellTree. used by subclasses that need to initialize a nested ECellTree. See `e_cell_tree_new()` for more info.

`ect` : | the ECellTree we're constructing.
`open_pixbuf` : | pixbuf to be used instead of the '-' icon.
`closed_pixbuf` : | pixbuf to be used instead of the '+' icon.
`draw_lines` : | whether or not to draw the lines between parents/children/siblings.
`subcell` : | the ECell to render to the right of the tree effects.