paul@tredysvr.Tredydev.Unisys.COM (Paul Siu) (10/04/90)
I have to use XVT library to write X-window applications, but I am not sure what it is. It claims to have the ability to compile to Motif, open look, and other styles, but how does it work? Is it another layer on top of your widget sets? What must you do to make a XVT program look like a motif program? Any information would be very helpful. Thanks.
nazgul@alphalpha.com (Kee Hinckley) (10/04/90)
In article <941@tredysvr.Tredydev.Unisys.COM> paul@tredysvr.Tredydev.Unisys.COM (Paul Siu) writes: >I have to use XVT library to write X-window applications, but I am not sure what >it is. It claims to have the ability to compile to Motif, open look, and other >styles, but how does it work? Is it another layer on top of your widget sets? >What must you do to make a XVT program look like a motif program? XVT is a toolkit which is layered on top of existing toolkits. To the best of my knowlege they currently have PM, MS-Windows, Mac, Motif and character-based versions working. You use it just like any other GUI toolkit (if you can say such a thing :-). To get a Motif version presumbably you buy that set of binaries from them - I'm not to clear on what they'll do when they release OL and have the possibility of running two styles on the same machine. You do *not* get full access to either the functionality or all the style of Motif. Let me try a rather strange analogy. Imagine a toolkit as a mountain. Some toolkits provide highlevel constructs for some features, others for other features. Each of these constructs is a peak. What XVT attempts to do is take what they felt were the most useful peaks of a variety of toolkits, and where those features weren't directly provided in a particular instance they fill in the valley. For instance - the Mac has a printer-setup dialog, Motif doesn't. So they provide a printer-setup dialog for Motif, while on the Mac they just use the provided one. The catch is there is a lot of underlying stuff that is specific to a particular toolkit which is not provided. In addition, Xt toolkits are not blazingly fast. I've found it necessary to play tricks to get optimizations. Since XVT hides the underlying toolkit (there is limited punch-through, but not much) you may not be able to make that optimization. So you may have a slow app. You'll also find multiple windows with multiple menubars difficult, accelerators are not supported, no constraint widgets are supported (everything is in absolute coordinates), pixel independance isn't there, I don't believe there is multiple display support, and XVT uses UIL for it's resource construction - so they'll be no such thing as a small application (UIL pulls in the entire widget library). My personal opinion is that XVT may be useful in limited contexts (where quick portability is critical, or dumb terminals need to be supported without a lot of effort (although terminal support without a mouse is complicated)). I don't see it as worthwhile if you are just planning on supporting one hardware platform, or have time to do a real port that takes full advantage of each system. I should note that this opinion is formed from evaluation of the XVT manual, heavy experience with Motif, and evaluation of the OL style guide and Xt+ API. -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.