submenus & hiearchies (was the popup problem in os9)
william griffin
bill at igame3d.com
Sun Oct 24 01:39:59 EDT 2004
Wherein Bill rants On the subject of submenu limits, hiearchies,
Apple's BS..erHIG guidelines.
>
> Date: Sat, 23 Oct 2004 17:41:14 -0700
> From: Richard Gaskin <ambassador at fourthworld.com>
> There's a reason Apple built that limitation into the OS -- from the
> HIG:
> ----------------
> Because submenus add complexity to the interface and are physically
> more
> difficult to use, you should use them only when you have more menus
> than
> fit in the menu bar or for closely related commands. Use only one level
> of submenus. If a submenu contains more than five items, consider
> giving
> it its own menu.
>
> <http://developer.apple.com/documentation/UserExperience/Conceptual/
> OSXHIGuidelines/index.html>
> ----------------
>
Aaah, what do they know?
They did AWAY with that particular limitation in OS 8.6 (thats almost a
decade ago)
They've added so many irritating UI flaws in the past few years users
and developers
are running around hacking Apples mistakes off the interface tree like
a bug infestation.
There's plenty of examples where they break there own rules or
suggestions, like the applescript menu, or browsing a CD of movies and
stalling the computer for minute while the selected file attempts to
play in the wretched list view (how counter-productive). Look in your
Application Services menu how many submenus? Right more than five, well
it is in mine.
Photoshops filter menu has broken that submenu "suggestion" since 1991,
and Abobe rules the UI universe (except on Sundays and Holidays, or
where prohibited by operating system deficiency or lack of three
monitors).
Last time I downloaded the HIG it said "This document is unfinished",
to me that said "we realized we are totally full of BS and can't come
up with anymore rules to make your life hell"
One of Apples best apps ever is Final Cut Pro, and it works and looks
like NO other Apple application, because it was developed originally on
Windows. They should have followed the theme and made Final Desktop
Pro, and Final Developer Pro, oh yeah!
Following HIG my menu bar would look something like this
ð Application File Edit Import Levels Make Import Mesh Scripts
Console Windows Help
(change to what is it, 12 point or 14 point type for full effect)
The File menu (which deals with files) would have all of maybe 4 lines
in it
The Import Menu (which deals with files) would have 110 to infinite
submenus in it
The Levels Menu (which deals with files) would have 110 to infinite
submenus in it (or lines depending on how I use it)
The Make Menu (which deals with files) would have 100 to infinite lines
in it
The Scripts Menu (which deals with files) would have 110 to infinite
submenus in it
The Console Menu (which was made because menuMode bug broke my buttons
in the stack) has three submenus
The Mesh Menu has 4 submenus
Whats the problem with all that? A massive spread of menu with
redundant items (dealing with "File") that are only relevant to the
user about 3% to 9% of the time they are using the application per
session, often for one hit selections (unlike say the edit menu where
you might use copy/paste/undo 100 times a session, or the mesh menu
where you might need to repeat some mesh actions two dozen times).
And there is zero room for menu growth should I go on a features
bonanza (again).\
From the HIG "or for closely related commands"...File Input items are
about as close as you can get.
The desired UI is click the File menu, mouse over to the thing you want
(Level,Make,Script,Import), view nice alphabetical list of either files
or subdirectories > mouseover to selection > pick thing > RESULTS!
All that nicely where it belongs...under FILE. All with TWO CLICKS.
Thats efficient, not complicated or difficult to maneuver.
Compare to using file dialogue, my stomach rolls just thinking of it:
Open file dialogue, dig many many directories to your desired file,
view any number of files and folders that have nothing at all to do
with the desired result, click the file, click open. Repeat.
Oh how I loathe open/save dialogues in OS X. (remember when you could
hit a key on the keyboard, and it selected the file with that
character? those were the good old days)
> I'm generally first in line to blow off OS-specific edicts, but given
> my
> own frustration with submenus I wonder if a hierarchical browser
> (multi-list perhaps, like the Finder's NeXT-style view) would be a
> smoother ride for the user....
>
You don't mean column view do you? *reaches for barf bag*
(oh damn this one is full after dealing with Applescript Library all
day)
UI revision #3 started on that route, and it quickly became obvious
that life became a "click, click click click, damn where is that thing
I want click click" --living hell. The Multi-List takes up a lot more
room and user work than its worth.
Finder's list view coupled with drag and drop would be a desired
method,( think XCODE or CodeWarrior meets Ray Dream Studio meets Final
Cut Pro), although its cluttersome with so many options/folders/ files,
and many more clicks to get to the desired one shot option.
There is NO standard method or function for making this (hierarchal
list view) efficiently that I know of.
I created something similiar a long while back, took me forever, and
then it exposed just how inefficient the method was, trying to fit
several hundred files in as small as space as possible, at least from
my limited knowledge of rev. Therein lies a problem, the user knowledge
level directly limits the user from being able to make a UI that
replicates methods used by the OS and dozens of programs.
It amazes me that after 20 years of file browser list view, there is no
simple method for viewing data this way. To me it seems there should be
some control structure, like a button of kind disclosure, and you set
the toggleDown data of that button to some data, and when you toggle
down it exposes the data, and fits everything in the list nicely and
cleanly, and when you click, double click or drag some content of that
data, you can track what disclosure hierarchy that data belongs to
without having to script every last thing.
For instance, 1,000 sub folders down I drag file A to subfolder
500...it moves the file, no problems, no questions asked, I double
click the file, it opens the file, no complications.
This re-invent the wheel stuff is counter-productive, and you end up
with things like Goodyear tires or my n00b file browser, both hazardous
to the health.
I have,by the way, tried that XML file tree walking example and it was
dog slow, so had to come up with my own method, which ended up, when
all was said and done, dog slow too.
We've spent the past seven days or more just (and finally and at long
last) creating a hierarchy
method for all the options that used to exist in several windows and
groups of the application (now one stack to rule them all! I hope), and
its no easy task.
Early preview : http://www.igame3d.com/igame3dhiearchyinspector.jpg
Ok thats my long winded opinionated rant for the season.
See you again in winter, when I will discuss why I should be able to
command the weather from a submenu, and access and change people's
thoughts via drag and drop hierarchal lists.
Mr Bill
More information about the use-livecode
mailing list