home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PROG_PAS / KEYCTRL.ZIP / DEMOKEYC.PAS < prev    next >
Pascal/Delphi Source File  |  1994-01-07  |  2KB  |  88 lines

  1. Program DemoKeyC;
  2. {$F+}
  3. uses objects,drivers,views,menus,app,
  4.      dialogs,editors,KeyCtrl,DKeyCtrl,CmKey;
  5.  
  6.  
  7. type TDemoKeyCtrlApp=object(tapplication)
  8.      constructor init;
  9.      procedure handleevent(var event:tevent); virtual;
  10.      procedure InitMenubar; virtual;
  11.      procedure InitStatusline;Virtual;
  12.      Procedure demo;
  13.      end;
  14.  
  15.  
  16. Procedure TDemoKeyCtrlApp.Initstatusline;
  17. var r:Trect;
  18. begin
  19.   getextent(r);
  20.   R.a.y:=r.b.y-1;
  21.   Statusline:=New(Pstatusline,Init(R,
  22.      Newstatusdef(0,$Ffff,StdStatusKeys(
  23.        NewStatusKey('~Alt-X~ Exit', kbAltX, cmQuit,
  24.        NewStatuskey('~F1~ Demo KeyCtrl',kbf1,cmdemo,
  25.   nil))),nil)));
  26. end;
  27.  
  28. procedure TDemoKeyCtrlapp.Demo;
  29. var PDemoDialog  :PkeyCtrlDialog;
  30.  
  31. begin
  32.   if wincount<WinMax then
  33.     begin
  34.       PDemodialog:=New(PKeyCtrldialog,init);
  35.       insertwindow(Pdemodialog);
  36.     end;
  37. end;
  38.  
  39.  
  40. procedure TDemoKeyCtrlapp.handleevent(var event:tevent);
  41.  
  42. begin
  43.   if event.what = evcommand then
  44.      if event.command=cmdemo then
  45.        begin
  46.          clearevent(event);
  47.          demo;
  48.        end;
  49.   inherited handleevent(event);
  50. end;
  51.  
  52.  
  53.  
  54. function StdDemoKeyCtrlMenuItems(Next: PMenuItem): PMenuItem;
  55. begin
  56.   StdDemoKeyCtrlMenuItems :=
  57.      newitem('~D~emo KeyCtrl','',kbnokey,cmdemo,hcnocontext,
  58.      newitem('~E~xit','Alt+X',kbaltx,cmquit,hcnocontext,
  59.      next));
  60. end;
  61.  
  62. Procedure TDemoKeyCtrlApp.initmenuBar;
  63. var r:trect;
  64.  
  65. begin
  66.  getextent(r);
  67.  r.b.y:=r.a.y+1;
  68.  menubar:=new(pmenubar,init(r,newmenu(
  69.    newsubmenu('~D~emo',hcnocontext,newmenu(
  70.        stdDemoKeyCtrlmenuitems(nil)),
  71.    nil))));
  72. end;
  73.  
  74. constructor TDemoKeyCtrlApp.init;
  75.  
  76. begin
  77.   inherited init;
  78. end;
  79.  
  80. var DemoKeyCtrl_app:TDemoKeyCtrlApp;
  81.  
  82.  
  83. begin
  84.   DemoKeyCtrl_app.init;
  85.   DemoKeyCtrl_app.run;
  86.   DemoKeyCtrl_app.done;
  87. end.
  88.