home *** CD-ROM | disk | FTP | other *** search
/ TopWare 18: Liquid / Image.iso / liquid / top1143 / gepackt.exe / BSPQTSW.EXE / ALPHATST.PAS next >
Encoding:
Pascal/Delphi Source File  |  1993-07-09  |  2.4 KB  |  92 lines

  1. (***************************************
  2. * WG-VISION 1.0   BEISPIELPROGRAMM     *
  3. ****************************************
  4. *                                      *
  5. * Umschalten von WG-VISION in den      *
  6. * Textmodus und wieder zurück          *
  7. *                                      *
  8. *--------------------------------------*
  9. * Achtung: Nur VESA !                  *
  10. ****************************************
  11. * (c) 1993 Dipl.Phys. Mathias Scholz   *
  12. ***************************************)
  13.  
  14. program AlphaTst;
  15.  
  16. uses WApp,
  17.      WDecl,
  18.      WViews,
  19.      WDlg,
  20.      WDriver,
  21.      WUtils,
  22.      WEvent,
  23.      crt;
  24.  
  25. const cmTextMode    = 101;
  26.       cmNewWindow   = 102;
  27.  
  28. type TApplication=object(TApp)
  29.       procedure InitMenuBar; virtual;
  30.       procedure HandleEvent; virtual;
  31.       procedure NewWindow;
  32.      end;
  33.  
  34. var MyApp:TApplication;
  35.  
  36. {Implementation TApplication}
  37.  
  38. procedure TApplication.InitMenuBar;
  39. begin
  40.   MainMenu('~A~uswahl',0);
  41.    SubMenu('~T~extmodus',cmTextMode,0,0,false,false);
  42.    SubMenu('~F~enster aufblenden',cmNewWindow,0,0,false,false);
  43.    NewLine;
  44.    SubMenu('E~x~it    <alt><x>',cmCloseApplication,0,45,false,false);
  45. end;
  46.  
  47. procedure TApplication.HandleEvent;
  48. var i:integer;
  49.     LfdPtr:PGroup;
  50. begin
  51.   TProgram.HandleEvent;
  52.   case Event.Command of
  53.    cmTextMode  : begin
  54.                    Mouse.HideMouse;
  55.                    Video.SetTextMode;
  56.                    TextColor(Yellow);
  57.                    gotoXY(10,3);write('Winkel    Sinus               Cosinus');
  58.                    TextColor(LightCyan);
  59.                    for i:=1 to 360 do
  60.                     begin
  61.                       gotoXY(10,5);write(i,'       ',sin(i*Pi/180),'   ',cos(i*Pi/180));
  62.                       delay(50);
  63.                     end;
  64.                    TextColor(LightRed);
  65.                    gotoXY(10,10);write('Bitte Taste drücken !');
  66.                    TextColor(White);
  67.                    repeat until keypressed;
  68.                    Video.ChangeGraficMode(M640x480);
  69.                    Draw;
  70.                    Mouse.ShowMouse;
  71.                  end;
  72.    cmNewWindow : NewWindow;
  73.   end; {case}
  74. end;
  75.  
  76. procedure TApplication.NewWindow;
  77. var R:TRect;
  78.     Window:PWindow;
  79. begin
  80.   R.Assign(60,80,440,280);
  81.   Window:=new(PWindow, Init(R,'Beispiel',winDouble+winPanel+winMenu+winKey));
  82.   InsertDesktop(Window);
  83. end;
  84.  
  85. {Hauptprogramm}
  86.  
  87. begin
  88.   MyApp.Init('Umschalten in den Alphamodus');
  89.   MyApp.Run;
  90.   MyApp.Done;
  91. END.
  92.