home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
- PRODUCT : Turbo Pascal NUMBER : 496
- VERSION : 6.0
- OS : Dos
- DATE : May 13, 1992 PAGE : 1/4
-
- TITLE : Turbo Vision, 132 Column Mode
-
-
-
-
- program TV132;
-
- { this program shows how to put a Turbo Vision application in
- 132 column mode. it is written specifically for an ATI VGA
- card but can be modified for other cards. also your mouse
- drive must be able to support 132 columns. }
-
- {$X+}
- uses
- objects, drivers, views, app, dialogs , menus, dos;
- const
- cm_DoIt = 100;
-
- type
- PMyApp = ^TMyApp;
- TMyApp = object(TApplication)
- procedure InitMenuBar; virtual;
- procedure InitScreen; virtual;
- procedure HandleEvent(var Event: TEvent); virtual;
- procedure CMDoIt;
- end;
-
- PMyDialog = ^TMyDialog;
- TMyDialog = object(TDialog)
- procedure InitFrame; virtual;
- procedure HandleEvent(var Event: TEvent); virtual;
- end;
-
- PMyFrame = ^TMyFrame;
- TMyFrame = object(TFrame)
- procedure Draw; virtual;
- end;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PRODUCT : Turbo Pascal NUMBER : 496
- VERSION : 6.0
- OS : Dos
- DATE : May 13, 1992 PAGE : 2/4
-
- TITLE : Turbo Vision, 132 Column Mode
-
-
-
-
- procedure TMyFrame.Draw;
- begin
- end;
-
- procedure TMyDialog.InitFrame;
- var
- R: TRect;
- begin
- TDialog.InitFrame;
- (*
- R.Assign(0, 0, Size.X, Size.Y);
- Frame := new(PMyFrame, init(R));
- *)
- end;
-
- procedure TMyApp.CMDoIt;
- var
- D: PMyDialog;
- ILine : PInputLine;
- R: TRect;
- begin
- R.Assign(5, 5, 25, 12);
- new(D, init(R, 'Do It'));
- D^.SetState(sfShadow, false);
- R.Assign(1, 1, 19, 2);
- new(ILine, init(R, 20));
- R.Assign(1, 3, 19, 4);
- D^.Insert(Iline);
- D^.Insert(new(PInputline, init(R, 20)));
- R.Assign(1, 5, 11, 7);
- D^.Insert(new(PButton, Init(R, '~O~k', cmOk, bfDefault)));
- Iline^.Select;
- Desktop^.ExecView(D);
- end;
-
- procedure TMyDialog.HandleEvent(var Event: TEvent);
- begin
- if Event.What = evKeyDown then
- if Event.KeyCode = kbEnter then
- Event.KeyCode := kbTab;
- TDialog.HandleEvent(Event);
- end;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PRODUCT : Turbo Pascal NUMBER : 496
- VERSION : 6.0
- OS : Dos
- DATE : May 13, 1992 PAGE : 3/4
-
- TITLE : Turbo Vision, 132 Column Mode
-
-
-
-
- procedure TMyApp.InitMenuBar;
- var R:TRect;
- begin
- GetExtent(R);
- R.B.Y := R.A.Y + 1;
- MenuBar := New(PMenuBar, Init(R, NewMenu(
- NewItem('~D~o it', '', kbNoKey, cm_DoIt, hcNoContext,
- nil)
- )));
- end;
-
- procedure TMyApp.HandleEvent(var Event: TEvent);
- begin
- TApplication.HandleEvent(Event);
- if Event.What = evCommand then
- if Event.Command = cm_DoIt then
- begin
- CMDoIt;
- end;
- end;
-
- procedure TMyApp.InitScreen;
- { this procedure is specific to an ATI VGA Card, you may need to
- modify if you have a different video card. }
- begin
- TApplication.InitScreen;
- asm
- mov ah, 0
- mov al, 23H
- int 10H
- end;
- ScreenMode := $23;
- ScreenHeight := 25;
- ScreenWidth := 132;
- end;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PRODUCT : Turbo Pascal NUMBER : 496
- VERSION : 6.0
- OS : Dos
- DATE : May 13, 1992 PAGE : 4/4
-
- TITLE : Turbo Vision, 132 Column Mode
-
-
-
-
- var
- MyApp: TMyApp;
-
- begin
- MyApp.Init;
- MyApp.Run;
- MyApp.Done;
- end.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-