Couple of weeks ago there was a discussion about the possibility of a 2-window or multi-paned interface, which eventually led to the wish list item "Pane Relievers". When last I checked, that was still tied at #3 for most requested on the Wish List. Other discussions about the world domination of MJ have also had a minor theme running through them about improving the interface. In the 2-windows thread there was reference made to an earlier thread discussing the same thing, and JRiver Matt brought up the idea of a "bucket" that functioned as a drop target, would that be good as an alternative? The general tone of the thread seemed to be that it wouldn't.
On reading that, though, I didn't understand why. When I was talking about a 2nd window, this bucket thing was pretty much what I had in mind, if I was reading Matt correctly. I thought the bucket was kind of getting a bad rap as a concept, so I decided to put together the following screenshots to see if anybody else thought the same thing, and to provide a jumping-off point for more ideas about it for the eventual world domination of MJ. Et cetera.
Couple of disclaimers: These are just cobbled together from various pieces of other windows, so I didn't attempt any accuracy with the numbers depicted, before anybody helpfully points that out. I'm also aware of the graphical screwups, thanks for pointing that out too.
These are presented purely speculatively and without regard to how difficult it might be to actually do. I have no idea how difficult it would be to do. Considering I have a tough enough time not turning into Mr. Hyde when a client asks me for another radio button on a screen, my assumption is that it would be very difficult indeed. These shots and this text are all from Severian's Fantasy Software Development Kit, which produces bug-free software as soon as the interface idioms are thought up (Patent Pending). If things were as easy to do as they are to say, I'd be rich and the CIA would be figuring out how to extract what was left of bin Laden from the charred remains of his turban.
Anyway, here's the shots. In the first one, from an open tree in MJ 8.x or 9.x, the user, me, had previously been on the Media Library, so that the main window was showing all files in it. From there, I went to the External node of the Nomad on the tree and right-clicked on the node, which resulted in the following shot:
...the "New Window From Here" option, just like you see it in the standard Microsoft Management Console. In the real MJ right now you only get a menu with "Format" as the sole option, but I was illustrating that for every node you right clicked on you'd get a context-sensitive menu the way you do now, with the New Window option where it was relevant. Obviously on some nodes, it wouldn't be. The main node of the Nomad, for example, for those of you who don't have one (and you're probably better for it, in some respects, I have to say), would not have that option on its context menu because it doesn't make any sense. You can't do anything meaningful with the Nomad until you've targeted a specific memory location. And, of course, "Help" wouldn't be such a bad thing to have all over the place either.
I chose this node because it's the feature I'd use most often if this actually existed, and I'm selfish like that. More about what other nodes might produce after the next shot. In this next shot I have clicked on New Window From Here and it produces the following result.
And there it is--the bucket. Some notes on how the bucket actually works in fantasyland:
--The window is of the class sometimes referred to as the 'sizable toolwindow', in which it's possible to resize or close it, but not to minimize or maximize it. Whether this should or should not happen I leave for discussion, but those abilities would require an overhaul of the rest of the mega-me interface idiom and I wanted to show something that seemed to be able to be bolted on to the interface idiom as it exists now.
--The z-order, or order in which things appear front to back, works like so: The bucket window always appears in front of MJ exactly the way that the CD rip window does right now. You can move it all over the place, even outside the bounds of the MJ parent window, but they're chained together such that when MJ gets the focus, the child window is up front.
--You could open multiple node windows like this if you're into it. When that happens, whichever child window gets the focus comes to the front, but the parenting and z-order still works the same way. No other application windows are able to insert themselves into the stack between MJ and its child windows. If there are multiple child windows open and one in the back is used as a drop target from one in the front, the drop target doesn't automatically come to the front--for it to come to the front it has to be deliberately focused on with a click or keyboard shortcut. Standard Windows behavior.
--The actual bucket contents and controls are different for each node. If I'd had the time I would have made a playlist bucket, because I suspect that's what most people really want. But essentially you'd see different kinds of controls on each window that were appropriate to the function being performed. I can imagine that if you New Windowed a playlist, the bucket would be basically just the list. In fantasyland the bucket window for playlists would also appear with an honest-to-god toolbar in it that had buttons for functions appropriate to playlists: Export, Rename, and what have you. I can also imagine something like Doof's Ultimate Playing Now could be done like this. I'd just love to snap off those playback controls and float those while I screw around in the other areas of MJ too.
--When a node is New Windowed, MJ's main window goes back to another default node that isn't able to be New Windowed. Media Library, perhaps. The node that you got the bucket from should maybe be greyed or iconed so that the user can no longer activate its contents, which saves the user and the programmer from some godawful synchronization issues, and prevents dumb things from happening like basically allowing the bucket and main window to be self-referential drop targets and having evilness ensue, and/or a bunch of code to prevent that.
So, what I'd do in this specific example is drop my tracks onto the Nomad and hit upload. With this idiom, I could potentially fill my Nomad and be on my merry way in a right click, a left click, a drag select, a drag/drop, and a click of the Upload button. Gosh THAT would sure be nice.
Now, this is a badly designed bucket window. Why? Because we already know (and now you know, if you didn't) that it's not really possible to reorder tracks that are already on the Nomad. Just another marvelous feature of the device, frankly. Laying out the window in this way implies that you could drop tracks anywhere in the list, and that ain't gonna happen. What I should have done was depict something like two panes, where the lower one shows what's on the Nomad and the upper one is the drop target that can be reordered and dropped to.
What I found most interesting as I laid this out was that, even with such a small example window, look at how much space isn't being used effectively inside of it. The "In Queue" column would be removed if we made In Queue the top pane, the drop target. The column for "Handheld Path" is now completely worthless. Like duh, we know that we're looking at the external store for the Nomad, thank you title bar. So there's no need to clutter it up with other stuff.
Similarly the Available Size pane is being completely underused, as is the status line at the bottom. I could probably have moved the Available Size stats to the status bar, and done away with the pane, then repositioned the buttons, or made them a toolbar as I suggested earlier. No need to clutter it up with meaningless statistics, either, like the actual memory card size--if I don't know that, I'm a moron--or the total memory on both the Nomad stores, also valueless when targeting a specific store. What I want to know is how much space I've got now and how much I will have after upload. I could get those other stats, if they turn me on, from the main Nomad node in the main window and see both at once with this idiom.
So, whaddya think?
--Severian