home *** CD-ROM | disk | FTP | other *** search
/ TestDrive Super Store 2.3 / TESTDRIVE_2.ISO / realizer / formdev / modifier.rlz < prev    next >
Encoding:
Text File  |  1992-09-30  |  8.0 KB  |  226 lines

  1. '***********************************************************************
  2. '    FormDev: Modifier.RLZ
  3. '
  4. '    Copyright ⌐ 1991-1992 Computer Associates International, Inc.
  5. '    All rights reserved.
  6. '
  7. '***********************************************************************
  8.  
  9. PROC AIModifiers(type)
  10.     SELECT CASE type
  11.         CASE _OptionButton, _CheckBox
  12.             ModifCBOB(type)
  13.         CASE _Chart
  14.             ModifChart
  15.         CASE _TextBox
  16.             ModifTextBox
  17.         CASE _ListBox, _ComboBox, _DropDownList, _DropDownCombo
  18.             ModifListBox(type)
  19.         CASE ELSE
  20.             INPUT "Options not available for selected item type.", "FormDev";
  21.     END SELECT
  22. END PROC
  23.  
  24. PROC ModifCBOB(type)
  25.     LOCAL group, initstate, notify
  26.  
  27.     initstate = modvals[4] mod 2
  28.     notify = Bool(bitand(modvals[4], 2))
  29.     group = modvals[4]\4
  30.     FormNew(FormQUnique; Sprint("Initialize &", IF type=_CheckBox THEN "Check Box" ELSE "Option Button"), _Title)
  31.     FormControl(_Size; 5 pct, _Center, 30 pct, 55 pct)
  32.     FormSetObject(10, _CaptionLeft, "Group:", 25 pct, 7 pct)
  33.     FormSetObject(20, _TextBox, sprint("P(0)", group), 53 pct, 5 pct, 20 pct, 13 pct)
  34.     FormSetObject(30, _GroupBox, "Initial state", _Center, 23 pct, 70 pct, 38 pct)
  35.     FormSetObject(40, _OptionButton, "On", _Center, 35 pct; initstate)
  36.     FormSetObject(50, _OptionButton, "Off", _Center, 48 pct; Not(initstate))
  37.     FormSetObject(60, _CheckBox, "Notify", _Center, 68 pct; notify)
  38.     FormSetObject(1, _DefButton, "OK", _Center, _Bottom)
  39.     LOOP
  40.         IF FormWait = 2 THEN
  41.             EXIT LOOP
  42.         END IF
  43.         group = StrToNum(FormQStr(20))
  44.         IF 1 <= group AND group <= 32767 THEN
  45.             modvals[4] = group*4 + FormQNum(60)*2 + FormQNum(40)
  46.             EXIT LOOP
  47.         END IF
  48.         INPUT "Group must be between 1 and 32767.", "FormDev";
  49.     END LOOP
  50.     FormControl(_Close)
  51. END PROC
  52.  
  53. PROC ModifTextBox
  54.     LOCAL noborder, multiline, notify
  55.  
  56.     noborder = modvals[3] mod 2
  57.     multiline = Bool(bitand(modvals[3] ,2))
  58.     notify = modvals[3]\4
  59.     FormNew(FormQUnique; "Initialize Text Box", _Title)
  60.     FormControl(_Size; 5 pct, _Center, 30 pct, 50 pct)
  61.     FormSetObject(20, _CheckBox,"Border", 25 pct, 5 pct; Not(noborder))
  62.     FormSetObject(40, _OptionButton,"Single line", 25 pct, 24 pct; Not(multiline))
  63.     FormSetObject(50, _OptionButton,"Multiple lines", 25 pct, 37 pct; multiline)
  64.     FormSetObject(60, _CheckBox, "Notify", 25 pct, 57 pct; notify)
  65.     FormSetObject(1,_DefButton, "OK", _Center, _Bottom)
  66.     IF FormWait <> 2 THEN
  67.         modvals[3] = FormQNum(60)*4 + FormQNum(50)*2 + NOT(FormQNum(20))
  68.     END IF
  69.     FormControl(_Close)
  70. END PROC
  71.  
  72. PROC ModifChart
  73.     LOCAL    panes
  74.  
  75.     FormNew(FormQUnique; "Initialize Chart", _Title)
  76.     FormControl(_Size; 5 pct, _Center, 40 pct, 30 pct)
  77.     FormSetObject(10, _CaptionCenter, "Number of panes in the chart", _Center, 10 pct)
  78.     FormSetObject(20, _TextBox, Sprint("P(0)", modvals[6]), _Center, 40 pct, 40 pct, _Default)
  79.     FormSetObject(1, _DefButton, "OK", _Left, _Bottom)
  80.     FormSetObject(2, _Button, "Cancel", _Right, _Bottom)
  81.     LOOP
  82.         IF FormWait = 1 THEN
  83.             panes = StrToNum(FormQStr(20))
  84.             IF panes < 1 OR panes > 25 THEN
  85.                 INPUT "Number of panes must be between 1 and 25.", "FormDev";
  86.                 FormSetFoc(20)
  87.             ELSE
  88.                 modvals[6] = panes
  89.                 EXIT LOOP
  90.             END IF
  91.         ELSE
  92.             EXIT LOOP
  93.         END IF
  94.     END LOOP
  95.     FormControl(_Close)
  96. END PROC
  97.  
  98. PROC ModifListBox(type)
  99.     LOCAL fdModifListBox, sorted, notify, initvals
  100.  
  101.     sorted = modvals[5] mod 2
  102.     notify = Bool(bitand(modvals[5], 2))
  103.     initvals = modvals[5]\4
  104.     fdModifListBox = FormQUnique
  105.     FormNew(fdModifListBox; "Contents of List Box", _Title)
  106.     FormControl(_Size; 5 pct, _Center, 30 pct, 60 pct)
  107.     FormSetObject(40, _OptionButton, "Directory list", 20 pct, 3 pct; _Notify, initvals = _ListFiles)
  108.     FormSetObject(50, _OptionButton, "Variable list", 20 pct, 14 pct; _Notify, initvals = _ListVars)
  109.     FormSetObject(150, _OptionButton, "Family list", 20 pct, 25 pct; _Notify, initvals = _ListFams)
  110.     FormSetObject(70, _OptionButton, "Font list", 20 pct, 36 pct; _Notify, initvals = _ListFonts)
  111.     FormSetObject(75, _OptionButton, "Font size list", 20 pct, 47 pct; _Notify, initvals = _ListFontSizes)
  112.     FormSetObject(60, _OptionButton, "Text", 20 pct, 58 pct; _Notify, initvals = 15)
  113.     FormSetColor(_Field; _Black)
  114.     FormSetObject(99, _GroupBox, "", 20 pct, 70 pct, 60 pct, 1 pct)
  115.     FormSetColor(_Field; _White)
  116.     IF type <> _ListBox THEN
  117.         FormSetObject(20, _CheckBox, "Notify", 60 pct, 73 pct; notify)
  118.         FormSetObject(10, _CheckBox, "Sorted", 15 pct, 73 pct; sorted)
  119.     ELSE
  120.         FormSetObject(10, _CheckBox, "Sorted", _Center, 73 pct; sorted)
  121.     END IF
  122.     FormSetObject(95, _Button, "More...",_Left, _Bottom)
  123.     IF initvals = _ListFams OR initvals = _ListFonts THEN
  124.         FormModifyObject(95, _Gray)
  125.     END IF
  126.     FormSetObject(1, _DefButton, "OK", _Right, _Bottom)
  127.     LOOP
  128.         SELECT CASE FormWait
  129.             CASE 1    'OK
  130.                 EXIT LOOP
  131.             CASE 2      'Cancel
  132.                 FormControl(_Close)
  133.                 EXIT PROC
  134.             CASE 40, 50, 75, 60
  135.                 FormModifyObject(95, _Normal)
  136.             CASE 150, 70
  137.                 FormModifyObject(95, _Gray)
  138.             CASE 95     'More...
  139.                 IF FormQNum(40) THEN
  140.                     ModifLBFiles
  141.                 ELSEIF FormQNum(50) THEN
  142.                     ModifLBVars
  143.                 ELSEIF FormQNum(75) THEN
  144.                     ModifLBFontSizes
  145.                 ELSEIF FormQNum(60) THEN
  146.                     ModifLBText
  147.                 END IF
  148.         END SELECT
  149.     END LOOP
  150.     If FormQNum(40) THEN 
  151.         initvals = _ListFiles
  152.     ELSEIF FormQNum(50) THEN 
  153.         initvals = _ListVars
  154.     ELSEIF FormQNum(150) THEN 
  155.         initvals = _ListFams
  156.     ELSEIF FormQNum(70) THEN 
  157.         initvals = _ListFonts
  158.     ELSEIF FormQNum(75) THEN 
  159.         initvals = _ListFontSizes
  160.     ELSE 
  161.         initvals = 15
  162.     END IF
  163.     notify = IF type <> _ListBox THEN FormQNum(20) ELSE 0
  164.     sorted = FormQNum(10)
  165.     modvals[5] = initvals*4 + notify*2 + sorted
  166.     FormControl(_Close)
  167. END PROC
  168.  
  169. PROC ModifLBFiles
  170.     FormNew(FormQUnique; "List Files", _Title)
  171.     FormControl(_Size; 20 pct, _Center, 25 pct, 40 pct)
  172.     FormSetObject(320, _CheckBox, "Files", 20 pct, 5 pct; bitand(modvals[1], 2) = 0)
  173.     FormSetObject(330, _CheckBox, "Directories", 20 pct, 25 pct; bitand(modvals[1], 8) <> 0)
  174.     FormSetObject(340, _CheckBox, "Drives", 20 pct, 45 pct; bitand(modvals[1], 4) <> 0)
  175.     FormSetObject(1, _DefButton, "OK", _Center, _Bottom)
  176.     IF FormWait <> 2 THEN
  177.         modvals[1] = (Not(FormQNum(320)))*2 + FormQNum(330)*8 + FormQNum(340)*4
  178.     END IF
  179.     FormControl(_Close)
  180.     FormSelect(fdModifListBox)
  181. END PROC
  182.  
  183. PROC ModifLBVars
  184.     FormNew(FormQUnique; "List Variables", _Title)
  185.     FormControl(_Size; 20 pct, _Center, 30 pct, 40 pct)
  186.     FormSetObject(410, _CheckBox, "Real", 10 pct, 10 pct; bitand(modvals[2], _Real) <> 0)
  187.     FormSetObject(420, _CheckBox, "Alpha", 10 pct, 30 pct; bitand(modvals[2], _Alpha) <> 0)
  188.     FormSetObject(430, _CheckBox, "Date-Time", 10 pct, 50 pct; bitand(modvals[2], _DateTime) <> 0)
  189.     FormSetObject(440, _CheckBox, "Array", 55 pct, 10 pct; bitand(modvals[2], _Array) <> 0)
  190.     FormSetObject(450, _CheckBox, "Scalar", 55 pct, 30 pct; bitand(modvals[2], _Scalar) <> 0)
  191.     FormSetObject(1, _DefButton, "OK", _Center, _Bottom)
  192.     IF FormWait <> 2 THEN
  193.         modvals[2] = FormQNum(410)*_Real + FormQNum(420)*_Alpha + FormQNum(430)*_DateTime + FormQNum(440)*_Array + FormQNum(450)*_Scalar
  194.     END IF
  195.     FormControl(_Close)
  196.     FormSelect(fdModifListBox)
  197. END PROC
  198.  
  199. PROC ModifLBFontSizes
  200.     FormNew(FormQUnique; "List Font Sizes", _Title)
  201.     FormControl(_Size; 20 pct, _Center, 50 pct, 30 pct)
  202.     FormSetObject(510, _CaptionCenter, "List the sizes for which font?", _Center,5 pct)
  203.     FormSetObject(520, _TextBox, modstrs[1], _Center, 30 pct, 60 pct, _Default)
  204.     FormSetObject(1, _DefButton, "OK", _Left, _Bottom)
  205.     FormSetObject(2, _Button, "Cancel", _Right, _Bottom)
  206.     IF FormWait <> 2 THEN
  207.         modstrs[1] = FormQStr(520)
  208.     END IF
  209.     FormControl(_Close)
  210.     FormSelect(fdModifListBox)
  211. END PROC
  212.  
  213. PROC ModifLBText
  214.     FormNew(FormQUnique; "List Box Text", _Title)
  215.     FormControl(_Size; 20 pct, _Center, 50 pct, 30 pct)
  216.     FormSetObject(610, _CaptionCenter, "List of strings for list box", _Center,5 pct)
  217.     FormSetObject(620, _TextBox, modstrs[2], _Center, 30 pct, 90 pct, _Default)
  218.     FormSetObject(1, _DefButton, "OK", _Left, _Bottom)
  219.     FormSetObject(2, _Button, "Cancel", _Right, _Bottom)
  220.     IF FormWait <> 2 THEN
  221.         modstrs[2] = FormQStr(620)
  222.     END IF
  223.     FormControl(_Close)
  224.     FormSelect(fdModifListBox)
  225. END PROC
  226.