Newsgroups: comp.sys.mac.programmer Path: utzoo!utgpu!jarvis.csri.toronto.edu!ephemeral.ai.toronto.edu!dudek From: dudek@ai.toronto.edu (Gregory Dudek) Subject: Re: Append menu is slow. Message-ID: <89May10.154646edt.10758@ephemeral.ai.toronto.edu> Keywords: AppendMenu menu slow efficiency Organization: Department of Computer Science, University of Toronto References: <89May9.171757edt.11077@ephemeral.ai.toronto.edu> <554@biar.UUCP> Date: Wed, 10 May 89 15:46:41 EDT Context: >>The application I am writing needs to create some large menus; up to >>128 items (sometimes more). I know, that's uuuugly but I want to >>allow selection from a long list of undifferentiated items. In article <554@biar.UUCP> trebor@biar.UUCP (Robert J Woodhead) writes: > >DO NOT USE MENUS IN THIS WAY. It is contrary to the spirit of the Mac >user interface. Use a scrolling list instead, for several reasons: > [some good reasons, not all of which apply to my case, deleted] > >Quite frankly, the fact that you are having this problem indicates that >your user interface requires serious rethinking. A huge list of >undifferentiated items is a perfect example of what a user should NEVER >be faced with, because he/she will never be able to find the thing they >want when they want it. If possible, menus should have <10-15 items. > (Long response & justification follows...) This is the kind of religious dogma that keeps coming up here. "you are doing a bad thing. It's against the guidelines! It's against the law! Open your eyes!" Sure, pointing out the potential problems with an approach may be useful. Yes, of course I know that large menus have problems associated with them. Maybe you should consider the possibility that I have a problem you may not have encountered before, and that this solution is might be appropriate in this context (despite its apparent ugliness). Basically, I want to be able to select items from large groups of user-defined objects. The objects aren't graphic and the semantics of the objects aren't known to the program (they are created outside the program). This kind of situation arises in programs that support large numbers of user-defined macros. It is often difficult to structure the available macros except in a long list (either that, or FORCE the user to structure them - a bit fascistic). Worse yet, in my case I may have a whole bunch of such lists. I am using popup menus for them. At least they popup with the currently selected parameter value under the mouse. The problem is that creating them dynamically is to slow. An analogy might be drawn to a utility for manipulating different groups of files. The finder does it by having lists of files pop up when you open a folder. This metaphor works well when you're staying in one open folder for a while. When you want to pick a file here & a file there (or in may case, set a parameter here, a parameter there) the desirability of having all those overlapping lists becomes questionable. Since the item-lists have no structure I know of, no hierarchical decomposition can be used. In short, I (still) need long popup lists that allow you to make a quick choice, then they dissapear. Sure sounds a lot like a popup menu. My apologies for the length of this reply, but I wanted to try and make my point fully & avoid further scolding. Greg Dudek -- Dept. of Computer Science (vision group) University of Toronto Nice mailers: dudek@ai.utoronto.ca UUCP: {uunet,decvax,linus,pyramid, dalcs,watmath,garfield,ubc-vision,calgary}!utai!dudek ARPA: user%ai.toronto.edu@relay.cs.net