[futurebasic] scrolling with cursor-arrows and other keys

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : October 1999 : Group Archive : Group : All Groups

From: Bowerbird@...
Date: Tue, 19 Oct 1999 13:22:28 EDT
jim said:
>   I have a wild desire ..
>   Is it possible to "Train" the up & down arrows to scroll a scroll btn ..
>   I use the left & right arrow to go next page & previous page .. 
>   And at  present .. 
>   the Up arrow to go last page and down arrow to go first page
>   BUT .. Now I'm thinking that "F" key to go 1st and "L" key to go last 
>   with the Up & Down arrows to scroll would be better
>   Am I "Whistling Dixie"

no, you ain't whistlin' dixie.
you're thinking about electronic books,
just like i wanted you too.              :+)

quick and easy navigation is a must-have for electronic publications.
"turning the page" must be as effortless in an e-book as in a paper-book.

i've thought a lot about questions like this,
and this is what i've come up with...

1a.  yes, it is possible to use cursor-up and cursor-down
to scroll an edit field, and it's actually a very useful feature.  
does anyone on the list have the demo i did handy to send to jim?

1b.  it's fairly easy to program, but things can and do get hairy.
in a nutshell, you just trap keystrokes (evnt=16, maybe _keypress?),
and then adjust the scroll button programatically.

1c.  the trapping part is very easy, done in fn dodialog.
check me, but when evnt=16, id=number listed for each key:
     28=left (30?)
     29=right (31?)
     4=end (or maybe it's 5?)

1d.  the "adjust the scroll button" part is what can get hairy.
complications happen when you've got an edit field that has text of
varying fontsizes, but that would take much too long to explain now.

2a.  for first and last, use the "home" and "end" keys, respectively. 

2b.  if you _did_ use up and down for first and last,
up should be used for first, and down for last.

3a.  also remember the page-up and page-down keys,
which should also be trapped to move back or forward a page, 
exact duplicates of your suggested use of the left and right keys.

3b.  i too, generally use left and right to go from page to page,
but in some cases, we'll want to use left and right for
some other purpose, and use just page-up/down for paging.

4a.  as for shorcuts and their command-names in words,
some people use "t" for "top" and "b" for "bottom";
but "f" and "l" for first and last is equally valid,
which shows that any set of command-names will be arbitrary,
which means users just have to learn whatever you decide.      :+)

4b.  along these same lines, remember that
other keys can be used to do other navigation.
for instance, i've used the tilda key as a "boomerang"
to return to the page viewed immediately previously,
somewhat similar to the "back" button in a web-browser
but more exactly like the "return" button on a t.v. remote.
likewise, i often use return and enter to go forward a page,
and a host of others (like plus and minus) for linear movement.

4c.  one of my favorite key-based forms of navigation is
typing in the page-number i want to go to and hitting enter.
that is so quick and useful that you can't even believe it...            :+)

4d.  finally, one of the most efficient forms of keyboard navigation
is one you might not think of as being in the class right offhand.
perhaps that's because it's not a single-keypress type of thing.
nonetheless, a good "find" capability can be a very good pilot,
which makes sense since electronic search can be so useful.