

Article 1522 of comp.cog-eng:
Path: mimsy!tank!ncar!mailrus!tut.cis.ohio-state.edu!rutgers!bellcore!dduck!michael
>From: [email-masked] (Michael Muller)
Newsgroups: comp.misc,comp.cog-eng
Subject: Re: Multi-button mice
Message-ID: <[email-masked]>
Date: 2 Jan 90 01:25:11 GMT
References: <[email-masked]> <[email-masked]> <[email-masked]> <[email-masked]> <[email-masked]>
Sender: [email-masked]
Reply-To: [email-masked] (Michael Muller)
Organization: Bellcore, Piscataway, NJ
Lines: 107
Xref: mimsy comp.misc:8266 comp.cog-eng:1522

We took a somewhat different approach:  we put tiny icons in the image 
of the cursor/pointer, and moved them around when the pointer moved.
The shape of the resulting image was spatially related to the 
button locations on the mouse.  The notion was that this would serve 
as a constant reminder to the user of what was associated with each button.  

For a two-button mouse, the cursor image looked something like
this (assume a decent bit-mapped representation, please!):

      ^
     |||
    |||||
  +---+---+
  |LLL|RRR|      where 
  |LLL|RRR|        "LLL" is the icon region for the left button
  |LLL|RRR|        "RRR" is the icon region for the left button
  +---+---+

A three-button mouse, with single-click and double-click protocols,
would have a cursor something like this:

         ^
        |||
      |||||||
   +---+---+---+
   |lll|mmm|rrr|   
   |lll|mmm|rrr|        (single-click icons)
   |lll|mmm|rrr|
  ++---+---+---++
  ||LLL|MMM|RRR||
  ||LLL|MMM|RRR||       (double-click icons)
  ||LLL|MMM|RRR||
  ++---+---+---++
  +-------------+

As the cursor image grew larger with greater functionality (we
had one for chords, too), we resorted to a time-delay pop-up
arrangement in which the cursor's _pointer_ was always visible,
but the reminder icons would pop up near the pointer only when
the had not moved the pointer for some criterial delay interval.  

  (always    (pop up after
  visible)   criterial delay)

     _
    |\       ...........
      \      ...........
       \     ...........
             ...........
             ...........
             ...........
             ...........
             ...........

We considered making the criterion for the delay into an adaptive parameter 
in a user modeling scheme -- i.e., short for novices or right after 
a mistake, longer for experts or people who seemed to know what they 
were doing.  But we never had a chance to go that far.
  
This work was reported in the CHI'88 and Graphics Interface '88 Proceedings.  

KMS uses a similar approach, involving letters within a cursor shape
-- e.g., 

       /|\
        |
     +--+--+
     |C M D|
     |O O E|
     |P V L|
     |Y E  |
     +--+--+

The major difference between the KMS technique and ours was this:  
KMS provided a fixed set of pre-chosen function-to-button assignments,
whereas we permitted users to tailor their own assignments.  That is,
our users could put any tool's icon in any of the slots in the cursor
image.  KMS loaded an _entire_ cursor image at one time, with pre-
assigned locations for each of the tools in that image.  I don't
know how a comparison of the two techniques would have turned out:
Direct comparisons were difficult, because the functionality that was 
accessed by the two systems (KMS and ours) was quite different (and
in any event, Bellcore doesn't publish comparative analyses as a 
general rule).  Other related work is reviewed in the two papers.

We also provided a _cycle_ operation, whereby users could load a sequence
of operations into one (or more buttons), and then use a second button
to cycle through that sequence (e.g., edit-compile-link-debug as a
sequence, or edit-spellcheck-format-print as another).

We never got a chance to test the usability of our project.  In general,
responses to it lay along a continuum, each of whose two end-points 
was clearly enunciated by at least one reviewer:

  "A technique which adds clarity intelligibility to the interface,
  while minimizing cognitive load."

  "Just another way to garbage up the cursor."

Michael Muller  Bellcore  444 Hoes Lane  Piscataway, N.J.  08854  US  
                ..!bellcore!ctt!michael  (201) 699 4892
                [email-masked]

I am not a spokesperson for my employer, but sometimes I wish I were.
Michael Muller  Bellcore  444 Hoes Lane  Piscataway, N.J.  08854  US  
                ..!bellcore!ctt!michael  (201) 699 4892
                [email-masked]