Newsgroups: comp.sys.next Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!caen!hellgate.utah.edu!fcom.cc.utah.edu!news From: burchard@math.utah.edu (Paul Burchard) Subject: UI idea...comments, anyone? Message-ID: <1991Jun2.203311.19795@fcom.cc.utah.edu> Keywords: drag-and-drop, tools, documents vs. applications Sender: news@fcom.cc.utah.edu Organization: University of Utah Computer Center Date: Sun, 2 Jun 91 20:33:11 GMT I think NeXT has done a great job of putting a User Interface on UNIX. As has been discussed here, though, there's still one significant gap to filled: in the UI it's hard to work on Documents using different tools---especially UNIX tools. This gap probably arose from the current Application-oriented (rather than Document-oriented) slant of NeXTstep. I think it's possible create this ``multiple tool'' functionality with a minimum of disruption to NeXTstep, by basing it on the drag-and-drop mechanism which already exists in the Workspace. Just as folder icons can now accept file icons, icons of executables and Applications would then be able to accept Document icons. To give this basic idea some substance, I have given some thought to how it could be successfully implemented---in the letter below. I'd like to send it to some key people at NeXT so that we might be able to see these features in 3.0. Before I sent it off, though, I thought I should get some help and advice from the good folks (and sharp-tongued gurus :-) of comp.sys.next. Would you suggest some improvements to this scheme? Do you have any advice on whom to write at NeXT? Thanks...and here's the draft letter: ------------------------------ draft --------------------------------- Dear NeXTfolk, When I first got my NeXTstation I commented on how much I liked the NeXTstep Workspace and its File Viewer. Despite nearly a decade of experience with the UNIX command line, I loved the File Viewer right away for how pleasant it made navigating the file system. Since then, my good impression has only strengthened---I've continued to notice well-thought out features (for example graceful handling of symbolic links). I've also noticed and appreciated the improvements over 1.0, and heard tantalizing rumors of an FTP-Browser for the future (yeah!). Still, I (and others) continue to keep a Terminal within easy reach. The biggest reasons are that with Workspace * it's hard to run different programs on the same file * it's even harder to run UNIX programs on a file. The Tools Inspector is fairly awkward for this even within its limited scope. But I think there is a pretty nice intuitive way to do most of this that fits well into NeXTstep, and adds no clutter to the Workspace! The basic idea would be to allow drag-and-drop of file icons into the icons of executables sitting in the Shelf, Icon Path, or Dock. Just as folder icons there can accept files, so too would executable icons. But instead of showing an open folder, they would respond with an ``acceptance'' gesture (if the file was acceptable). The simplest gesture would be for the icon to highlight as if it were about to launch. A nicer UI gesture, though, would be for the icon to change to a special ``acceptance icon''. NeXTstep would supply a generic one (open hands?), but App designers should be able to specify their own in IB if they liked. For apps, this would pretty much be the whole story. But doing this for UNIX commands requires knowing how to construct the proper command line. This can of course get hairy, but remember that the goal is not to perform arbitrary UNIX command lines, just to call programs that can be thought of as performing an action on a single file. So, generically, the command line "$cmd $file" could be used (with the obvious meanings of the variables). But to cover other usages, command templates would be stored in the defaults database, where they could hopefully be set using the ``UNIX Expert'' panel in the Preferences app. NeXT would stock a user's initial defaults database with some useful templates. The exact format and level of generality of these templates I leave to your collective imagninations. But the template should probably be allowed to depend on at least the filename extension as well as the command name, and you should be able to choose between background and interactive operation. For example, you'd want to be able to do something like this (simulated output for "dread -o NextTemplate"): NextTemplate tar/ $cmd cf $file & NextTemplate tar/tar $cmd xf $file & NextTemplate latex/tex $cmd -v $file Notice, in this example, how a UNIX command could become selective about which files it accepted from the Workspace. I make these suggestions because I like my NeXT enough to want it to be even better. How do these ideas sound to you folks (assuming you haven't thought of them already)? Paul Burchard burchard@horizon.math.utah.edu ------------------------------ end draft --------------------------------- ----------------------------------------------------------------------------- Paul Burchard ``I'm still learning how to count backwards from infinity...'' -----------------------------------------------------------------------------