(*----------------------------------------------------------------------
  :Program.    DataStruct.def
  :Contents.   Globale Datenstrukturen und Konstanten
  :Author.     Hubert Bildstein
  :Copyright.  Public Domain
  :Language.   Modula-2
  :Translator. M2Amiga V3.3d
  :History.    V1.0   5.12.1990
----------------------------------------------------------------------*)

(* $M-   kein .obj-File *)

DEFINITION MODULE DataStruct;
(* Datenstrukturen und globale Konstanten *)

FROM Intuition IMPORT ActivationFlagSet, GadgetPtr, strGadget, propGadget,
                      boolGadget;
FROM Gadgets   IMPORT PropTypeSet;


CONST CHeight = 8;                     (* Höhe eines Zeichens *)
      CWidth  = 8;                     (* Breite eines Zeichens *)

      Bord1x = 2;                      (* Abstände des 1. Rahmens vom *)
      Bord1y = 2;                      (* Gadget. *)
      Bord2x = 3;                      (* Abstände des 2. Rahmens vom *)
      Bord2y = 2;                      (* 1. Rahmen. *)

      DefaultExt = ".ged";             (* Standard-Extension *)
      MaxGText = 80;                   (* max. Länge eines Gadget-Textes *)

TYPE StringAttrType = (Left, Center, Right);  (* Bündigkeit für String-G. *)
     BorderType     = (No,Single,Double);     (* versch. Rahmenarten *)

     FileNameType = ARRAY [1..60] OF CHAR;
     GTextType    = ARRAY [1..MaxGText] OF CHAR;

 (* Record zur Aufnahme der Gadget-Informationen *)
     GadgDefType = RECORD
                     gPtr          : GadgetPtr;
                     lEdge, tEdge  : INTEGER;
                     width, height : INTEGER;
                     aFlags        : ActivationFlagSet;
                     border        : BorderType;
                     text          : GTextType;
                     fPen, bPen    : INTEGER;
                     xText, yText  : INTEGER;
                     CASE type     : CARDINAL OF
                     |  strGadget:   maxChars   : INTEGER;
                     |  propGadget:  pType      : PropTypeSet;
                                     hSteps     : CARDINAL;
                                     vSteps     : CARDINAL;
                     |  boolGadget:
                     END; (*CASE*)
                   END; (*RECORD*)

 (* Record zur Aufnahme der Window-Informationen *)
     WindowDefType = RECORD
                       x,y           : INTEGER;
                       width, height : INTEGER;
                     END; (*RECORD*)

END DataStruct.
