	{ Ce schema decrit la structure d'un arbre qui peut s'afficher
	  verticalement, horizontalement ou sous forme de liste indentee.

	  V. Quint	Mai 1994	}

STRUCTURE Arbre2;

DEFPRES Arbre2P;

STRUCT

   Arbre2 (ATTR !Disposition = Arbre_vertical, Arbre_horizontal, Liste_indent\351e;
		Largeur_noeuds = Fixe, Variable;
		Cadre_noeuds =  Sans_cadre, Rectangle, Rectangle_ombr\351,
				Arrondi, Arrondi_ombr\351,
				Ellipse, Ellipse_ombr\351e)
	      = Sous_arbre WITH Disposition ?= Arbre_vertical,
				Largeur_noeuds ?= Fixe,
				Cadre_noeuds ?= Rectangle;

   Sous_arbre (ATTR Cadre_noeuds)
	      = BEGIN
		Noeud = LIST OF (Unit\351 = UNIT);
	      ? Descendants = LIST OF (Sous_arbre);
		END;

EXCEPT

   PICTURE_UNIT :MoveResize;
   Sous_arbre	:MoveResize;
   Noeud	:MoveResize, NoMove;

END
