An Object Oriented File Manager Design
Before you ask, no there is no code...
- The idea is that you are not looking at a file manager application
displaying a folder, you are looking at a folder.
- Everything is done through mouse clicks and context menus and dnd.
- The context menu for the background is the context menu for the current
folder. This context menu has an "Open With->" item, allowing you to
open the current folder in an app, such as a terminal or music player.
- Clicking on a folder causes a new folder window to "grow out of"
the folder icon that has been clicked, as a window-open animation.
This looks good but also has similar usability functionality as the
minimise animation for windows : it shows where a window is comming from
and what it is showing.
- Folder viewer has "spring loaded folders" functionality. This lets
you drag an item onto a folder and have that folder open up in a new
window, before you release the mouse.
- Use's single click to provide consistency with the rest of the desktop.
Double click is superflous and having both options wastes developers' time
and decreases the quality of the software. Items can be selected with
the rubber band for multiple selections. There is never any need that
I know of to select a single item before either dragging it, opening it,
or right-clicking it.
File Vieweres
- File viewers always open in new windows so that the origional folder
is avaliable in the background, and so that it is clear that the file
is an new and independent object. Showing a file view in the same window as
the folder it was opened from is confusing.
- The context menu for a file being viewed contains an "Open With->" item
so that the file can be opened in a program without having to go back
to it's parent folder. The viewer would close once a file has been opened
in an editor.
Menus, Desktop, start-here: and URIs
There are no menus because they are un-necessary in a properly constructed
oo file manager. Everything is an object and functions are accessed through each
object's context menu.
start-here: is abolished in favor a "Parent Folder-> Browse"
item in the context menu in the menus in on the panel.
The Desktop is $HOME. See my other essay
for reasons why this should be so.
URIs are gone from the UI. It's agreed by most on the gnome mailinglist
that URIs are evil. A good object oriented ui should have objects not
uris. That is why there is no location bar in the mockups.
No Toolbar?
There are no back and forward buttons because you are not looking at
a file manager with a history, you are looking at a folder. There is no
home button because that is the desktop. Up and refresh are in the context menu for
the current folder. So no toolbar is needed.
Later
Mark Finlay
|