Section Header
    + name := G_IN;
    - author := "Sonntag Benoit (bsonntag@loria.fr)";
    - comment := "Output text for GUI.";
Section Inherit
    + parent_area:Expanded AREA;
    + parent_g_expr:Expanded G_EXPR;
Section Public
    + action:BLOCK :=
    + stat:INTEGER_8;
    + text:STRING;
    + justify:UINTEGER_8;
    + cursor:INTEGER;
    - left :UINTEGER_8 :=
    - right :UINTEGER_8 :=
    - center:UINTEGER_8 :=
Width / Height
    + width_min:INTEGER;
    + height_min:INTEGER;
    - height_max:INTEGER <-
Creation.
    - create (car,line:INTEGER) :SELF <-
    - create (car,line:INTEGER) action a:BLOCK :SELF <-
    - create (car,line:INTEGER) justify j:UINTEGER_8 :SELF <-
    - create (car,line:INTEGER) justify j:UINTEGER_8 action a:BLOCK :SELF <-
    - make (car,line:INTEGER) justify j:UINTEGER_8 action a:BLOCK <-
Update position.
    - set_position rac:AREA at (x,y:INTEGER) size (w,h:INTEGER) <-
Display.
    - draw (x0,y0:INTEGER) to (x1,y1:INTEGER) <-
Event manager.
    - receive msg:EVENT <-
        0 : Out
        1 : in
        2 : input
        4 : End of buffer.