Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!uakari.primate.wisc.edu!aplcen!haven!mimsy!brillig.umd.edu!don From: don@brillig.umd.edu (Don Hopkins) Newsgroups: comp.cog-eng Subject: Re: Menu Interaction Techniques Summary: "touch typing" with pie menus Keywords: mouse ahead, pie menus Message-ID: <19812@mimsy.UUCP> Date: 26 Sep 89 23:22:46 GMT References: <2722@trantor.harris-atd.com> <16179@brunix.UUCP> Sender: nobody@mimsy.UUCP Reply-To: don@brillig.umd.edu.UUCP (Don Hopkins) Organization: U of Maryland, Dept. of Computer Science, Lines: 150 In article <16179@brunix.UUCP> jhc@iris.brown.edu (James H. Coombs) writes: >In article <2722@trantor.harris-atd.com> chuck@melmac.harris-atd.com >(Chuck Musciano) writes: > >> I contended that each menu usage would require a visual >> search and explicit select action, making it harder to use. > >I have seen no research on this, so I will offer an observation. I >frequently find that I select the wrong item or no item at all when >I attempt to select from a menu without focusing my vision on the >desired item. I have not experienced the equivalent of touch typing >with menu selection. D. A. Norman is right on target: menus are >optimized for selection but pessimized for performance. > >--Jim > "Mouse ahead" (the mouse equivalent of "touch typing") works very well with pie menus. Since each pie menu item is in a different direction from the cursor, you can make a menu selection very quickly without looking at the menu, if you know which direction it's in. Linear menus require your visual attention, because they depend on the distance you move the cursor, and you can't tell that for sure without looking. Pie menus just depend on the direction of movement, with the added advantage that you can move the cursor out further in whatever direction to get more angular precision (pie slices are much wider on the outside of the pie than in the middle). I found that mousing ahead into familiar pie menus was so easy, that I implemented "mouse ahead display supression", where the display of menu is supressed if you complete a selection fast enough. This feature really speeds up interaction with commonly used menus, such as the menu of window managment functions. If you know the direction of the item you want, then there is no need to see the menu, and it really slows down interaction for the computer to pop it up, paint it, and pop it right back down, after you've already completed the selection. I use pie menus regularly, and I can make menu selections reliably and quickly from a reasonably sized pie menu (8 items is /very/ reasonable), even with my eyes closed. Pie menu interaction is very gestural, and the layout of the items in a pie menu can be designed to take good advantage of muscle memory. Of course, muscle memory only helps you with static menus. When the number of items in a pie menu change, the direction you have to move the cursor to select each item changes. I agree with Chuck, especially in the case of pie menus, that muscle memory really helps speed up interaction with static menus, but muscle memory works against you with dynamic menus. Enclosed is a blurb about pie menus. If you would like to try them out first hand (the only way to really know what they're like), I'd be glad to send you the PostScript source code that implements them for the NeWS window system, along with a window manager designed to take advantage of pie menus. My implementation is in the public domain, and freely redistributable. The idea is not patented or proprietary, and I encourage you to implement them for your favorite toolkit; just send me some mail, and I'll share with you what I've learned. -Don Directional Selection is Easy as Pie Menus! Don Hopkins University of Maryland Human Computer Interaction Lab College Park, MD 20742 (301) 454-1517 Simple Simon popped a Pie Men- u upon the screen; With directional selection, all is peachy keen! The choices of a Pie Menu are positioned in a circle around the cursor, instead of in a linear row or column. The choice regions are shaped like the slices of a pie. The cursor begins in the center of the menu, in an inactive region that makes no selection. The target areas are all adjacent to the cursor, but in a different directions. Cursor direction defines the choice. The distance from the menu center to the cursor, because it's independent of the direction, may serve to modify the choice. The further away from the Pie Menu center the cursor is, the more precise the control of the selection is, as the Pie slice widens with distance. With familiar menus, choices can be made without even seeing the menu, because it's the direction, not the distance, that's important. "Mousing ahead" with Pie Menus is very easy and reliable. Experienced users can make selections quickly enough that it is not actually necessary to display the menu on the screen, if the mouse clicks that would determine the selection are already in the input queue. The circular arrangement of Pie Menu items is quite appropriate for certain tasks, such as inputing hours, minutes, seconds, angles, and directions. Choices may be placed in intuitive, mnemonic directions, with opposite choices across from each other, orthogonal pairs at right angles, and other appropriate arrangements. Pie menus have been implemented for uwm, a window manager for X-Windows version 10, for the SunView window system, and for NeWS, Sun's extensible PostScript window system. Don Hopkins did the uwm and NeWS implementations, and Mark Weiser did the SunView implementation. Jack Callahan has shown Pie Menus to be faster and more reliable than linear menus, in a controlled experiment using subjects with little or no mouse experience. Three types of eight-item menu task groupings were used: Pie tasks (North, NE, East, etc...), linear tasks (First, Second, Third, etc...), and unclassified tasks (Center, Bold, Italic, etc...). Subjects were presented menus in both linear and Pie formats, and told to make a certain selection from each. They were able to make selections 15% faster, with fewer errors, for all three task groupings, using Pie Menus. Ben Shneiderman gave advice on the design of the experiment, and Don Hopkins implemented it in Forth and C, on top of the X-Windows uwm. The disadvantage of Pie Menus is that they generally take up more area on the screen than linear menus. However, the extra area does participate in the selection. The wedge-shaped choice regions do not have to end at the edge of the menu window -- they may extend out to the screen edge, so that the menu window only needs to be big enough to hold the choice labels. Proper handling of pop-up Pie Menus near the screen edge is important. The menu should idealy be centered at the point where the cursor was when the mouse button was pressed. If the menu must be moved a certain amount from its ideal location, so that it fits entirely on the screen, then the cursor should be "warped" by that same amount. Pie Menus encompass most uses of linear menus, while introducing many more, because of their extra dimension. They can be used with various types of input devices, such as mice, touch pads, graphics tablets, joysticks, light pens, arrow keypads, and eye motion sensors. They provide a practical, intuitive, efficient way of making selections that is quick and easy to learn. And best of all, they are not proprietary, patented, or restricted in any way, so take a look and feel free! References: Pies: Implementation, Evaluation, and Application of Circular Menus By Don Hopkins, Jack Callahan, and Mark Weiser (Paper in preparation. Draft available from authors.) A Comparitive Analysis of Pie Menu Performance. By Jack Callahan, Don Hopkins, Mark Weiser, and Ben Shneiderman. Proc. CHI'88 conference, Washington D.C.: available from ACM, NY. A Pie Menu Cookbook: Techniques for the Design of Circular Menus By Don Hopkins (Paper in preparation. Draft available from author.)