amanda@mermaid.intercon.com (Amanda Walker) (01/05/90)
In article <9001042053.AA10511@brillig.UMD.EDU>, don@CS.UMD.EDU (Don Hopkins) writes: > I will be impressed if > somebody can implement pie menus in NeXTStep (with or without > the round windows) as seamlessly as they dropped into NeWS (so > every application gets pie menus, without modification). One of the things that has impressed me about NeWS over X, SunView, and any other window system that I've used except for the Macintosh OS is that it factors out the user interface code from client programs. Under NeWS, the code to draw windows, handle user input events, and so on is determined when the program is invoked, not when it is compiled or linked. This separation of code is the single greatest advantage that NeWS has over X, in my opinion. To take a concrete example, there was a while when I had a Sun 3/50 on my deks running NeWS 1.1 with liteUI. I rewrote and twiddled the UI PostScript code and produced a window system that looked more like a Mac than a Sun, including customizable color icons selectable per window, and so on, without touching a byte of client code. The same binaries that ran on my machine looking like a Macintosh ran on my co-workers machines looking like vanilla liteUI. I don't want half a dozen kinds of windows and UI policies on my screen, each depending on which toolkit the author decided to use. I want to decide what my screen looks like, and have it stay consistent. One of the strengths of Apple's X server for the Mac OS is that it has an option to use the native window system as the X window manager. This means I can have an xterm or whatever that acts just like all of the rest of the windows on my screen. This is a win. With NeWS, this could be taken even farther, since the *server* is responsible for higher levels of user interaction abstraction, such as widget appearance and event handling. If I want to change how a NeWS client interacts with me, I can do it, because these decisions are not decided at compile time, but at invocation time. I find this to be a great advantage over more classical approaches to windowing UIs. If I (or someone else, for that matter) makes an improvement or a change that I want to use, I can, without disturbing anyone else and still have it apply across the board when I'm using even older client software. This is the gem behind all of Sun's marketing hype. Unless I have missed a pretty fundamental shift in philosophy, X does not permit such flexibility. Amanda Walker InterCon Systems Corporation --