home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d540 / browser.lha / Browser / BrowserII_Src.LZH / Menus.c < prev    next >
C/C++ Source or Header  |  1991-06-21  |  24KB  |  1,767 lines

  1. /*
  2.  *    Menus.c - Copyright © 1991 by S.R. & P.C.
  3.  *
  4.  *    Created:    18 Feb 1991  10:12:59
  5.  *    Modified:    21 Jun 1991  17:38:38
  6.  *
  7.  *    Make>> make
  8.  */
  9.  
  10. #include "Global.h"
  11. #include "proto/Menus.h"
  12.  
  13.  
  14. static struct IntuiText IText37 = {
  15.     0,1,JAM1,
  16.     2,1,
  17.     NULL,
  18.     (UBYTE *)"Delete",
  19.     NULL
  20. };
  21.  
  22. static struct MenuItem MenuItem37 = {
  23.     NULL,
  24.     0,54,
  25.     102,9,
  26.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  27.     0,
  28.     (APTR)&IText37,
  29.     NULL,
  30.     'D',
  31.     NULL,
  32.     MENUNULL
  33. };
  34.  
  35. static struct IntuiText IText36 = {
  36.     0,1,JAM1,
  37.     2,1,
  38.     NULL,
  39.     (UBYTE *)"Set Protect",
  40.     NULL
  41. };
  42.  
  43. static struct MenuItem MenuItem36 = {
  44.     &MenuItem37,
  45.     0,45,
  46.     102,9,
  47.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  48.     0,
  49.     (APTR)&IText36,
  50.     NULL,
  51.     NULL,
  52.     NULL,
  53.     MENUNULL
  54. };
  55.  
  56. static struct IntuiText IText35 = {
  57.     0,1,JAM1,
  58.     2,1,
  59.     NULL,
  60.     (UBYTE *)"Set Comment",
  61.     NULL
  62. };
  63.  
  64. static struct MenuItem MenuItem35 = {
  65.     &MenuItem36,
  66.     0,36,
  67.     102,9,
  68.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  69.     0,
  70.     (APTR)&IText35,
  71.     NULL,
  72.     NULL,
  73.     NULL,
  74.     MENUNULL
  75. };
  76.  
  77. static struct IntuiText IText34 = {
  78.     0,1,JAM1,
  79.     2,1,
  80.     NULL,
  81.     (UBYTE *)"Touch",
  82.     NULL
  83. };
  84.  
  85. static struct MenuItem MenuItem34 = {
  86.     &MenuItem35,
  87.     0,27,
  88.     102,9,
  89.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  90.     0,
  91.     (APTR)&IText34,
  92.     NULL,
  93.     NULL,
  94.     NULL,
  95.     MENUNULL
  96. };
  97.  
  98. static struct IntuiText IText33 = {
  99.     0,1,JAM1,
  100.     2,1,
  101.     NULL,
  102.     (UBYTE *)"Duplicate",
  103.     NULL
  104. };
  105.  
  106. static struct MenuItem MenuItem33 = {
  107.     &MenuItem34,
  108.     0,18,
  109.     102,9,
  110.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  111.     0,
  112.     (APTR)&IText33,
  113.     NULL,
  114.     NULL,
  115.     NULL,
  116.     MENUNULL
  117. };
  118.  
  119. static struct IntuiText IText32 = {
  120.     0,1,JAM1,
  121.     2,1,
  122.     NULL,
  123.     (UBYTE *)"MakeDir",
  124.     NULL
  125. };
  126.  
  127. static struct MenuItem MenuItem32 = {
  128.     &MenuItem33,
  129.     0,9,
  130.     102,9,
  131.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  132.     0,
  133.     (APTR)&IText32,
  134.     NULL,
  135.     'M',
  136.     NULL,
  137.     MENUNULL
  138. };
  139.  
  140. static struct IntuiText IText31 = {
  141.     0,1,JAM1,
  142.     2,1,
  143.     NULL,
  144.     (UBYTE *)"Rename",
  145.     NULL
  146. };
  147.  
  148. static struct MenuItem MenuItem31 = {
  149.     &MenuItem32,
  150.     0,0,
  151.     102,9,
  152.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  153.     0,
  154.     (APTR)&IText31,
  155.     NULL,
  156.     'R',
  157.     NULL,
  158.     MENUNULL
  159. };
  160.  
  161. static struct Menu Menu3 = {
  162.     NULL,
  163.     144,0,
  164.     68,0,
  165.     MENUENABLED,
  166.     "Actions",
  167.     &MenuItem31
  168. };
  169.  
  170.  
  171. /*****************************************************************************/
  172.  
  173.  
  174. static struct IntuiText IText29 = {
  175.     0,1,JAM1,
  176.     2,1,
  177.     NULL,
  178.     (UBYTE *)"Affect All",
  179.     NULL
  180. };
  181.  
  182. static struct MenuItem MenuItem29 = {
  183.     NULL,
  184.     0,72,
  185.     136,9,
  186.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  187.     0,
  188.     (APTR)&IText29,
  189.     NULL,
  190.     NULL,
  191.     NULL,
  192.     MENUNULL
  193. };
  194.  
  195. static struct IntuiText IText285 = {
  196.     0,1,JAM1,
  197.     21,1,
  198.     NULL,
  199.     (UBYTE *)"Type",
  200.     NULL
  201. };
  202.  
  203. static struct MenuItem SubItem285 = {
  204.     NULL,
  205.     113,36,
  206.     55,9,
  207.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  208.     0,
  209.     (APTR)&IText285,
  210.     NULL,
  211.     NULL,
  212.     NULL,
  213.     MENUNULL
  214. };
  215.  
  216. static struct IntuiText IText284 = {
  217.     0,1,JAM1,
  218.     21,1,
  219.     NULL,
  220.     (UBYTE *)"Key",
  221.     NULL
  222. };
  223.  
  224. static struct MenuItem SubItem284 = {
  225.     &SubItem285,
  226.     113,27,
  227.     55,9,
  228.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  229.     7,
  230.     (APTR)&IText284,
  231.     NULL,
  232.     NULL,
  233.     NULL,
  234.     MENUNULL
  235. };
  236.  
  237. static struct IntuiText IText283 = {
  238.     0,1,JAM1,
  239.     21,1,
  240.     NULL,
  241.     (UBYTE *)"Size",
  242.     NULL
  243. };
  244.  
  245. static struct MenuItem SubItem283 = {
  246.     &SubItem284,
  247.     113,18,
  248.     55,9,
  249.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  250.     11,
  251.     (APTR)&IText283,
  252.     NULL,
  253.     NULL,
  254.     NULL,
  255.     MENUNULL
  256. };
  257.  
  258. static struct IntuiText IText282 = {
  259.     0,1,JAM1,
  260.     21,1,
  261.     NULL,
  262.     (UBYTE *)"Date",
  263.     NULL
  264. };
  265.  
  266. static struct MenuItem SubItem282 = {
  267.     &SubItem283,
  268.     113,9,
  269.     55,9,
  270.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  271.     13,
  272.     (APTR)&IText282,
  273.     NULL,
  274.     NULL,
  275.     NULL,
  276.     MENUNULL
  277. };
  278.  
  279. static struct IntuiText IText281 = {
  280.     0,1,JAM1,
  281.     21,1,
  282.     NULL,
  283.     (UBYTE *)"Name",
  284.     NULL
  285. };
  286.  
  287. static struct MenuItem SubItem281 = {
  288.     &SubItem282,
  289.     113,0,
  290.     55,9,
  291.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  292.     14,
  293.     (APTR)&IText281,
  294.     NULL,
  295.     NULL,
  296.     NULL,
  297.     MENUNULL
  298. };
  299.  
  300. #define SortSubItem1 SubItem281
  301.  
  302. static struct IntuiText IText28 = {
  303.     0,1,JAM1,
  304.     2,1,
  305.     NULL,
  306.     (UBYTE *)"Sort by",
  307.     NULL
  308. };
  309.  
  310. static struct MenuItem MenuItem28 = {
  311.     &MenuItem29,
  312.     0,63,
  313.     136,9,
  314.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  315.     0,
  316.     (APTR)&IText28,
  317.     NULL,
  318.     NULL,
  319.     &SubItem281,
  320.     MENUNULL
  321. };
  322.  
  323. static struct IntuiText IText275 = {
  324.     0,1,JAM1,
  325.     21,1,
  326.     NULL,
  327.     (UBYTE *)"Disk Key",
  328.     NULL
  329. };
  330.  
  331. static struct MenuItem SubItem275 = {
  332.     NULL,
  333.     113,36,
  334.     135,9,
  335.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  336.     0,
  337.     (APTR)&IText275,
  338.     NULL,
  339.     NULL,
  340.     NULL,
  341.     MENUNULL
  342. };
  343.  
  344. static struct IntuiText IText274 = {
  345.     0,1,JAM1,
  346.     21,1,
  347.     NULL,
  348.     (UBYTE *)"Date",
  349.     NULL
  350. };
  351.  
  352. static struct MenuItem SubItem274 = {
  353.     &SubItem275,
  354.     113,27,
  355.     135,9,
  356.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  357.     0,
  358.     (APTR)&IText274,
  359.     NULL,
  360.     NULL,
  361.     NULL,
  362.     MENUNULL
  363. };
  364.  
  365. static struct IntuiText IText273 = {
  366.     0,1,JAM1,
  367.     21,1,
  368.     NULL,
  369.     (UBYTE *)"Protection",
  370.     NULL
  371. };
  372.  
  373. static struct MenuItem SubItem273 = {
  374.     &SubItem274,
  375.     113,18,
  376.     135,9,
  377.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  378.     0,
  379.     (APTR)&IText273,
  380.     NULL,
  381.     NULL,
  382.     NULL,
  383.     MENUNULL
  384. };
  385.  
  386. static struct IntuiText IText272 = {
  387.     0,1,JAM1,
  388.     21,1,
  389.     NULL,
  390.     (UBYTE *)"Size in Blocks",
  391.     NULL
  392. };
  393.  
  394. static struct MenuItem SubItem272 = {
  395.     &SubItem273,
  396.     113,9,
  397.     135,9,
  398.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  399.     0,
  400.     (APTR)&IText272,
  401.     NULL,
  402.     NULL,
  403.     NULL,
  404.     MENUNULL
  405. };
  406.  
  407. static struct IntuiText IText271 = {
  408.     0,1,JAM1,
  409.     21,1,
  410.     NULL,
  411.     (UBYTE *)"Size in Bytes",
  412.     NULL
  413. };
  414.  
  415. static struct MenuItem SubItem271 = {
  416.     &SubItem272,
  417.     113,0,
  418.     135,9,
  419.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  420.     0,
  421.     (APTR)&IText271,
  422.     NULL,
  423.     NULL,
  424.     NULL,
  425.     MENUNULL
  426. };
  427.  
  428. #define EntryInfoSubItem1 SubItem271
  429.  
  430.  
  431. static struct IntuiText IText27 = {
  432.     0,1,JAM1,
  433.     2,1,
  434.     NULL,
  435.     (UBYTE *)"File Info",
  436.     NULL
  437. };
  438.  
  439. static struct MenuItem MenuItem27 = {
  440.     &MenuItem28,
  441.     0,54,
  442.     136,9,
  443.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  444.     0,
  445.     (APTR)&IText27,
  446.     NULL,
  447.     NULL,
  448.     &SubItem271,
  449.     MENUNULL
  450. };
  451.  
  452.  
  453. static struct IntuiText IText265 = {
  454.     0,1,JAM1,
  455.     2,1,
  456.     NULL,
  457.     (UBYTE *)"Invert",
  458.     NULL
  459. };
  460.  
  461. static struct MenuItem SubItem265 = {
  462.     NULL,
  463.     113,36,
  464.     112,9,
  465.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  466.     0,
  467.     (APTR)&IText265,
  468.     NULL,
  469.     '/',
  470.     NULL,
  471.     MENUNULL
  472. };
  473.  
  474. static struct IntuiText IText264 = {
  475.     0,1,JAM1,
  476.     2,1,
  477.     NULL,
  478.     (UBYTE *)"Clear",
  479.     NULL
  480. };
  481.  
  482. static struct MenuItem SubItem264 = {
  483.     &SubItem265,
  484.     113,27,
  485.     112,9,
  486.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  487.     0,
  488.     (APTR)&IText264,
  489.     NULL,
  490.     '-',
  491.     NULL,
  492.     MENUNULL
  493. };
  494.  
  495. static struct IntuiText IText263 = {
  496.     0,1,JAM1,
  497.     2,1,
  498.     NULL,
  499.     (UBYTE *)"No .info",
  500.     NULL
  501. };
  502.  
  503. static struct MenuItem SubItem263 = {
  504.     &SubItem264,
  505.     113,18,
  506.     112,9,
  507.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  508.     0,
  509.     (APTR)&IText263,
  510.     NULL,
  511.     '.',
  512.     NULL,
  513.     MENUNULL
  514. };
  515.  
  516. static struct IntuiText IText262 = {
  517.     0,1,JAM1,
  518.     2,1,
  519.     NULL,
  520.     (UBYTE *)"Prefs",
  521.     NULL
  522. };
  523.  
  524. static struct MenuItem SubItem262 = {
  525.     &SubItem263,
  526.     113,9,
  527.     112,9,
  528.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  529.     0,
  530.     (APTR)&IText262,
  531.     NULL,
  532.     '=',
  533.     NULL,
  534.     MENUNULL
  535. };
  536.  
  537. static struct IntuiText IText261 = {
  538.     0,1,JAM1,
  539.     2,1,
  540.     NULL,
  541.     (UBYTE *)"Set...",
  542.     NULL
  543. };
  544.  
  545. static struct MenuItem SubItem261 = {
  546.     &SubItem262,
  547.     113,0,
  548.     112,9,
  549.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  550.     0,
  551.     (APTR)&IText261,
  552.     NULL,
  553.     'F',
  554.     NULL,
  555.     MENUNULL
  556. };
  557.  
  558. static struct IntuiText IText26 = {
  559.     0,1,JAM1,
  560.     2,1,
  561.     NULL,
  562.     (UBYTE *)"Filters",
  563.     NULL
  564. };
  565.  
  566. static struct MenuItem MenuItem26 = {
  567.     &MenuItem27,
  568.     0,45,
  569.     136,9,
  570.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  571.     0,
  572.     (APTR)&IText26,
  573.     NULL,
  574.     NULL,
  575.     &SubItem261,
  576.     MENUNULL
  577. };
  578.  
  579. static struct IntuiText IText25 = {
  580.     0,1,JAM1,
  581.     2,1,
  582.     NULL,
  583.     (UBYTE *)"Select All",
  584.     NULL
  585. };
  586.  
  587. static struct MenuItem MenuItem25 = {
  588.     &MenuItem26,
  589.     0,36,
  590.     136,9,
  591.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  592.     0,
  593.     (APTR)&IText25,
  594.     NULL,
  595.     'A',
  596.     NULL,
  597.     MENUNULL
  598. };
  599.  
  600. static struct IntuiText IText24 = {
  601.     0,1,JAM1,
  602.     2,1,
  603.     NULL,
  604.     (UBYTE *)"Select Match",
  605.     NULL
  606. };
  607.  
  608. static struct MenuItem MenuItem24 = {
  609.     &MenuItem25,
  610.     0,27,
  611.     136,9,
  612.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  613.     0,
  614.     (APTR)&IText24,
  615.     NULL,
  616.     '?',
  617.     NULL,
  618.     MENUNULL
  619. };
  620.  
  621. static struct IntuiText IText23 = {
  622.     0,1,JAM1,
  623.     2,1,
  624.     NULL,
  625.     (UBYTE *)"Open Dir...",
  626.     NULL
  627. };
  628.  
  629. static struct MenuItem MenuItem23 = {
  630.     &MenuItem24,
  631.     0,18,
  632.     136,9,
  633.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  634.     0,
  635.     (APTR)&IText23,
  636.     NULL,
  637.     'O',
  638.     NULL,
  639.     MENUNULL
  640. };
  641.  
  642. static struct IntuiText IText22 = {
  643.     0,1,JAM1,
  644.     2,1,
  645.     NULL,
  646.     (UBYTE *)"Open Parent",
  647.     NULL
  648. };
  649.  
  650. static struct MenuItem MenuItem22 = {
  651.     &MenuItem23,
  652.     0,9,
  653.     136,9,
  654.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  655.     0,
  656.     (APTR)&IText22,
  657.     NULL,
  658.     'P',
  659.     NULL,
  660.     MENUNULL
  661. };
  662.  
  663. static struct IntuiText IText21 = {
  664.     0,1,JAM1,
  665.     2,1,
  666.     NULL,
  667.     (UBYTE *)"Rescan",
  668.     NULL
  669. };
  670.  
  671. static struct MenuItem MenuItem21 = {
  672.     &MenuItem22,
  673.     0,0,
  674.     136,9,
  675.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  676.     0,
  677.     (APTR)&IText21,
  678.     NULL,
  679.     'S',
  680.     NULL,
  681.     MENUNULL
  682. };
  683.  
  684. static struct Menu Menu2 = {
  685.     &Menu3,
  686.     84,0,
  687.     60,0,
  688.     MENUENABLED,
  689.     "Window",
  690.     &MenuItem21
  691. };
  692.  
  693.  
  694. /*****************************************************************************/
  695.  
  696.  
  697. static struct IntuiText IText1B = {
  698.     0,1,JAM1,
  699.     2,1,
  700.     NULL,
  701.     (UBYTE *)"Quit",
  702.     NULL
  703. };
  704.  
  705. static struct MenuItem MenuItem1B = {
  706.     NULL,
  707.     0,90,
  708.     102,9,
  709.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  710.     0,
  711.     (APTR)&IText1B,
  712.     NULL,
  713.     NULL,
  714.     NULL,
  715.     MENUNULL
  716. };
  717.  
  718. static struct IntuiText IText1A = {
  719.     0,1,JAM1,
  720.     2,1,
  721.     NULL,
  722.     (UBYTE *)"Save Config",
  723.     NULL
  724. };
  725.  
  726. static struct MenuItem MenuItem1A = {
  727.     &MenuItem1B,
  728.     0,81,
  729.     102,9,
  730.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  731.     0,
  732.     (APTR)&IText1A,
  733.     NULL,
  734.     NULL,
  735.     NULL,
  736.     MENUNULL
  737. };
  738.  
  739. static struct IntuiText IText195 = {
  740.     0,1,JAM1,
  741.     21,1,
  742.     NULL,
  743.     (UBYTE *)"ASynchronous actions",
  744.     NULL
  745. };
  746.  
  747. static struct MenuItem SubItem195 = {
  748.     NULL,
  749.     81,36,
  750.     320,9,
  751.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  752.     0,
  753.     (APTR)&IText195,
  754.     NULL,
  755.     NULL,
  756.     NULL,
  757.     MENUNULL
  758. };
  759.  
  760. static struct IntuiText IText194 = {
  761.     0,1,JAM1,
  762.     21,1,
  763.     NULL,
  764.     (UBYTE *)"Ask before moving into subdirectories",
  765.     NULL
  766. };
  767.  
  768. static struct MenuItem SubItem194 = {
  769.     &SubItem195,
  770.     81,27,
  771.     320,9,
  772.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  773.     0,
  774.     (APTR)&IText194,
  775.     NULL,
  776.     NULL,
  777.     NULL,
  778.     MENUNULL
  779. };
  780.  
  781. static struct IntuiText IText193 = {
  782.     0,1,JAM1,
  783.     21,1,
  784.     NULL,
  785.     (UBYTE *)"Move files into subdirectories",
  786.     NULL
  787. };
  788.  
  789. static struct MenuItem SubItem193 = {
  790.     &SubItem194,
  791.     81,18,
  792.     320,9,
  793.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  794.     0,
  795.     (APTR)&IText193,
  796.     NULL,
  797.     NULL,
  798.     NULL,
  799.     MENUNULL
  800. };
  801.  
  802. static struct IntuiText IText192 = {
  803.     0,1,JAM1,
  804.     21,1,
  805.     NULL,
  806.     (UBYTE *)"Toggle Selections",
  807.     NULL
  808. };
  809.  
  810. static struct MenuItem SubItem192 = {
  811.     &SubItem193,
  812.     81,9,
  813.     320,9,
  814.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  815.     0,
  816.     (APTR)&IText192,
  817.     NULL,
  818.     NULL,
  819.     NULL,
  820.     MENUNULL
  821. };
  822.  
  823. static struct IntuiText IText191 = {
  824.     0,1,JAM1,
  825.     21,1,
  826.     NULL,
  827.     (UBYTE *)"Keep Selected",
  828.     NULL
  829. };
  830.  
  831. static struct MenuItem SubItem191 = {
  832.     &SubItem192,
  833.     81,0,
  834.     320,9,
  835.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  836.     0,
  837.     (APTR)&IText191,
  838.     NULL,
  839.     NULL,
  840.     NULL,
  841.     MENUNULL
  842. };
  843.  
  844. #define OptionsSubItem1 SubItem191
  845.  
  846. static struct IntuiText IText19 = {
  847.     0,1,JAM1,
  848.     2,1,
  849.     NULL,
  850.     (UBYTE *)"Options",
  851.     NULL
  852. };
  853.  
  854. static struct MenuItem MenuItem19 = {
  855.     &MenuItem1A,
  856.     0,72,
  857.     102,9,
  858.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  859.     0,
  860.     (APTR)&IText19,
  861.     NULL,
  862.     NULL,
  863.     &SubItem191,
  864.     MENUNULL
  865. };
  866.  
  867. static struct IntuiText IText183 = {
  868.     0,1,JAM1,
  869.     21,1,
  870.     NULL,
  871.     (UBYTE *)"Assigns",
  872.     NULL
  873. };
  874.  
  875. static struct MenuItem SubItem183 = {
  876.     NULL,
  877.     81,18,
  878.     80,9,
  879.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  880.     0,
  881.     (APTR)&IText183,
  882.     NULL,
  883.     NULL,
  884.     NULL,
  885.     MENUNULL
  886. };
  887.  
  888. #define DisplaySubItem3 SubItem183
  889.  
  890. static struct IntuiText IText182 = {
  891.     0,1,JAM1,
  892.     21,1,
  893.     NULL,
  894.     (UBYTE *)"Volumes",
  895.     NULL
  896. };
  897.  
  898. static struct MenuItem SubItem182 = {
  899.     &SubItem183,
  900.     81,9,
  901.     80,9,
  902.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  903.     0,
  904.     (APTR)&IText182,
  905.     NULL,
  906.     NULL,
  907.     NULL,
  908.     MENUNULL
  909. };
  910.  
  911. #define DisplaySubItem2 SubItem182
  912.  
  913. static struct IntuiText IText181 = {
  914.     0,1,JAM1,
  915.     21,1,
  916.     NULL,
  917.     (UBYTE *)"Devices",
  918.     NULL
  919. };
  920.  
  921. static struct MenuItem SubItem181 = {
  922.     &SubItem182,
  923.     81,0,
  924.     80,9,
  925.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  926.     0,
  927.     (APTR)&IText181,
  928.     NULL,
  929.     NULL,
  930.     NULL,
  931.     MENUNULL
  932. };
  933.  
  934. #define DisplaySubItem1 SubItem181
  935.  
  936. static struct IntuiText IText18 = {
  937.     0,1,JAM1,
  938.     2,1,
  939.     NULL,
  940.     (UBYTE *)"Display",
  941.     NULL
  942. };
  943.  
  944. static struct MenuItem MenuItem18 = {
  945.     &MenuItem19,
  946.     0,63,
  947.     102,9,
  948.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  949.     0,
  950.     (APTR)&IText18,
  951.     NULL,
  952.     NULL,
  953.     &SubItem181,
  954.     MENUNULL
  955. };
  956.  
  957. static struct IntuiText IText174 = {
  958.     0,1,JAM1,
  959.     21,1,
  960.     NULL,
  961.     (UBYTE *)"Comment",
  962.     NULL
  963. };
  964.  
  965. static struct MenuItem SubItem174 = {
  966.     NULL,
  967.     81,27,
  968.     80,9,
  969.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  970.     1,
  971.     (APTR)&IText174,
  972.     NULL,
  973.     NULL,
  974.     NULL,
  975.     MENUNULL
  976. };
  977.  
  978. static struct IntuiText IText173 = {
  979.     0,1,JAM1,
  980.     21,1,
  981.     NULL,
  982.     (UBYTE *)"Protect",
  983.     NULL
  984. };
  985.  
  986. static struct MenuItem SubItem173 = {
  987.     &SubItem174,
  988.     81,18,
  989.     80,9,
  990.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  991.     1,
  992.     (APTR)&IText173,
  993.     NULL,
  994.     NULL,
  995.     NULL,
  996.     MENUNULL
  997. };
  998.  
  999. static struct IntuiText IText172 = {
  1000.     0,1,JAM1,
  1001.     21,1,
  1002.     NULL,
  1003.     (UBYTE *)"Dates",
  1004.     NULL
  1005. };
  1006.  
  1007. static struct MenuItem SubItem172 = {
  1008.     &SubItem173,
  1009.     81,9,
  1010.     80,9,
  1011.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1012.     1,
  1013.     (APTR)&IText172,
  1014.     NULL,
  1015.     NULL,
  1016.     NULL,
  1017.     MENUNULL
  1018. };
  1019.  
  1020. static struct IntuiText IText171 = {
  1021.     0,1,JAM1,
  1022.     21,1,
  1023.     NULL,
  1024.     (UBYTE *)"Clone",
  1025.     NULL
  1026. };
  1027.  
  1028. static struct MenuItem SubItem171 = {
  1029.     &SubItem172,
  1030.     81,0,
  1031.     80,9,
  1032.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1033.     14,
  1034.     (APTR)&IText171,
  1035.     NULL,
  1036.     NULL,
  1037.     NULL,
  1038.     MENUNULL
  1039. };
  1040.  
  1041. #define CopyFlagsSubItem1 SubItem171
  1042.  
  1043. static struct IntuiText IText17 = {
  1044.     0,1,JAM1,
  1045.     2,1,
  1046.     NULL,
  1047.     (UBYTE *)"Copy Flags",
  1048.     NULL
  1049. };
  1050.  
  1051. static struct MenuItem MenuItem17 = {
  1052.     &MenuItem18,
  1053.     0,54,
  1054.     102,9,
  1055.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1056.     0,
  1057.     (APTR)&IText17,
  1058.     NULL,
  1059.     NULL,
  1060.     &SubItem171,
  1061.     MENUNULL
  1062. };
  1063.  
  1064. static struct IntuiText IText168 = {
  1065.     0,1,JAM1,
  1066.     21,1,
  1067.     NULL,
  1068.     (UBYTE *)"Copy Hierarchy",
  1069.     NULL
  1070. };
  1071.  
  1072. static struct MenuItem SubItem168 = {
  1073.     NULL,
  1074.     81,63,
  1075.     192,9,
  1076.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1077.     0,
  1078.     (APTR)&IText168,
  1079.     NULL,
  1080.     NULL,
  1081.     NULL,
  1082.     MENUNULL
  1083. };
  1084.  
  1085. static struct IntuiText IText167 = {
  1086.     0,1,JAM1,
  1087.     21,1,
  1088.     NULL,
  1089.     (UBYTE *)"Copy Empty Dirs",
  1090.     NULL
  1091. };
  1092.  
  1093. static struct MenuItem SubItem167 = {
  1094.     &SubItem168,
  1095.     81,54,
  1096.     192,9,
  1097.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1098.     0,
  1099.     (APTR)&IText167,
  1100.     NULL,
  1101.     NULL,
  1102.     NULL,
  1103.     MENUNULL
  1104. };
  1105.  
  1106. static struct IntuiText IText166 = {
  1107.     0,1,JAM1,
  1108.     21,1,
  1109.     NULL,
  1110.     (UBYTE *)"Ask before overwrite",
  1111.     NULL
  1112. };
  1113.  
  1114. static struct MenuItem SubItem166 = {
  1115.     &SubItem167,
  1116.     81,45,
  1117.     192,9,
  1118.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1119.     16,
  1120.     (APTR)&IText166,
  1121.     NULL,
  1122.     NULL,
  1123.     NULL,
  1124.     MENUNULL
  1125. };
  1126.  
  1127. static struct IntuiText IText165 = {
  1128.     0,1,JAM1,
  1129.     21,1,
  1130.     NULL,
  1131.     (UBYTE *)"Don't overwrite files",
  1132.     NULL
  1133. };
  1134.  
  1135. static struct MenuItem SubItem165 = {
  1136.     &SubItem166,
  1137.     81,36,
  1138.     192,9,
  1139.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1140.     40,
  1141.     (APTR)&IText165,
  1142.     NULL,
  1143.     NULL,
  1144.     NULL,
  1145.     MENUNULL
  1146. };
  1147.  
  1148. static struct IntuiText IText164 = {
  1149.     0,1,JAM1,
  1150.     21,1,
  1151.     NULL,
  1152.     (UBYTE *)"Update",
  1153.     NULL
  1154. };
  1155.  
  1156. static struct MenuItem SubItem164 = {
  1157.     &SubItem165,
  1158.     81,27,
  1159.     192,9,
  1160.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1161.     16,
  1162.     (APTR)&IText164,
  1163.     NULL,
  1164.     NULL,
  1165.     NULL,
  1166.     MENUNULL
  1167. };
  1168.  
  1169. static struct IntuiText IText163 = {
  1170.     0,1,JAM1,
  1171.     21,1,
  1172.     NULL,
  1173.     (UBYTE *)"Allways Move",
  1174.     NULL
  1175. };
  1176.  
  1177. static struct MenuItem SubItem163 = {
  1178.     &SubItem164,
  1179.     81,18,
  1180.     192,9,
  1181.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1182.     3,
  1183.     (APTR)&IText163,
  1184.     NULL,
  1185.     NULL,
  1186.     NULL,
  1187.     MENUNULL
  1188. };
  1189.  
  1190. static struct IntuiText IText162 = {
  1191.     0,1,JAM1,
  1192.     21,1,
  1193.     NULL,
  1194.     (UBYTE *)"Allways Copy",
  1195.     NULL
  1196. };
  1197.  
  1198. static struct MenuItem SubItem162 = {
  1199.     &SubItem163,
  1200.     81,9,
  1201.     192,9,
  1202.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1203.     5,
  1204.     (APTR)&IText162,
  1205.     NULL,
  1206.     NULL,
  1207.     NULL,
  1208.     MENUNULL
  1209. };
  1210.  
  1211. static struct IntuiText IText161 = {
  1212.     0,1,JAM1,
  1213.     21,1,
  1214.     NULL,
  1215.     (UBYTE *)"Context",
  1216.     NULL
  1217. };
  1218.  
  1219. static struct MenuItem SubItem161 = {
  1220.     &SubItem162,
  1221.     81,0,
  1222.     192,9,
  1223.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1224.     6,
  1225.     (APTR)&IText161,
  1226.     NULL,
  1227.     NULL,
  1228.     NULL,
  1229.     MENUNULL
  1230. };
  1231.  
  1232. #define CopyModeSubItem1 SubItem161
  1233.  
  1234. static struct IntuiText IText16 = {
  1235.     0,1,JAM1,
  1236.     2,1,
  1237.     NULL,
  1238.     (UBYTE *)"Copy Mode",
  1239.     NULL
  1240. };
  1241.  
  1242. static struct MenuItem MenuItem16 = {
  1243.     &MenuItem17,
  1244.     0,45,
  1245.     102,9,
  1246.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1247.     0,
  1248.     (APTR)&IText16,
  1249.     NULL,
  1250.     NULL,
  1251.     &SubItem161,
  1252.     MENUNULL
  1253. };
  1254.  
  1255. static struct IntuiText IText153 = {
  1256.     0,1,JAM1,
  1257.     21,1,
  1258.     NULL,
  1259.     (UBYTE *)"Request",
  1260.     NULL
  1261. };
  1262.  
  1263. static struct MenuItem SubItem153 = {
  1264.     NULL,
  1265.     81,18,
  1266.     80,9,
  1267.     CHECKIT+ITEMTEXT+MENUTOGGLE+ITEMENABLED+HIGHCOMP,
  1268.     0,
  1269.     (APTR)&IText153,
  1270.     NULL,
  1271.     NULL,
  1272.     NULL,
  1273.     MENUNULL
  1274. };
  1275.  
  1276. static struct IntuiText IText152 = {
  1277.     0,1,JAM1,
  1278.     21,1,
  1279.     NULL,
  1280.     (UBYTE *)"Shell",
  1281.     NULL
  1282. };
  1283.  
  1284. static struct MenuItem SubItem152 = {
  1285.     &SubItem153,
  1286.     81,9,
  1287.     80,9,
  1288.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1289.     1,
  1290.     (APTR)&IText152,
  1291.     NULL,
  1292.     NULL,
  1293.     NULL,
  1294.     MENUNULL
  1295. };
  1296.  
  1297. static struct IntuiText IText151 = {
  1298.     0,1,JAM1,
  1299.     21,1,
  1300.     NULL,
  1301.     (UBYTE *)"RunBack",
  1302.     NULL
  1303. };
  1304.  
  1305. static struct MenuItem SubItem151 = {
  1306.     &SubItem152,
  1307.     81,0,
  1308.     80,9,
  1309.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1310.     2,
  1311.     (APTR)&IText151,
  1312.     NULL,
  1313.     NULL,
  1314.     NULL,
  1315.     MENUNULL
  1316. };
  1317.  
  1318. #define RunModeSubItem1 SubItem151
  1319.  
  1320. static struct IntuiText IText15 = {
  1321.     0,1,JAM1,
  1322.     2,1,
  1323.     NULL,
  1324.     (UBYTE *)"Run Mode",
  1325.     NULL
  1326. };
  1327.  
  1328. static struct MenuItem MenuItem15 = {
  1329.     &MenuItem16,
  1330.     0,36,
  1331.     102,9,
  1332.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1333.     0,
  1334.     (APTR)&IText15,
  1335.     NULL,
  1336.     NULL,
  1337.     &SubItem151,
  1338.     MENUNULL
  1339. };
  1340.  
  1341. static struct IntuiText IText142 = {
  1342.     0,1,JAM1,
  1343.     21,1,
  1344.     NULL,
  1345.     (UBYTE *)"Custom",
  1346.     NULL
  1347. };
  1348.  
  1349. static struct MenuItem ScreenSubItem2 = {
  1350.     NULL,
  1351.     81,9,
  1352.     96,9,
  1353.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1354.     1,
  1355.     (APTR)&IText142,
  1356.     NULL,
  1357.     NULL,
  1358.     NULL,
  1359.     MENUNULL
  1360. };
  1361.  
  1362. static struct IntuiText IText141 = {
  1363.     0,1,JAM1,
  1364.     21,1,
  1365.     NULL,
  1366.     (UBYTE *)"Workbench",
  1367.     NULL
  1368. };
  1369.  
  1370. static struct MenuItem ScreenSubItem1 = {
  1371.     &ScreenSubItem2,
  1372.     81,0,
  1373.     96,9,
  1374.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1375.     2,
  1376.     (APTR)&IText141,
  1377.     NULL,
  1378.     NULL,
  1379.     NULL,
  1380.     MENUNULL
  1381. };
  1382.  
  1383. static struct IntuiText IText14 = {
  1384.     0,1,JAM1,
  1385.     2,1,
  1386.     NULL,
  1387.     (UBYTE *)"Screen",
  1388.     NULL
  1389. };
  1390.  
  1391. static struct MenuItem MenuItem14 = {
  1392.     &MenuItem15,
  1393.     0,27,
  1394.     102,9,
  1395.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1396.     0,
  1397.     (APTR)&IText14,
  1398.     NULL,
  1399.     NULL,
  1400.     &ScreenSubItem1,
  1401.     MENUNULL
  1402. };
  1403.  
  1404. static struct IntuiText IText13 = {
  1405.     0,1,JAM1,
  1406.     2,1,
  1407.     NULL,
  1408.     (UBYTE *)"Command",
  1409.     NULL
  1410. };
  1411.  
  1412. static struct MenuItem MenuItem13 = {
  1413.     &MenuItem14,
  1414.     0,18,
  1415.     102,9,
  1416.     ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP,
  1417.     0,
  1418.     (APTR)&IText13,
  1419.     NULL,
  1420.     'C',
  1421.     NULL,
  1422.     MENUNULL
  1423. };
  1424.  
  1425. static struct IntuiText IText122 = {
  1426.     0,1,JAM1,
  1427.     21,1,
  1428.     NULL,
  1429.     (UBYTE *)"Shell",
  1430.     NULL
  1431. };
  1432.  
  1433. static struct MenuItem SubItem122 = {
  1434.     NULL,
  1435.     81,9,
  1436.     72,9,
  1437.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1438.     1,
  1439.     (APTR)&IText122,
  1440.     NULL,
  1441.     NULL,
  1442.     NULL,
  1443.     MENUNULL
  1444. };
  1445.  
  1446. #define CmdModeSubItem2 SubItem122
  1447.  
  1448. static struct IntuiText IText121 = {
  1449.     0,1,JAM1,
  1450.     21,1,
  1451.     NULL,
  1452.     (UBYTE *)"Simple",
  1453.     NULL
  1454. };
  1455.  
  1456. static struct MenuItem SubItem121 = {
  1457.     &SubItem122,
  1458.     81,0,
  1459.     72,9,
  1460.     CHECKIT+ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1461.     2,
  1462.     (APTR)&IText121,
  1463.     NULL,
  1464.     NULL,
  1465.     NULL,
  1466.     MENUNULL
  1467. };
  1468.  
  1469. #define CmdModeSubItem1 SubItem121
  1470.  
  1471. static struct IntuiText IText12 = {
  1472.     0,1,JAM1,
  1473.     2,1,
  1474.     NULL,
  1475.     (UBYTE *)"Cmd Mode",
  1476.     NULL
  1477. };
  1478.  
  1479. static struct MenuItem MenuItem12 = {
  1480.     &MenuItem13,
  1481.     0,9,
  1482.     102,9,
  1483.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1484.     0,
  1485.     (APTR)&IText12,
  1486.     NULL,
  1487.     NULL,
  1488.     &SubItem121,
  1489.     MENUNULL
  1490. };
  1491.  
  1492. static struct IntuiText IText11 = {
  1493.     0,1,JAM1,
  1494.     2,1,
  1495.     NULL,
  1496.     (UBYTE *)"Update Menus",
  1497.     NULL
  1498. };
  1499.  
  1500. static struct MenuItem MenuItem11 = {
  1501.     &MenuItem12,
  1502.     0,0,
  1503.     102,9,
  1504.     ITEMTEXT+ITEMENABLED+HIGHCOMP,
  1505.     0,
  1506.     (APTR)&IText11,
  1507.     NULL,
  1508.     NULL,
  1509.     NULL,
  1510.     MENUNULL
  1511. };
  1512.  
  1513. struct Menu Menu1 = {
  1514.     &Menu2,
  1515.     0,0,
  1516.     84,0,
  1517.     MENUENABLED,
  1518.     "BrowserII",
  1519.     &MenuItem11
  1520. };
  1521.  
  1522.  
  1523. /*****************************************************************************/
  1524.  
  1525.  
  1526. extern struct BrowserWindow *CurrentWin;
  1527. extern struct MinList WindowList;
  1528. extern struct Config Config;
  1529. extern struct ParMConfig ParMConfig;
  1530. extern char *ReqTitle;
  1531. extern short NumProcess;
  1532.  
  1533. static struct MenuFlags MenuFlags;
  1534.  
  1535.  
  1536. void UpdateMenus(void)
  1537. {
  1538.     struct BrowserWindow *Win;
  1539.  
  1540.     Win = (struct BrowserWindow *)WindowList.mlh_Head;
  1541.     Forbid();
  1542.     while(Win->bw_Node.mln_Succ) {
  1543.         ClearMenuStrip(Win->bw_Window);
  1544.         Win = (struct BrowserWindow *)Win->bw_Node.mln_Succ;
  1545.     }
  1546.     Permit();
  1547.  
  1548.     ParMConfig.MenuPen = 0;
  1549.     if (!ParseMenus(&ParMConfig))
  1550.         FreeMenus(&ParMConfig);
  1551.  
  1552.     Win = (struct BrowserWindow *)WindowList.mlh_Head;
  1553.     Forbid();
  1554.     while(Win->bw_Node.mln_Succ) {
  1555.         SetMenuStrip(Win->bw_Window, &Menu1);
  1556.         Win = (struct BrowserWindow *)Win->bw_Node.mln_Succ;
  1557.     }
  1558.     Permit();
  1559. }
  1560.  
  1561.  
  1562. void SetMenus(struct BrowserWindow *Win)
  1563. {
  1564.     struct MenuItem *mi;
  1565.     short i;
  1566.     
  1567.     Forbid();    /* Prevent user from using menus during setup */
  1568.  
  1569.     mi = &EntryInfoSubItem1;        /* Size in bytes */
  1570.     for( i=0 ; i<6 ; i++ ) {
  1571.         if (Win->bw_EntryInfoFlags & 1<<i)
  1572.             mi->Flags |= CHECKED;
  1573.         else
  1574.             mi->Flags &= ~CHECKED;
  1575.         mi = mi->NextItem;
  1576.     }
  1577.  
  1578.     mi = &SortSubItem1;            /* Sort by Name */
  1579.     for( i=0 ; i<4 ; i++ ) {
  1580.         if ((Win->bw_Sort & 0x0F) == i)
  1581.             mi->Flags |= CHECKED;
  1582.         else
  1583.             mi->Flags &= ~CHECKED;
  1584.         mi = mi->NextItem;
  1585.     }
  1586.     if (Win->bw_Sort & TYPE_SORT)
  1587.         mi->Flags |= CHECKED;
  1588.     else
  1589.         mi->Flags &= ~CHECKED;
  1590.  
  1591.     MenuFlags.OldFileInfo = Win->bw_EntryInfoFlags;
  1592.     MenuFlags.OldSort = Win->bw_Sort;
  1593.     Permit();
  1594. }
  1595.  
  1596.  
  1597. static void CheckItems(struct MenuItem *mi, short Flags, short NumFlags)
  1598. {
  1599.     short i;
  1600.  
  1601.     for( i=0 ; i<NumFlags ; i++ ) {
  1602.         if (Flags & 1<<i)
  1603.             mi->Flags |= CHECKED;
  1604.         mi = mi->NextItem;
  1605.     }
  1606. }
  1607.  
  1608.  
  1609. void InitMenus(void)
  1610. {
  1611.     ParMConfig.LinkMenu = &Menu3;
  1612.     if (Config.CmdMode)
  1613.         CmdModeSubItem1.Flags |= CHECKED;
  1614.     else
  1615.         CmdModeSubItem2.Flags |= CHECKED;
  1616.  
  1617.     if (Config.Screen == BROWSER_WORKBENCH)
  1618.         ScreenSubItem1.Flags |= CHECKED;
  1619.     else
  1620.         ScreenSubItem2.Flags |= CHECKED;
  1621.  
  1622.     CheckItems(&RunModeSubItem1, Config.RunMode, 3);
  1623.     CheckItems(&CopyModeSubItem1, Config.CopyMode, 8);
  1624.     CheckItems(&CopyFlagsSubItem1, Config.CopyFlags, 4);
  1625.     CheckItems(&OptionsSubItem1, Config.Options, 5);
  1626.  
  1627.     if (Config.Display & DLF_DEVICES)
  1628.         DisplaySubItem1.Flags |= CHECKED;
  1629.     if (Config.Display & DLF_VOLUMES)
  1630.         DisplaySubItem2.Flags |= CHECKED;
  1631.     if (Config.Display & DLF_DIRS)
  1632.         DisplaySubItem3.Flags |= CHECKED;
  1633. }
  1634.  
  1635.  
  1636. void CmdMode(void)
  1637. {
  1638.     Config.CmdMode = ParMConfig.SimpleCmdMode = CmdModeSubItem1.Flags & CHECKED;
  1639. }
  1640.  
  1641.  
  1642. void ScreenType(void)
  1643. {
  1644.     Config.Screen = (ScreenSubItem1.Flags & CHECKED) ? BROWSER_WORKBENCH : BROWSER_CUSTOM;
  1645. }
  1646.  
  1647.  
  1648. void RunMode(void)
  1649. {
  1650.     struct MenuItem *mi;
  1651.     short i;
  1652.  
  1653.     mi = &RunModeSubItem1;
  1654.     Config.RunMode = 0;
  1655.     for( i=0 ; i<3 ; i++ ) {
  1656.         if (mi->Flags & CHECKED)
  1657.             Config.RunMode |= 1<<i;
  1658.         mi = mi->NextItem;
  1659.     }
  1660. }
  1661.  
  1662.  
  1663. void CopyMode(void)
  1664. {
  1665.     struct MenuItem *mi;
  1666.     short i;
  1667.  
  1668.     mi = &CopyModeSubItem1;
  1669.     Config.CopyMode = 0;
  1670.     for( i=0 ; i<8 ; i++ ) {
  1671.         if (mi->Flags & CHECKED)
  1672.             Config.CopyMode |= 1<<i;
  1673.         mi = mi->NextItem;
  1674.     }
  1675. }
  1676.  
  1677.  
  1678. void CopyFlags(void)
  1679. {
  1680.     struct MenuItem *mi;
  1681.     short i;
  1682.  
  1683.     mi = &CopyFlagsSubItem1;
  1684.     Config.CopyFlags = 0;
  1685.     for( i=0 ; i<4 ; i++ ) {
  1686.         if (mi->Flags & CHECKED)
  1687.             Config.CopyFlags |= 1<<i;
  1688.         mi = mi->NextItem;
  1689.     }
  1690. }
  1691.  
  1692.  
  1693. void DisplayDevs(void)
  1694. {
  1695.     Config.Display = 0;
  1696.     if (DisplaySubItem1.Flags & CHECKED)
  1697.         Config.Display |= DLF_DEVICES|DLF_DISKONLY;
  1698.     if (DisplaySubItem2.Flags & CHECKED)
  1699.         Config.Display |= DLF_VOLUMES;
  1700.     if (DisplaySubItem3.Flags & CHECKED)
  1701.         Config.Display |= DLF_DIRS;
  1702.     MenuFlags.NewDevs = TRUE;
  1703. }
  1704.  
  1705.  
  1706. void Options(void)
  1707. {
  1708.     struct MenuItem *mi;
  1709.     short i;
  1710.  
  1711.     Config.Options = 0;
  1712.     mi = &OptionsSubItem1;
  1713.     for( i=0 ; i<4 ; i++ ) {
  1714.         if (mi->Flags & CHECKED)
  1715.             Config.Options |= 1<<i;
  1716.         mi = mi->NextItem;
  1717.     }
  1718.     /* now  mi  points to ASynchronous option. */
  1719.     if (mi->Flags & CHECKED) {
  1720.         Config.Options |= OPT_ASYNCHRONOUS;
  1721.     }
  1722.     else if (NumProcess > 0) {
  1723.         SimpleRequest(ReqTitle, "Processes still running");
  1724.         mi->Flags |= CHECKED;
  1725.         Config.Options |= OPT_ASYNCHRONOUS;
  1726.     }
  1727. }
  1728.  
  1729.  
  1730. void FileInfo(void)
  1731. {
  1732.     struct MenuItem *mi;
  1733.     short i;
  1734.  
  1735.     mi = &EntryInfoSubItem1;
  1736.     CurrentWin->bw_EntryInfoFlags = 0;
  1737.     for( i=0 ; i<5 ; i++ ) {
  1738.         if (mi->Flags & CHECKED)
  1739.             CurrentWin->bw_EntryInfoFlags |= 1<<i;
  1740.         mi = mi->NextItem;
  1741.     }
  1742. }
  1743.  
  1744.  
  1745. void SortBy(void)
  1746. {
  1747.     struct MenuItem *mi;
  1748.     short i;
  1749.  
  1750.     mi = &SortSubItem1;
  1751.     for( i=0 ; i<4 ; i++ ) {
  1752.         if (mi->Flags & CHECKED)
  1753.             CurrentWin->bw_Sort = i;
  1754.         mi = mi->NextItem;
  1755.     }
  1756.     if (mi->Flags & CHECKED)
  1757.         CurrentWin->bw_Sort |= TYPE_SORT;
  1758. }
  1759.  
  1760.  
  1761. struct MenuFlags *GetMenuFlags(void)
  1762. {
  1763.     return &MenuFlags;
  1764. }
  1765.  
  1766.  
  1767.