Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!apple!snorkelwacker.mit.edu!hsdndev!spdcc!tauxersvilli!alphalpha!nazgul From: nazgul@alphalpha.com (Kee Hinckley) Newsgroups: comp.windows.x Subject: Re: MOTIF vs Athena. Practical to conditionalize? Message-ID: <1990Dec15.174043.5534@alphalpha.com> Date: 15 Dec 90 17:40:43 GMT References: <3132@gazette.bcm.tmc.edu> <7036@mitech.com> <3165@gazette.bcm.tmc.edu> <1990Dec14.164540@ap.co.umist.ac.uk> Organization: asi Lines: 50 In article <1990Dec14.164540@ap.co.umist.ac.uk> jf@ap.co.umist.ac.uk (John Forrest) writes: >If you use the Widget Layout Manager from the Xcu toolkit, you are able to >migrate from one toolkit to another. This is because the widget tree is >described in a config file rather than the actual source, and also the config >file can cope with first level ``callback handling''. Whether the toggle >widgets are under one parent or spread out is thus in the config file, and not >in the program itself. The program is thus ``reduced'' to providing the >main functions of the application, and it would appear that most functions can >be written in ways that are independent of the widget set. Sure, if you don't want to take full advantage of the toolkit, don't care about having an efficient application and don't worry about being style-guide compliant and/or easy to use. I need to do stuff like ensure that I can tab out of a multi-line text widget and go to the next field if the text widget is readonly. Or create a cascade menu without a label where the I override Motif's menu history functionality. Or create a popup where there is one popup for the entire application, but which items are sensitive depend on which item you popped up over. Or dynamically create the correct types of widgets on the fly in a mail reader window as you view messages that contain different kinds of enclosures (forwarded messages, text, Frame documents, GIF files...). And of course the menubar layout needs to conform to Motif, with the help menu off on the right, so I have to tell it which pulldown is the help pulldown. And there are some quirks in layout of paned windows, so it's critical that I manage the paned window (and its parents) before I add the children. And then there are dialog boxes that have text fields, where I need to tell the toolkit which text field should have the initial focus, or need to make sure that the initial text in the field is pre-selected, so when the user starts typing it gets replaced. And then there's the Xerox-style hierarchical folder browser where I need to shift all of the contents of three scrolling lists quickly to the right or to the left as the user moves around through the folder hierarchy. Of course I didn't *need* to do all of that stuff - but I wouldn't have a good interface if I didn't. Sure, I can abstract some of it for my application - but I can't just casually use some UIMS, higher-level toolkit or layout manager and automagically switch widget sets. I'd love to be proven wrong, but I'm still waiting. -kee -- Alphalpha Software, Inc. | motif-request@alphalpha.com nazgul@alphalpha.com |----------------------------------- 617/646-7703 (voice/fax) | Proline BBS: 617/641-3722 I'm not sure which upsets me more; that people are so unwilling to accept responsibility for their own actions, or that they are so eager to regulate everyone else's.