RE:List Manager UPDATE
Posted in 1992
Update to Dynamic List Manager
This has grown into a real project almost. I have made numerous changes
to the show_list functions, primarily because I have finally learned some
things about the input array statement.
1. Modified page down to not do a redisplay until done. This gets rid
of the ripple effect.
2. Created a "skipbox" field at the end of the form instead of using
the actual noentry field. This made some code in the input work
better and balanced out the form better.
3. Fixed a problem with using the stack when a routine is called that
does an input array. set_count was not being executed when function
returned so screen was screwed up. Only when the counts were different.
4. Displays for highlight bar were in the wrong place.
5. Cursor did not address properly on the first list when you return
from a routine.
6. Had some problems with core dump in compiler for what appeared to be
long variable names. Shortened some of the globals names and changed
them all.
7. Not sure about the base 10 option switches yet. You can always return
to a list server and ignore the function call. My original thought
was to be able to control them dynamically though the list server.
In order to do this the code needed to be moved to the top of the
show_list function and execute every time you reenter. This may be
a worthless feature.
8. Changed the call parameters to include the screen array length.
I also added a second routine to call another list so you can see how
it works.
Walt, if you have in interest in archiving this let me know and I'll
package a better demo when problems are resolved.
Feedback is welcome.
Michael J. Kuhn Consultant phone:410-254-7060
Email: rhlab!kuhn@uunet.uu.net or uunet!rhlab!kuhn
c/o Baltimore Rh Typing Laboratory, Inc. phone:410-225-9595
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of shell archive."
# Contents: f_list.per f_list1.per f_rel.per f_test.per f_test1.per
# intro liblist.4gl relation.sql statecd.sql
# Wrapped by kuhn@rhlab on Mon Mar 16 11:53:46 1992
PATH=/bin:/usr/bin:/usr/ucb ; export PATHif test -f 'f_list.per' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'f_list.per'\\"
else
echo shar: Extracting \\"'f_list.per'\\" \\(459 characters\\)
sed "s/^X//" >'f_list.per' <<'END_OF_FILE'
Xdatabase formonly
Xscreen size 24 by 80
X{
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X}
Xend
Xattributes
Xa = formonly.checkbox type char, autonext;
Xc = formonly.liststr type char, autonext;
Xb = formonly.skipbox type char, noentry;
Xinstructions
Xscreen record list_array[5] (formonly.checkbox, formonly.liststr,
X formonly.skipbox);
Xdelimiters " ";
Xend
END_OF_FILE
if test 459 -ne `wc -c <'f_list.per'`; then
echo shar: \\"'f_list.per'\\" unpacked with wrong size!
fi
# end of 'f_list.per'
fi
if test -f 'f_list1.per' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'f_list1.per'\\"
else
echo shar: Extracting \\"'f_list1.per'\\" \\(610 characters\\)
sed "s/^X//" >'f_list1.per' <<'END_OF_FILE'
Xdatabase formonly
Xscreen size 24 by 80
X{
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X[a|c |b]
X}
Xend
Xattributes
Xa = formonly.checkbox type char, autonext;
Xc = formonly.liststr type char, autonext;
Xb = formonly.skipbox type char, noentry;
Xinstructions
Xscreen record list_array[11] (formonly.checkbox,formonly.liststr,
X formonly.skipbox);
Xdelimiters " ";
Xend
END_OF_FILE
if test 610 -ne `wc -c <'f_list1.per'`; then
echo shar: \\"'f_list1.per'\\" unpacked with wrong size!
fi
# end of 'f_list1.per'
fi
if test -f 'f_rel.per' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'f_rel.per'\\"
else
echo shar: Extracting \\"'f_rel.per'\\" \\(134 characters\\)
sed "s/^X//" >'f_rel.per' <<'END_OF_FILE'
Xdatabase drawdb
Xscreen size 24 by 80
X{
Xrcode [f000 ]
X
X
X}
Xend
Xtables
Xrelationship
Xattributes
Xf000 = relationship.rcode;
Xend
END_OF_FILE
if test 134 -ne `wc -c <'f_rel.per'`; then
echo shar: \\"'f_rel.per'\\" unpacked with wrong size!
fi
# end of 'f_rel.per'
fi
if test -f 'f_test.per' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'f_test.per'\\"
else
echo shar: Extracting \\"'f_test.per'\\" \\(112 characters\\)
sed "s/^X//" >'f_test.per' <<'END_OF_FILE'
Xdatabase formonly
Xscreen size 24 by 80
X{
X[b ]
X}
Xend
Xattributes
Xb = formonly.xfield type char;
Xend
END_OF_FILE
if test 112 -ne `wc -c <'f_test.per'`; then
echo shar: \\"'f_test.per'\\" unpacked with wrong size!
fi
# end of 'f_test.per'
fi
if test -f 'f_test1.per' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'f_test1.per'\\"
else
echo shar: Extracting \\"'f_test1.per'\\" \\(139 characters\\)
sed "s/^X//" >'f_test1.per' <<'END_OF_FILE'
X
Xdatabase formonly
Xscreen size 24 by 80
X{
X
X [b ]
X
X
X}
Xend
Xattributes
Xb = formonly.xfield type char;
Xend
END_OF_FILE
if test 139 -ne `wc -c <'f_test1.per'`; then
echo shar: \\"'f_test1.per'\\" unpacked with wrong size!
fi
# end of 'f_test1.per'
fi
if test -f 'intro' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \\"'intro'\\"
else
echo shar: Extracting \\"'intro'\\" \\(1686 characters\\)
sed "s/^X//" >'intro' <<'END_OF_FILE'
XUpdate to Dynamic List Manager
X
XThis has grown into a real project almost. I have made numerous changes
Xto the show_list functions, primarily because I have finally learned some
Xthings about the input array statement.
X
X1. Modified page down to not do a redisplay until done. This gets rid
X of the ripple effect.
X
X2. Created a "skipbox" field at the end of the form instead of using
X the actual noentry field. This made some code in the input wo