home *** CD-ROM | disk | FTP | other *** search
- (* ----------------------------------------------------- *)
- (* ADWDEMO.PAS *)
- (* Demonstration zur Unit ActDWin: Ein Ascii-Viewer. *)
- (* (c) 1991 by R.Reichert & toolbox *)
- (* ----------------------------------------------------- *)
- PROGRAM DataWindowDemo;
-
- USES Dos, Stuff, MouKey,
- WinVSM, ActStWi, ActDWin;
-
- VAR
- ADW : ActiveDataWindowPtr;
- VSM : WExtVSMPtr;
- Ev : EventObj;
- i : BYTE;
- Answer : BYTE;
- Dir : DirStr;
- Name : NameStr;
- Ext : ExtStr;
- xl, yl : BYTE;
-
- PROCEDURE ShowMemAvail;
- BEGIN
- VSM^.WriteStr (70, 25, 15,
- LongIntToStr (MemAvail, 10));
- VSM^.WriteStr (60, 25, 15,
- IntToStr (Answer, 5));
- END;
-
- BEGIN
- IF ParamCount=0 THEN BEGIN
- WriteLn ('*** Fehler: Kein Parameter !');
- WriteLn;
- WriteLn ('Aufrufsyntax: ADWDemo Name');
- Write('Name=Dateiname des anzuschauenden Files.');
- WriteLn;
- Write ('Program abgebrochen.');
- Halt;
- END;
- FSplit (ParamStr (1), Dir, Name, Ext);
- VSM := New (WExtVSMPtr,
- Init (New (ScreenObjPtr, Init (0, 0))));
- ADW := New (ActiveDataWindowPtr, Init (80, 2000,
- 4200, VSM));
- IF (ADW<>NIL) THEN BEGIN
- Xl := VSM^.GetXLength; Yl := VSM^.GetYLength;
- VSM^.FillPart (1, 1, xl, 1, 7, ' ');
- VSM^.WriteStr (xl DIV 2 - 24, 1, 15,
- ' Demonstrationsprogramm zu'+
- ' ActiveDataWindow v2.0 ');
- VSM^.FillPart (1, 2, xl, 2, 15, '─');
- VSM^.FillPart (1, 3, xl, yl-2, $70, '░');
- VSM^.FillPart (1, yl-1, xl, yl-1, 15, '─');
- VSM^.WriteStr (xl DIV 2 - 17, yl, 15,
- ' (c) 1991 by R.Reichert & toolbox ');
- Mouse^.Show;
- ADW^.SetShowCurPos (FALSE);
- ADW^.SetTitles (' ASCII-Viewer v2.0 - File: '+
- UpString (Name+Ext)+' ', '');
- ADW^.SetIconTitle (UpString (Name+Ext));
- ADW^.SetNumber (1);
- ADW^.SetShadow (TRUE);
- ADW^.SetMinMax (1, 2, xl, Pred (yl));
- ADW^.SetMaxXY (1, 3, xl-2, yl-2);
- ADW^.SetXY (2, 3, xl-3, 2*yl DIV 3);
- ADW^.SetColors (15, 15, 0, 7);
- ADW^.SetIconXY (xl-20, yl-4);
- ADW^.SetSpaces (2, 2, 1, 1);
- ADW^.Open;
- ADW^.WriteStr ('Laden . . . bitte einen Augenblick '+
- 'Geduld. ');
- ADW^.LoadAscii (ParamStr (1), TRUE);
- IF ADW^.GetReturnCode=0 THEN BEGIN
- EvHand^.SetTakeOut (TRUE); Answer := 0;
- REPEAT
- EvHand^.WaitForEvent (EvAll, Ev);
- ADW^.CheckEvent (Ev);
- Answer := ADW^.GetReturnCode;
- IF Answer=ADWSwitchedIcon THEN
- ADW^.SetActive;
- ShowMemavail;
- UNTIL Answer=ClosedWin;
- EvHand^.SetTakeOut (FALSE);
- Mouse^.Hide;
- END ELSE BEGIN
- ADW^.WriteStr ('');
- ADW^.WriteStr ('*** Fehler: Datei konnte nicht '+
- 'geladen werden.');
- ADW^.WriteStr ('');
- ADW^.WriteStr ('');
- ADW^.WriteStr ('Program abgebrochen.');
- REPEAT UNTIL VSM^.KeyPressed;
- ADW^.Close;
- END;
- VSM^.ClrScr;
- Dispose (ADW, Done);
- Dispose (VSM, Done)
- END ELSE BEGIN
- Writeln ('*** Fehler: Objekt(e) konnte(n) nicht '+
- 'initialisiert werden.');
- Writeln;
- Write ('Programm abgebrochen.');
- Writeln;
- END;
- END.
- (* ----------------------------------------------------- *)
- (* Ende von ADWDEMO.PAS *)
- (* ----------------------------------------------------- *)