home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 September / Simtel20_Sept92.cdr / msdos / turbopas / tp4menu1.arc / PPS_USR.PAS < prev    next >
Pascal/Delphi Source File  |  1988-11-07  |  3KB  |  123 lines

  1. {
  2. Copyright (c) 1988 BittWare Computing, ALL RIGHTS RESERVED 
  3. }
  4. unit pps_usr;
  5. {$v-}
  6. interface
  7. uses
  8.      pps_glob,
  9.      menuvars,
  10.      menucode,
  11.      pps_init,
  12.      beepkey4,
  13.      crt,
  14.      inp_var;
  15.  
  16. procedure user1;
  17. procedure user2;
  18. procedure user3;
  19. procedure user4;
  20.  
  21. implementation
  22.  
  23. procedure user1;
  24. var
  25.      ta        :byte;
  26.      ts        :string[30];
  27. begin
  28. {open io window and write executing user procedure 1...}
  29.      IoList^.title := 'User Procedure #1...';
  30.      OpenIoWindow(IOList);
  31.      ta := TextAttr;
  32.      writeln('By the way, there is an "Auto Mode" variable in the data');
  33.      writeln('entry menu which determines if "confirm" pops up');
  34.      writeln('To Toggle: Go to Data-Entry Menu, select Auto and hit <Enter>');
  35.      writeln;
  36.      writeln('Your programs can use the global variables set in other menus...');
  37.      writeln;
  38.      write('    The current file selected = ');
  39.      TextColor(VarInpFg);
  40.      TextBackground(VarInpBg);
  41.      if flname <> '' then
  42.           writeln(flname)
  43.      else writeln('No File Currently Selected');
  44.      TextAttr := ta;
  45.      write('                   RealVar #1 = ');
  46.      TextColor(VarInpFg);
  47.      TextBackground(VarInpBg);
  48.      writeln(realvar1);
  49.      TextAttr := ta;
  50.      write('and when formatted for output = ');
  51.      TextColor(VarInpFg);
  52.      TextBackground(VarInpBg);
  53.      ts := Real2Str(RealVar1,10,2);
  54.      writeln(ts);
  55.      TextAttr := ta;
  56.      writeln;
  57.      writeln('Change Values in Data Entry, and come Back, Please!');
  58.      TextColor(VarInpFg + blink);
  59.      TextBackground(VarInpBg);
  60.      writeln;
  61.      write('Hit <Esc> to Continue');
  62.      TextAttr := ta;
  63.      InEsc;
  64.      CloseIoWindow(IOList);
  65. end;
  66.  
  67. procedure user2;
  68. var
  69.      NewString :string[5];
  70.      OldString :string[5];
  71.      w         :byte;
  72.      rc        :byte;
  73.      ta        :byte;
  74.  
  75. begin
  76. {open io window and write executing user procedure 1...}
  77.      IoList^.title := 'User Procedure #2...';
  78.      OpenIoWindow(IOList);
  79.      writeln('Your Programs can also enter vars from here');
  80.      writeln;
  81.      writeln('My procedure integer WAS = ',user2int);
  82.      write('My procedure needs an integer: ');
  83.  
  84. {Data Entry from menus is only one statement...
  85.      this is just an example of how it COULD be done}
  86.  
  87.      ta := TextAttr;
  88.      w := 5;
  89.      str(User2Int,OldString);
  90.      UnHideCurs;
  91.      TextColor(VarInpFg);
  92.      TextBackground(VarInpBg);
  93.      InputString(OldString,w,NewString,rc);
  94.      if rc = InputOk then begin
  95.           ConvertString(NewString,w,IntCode,rc,@User2Int);
  96.           if rc <> InputOk then begin
  97.                ErrorNum := InvalidInput;
  98.                ErrorMessage;
  99.           end;
  100.      end
  101.      else writeln('What?  No input?');
  102.      HideCurs;
  103.      TextAttr := ta;
  104.  
  105.      writeln;
  106.      writeln('My procedure integer NOW = ',user2int);
  107.      writeln;
  108.      writeln('Hit <Esc> to Continue');
  109.      InEsc;
  110.      CloseIoWindow(IOList);
  111. end;
  112.  
  113. procedure user3;
  114. begin
  115.      good_beep;
  116. end;
  117.  
  118. procedure user4;
  119. begin
  120.      bad_beep;
  121. end;
  122. end.
  123.