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