Giovanni Corriga gcorriga@unica.it wrote:
But the middle button is the right button. The right button is the wrong button. The left button isn't the right one either.
Tim, can you expand your thoughts here? It may be my past Linux & Windows experience, but I feel the right button to be better then the middle one for invoking the menu.
The original format I got used to - since it was the only available GUI at the time - was Smalltalk's; left button to select, middle button for context menu, right button for window menu. That is a good hierarchy of meaning, going from very local (a single pixel, a character range, a button, a list item) upwards to the near-global of changing the menu.
I should mention that the current Squeak idiom (idiocy!) of using the select button to open a menu when on the main display is really stupid and can only be explained by the initial connection to Mac single button mice. Which is another dim idea.
The other good use of three buttons I'm familiar with (partly because I helped define it) is from RISC OS. There we have again the left button being to select and the middle button to open a menu. However the right button is a bit more interesting; it 'adjusts' the selection. It's a bit difficult to explain this without it seeming incredibly complicated but it works extremely well.
At the simplest level, 'adjust' can extend or shrink a text selection - like using shift-select in Squeak - or add/remove files to a selection in a filer window - like using option-click(?) on Macs. It can also 'adjust' the scrolling action; use select on the down scroll arrow and your text will scroll up as expected but 'adjust' and it will go in reverse. No need to move the mouse. Works for single line scroll and page jump. Saves motion.
It also works in menus. RISC OS menus are a little different to Squeak menus in that you must click on a menu entry to choose it. If you 'adjust' on a menu entry it selects BUT does not dismiss the menu and lets you select more items. For example, one can do menu>'select all' and menu>'ROT13 selection' without having to open the menu twice.
While I'm on the subject of menus, RISC OS uses an interesting approach born, I think, of a lack of understanding of the idea of subpanes back in 88 when we were doing the initial stuff. Even though I shewed off Smalltalk running on handmade prototypes and illustrated the menus, the RISC OS GUI ended up with the idiom of a main menu for the app window that is essentially a vertical menubar with 'very common' entries in the top level. Since hierarchical menus work very well if done fast this is surprisingly effective; add in rapid rebuilding of menus to account for whether anything is selected or not and it makes for a very fast GUI. Oh, and no having to move the mouse to the top of the screen or top of window and pick a tiny target a long way away.
In RISC OS web browsers we use select to follow a link, just like any other platform, but 'adjust' on a link opens a new tab/window - just like apple-click in safari but without needing to reach for the keyboard.
Basically, three buttons is a good number for mouse buttons since you can hold the mouse with littlefinger and thumb and use three fingers for buttons. Assuming of course that the mouse if physically well designed and believe me most of them are not. Scrollwheels? Yuck. If you have three buttons, use them sensibly.
So, that's the outline of why three buttons are good and why the menu should be on the middle button.
tim -- Tim Rowledge, tim@sumeru.stanford.edu, http://sumeru.stanford.edu/tim Any sufficiently advanced bug is indistinguishable from a feature. - Kulawiec