home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / sys / handheld / 2593 < prev    next >
Encoding:
Internet Message Format  |  1992-12-17  |  6.0 KB

  1. From: akcs.softcalc@hpcvbbs.cv.hp.com (brian maguire)
  2. Date: Thu, 17 Dec 1992 18:40:03 GMT
  3. Subject: XMENU - Menu Expander
  4. Message-ID: <2b30bdde.5044comp.sys.handhelds@hpcvbbs.cv.hp.com>
  5. Path: sparky!uunet!spool.mu.edu!sdd.hp.com!hp-cv!hp-pcd!hpcvra!rnews!hpcvbbs!akcs.softcalc
  6. Newsgroups: comp.sys.handhelds
  7. Lines: 135
  8.  
  9. Hi,
  10.  
  11. Here's a little routine that expands the current menu by up to four
  12. rows while still maintaining the stack and status display.  It also
  13. allows menu tree traversing.  As an example, try using it in the units
  14. menu by entering [ORANGE] [UNIT] XMENU [ENTER].  You should see all three
  15. rows on the units menu.  Pressing any key in the top three rows will
  16. enter a particular unit sub-menu and display all rows.  Pressing [+/-] in
  17. the sub-menu will put you back in the unit menu agian.  To exit, press
  18. [ON].
  19. ------------------------------------------------------------------
  20. begin xmenu.doc
  21. ************************************************************
  22. **                                                        **
  23. **              XMENU - Menu Expander 1.02                **
  24. **                                                        **
  25. **             Copyright 1992 Brian Maguire               **
  26. **                  All Right Reserved                    **
  27. **                                                        **
  28. ************************************************************
  29.  
  30. DISCLAIMERS
  31.  
  32. XMENU is presented without warranties, expressed or 
  33. implied.  The author makes no guarantee as to the fitness 
  34. of this software.
  35.  
  36. XMENU can be copied freely provided the software is copied 
  37. in its entirety.  The user cannot be charged, in whole or 
  38. in part, except for the cost of reproduction.  No part of 
  39. this package may be used for commercial purposes or as 
  40. part of third party software (commercial or public), 
  41. without written permission from the author.
  42.  
  43. ************************************************************
  44.  
  45. ACKNOWLEDGEMENTS:
  46.  
  47. Special Thanks to Conan J. Fee whose XPNDR program 
  48. inspired me to finish writing XMENU.  Also, thanks to 
  49. Detlef Muller for his participation in writing XPNDR.
  50.  
  51. ************************************************************
  52.  
  53. The expanded menu program displays a menu using as many as 
  54. four rows at a time with the top four rows of keys 
  55. corresponding to each row of menu labels.  This will 
  56. normally be enough to display all rows of a built-in menu.  
  57. If a menu contains more than four rows, a scroll indicator 
  58. will be displayed in the status area.  Pressing ENTER will 
  59. advance the menu screen one page.  Likewise, [ORANGE]-
  60. ENTER will decrement the menu screen one page.
  61.  
  62. Pressing a key in the top four rows that corresponds to a 
  63. menu label will immediately evaluate that menu item.  
  64. Pressing any non-menu key will cause the 48 to beep.  
  65. Pressing [ON] exits XMENU.
  66.  
  67. Menu tree structures are supported.  When a menu key 
  68. creates a different menu, it is nested below the parent 
  69. menu.  Pressing [+/] will exit the sub-menu and restore 
  70. the calling parent menu.  Likewise, pressing [BLUE]-[+/-] 
  71. will exit all sub-menus and restore the top most menu.
  72.  
  73. Because the VAR menu is unique in the fact that the 
  74. contents of the menu can change by moving into a sub-
  75. directory, but the menu definition doesn't actually 
  76. change, UPDIR has been assigned to [ORANGE]-[+/-].
  77.  
  78. In addition to the menu display, XMENU also displays as 
  79. many line of the stack as possible using the medium font 
  80. size.  A total of six lines are used for both the menu and 
  81. stack.  If the menu only uses two lines, four will be used 
  82. for the stack.
  83.  
  84. Most menus are defined by a list or a program that 
  85. generates a list.  This data list is used by the built-in 
  86. menu commands to load the touch table (menu key bindings).  
  87. But several menus, like the VAR menu, are defined by a 
  88. list.  Instead, they load the touch table themselves, on 
  89. the fly.  Because it is difficult to determine how many 
  90. display lines will be needed for these menus, XMENU always 
  91. allocates four.  The only built-in menus that are forced 
  92. to four display lines are VAR, LIBRARY, PORT0, PORT1, 
  93. PORT2, and any library menu.
  94.  
  95. The following criteria was used when writing this program
  96.  
  97. 1) Self contained
  98.         XMENU had to be a self standing program, not a library 
  99.         or a directory.
  100.  
  101. 2) Minimal amount of time writing
  102.         I don't really have much free time so I tried to keep 
  103.         it simply.  Very little time was spend trying to pack 
  104.         the code.  I did try to document it enough so someone 
  105.         who is familiar with RPL can follow it though.
  106.  
  107. ************************************************************
  108.  
  109. Bug reports, comments, or questions can be sent to..
  110.  
  111.         Before 2-01-92  brian_maguire@mts.cc.wayne.edu
  112.         After  2-01-92  brian@sparcom.com
  113.  
  114. ************************************************************
  115.  
  116. XMENU.UUE
  117. UUENCODER by Theodore A. Kaldis
  118. BEGIN--cut here--CUT HERE--
  119. begin 644 xmenu.bin
  120. M2%!(4#0X+46=+>"A&+R)X^4$G2UPZ0:=+4"*08YO$"%BV!K6V0)[5N#@`RM`
  121. M<.\#FP_VW@,70*!+8BLQT-D"1#)P`00K,5!B82LQ<.D&G2U02CFD&+2%070J
  122. M`-,T,$VS$@/0=*"Q/XYO<#YAMC0F+`.D&'2Y`^@8UMD"#A3V2@4%$T:08C@4
  123. M1I!B650`8&%\%.;X!BLQL/E@6QATN0,L&H9#84@8M!(#%T"0_P/I54"3+W0J
  124. M`-,T,$T#TS0P30/3-#!-`],T*S$`30=\%.;X!OD_@(1!EV[0V0)-,8'R.)R5
  125. M$_0XG2T@0$*3&59*.:U`H)47*T#`16'@/;`]!R%R@'T63#'@X`,A<D#.`RIQ
  126. MT-D"(7(P&F%X63$9!2LQD`0$7!0&W@.0-Y9"$C1S,$LY*S$P]SB=+2!`0I,9
  127. MED\Y@3H`7V%;&%1A85P4MCT'YQ/&FV&=+1"1`FX`$)$"6`#@OF022[8,!.\_
  128. M4`,$SG,0(@=!2D"0031SL!(#12918Q+O/U`#!%P4!MX#(7+`VP-T)I9G$5L8
  129. MI%EB'*>SA4%./<";89TM`*P#\!56$E$K,4`S!S@4AH1!+"IP``!8.!1F*V*\
  130. M&=;9`BPJ<```D)-1L!(#YQ/&FV&=+<"B`@<`\#@9!2LQ4!<$84&@N&0REH,!
  131. M.2LQ0!0Y*S%PZ0:=+8`8`PU`,-@#'QDFX3\C,M`4!-,8UMD"#"&V$@-_03"-
  132. M89TMP!!B*S'`L633&-;9`HDBQEECEV[0V0*(!Q2H`^`5MA(#@3JP$@/I0#"-
  133. M89TMD/\#&__3V0*(!_0-!.>ILQ(#`T"P\3^=+8!X0!$I@/[_YZFS$@--.18A
  134. M.X$ZL!(#\T`PC6&=+9#_`QO_T]D"B`?D0&&O5("*8=']X^0#K`^&`$%\%.;X
  135. M!EE4`&!A*S$P``0;_]/9`H@']!8:*S'0E&.=+8!X0`X4]J9C]Q@6W3_I50!@
  136. M8:]4X.0#;C*``$$K,1"H`RLQ@!@#Z4`PV`,?&2;A/PX^L`($]SXPA%&1)H9#
  137. M88`3QML#B#&`A$'&$+2%03H]UMD"2!B$)0,2_K,2`PPGQD9A#4!01`6!.K`2
  138. M`^V[`*P#,S5VZ0:V$U858V2*0Q0YS^*TKCB7=$"*05L8M!(#N$YPMSB0BX,`
  139. .0>BAHPP31)%32CDK,0``
  140. `
  141. end
  142. size 869
  143. END--cut here--CUT HERE--
  144.