An Ideal System Browser

Tim Rowledge tim at sumeru.stanford.edu
Fri Nov 30 19:08:45 UTC 2001


Peter Crowther <peter.crowther at networkinference.com> is widely believed to have written:

> > From: Lex Spoon [mailto:lex at cc.gatech.edu]
> [...]
> > Overall, Multiple-Windows seems like a safer default.
> 
> I agree, but maybe it should be exactly that --- a default, with navigation
> buttons appearing on browsers if a developer decides to change that default?
> 
> A more interesting question is: what should the interface do to support
> *both* behaviours?
Acorn RISC OS has a possible solution to this, at least the UI paradigm
part.
Normally we use the red button to open a new fileviewer (or follow a web
link, etc) and the blue button to open a new file viewer _and_ close the
original (or open a new web window on the selected link).

If you read the above it will surely sound confusing - in one case the
red opens a new window, in the other it doesn't - BUT the key that makes
it all work is the underlying logic. I'll try to explain it:-
Red button is 'select'. This (just like in Smalltalk) marks an item or
text location. D-Clicking on it will select and do the default action,
which in a fileviewer is to open the selection; for a file it will
invoke the appropriate application and for a directory the application
is a new fileviewer.
Yellow button popsup a window-context menu (almost as good as
Smalltalk!)
Blue button 'adjusts' the selection. This is an interesting concept that
allows extension of the text selection (like shift-red in squeak) or
adding/removing to the selections in a list. It is also used as a way to
do a  sort-of opposite select-click. For example, blue-d-click on a file
invokes the appropraite application _and_ closes the fileviewer. For a
directory, it opens a new fileviewer and closes the orginal (could
reasonably be implemented as 'diving', but happens not to be) and in a
web browser it follows the link by opening a new window (which is
extremely useful and I have munged my mac to be able to do the same when
the three button mouse is attached). On scroll buttons etc it also has
the useful property of _reversing_ the action - so I can scroll up and
down without moving the mouse all over the place!

So how could this be useful in Squeak browsing? Perhaps make blue-click
on a category/class/protocol/message open a new browser instead of
changing the current one? Maybe in a messagelist browser, make it _add_
the found implementors/senders instead of making a new browser?

As a concept it seems to work really well. Despite the sort of apparent
complexity that is probably making Macbigots scream, it is very popular
with kids, who take to it incredibly quickly.

Just a thought for a cold friday morning.

tim

-- 
Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
Strange OpCodes: BSO: Branch Sort Of





More information about the Squeak-dev mailing list