JohnFredC wrote:Pierre... the category assignment UI ... drag & drop is awkward to use. The only aspect of category assignment I think works well is the Preview's "Set categories..." context menu.
I agree, "drag & drop" is always awkward if the target is small - see footnote. Drag & drop is OKish for "lightweight categorisation", i.e. where there aren't many categories, and a thumb is only assigned to one or two categories.
JohnFredC wrote:The only aspect of category assignment I think works well is the Preview's "Set categories..." context menu.
I'd say the category tab within the Preview/Properties pane also works OK, and its better for assigning an image to multiple categories. However like the Preview context menu item it's a "one file at a time" operation. This I find really strange because it would seem so "natural" to allow assignment of categories in this instance to multiple items. I'm fortunate in having a 30" @ 2560 x 1600 monitor, so I can do most categorising off the thumbs, i.e. I usually don't need to examine an image in detail in order to categorise that image.
I'd like to suggest that the categories Tab have an option to present the category tree in a horizontal orientation, it would be much easier to drive when the category assignment tree is in a horizontal panel (e.g. the 3rd layout style). Photo Mechanic provides a horizontal style for categories, and I've found it to be very good. HindSight have a MAC app called metaMachine that has a horizontal orientation, I've seen it but I've not used it in anger - there were rumours of a Win version, but as far as I know it's yet to surface.
I fully concur with John's comments regarding the +/- symbols, the way it's currently working is very inconvenient.
I'd also like an option that causes category assignment to be bubbled up the tree - thus something assigned to kitten, would be also assigned to cat, companion, domestic and animal assuming the hierarchy ran something like
Code: Select all
animal
domestic
companion
cat
kitten
adult
dog
puppy
.
.
You might want to make that an option, i.e. a Bubble Up Category Assigns check box.
On Drag & Drop
Holding the mouse button down whilst moving the pointer to the target and then releasing the mouse button often moves the pointer from the intended target to an adjacent target. This is because the wrist is being held under tension whilst the pointer is being moved with left button down. As the button is released the tension in the wrist falls away which can result in a slight movement of the pointer just prior to detection of the mouse left button up event, this movement often results in the items falling into the wrong bucket. This would be less of a problem if mice had a thumb operated drag button, and the drop was initiated by a right button click - but that ain't gunna happen, well not in my lunchtime.
An alternative (and IMO opinion an often better) approach to "drag & drop" is "pick & deliver". One selects the item(s) in the normal way, then right click, select
Pick, move the pointer (no buttons down) to target, right click (that identifies the target) select
Deliver, its akin to cut & paste. Once you've done the Pick, you can take a sip of coffee, go to the bathroom, answer the phone and then do the Deliver.
The "pick & deliver" approach works particular well when the source and target are some way apart, when "dragging & dropping" one is often forced to use "edge" scrolling which can be a real pain. However with "pick & deliver" the scroll bars, navigation keys, tree expand/collapse, open another window etc, are all available between the Pick event and Deliver event; this because there are no buttons to be held down between the two events.
The two approaches are NOT mutually exclusive, "drag & drop" uses the right mouse button, whilst "pick & deliver" uses the left mouse button; so there's no reason why an application cannot provide both methods. The only issue is that SDKs usually provide high function support for drag and drop, whilst one has to do a bit more work at a lower level for "pick & deliver" - e.g. you have to stash the selected items in storage that's session persistent, whereas with "drag & drop" the SDK usually takes care of that, and you've got to add items to the relevant context menu's.
A simple (and free) software gadget that does a good job of illustrating the "pick & deliver" approach is Link Shell Extension (LSE) by Hermann Schinagl, it adds items to the shell menu for the manipulation of NTFS hardlinks, junctions and symlinks (Vista only). Google will find it for you, if your interested.
LSE uses "Pick Link Source" and "Drop As ..." as the content menu items for what I've called Pick and Deliver. Those terms are relevant to LSE's purpose, a Pick(ed) Link Source can be Drop[ped ] As one of several things - a junction, a hardlink, a symlink or a clone. If one were doing a "pick & deliver" interface for media categorisation then one might use "Select" and "Assign" as the context menu names.