To answer also to the other mails in this thread:
don't expect this dock to become a full replacement for the
WindowMaker's one; this, simply, is not possible. To get this, you'd
need a kind of "NSWorkspace - workspace application - window manager"
object that doesn't exist.
If you read NSWorkspace.h, it is evident that, in its original
conception, this class implies the existence of a workspace application;
but, in our implementation, this is not possible.
Said this, I must add that something in this direction can be done; the
introduction of the _workspaceApplication ivar in NSWorkspace, for
example, has helped me very much; a daemon keeping track of the running
applications, as Chad says in a other mail, would be an other step in
the right direction. And, take a look in Desktop.m; I've a full
implementation of all the NSWorkspace methods that mount and umount
volumes; actually it is a bit too linux-specific but, with some ifdefs
in the part that parse /etc/mtab, I think that could be moved in
NSWorkspace.