home *** CD-ROM | disk | FTP | other *** search
- {-----------------------------------------------------------------------------}
- { TEGL Windows ToolKit II }
- { Copyright (C) 1990, 1991 TEGL Systems Corporation }
- { All Rights Reserved. }
- {-----------------------------------------------------------------------------}
- {$I switches.inc}
-
- unit TEGLMain;
-
- INTERFACE
-
- USES
- crt,
- errorlog,
- videochk,
- virtmem,
- ipstacks,
- teglintr,
- tgi,
- fastgrph,
- teglfont,
- teglunit,
- TEGLIcon, {large button}
-
-
- {$IFDEF Quick}
- TGraph;
- {$ELSE}
- {$IFDEF NoGr}
- TGraph;
- {$ELSE}
- Graph;
- {$ENDIF}
- {$ENDIF}
-
- Type
- TEGLConstants = Record
- TEGLBackColor : Word;
- TEGLBorderColor : Word;
- TEGLBackPattern : FillPatternType;
- TEGLBorderShow : Boolean;
- TEGLUserPattern : Boolean;
- TEGLFillStyle : Word;
-
- ShadowColor : Word;
- ShadowBorderColor : Word;
- ShadowFillPattern : FillPatternType;
- ShadowUserPattern : Boolean;
- ShadowFillStyle : Word;
-
- ShadowTextType : Pointer;
- DefaultTextHighlight : Boolean;
- DefaultTextHColor : Word;
- DefaultTextSColor : Word;
- ShadowTextMode : Boolean;
-
- ExtendTextHColor : Word;
- ExtendTextSColor : Word;
- ExtendTextColor : Word;
-
- ShiftTextColor : Word;
- ShiftTextSColor : Word;
-
- ZipDuration : Word;
- end;
-
-
- CONST
- EnableControlBreak : Boolean = TRUE;
- StandardFont : pointer = NIL;
- beepstatus : Boolean = TRUE;
- BeepDivisor : Word = 1;
- PressButtonFlag : Boolean = TRUE; {allows visual button press}
-
- {11111111 $FF
- 10001000 $88
- 10001000 $88
- 10001000 $88
- 11111111 $FF
- 10001000 $88
- 10001000 $88
- 10001000 $88}
-
- gridfill : FillPatternType = ($FF, $88, $88, $88, $FF, $88, $88, $88);
-
- BWTranslateTable : array[0..15] of byte =
- ($00, {Black }
- $00, {Blue }
- $00, {Green }
- $00, {Cyan }
- $00, {Red }
- $00, {Magenta }
- $00, {Brown }
- $ff, {LightGray }
- $00, {DarkGray }
- $ff, {LightBlue }
- $ff, {LightGreen }
- $ff, {LightCyan }
- $00, {LightRed }
- $ff, {LightMagenta}
- $aa, {Yellow }
- $ff); {White }
-
- C256TranslateTable : array[0..255] of byte =
- (
- 0,1,2,3,4,5,200,7,56,57,58,59,60,61,62,63,
- $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1A,$1B,$1C,$1D,$1E,$1F,
- $20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$2A,$2B,$2C,$2D,$2E,$2F,
- $30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$3A,$3B,$3C,$3D,$3E,$3F,
- $40,$41,$42,$43,$44,$45,$46,$47,$48,$49,$4A,$4B,$4C,$4D,$4E,$4F,
- $50,$51,$52,$53,$54,$55,$56,$57,$58,$59,$5A,$5B,$5C,$5D,$5E,$5F,
- $60,$61,$62,$63,$64,$65,$66,$67,$68,$69,$6A,$6B,$6C,$6D,$6E,$6F,
- $70,$71,$72,$73,$74,$75,$76,$77,$78,$79,$7A,$7B,$7C,$7D,$7E,$7F,
- $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8A,$8B,$8C,$8D,$8E,$8F,
- $90,$91,$92,$93,$94,$95,$96,$97,$98,$99,$9A,$9B,$9C,$9D,$9E,$9F,
- $A0,$A1,$A2,$A3,$A4,$A5,$A6,$A7,$A8,$A9,$AA,$AB,$AC,$AD,$AE,$AF,
- $B0,$B1,$B2,$B3,$B4,$B5,$B6,$B7,$B8,$B9,$BA,$BB,$BC,$BD,$BE,$BF,
- $C0,$C1,$C2,$C3,$C4,$C5,$C6,$C7,$C8,$C9,$CA,$CB,$CC,$CD,$CE,$CF,
- $D0,$D1,$D2,$D3,$D4,$D5,$D6,$D7,$D8,$D9,$DA,$DB,$DC,$DD,$DE,$DF,
- $E0,$E1,$E2,$E3,$E4,$E5,$E6,$E7,$E8,$E9,$EA,$EB,$EC,$ED,$EE,$EF,
- $F0,$F1,$F2,$F3,$F4,$F5,$F6,$F7,$F8,$F9,$FA,$FB,$FC,$FD,$FE,$FF
- );
-
- {*------------------------------------------------------------------------*
- | TEGL Graphic constants |
- *------------------------------------------------------------------------*}
- TG : TEGLConstants =
- (TEGLBackColor : white;
- TEGLBorderColor : white;
- TEGLBackPattern : ($AA,$55,$AA,$55,$AA,$55,$AA,$55);
- TEGLBorderShow : TRUE;
- TEGLUserPattern : TRUE;
- TEGLFillStyle : Solidfill;
-
- ShadowColor : white;
- ShadowBorderColor : black;
- ShadowFillPattern : ($AA,$55,$AA,$55,$AA,$55,$AA,$55);
- ShadowUserPattern : FALSE;
- ShadowFillStyle : Solidfill;
-
- ShadowTextType : NIL;
- DefaultTextHighlight : FALSE;
- DefaultTextHColor : White;
- DefaultTextSColor : Black;
- ShadowTextMode : TRUE;
-
- ExtendTextHColor : Black;
- ExtendTextSColor : LightGray;
- ExtendTextColor : White;
-
- ShiftTextColor : White;
- ShiftTextSColor : Black;
-
- ZipDuration : 18
- );
-
- HERC_TG : TEGLConstants =
- {$IFDEF NoGr}
- (TEGLBackColor : white;
- {$ELSE}
- (TEGLBackColor : black;
- {$ENDIF}
- TEGLBorderColor : white;
- TEGLBackPattern : ($AA,$55,$AA,$55,$AA,$55,$AA,$55);
- TEGLBorderShow : TRUE;
- TEGLUserPattern : TRUE;
- TEGLFillStyle : Solidfill;
-
- ShadowColor : white;
- ShadowBorderColor : black;
- ShadowFillPattern : ($AA,$55,$AA,$55,$AA,$55,$AA,$55);
- ShadowUserPattern : FALSE;
- ShadowFillStyle : Solidfill;
-
- ShadowTextType : NIL;
- DefaultTextHighlight : FALSE;
- DefaultTextHColor : White;
- DefaultTextSColor : Black;
- ShadowTextMode : TRUE;
-
- ExtendTextHColor : Black;
- ExtendTextSColor : White;
- ExtendTextColor : Black;
-
- ShiftTextColor : White;
- ShiftTextSColor : Black;
-
- ZipDuration : 25
- );
-
- {*------------------------------------------------------------------------*
- | Integrated TEGL Easy Module |
- *------------------------------------------------------------------------*}
-
- Procedure ActiveButton(x,y: Word; s : String; p : CallProc);
- Function ColToX(Col : Integer) : Integer;
- Procedure ErrMess(x,y : Word; S : String);
- Procedure FitFrame(VAR x,y,width,height : Word);
- Procedure FrameFromIcon(ifs: ImageStkPtr; ms : MsClickPtr; x,y,x1,y1: Word);
- Procedure FrameText(VAR ifs : ImageStkPtr; Row,Col: Integer; s : String);
- Function GetMousey(ifs : ImageStkPtr): Word;
- Function GetYesNo(x,y : Word; S : String): Boolean;
- Procedure EasyTEGL;
- Procedure EasyOut;
- Function Quit(Frame:ImageStkPtr; MouseClickPos: MsClickPtr):Word;
- Procedure QuickFrame(VAR ifs : ImageStkPtr; x,y,width,height : Word);
- Procedure OutFrameTextXY(ifs : ImageStkPtr; x,y : Word; s : String);
- Procedure RestoreText;
- Function RowToY(Row : Integer) : Integer;
- Procedure SelectEasyText;
- Procedure SetEasyFont(p : Pointer);
-
- {*------------------------------------------------------------------------*
- | Shadowed Box routines |
- *------------------------------------------------------------------------*}
- Procedure SetShadowColor(bcolor:Word);
- Procedure SetShadowBorderColor(bcolor:Word);
- Procedure SetShadowFillPattern(backpattern:FillPatternType);
- Procedure SetShadowFillStyle(pattern:Word);
- Procedure ShadowBox(x,y,x1,y1 : Word);
- Procedure ShadowText(x,y,Color:Word; textstr:String);
- Procedure SetShadowTextType(texttype:Pointer);
- Procedure SetShadowTextShadow(Color:Word);
- Procedure SetShadowTextHighlight(Color:Word);
- Procedure ShadowTextHighlightOFF;
- Procedure SetShadowTextMode(ModeOnOff:boolean);
- Procedure ShadowBoxText(x,y,txtlen:Word; textstr:String);
- Procedure SetExtendTextHighlight(Color:word);
- Procedure SetExtendTextShadow(Color:word);
- Procedure SetExtendTextColor(Color:word);
- Procedure ExtendTextXY(x,y:Word; msg:String);
- Procedure ShiftTextXY(x,y:Word; msg:String);
-
- {*------------------------------------------------------------------------*
- | TEGL Initialization routines |
- *------------------------------------------------------------------------*}
- Procedure SetTEGLBorderShow(BorderShow:Boolean);
- Procedure SetTEGLBackColor(BackColor:Word);
- Procedure SetTEGLBorderColor(BorderColor:Word);
- Procedure SetTEGLFillPattern(backpattern:FillPatternType);
- Procedure SetTEGLFillStyle(pattern:Word);
- Procedure ClearTEGLScreen;
-
- {*------------------------------------------------------------------------*
- | Xorbox routines |
- *------------------------------------------------------------------------*}
- Procedure MoveBox(ax,ay,x,y,x1,y1 : Integer);
- Procedure ZipToBox(ax,ay,ax1,ay1,x,y,x1,y1 : Integer);
- Procedure ZipFromBox(ax,ay,ax1,ay1,x,y,x1,y1 : Integer);
-
- {*------------------------------------------------------------------------*
- | Explode and collapse |
- *------------------------------------------------------------------------*}
- Procedure ExplodeFromIconHide(Frame:ImageStkPtr; MouseClickPos: MsClickPtr; x,y,x1,y1:Word);
- Procedure ExplodeFromMsClick(Frame:ImageStkPtr; MouseClickPos: MsClickPtr; x,y,x1,y1:Word);
- Function CollapseToMsClick(fs:ImageStkPtr; MouseClickPos: MsClickPtr):Word;
- Function CollapseToIconShow(fs:ImageStkPtr; MouseClickPos: MsClickPtr):Word;
-
- {*------------------------------------------------------------------------*
- | Misc |
- *------------------------------------------------------------------------*}
- Procedure PressButton(fs:ImageStkPtr; ms:MsClickPtr);
- Procedure ReleaseButton(fs:ImageStkPtr; ms:MsClickPtr);
- Function VisualButtonPress(fs:ImageStkPtr; ms:MsClickPtr) : Boolean;
- Function CheckForMouseSelect(Frame:ImageStkPtr):MsClickPtr;
-
- Procedure PressSquareButton(fs:ImageStkPtr; ms:MsClickPtr);
- Procedure ReleaseSquareButton(fs:ImageStkPtr; ms:MsClickPtr);
- Function VisualSquareButtonPress(fs:ImageStkPtr; ms:MsClickPtr) : Boolean;
- Procedure DrawSquareButton(x1,y1,x2,y2:Word);
- Procedure DefineSquareButtonClick(fs:ImageStkPtr; x,y,x1,y1,rx,ry:Word; button:Pointer; EntryCallProc:callproc);
- Procedure ShiftText(x,y,c,s:Word; msg:String);
- Procedure DefineSquareButtonText(fs:ImageStkPtr; x,y,x1,y1,rx,ry:Word; msg:string; EntryCallProc:callproc);
- Procedure BevelBox(x,y,x1,y1,topcolor,botcolor,interior,thickness : Word);
- Procedure BevelBoxfs(fs:imagestkptr; x,y,x1,y1,topcolor,botcolor,interior,thickness : Word);
-
- Procedure DrawLongButton(x,y,ln : Word);
- Procedure PutUserButtonClick(fs:ImageStkPtr; x,y:Word; msg:String);
- Procedure DefineButtonClick(fs:ImageStkPtr; x,y:Word; button:Pointer; EntryCallProc:callproc);
- Procedure DefineLongButtonClick(fs:ImageStkPtr; x,y,ln : Word; msg:String; EntryCallProc:callproc);
- Procedure DefineUserButtonClick(fs:ImageStkPtr; x,y:Word; msg:String; EntryCallProc:callproc);
-
- Procedure Beep(tone,n,duration:Integer);
- Procedure SlideBeep(tone1,tone2,n:Integer);
- Procedure SoundSwitch(OnOff:Boolean);
-
- Procedure FlipAPage;
- Procedure FlipVPage;
- Procedure SetAPage(pagenum:Word);
- Procedure SetVPage(pagenum:Word);
- Function VideoPage : byte;
-
- Procedure OutTEGLTextXY(x,y : Integer; mystr : String);
-
- Function CRClickPress : Boolean;
- Function CRClickRelease : Boolean;
-
- procedure TEGLInit(videomodename:string; hugeminimum:longint);
- Procedure TEGLSupervisor;
-
-
- IMPLEMENTATION
-