d89-mlt@sm.luth.se (Morgan Lindqvist) (09/29/90)
Here comes a hide program for subdirectories and other object names, from M&M
Mattias Dahl & Morgan Lindvqist
d89-mdl@sm.luht.se d89-mlt@sm.luth.se
University of Lulea, SWEDEN
-------------------------------------------------------------------------
_ _ _ _ _ _
/ \ / \ / \ / \ / \
| | | | | | | | | |
| \ _ / | | | | \ _ / |
| |_| | \ / | |_| |
| | \ / | |
| | / \ | |
| | / \ | |
| | | \ / | |
/ | | | X / | |
\ _ / \_ \ _ _ _ / \ \ _ / \ _
-------------------------------------------------------------------------
Excuse for any grammar mistakes.
First we would like to thank Rick Grevelle for the SYSEVAL's
----------------------------------------------------------------
You can hide all objectnames and use the "programs, directories,
variables, ..." as usual.
NOTE! These programs will not work on HOME directory.
To hide a name(s) in a directory you must evaluate these programs
like this. ex. { HOME APPL HIDE } RCL EVAL
There "HOME APPL" is the path to the "HIDE"-programs directory.
--------------------------------------------------------------
EXAMPLE.
4:
3:
2:
1:_ _
MAT EXCO U137 X
_
To hide EXCO and the directory MAT.
4:
3:
2: { EXCO MAT }
1:_\<< { HOME_APPL HIDE } RCL EVAL \>>
MAT EXCO U137 X
Then press EVAL.
4:
3:
2:
1:_
U137 X
_
You can still use EXCO or MAT by typeing in EXCO or MAT .
---------------------------------------------------------
To unhide EXCO.
4:
3:
2: EXCO
1:_ \<< { HOME APPL UNHIDE } RCL EVAL \>>
U137 X
Then press EVAL
4:
3:
2:
1:_
U137 X EXCO
---------------------------------------
To wake up all hided names.
4:
3:
2:
1:_ \<< { HOME APPL WAKEUP } RCL EVAL \>>
U137 X EXCO
Then press EVAL
4:
3:
2:
1:_ _
U137 X EXCO MAT
---------------------------------------------------
USAGE:
HIDE 1: { 'names' } -> none
OR 1: 'name' -> none
UNHIDE 1: { 'names' } -> none
OR 1: 'name' -> none
WAKEUP 1: none -> none
--------------------------------------------------------------------
DIR
HIDE
\<< 0 VARS "" # 05B15h SYSEVAL PURGE VARS \-> hideobj hsize dirobj allobj
\<< hideobj allobj dirobj SIZE 1 + allobj SIZE SUB + DUP 'hideobj' STO
SIZE 'hsize' STO \<< \>> "" # 05B15h SYSEVAL STO dirobj SIZE
IF DUP THEN
1
FOR x
0 'dirobj' x GET 1 hsize
FOR y
DUP 'hideobj' y GET SAME ROT OR SWAP
NEXT
SWAP
IF NOT THEN
{} + ORDER
ELSE
DROP
END
-1
STEP
ELSE
DROP
END
\>>
\>>
UNHIDE
\<< VARS SWAP + ORDER \>>
WAKEUP
\<< "" # 05B15h SYSEVAL PURGE \>>
END