# EZ_CreateDirTree

##

##

##

##

##

    NAME
           EZ_CreateDirTree - create a directory tree

    SYNOPSIS
           #include <EZ.h>

           typedef  void *(*EZ_DirTreeNodeCreator) (char *path, void *data);

           EZ_TreeNode  *EZ_CreateDirTree(EZ_DirTreeNodeCreator nctr, char *pattern,
                                          void *client_data, int open_mode)

    ARGUMENTS
           nctr  Specifies a function, the node creator.

           pattern  Specifies a pattern

           client_data  Specifies an arbitary client data, it will be
           attached to all nodes on the directory tree created

           open_mode  Specifies one of the three ways to open  direc-
           tory  nodes,  when  a double left-mouse-button occurs on a
           directory    node.     Value    must     be     one     of
           EZ_DIR_NODE_OPEN_DIRECTORY_NONE,   EZ_DIR_NODE_OPEN_DIREC-
           TORY_DEFAULT or EZ_DIR_NODE_OPEN_DIRECTORY_COLLAPSING.  In
           the  first  mode,  directory node cannot be opened, in the
           third mode, when a directory is  opend,  it  collapse  all
           other  opened  directory  nodes.  The  second  mode is the
           default, double click the left-mouse-button open/close the
           corresponding directory nodes.

           The  node  creator  should  call EZ_CreateItem to create a
           display item for the given pathname, set up  the  item  as
           needed  by the application (configure appearance, register
           callbacks etc) and then call EZ_CreateTreeNode  with  NULL
           parent node and return the result.

    DESCRIPTION
           EZ_CreateDirTree  finds all files that matches pattern and
           create a tree representation of them. The root of the tree
           is always root at "/".

    SEE ALSO
            EZ_CreateTreeNode(3), EZ_TreeFindNodeUsingItem(3)