1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- MODULE Fonts;
- (* THIS IS TEXT COPY OF BlackBox 1.6-rc6 System/Mod/Fonts.odc *)
- (* DO NOT EDIT *)
- CONST
- (** universal units **)
- mm* = 36000;
- point* = 12700; (** 1/72 inch **)
- italic* = 0; underline* = 1; strikeout* = 2; (** style elements **)
- normal* = 400; bold* = 700;
-
- default* = "*";
- TYPE
- Typeface* = ARRAY 64 OF CHAR;
- Font* = POINTER TO ABSTRACT RECORD
- typeface-: Typeface;
- size-: INTEGER;
- style-: SET;
- weight-: INTEGER
- END;
- TypefaceInfo* = POINTER TO RECORD
- next*: TypefaceInfo;
- typeface*: Typeface
- END;
- Directory* = POINTER TO ABSTRACT RECORD
- END;
-
- VAR dir-: Directory;
- PROCEDURE (f: Font) Init* (typeface: Typeface; size: INTEGER; style: SET; weight: INTEGER), NEW;
- BEGIN
- ASSERT(f.size = 0, 20); ASSERT(size # 0, 21);
- f.typeface := typeface$; f.size := size; f.style := style; f.weight := weight
- END Init;
- PROCEDURE (f: Font) GetBounds* (OUT asc, dsc, w: INTEGER), NEW, ABSTRACT;
- PROCEDURE (f: Font) StringWidth* (IN s: ARRAY OF CHAR): INTEGER, NEW, ABSTRACT;
- PROCEDURE (f: Font) SStringWidth* (IN s: ARRAY OF SHORTCHAR): INTEGER, NEW, ABSTRACT;
- PROCEDURE (f: Font) IsAlien* (): BOOLEAN, NEW, ABSTRACT;
-
- PROCEDURE (d: Directory) This* (typeface: Typeface; size: INTEGER; style: SET; weight: INTEGER): Font, NEW, ABSTRACT;
- PROCEDURE (d: Directory) Default* (): Font, NEW, ABSTRACT;
- PROCEDURE (d: Directory) TypefaceList* (): TypefaceInfo, NEW, ABSTRACT;
-
- PROCEDURE SetDir* (d: Directory);
- BEGIN
- ASSERT(d # NIL, 20);
- dir := d
- END SetDir;
- END Fonts.
|