home *** CD-ROM | disk | FTP | other *** search
- uses
- crt,
- tpw60;
-
-
- var
- m,i,j,k,f,b,x:integer;
- msg:string[80];
- menu:menurec;
- curntpos,oldcurntpos:integer;
- done : boolean;
- ch:char;
-
- procedure fdemo;
- begin
- makewindow(4,6,6,25,attr(15,3),attr(15,3),1,0,0,0);
- titlewindow(1,attr(14,3),'[ Frame Style 1 ]');
- makewindow(6,10,6,25,attr(15,5),attr(15,5),2,0,0,0);
- titlewindow(2,attr(14,5),'[ Frame Style 2 ]');
- makewindow(8,14,6,25,attr(15,4),attr(15,4),3,0,0,0);
- titlewindow(3,attr(14,4),'[ Frame Style 3 ]');
- makewindow(10,18,6,25,attr(15,6),attr(15,6),4,0,0,0);
- titlewindow(1,attr(14,6),'[ Frame Style 4 ]');
- makewindow(12,22,6,25,attr(15,2),attr(15,2),5,0,0,0);
- titlewindow(3,attr(14,2),'[ Frame Style 5 ]');
- makewindow(14,26,6,25,attr(15,3),attr(15,3),6,0,0,0);
- titlewindow(1,attr(14,3),'[ Frame Style 6 ]');
- makewindow(16,30,6,25,attr(15,5),attr(15,5),7,0,0,0);
- titlewindow(2,attr(14,5),'[ Frame Style 7 ]');
- makewindow(18,34,6,25,attr(15,4),attr(15,4),8,0,0,0);
- titlewindow(3,attr(14,4),'[ Frame Style 8 ]');
- makewindow(6,44,3,30,attr(15,2),attr(0,2),2,attr(8,7),7,0);
- prtwindow(1,2,'Press and key to return...');
- ch := readkey;
- for x := 1 to 9 do
- begin
- removewindow;
- end;
- end;
-
- procedure tdemo;
- begin
- makewindow(13,5,10,70,attr(15,5),attr(15,5),2,attr(8,7),7,0);
- prtcwindow(5,'Titles may be placed in any of six different locations.');
- for x:=1 to 6 do
- begin
- str(x,msg);
- msg := '[ LOCATION '+MSG+' ]';
- titlewindow(x,attr(11,5),msg);
- delay(1000);
- end;
- makewindow(6,44,3,30,attr(15,2),attr(0,2),2,attr(8,7),7,0);
- prtwindow(1,2,'Press and key to return...');
- ch := readkey;
- removewindow;
- removewindow;
- end;
-
- procedure sdemo;
- begin
- makewindow(13,5,10,70,attr(15,5),attr(15,5),2,attr(8,7),7,0);
- prtcwindow(5,'The window itself can be presented in many');
- prtcwindow(6,'different ways. It can be flat...');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),1,0,0,0);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),1,0,0,0);
- delay(3000);
- removewindow;
- removewindow;
- clearwindow;
- prtcwindow(4,'it can have one of many types of shadow underneath');
- prtcwindow(6,'this is SOLID black - type 3 left and 4 right');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),2,0,3,0);
- prtcwindow(7,'Left Shadow');
- delay(2000);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),2,0,4,0);
- prtcwindow(7,'Right Shadow');
- delay(2000);
- removewindow;
- removewindow;
- clearwindow;
- prtcwindow(6,'this is SHADOW black - type 1 left and 2 right');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),2,8,1,0);
- prtcwindow(7,'Left Shadow');
- delay(2000);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),2,8,2,0);
- prtcwindow(7,'Right Shadow');
- delay(2000);
- removewindow;
- removewindow;
- clearwindow ;
- prtcwindow(6,'this is LT. HATCH - type 5 left and 6 right');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),2,attr(0,7),5,0);
- prtcwindow(7,'Left Shadow');
- delay(2000);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),2,attr(0,7),6,0);
- prtcwindow(7,'Right Shadow');
- delay(2000);
- removewindow;
- removewindow;
- clearwindow ;
- prtcwindow(6,'this is MED. HATCH - type 7 left and 8 right');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),2,attr(0,7),7,0);
- prtcwindow(7,'Left Shadow');
- delay(2000);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),2,attr(0,7),8,0);
- prtcwindow(7,'Right Shadow');
- delay(2000);
- removewindow;
- removewindow;
- clearwindow ;
- prtcwindow(6,'this is HEAVY HATCH - type 9 left and 10 right');
- delay(3000);
- makewindow(7,10,10,30,attr(15,3),attr(0,3),2,attr(0,7),9,0);
- prtcwindow(7,'Left Shadow');
- delay(2000);
- makewindow(7,45,10,30,attr(15,2),attr(0,2),2,attr(0,7),10,0);
- prtcwindow(7,'Right Shadow');
- delay(2000);
- removewindow;
- removewindow;
- clearwindow ;
- prtcwindow(3,'Any combination of attributes and types');
- prtcwindow(4,'can be used.');
- makewindow(6,44,3,30,attr(15,2),attr(0,2),2,attr(8,7),7,0);
- prtwindow(1,2,'Press and key to return...');
- ch := readkey;
- removewindow;
- removewindow;
- end;
-
- procedure edemo;
- begin
- makewindow(13,5,10,70,attr(15,5),attr(15,5),2,attr(8,7),7,0);
- prtcwindow(3,'Windows can be popped');
- prtcwindow(4,'onto the screen.');
- delay(2000);
- makewindow(2,2,15,60,attr(0,2),attr(14,2),2,0,0,0);
- delay(2000);
- makewindow(13,10,10,60,attr(1,3),attr(15,3),3,0,0,0);
- delay(2000);
- makewindow(7,33,10,45,attr(14,5),attr(14,5),1,0,0,0);
- delay(2000);
- delay(3000);
- for x := 1 to 3 do
- begin
- removewindow;
- end;
- clearwindow;
- prtcwindow(3,'Windows can be zoomed');
- prtcwindow(4,'onto the screen.');
- delay(2000);
- makewindow(2,2,15,60,attr(0,2),attr(14,2),2,0,0,1);
- delay(2000);
- makewindow(13,10,10,60,attr(1,3),attr(15,3),3,0,0,1);
- delay(2000);
- makewindow(7,33,10,45,attr(14,5),attr(14,5),1,0,0,1);
- delay(2000);
- makewindow(7,10,12,63,attr(15,4),attr(14,4),2,0,2,1);
- prtcwindow(5,'HOW ABOUT THAT !!!');
- delay(3000);
- for x := 1 to 4 do
- begin
- removewindow;
- end;
- makewindow(6,44,3,30,attr(15,2),attr(0,2),2,attr(8,7),7,0);
- prtwindow(1,2,'Press and key to return...');
- ch := readkey;
- removewindow;
- removewindow;
- end;
-
- procedure flhelp;
- begin
- makewindow(14,10,9,55,attr(0,2),attr(0,2),2,attr(8,7),7,1);
- titlewindow(2,attr(14,2),'[ FIRST LETTER ]');
- prtwindow(1,2,'To activate First Letter control you must set two');
- prtwindow(2,2,'variables. FLOn must be set to true and you can');
- prtwindow(3,2,'set FLattr to the desired color you wish. Thats');
- prtwindow(4,2,'all there is to it. Just be sure all strings begin');
- prtwindow(5,2,'with a different letter.');
- prtwindow(7,2,'Press enter to return...');
- ch := readkey;
- removewindow;
- end;
-
- procedure barhelp;
- begin
- makewindow(14,10,9,55,attr(0,2),attr(0,2),2,attr(8,7),7,1);
- titlewindow(2,attr(14,2),'[ MENUBARS ]');
- prtwindow(1,2,'There are currently four menu bar types:');
- prtwindow(2,2,' 0 - No visible bar 1 - Full width bar');
- prtwindow(3,2,' 2 - String width bar 3 - Pointer');
- prtwindow(4,2,'You control what type is active by setting BarType');
- prtwindow(5,2,'equal to the type desired.');
- prtwindow(7,2,'Press enter to return...');
- ch := readkey;
- removewindow;
- end;
-
- procedure generalhelp;
- begin
- makewindow(14,10,9,55,attr(0,2),attr(0,2),2,attr(8,7),7,1);
- titlewindow(2,attr(14,2),'[ GENERAL ]');
- prtwindow(1,2,'Remember MakeMenu is only a procedure executed in a');
- prtwindow(2,2,'predefined window so all window effects can be used');
- prtwindow(3,2,'to enhance your menu. Including border and shadow,');
- prtwindow(4,2,'as well as growing and all various color attribute');
- prtwindow(5,2,'combinations. The choices are almost endless!');
- prtwindow(7,2,'Press enter to return...');
- ch := readkey;
- removewindow;
- end;
-
- procedure mdemo;
- begin
- makewindow(6,50,6,17,attr(14,5),attr(14,5),2,attr(8,7),7,0);
- titlewindow(2,attr(15,5),'[ MENUS ]');
- done := false;
- with menu do
- begin
- oldcurntpos := curntpos;
- curntpos := 0;
- while not done do
- begin
- item[1] := 'First Letter';
- item[2] := 'Menu Bars ';
- item[3] := 'General ';
- item[4] := 'Return ';
- itemcount := 4;
- startpos := 1;
- hlattr := attr(0,7);
- flattr := attr(15,5);
- flon := true;
- bartype := 1;
- makemenu(menu);
- case curntpos of
- 1 : flhelp;
- 2 : barhelp;
- 3 : generalhelp;
- else
- removewindow;
- curntpos := oldcurntpos;
- done := true;
- end;
- end;
- done := false;
- end;
- end;
-
-
- begin
- textmode(1);
- cursorchange(hidecursor,oldcursor);
- randomize;
- TPWborder(7);
- tpwfill(1,1,25,40,' ',attr(0,7));
-
- makewindow(2,4,7,15,attr(0,2),attr(10,2),2,attr(8,0),7,1);
- tpwprint(5,9,'T',attr(15,2));
- tpwprint(5,10,'URBO',attr(10,2));
- delay(2000);
- makewindow(7,10,7,15,attr(15,4),attr(12,4),2,attr(8,0),7,1);
- tpwprint(10,15,'P',attr(15,4));
- tpwprint(10,16,'ASCAL',attr(12,4));
- delay(2000);
- makewindow(12,16,7,15,attr(0,3),attr(11,3),2,attr(8,0),7,1);
- tpwprint(15,20,'W',attr(15,3));
- tpwprint(15,21,'INDOWS',attr(11,3));
- delay(2000);
- makewindow(17,22,7,15,attr(15,1),attr(9,1),2,attr(8,0),7,1);
- prtcwindow(3,'6.0');
- delay(4000);
- removewindow;
- delay(1000);
- removewindow;
- delay(1000);
- removewindow;
- delay(1000);
- removewindow;
- textmode(3);
- cursorchange(hidecursor,oldcursor);
- randomize;
- tpwborder(1);
- tpwfill(1,1,25,80,' ',attr(7,1));
- makewindow(4,15,10,30,attr(4,3),attr(4,3),4,attr(8,0),1,1);
- makewindow(3,36,13,40,attr(15,2),attr(15,2),3,attr(8,0),1,1);
- makewindow(9,10,13,40,attr(0,5),attr(0,5),2,attr(8,0),1,1);
- makewindow(12,42,11,36,attr(3,4),attr(3,4),1,attr(8,0),1,1);
- makewindow(3,5,7,40,attr(0,7),attr(1,7),2,attr(8,0),1,1);
- prtcwindow(3,'Presenting...');
- delay(4000);
- makewindow(8,20,7,40,attr(0,7),attr(1,7),2,attr(8,0),1,1);
- prtcwindow(1,'T P W');
- prtcwindow(2,'6.0');
- prtcwindow(4,'Windowing Routines for the');
- prtcwindow(5,'Borland Turbo PASCAL Ver. 4 Compiler');
- delay(3000);
- makewindow(17,55,7,24,attr(0,2),attr(10,2),1,attr(8,0),1,1);
- prtwindow(1,2,'By:');
- prtcwindow(3,'Rick Fothergill');
- prtcwindow(4,'141 Oak Hill Road');
- prtcwindow(5,'Pittsfield, MA 01201');
- delay(4000);
- for x := 1 to 7 do
- begin
- removewindow;
- end;
- tpwfill(1,1,25,80,' ',attr(0,7));
- tpwborder(7);
- done := false;
- makebox(2,40,3,35,attr(11,4),attr(12,4),3,0,0,0);
- tpwprintc(3,41,75,'TPW60 Demo',attr(15,4));
- makewindow(3,5,8,15,attr(15,1),attr(15,1),2,ATTR(8,7),7,0);
- titlewindow(2,attr(15,1),'[ MAIN MENU ]');
- with menu do
- begin
- curntpos := 0;
- while not done do
- begin
- item[1] := 'Frames ';
- item[2] := 'Titles ';
- item[3] := 'Shadows';
- item[4] := 'Effects';
- item[5] := 'Menus ';
- item[6] := 'Quit ';
- itemcount := 6;
- startpos := 1;
- hlattr := attr(15,1);
- flattr := attr(14,1);
- flon := true;
- bartype := 3;
- makemenu(menu);
- case curntpos of
- 1 : fdemo;
- 2 : tdemo;
- 3 : sdemo;
- 4 : edemo;
- 5 : mdemo;
- else
- removewindow;
- curntpos := oldcurntpos;
- tpwborder(1);
- tpwfill(1,1,43,80,' ',attr(15,1));
- makewindow(9,16,8,52,attr(0,7),attr(1,7),2,0,0,0);
- prtcwindow(3,'T P W');
- prtcwindow(4,'6.0');
- delay(3000);
- removewindow;
- done := true;
- end;
- end;
- end;
- cursorchange(oldcursor,hidecursor);
- tpwborder(0);
- clrscr;
- end.