Thread View: comp.windows.x
1 messages
1 total messages
Started by David B. Lewis
Tue, 21 Dec 1993 14:40
comp.windows.x Frequently Asked Questions (FAQ) 4/5
Author: David B. Lewis
Date: Tue, 21 Dec 1993 14:40
Date: Tue, 21 Dec 1993 14:40
1064 lines
55564 bytes
55564 bytes
Archive-name: x-faq/part4
Last-modified: 1993/12/20
----------------------------------------------------------------------
Subject: 84)! Where can I get X-based project-management software?
Vendor Product Contact Information
------ ------- -------------------
Productivity Solutions Ultra Planner 617-237-1600
Quality Software Products MasterPlan Version, 310-410-0303 sales@qsp.com
Digital Tools, Inc. AutoPLAN 408-366-6920, 800-755-0065
NASA COMPASS 404-542-3265,
service@cossack.cosmic.uga.edu
GEC-Marconi Software Systems GECOMO Plus 703-648-1551
GEC-Marconi Software Systems SIZE Plus 703-648-1551
TEI, Inc VUE 408-985-7100
Mantix Cascade 703-506-8833
Advanced Management Solutions Schedule Publisher 800-397-6829
Auburn University ?? ??
[thanks to Pete Phillips; 7/92]
[thanks to Atul Chhabra (atul@nynexst.com); 10/92]
Pete Phillips (pete@smtl.demon.co.uk) posts to comp.sources.wanted a
FAQ on project-management programs.
----------------------------------------------------------------------
Subject: 85) Where can I get an X-based PostScript previewer?
Ghostscript is distributed by the Free Software Foundation
(617-876-3296) and includes a PostScript interpreter and a library of graphics
primitives. Version 2.6.1(.4) is now available; the major site is
prep.ai.mit.edu, although ftp.cs.wisc.edu is also recommended. [6/93]
Version 3.0 is scheduled for December; it will include a full implementation
of PostScript Level 2.
GSPreview (by the Computing Laboratory of the University of Kent at
Canterbury) is an X user interface (WCL-based) to the Ghostscript 2.4-2.6
interpreter. The source is available for anonymous ftp from
ftp.x.org as gspreview.2.3.tar.Z. [6/93]
GhostView (by Tim Theisen, tim@cs.wisc.edu) is full-function user
interface for GhostScript. Check ftp.cs.wisc.edu or prep.ai.mit.edu for
/pub/ghostview-1.5.tar.Z [7/93]. There are also several executables available
on ftp.cs.wisc.edu:/pub/X/ghostview-exe for various architectures.
XPsView is a Motif wrapper around PsView, which is a X11 DSC Document
viewer that can use both XDPS and GhostScript as the interpreter engine. An
early version was an the Alpha Freeware CD. More recent versions are on
gatekeeper.dec.com in /pub/DEC/PRL/psview-1.29.tar.Z.
Also:
ScriptWorks is Harlequin's software package for previewing and printing
PostScript(R) descriptions of text and graphics images; previewers for X are
available. For information call +44-223-872522 or send email to
scriptworks-request@harlqn.co.uk.
Image Network's Xps supports the full PostScript language and renders
in color, grayscale, or monochrome. Fonts displayed are anti-aliased. Info:
Image Network, +1 415 967 0542.
Digital's dxpsview runs on UWS 2.1 and 2.2.
Sun's pageview runs with the X11/NeWS server.
Showpage, the PostScript previewer from Adobe Systems, is available
from ICS as part of the Display PostScript System for Sun Solaris 1 (SunOS).
More information is available from ICS at info@ics.com, or +1 617 621 0060,
or Fax at +1 617 621 9555.
----------------------------------------------------------------------
Subject: 86) Where can I get an X-based GKS package?
The latest freely-available XGKS can be obtained from
xgks-request@unidata.ucar.edu; this is a 2c implementation derived from the
X11R4 contrib XGKS from IBM and the University of Illinois. The release
is on unidata.ucar.edu [128.117.140.3] as pub/xgks.tar.Z. [12/90]
In addition, Grafpak-GKS is available from Advanced Technology Center
(714-583-9119).
GKSUL is available from gks@ulowell.edu (ULowell CS department). It is
a 2b implementation which includes drivers for a variety of devices. It can be
passed an X window ID to use. The package includes both C and Fortran bindings.
[11/90; from dsrand@mitre.org and from stew@hanauma.stanford.edu]
An XgksWidget is produced by Neil Bowers (neilb@leeds.dcs;
neilb@dcs.leeds.ac.uk); the latest [10/91] conforms with the new version of
XGKS (2.4). It is available on ftp.x.org in contrib/xgks-widget.tar.Z.
----------------------------------------------------------------------
Subject: 87) Where can I get an X-based GL package?
Xgl 2.0 is available [11/93] from ftp.thp.Uni-Duisburg.DE
(134.91.32.1), in files pub/source/X11/Xgl-2.0.tar.{Z|gz}.
Certain vendors (SGI, IBM) are offering a GL package for X.
----------------------------------------------------------------------
Subject: 88) Where can I get an X-based PEX package?
The first official release of PEX is with X11R5; fix-22 brings the
Sample Implementation server to version 5.1.
The final PEX 5.1 Protocol specification is now available via anonymous
ftp to ftp.x.org, in the directory /pub/DOCS/PEX/. Changes made from the
Public Review draft are listed in the file "5.1P_changes" in that directory.
[9/92]
The final PEXlib 5.1 document is on ftp.x.org in pub/DOCS/PEXlib.
[11/92]
There is now available from the University of Illinois an
implementation of the PEX 4.0 specification called UIPEX. It contains a "near-
complete" implementation of PHiGS and PHiGS PLUS. The file
pub/uipex/uipex.tar.Z is on a.cs.uiuc.edu (128.174.252.1); the porting platform
was an RT running 4.3. Questions and comments can to go uipex@cs.uiuc.edu.
In addition, the PEXt toolkit by Rich Thomson (rthomson@dsd.es.com) is
available on ftp.x.org as PEXt.tar.Z; it includes a PEX widget making it
easier to include PEX in Xt-based programs.
----------------------------------------------------------------------
Subject: 89) Where can I get an X-based TeX or DVI previewer?
The xtex previewer for TeX files is available from a number of archive
sites, including uunet; the current version is usually on ftp.cs.colorado.edu
(128.138.204.31) in SeeTeX-2.18.5.tar.Z; pre-converted fonts are also on that
machine. The distribution all includes "mftobdf" which converts PK, GF, and PXL
fonts to BDF format, where they can then be compiled for use by your local X
server.
The xdvi dvi-previewer is fairly comprehensive and easy to use. It is
also available from a number of sites, including uunet and ftp.x.org; current
version is patchlevel 16 [12/92].
----------------------------------------------------------------------
Subject: 90)! Where can I get an X-based troff previewer?
X11R4 has two previewers for device-independent troff: the supported
client xditview, and the contributed-but-well-maintained xtroff. An earlier
version of xtroff also appeared on the R3 contributed source. xditview is also
in the R5 distribution.
In addition, the xman client can be used to preview troff documents
which use the -man macros (i.e. man pages).
If psroff is used its output can be viewed with a PostScript previewer.
Groff, a C++-based [tn]roff document formatter from the Free Software
Foundation, includes an X-based document previwer based probably on xditview.
Groff can put out both dvi and PostScript, so xdvi or GhostView can be used
to preview formatted documents.
In addition:
xproof, an X previewer for ditroff has been contributed by Marvin
Solomon (solomon@cs.wisc.edu); version 3.5 is available on ftp.x.org in
contrib/xproof*. [8/90]
Elan Computer Group (CA: 415-964-2200) produces eroff, a modified
troff implementation, and Elan/Express, an X11 eroff previewer.
SoftQuad (416-963-8337; USA only 800-387-2777, mail@sq.uu.net or
mail@sq.com) offers SoftQuad Publishing Software, including a substantially-
rewritten troff formatter, a better intermediate language with backwards
compatibility, and an X11[R3,R4] previewer. (This is the package adopted by
AT&T's own MIS department, and used in and re-sold by many parts of AT&T).
[information from Ian Darwin, SoftQuad (ian@sq.com) 3/90]
Image Network (1-800-TOXROFF; CA: 415-967-0542) offers the Xroff
package, which includes a fine modified troff implementation and a set of
X11-based page previewers. (This is the package OEM'ed by several hardware
vendors.)
[mostly courtesy moraes@cs.toronto.edu (Mark Moraes)] [2/90]
----------------------------------------------------------------------
Subject: 91)! Where can I get a WYSIWYG interface builder (or other shortcuts)?
A new release of the DIRT interface builder by Richard Hesketh works
with X11R5 and includes some support for the Motif widget set. From the README:
This builder allows the interactive creation and rapid prototyping of X user
interfaces using the X Toolkit and a number of Widget Sets. Dirt generates
"Wc - Widget Creation" resource files and this distribution also includes the
Widget Creation Library (version 1.06, with the exception of the demos and
Mri/Ari source code) with the kind permission of its author David E. Smyth.
Check dirt.README, dirt.A2.0.tar.Z, and dirt.PS.Z on ftp.x.org.
The InterViews 3.0.1 C++ toolkit contains a WYSIWIG interface builder
called ibuild. ibuild generates code for an InterViews application complete
with Imakefile and an X-resource file. Documentation is /pub/papers/ibuild.ps
on interviews.stanford.edu (36.22.0.175).
Quest Windows's (408-496-1900) ObjectViews C++ package includes an
interactive building tool.
Druid (Demonstrational Rapid User Interface Development) runs on SPARC
machines using OSF/Motif 1.0; it is intended eventually to be a full UIMS but
apparently now has only support for creating the presentation components, for
which it generates C/UIL code. Info: Singh G, Kok CH, Ngan TY, "Druid: A System
for Demonstrational Rapid User Interface Development". Proc. ACM SIGGRAPH Symp
on User Interface Software and Technology (UIST'90). ACM, NY, 1990, pp:167-177.
The BYO interface builder is implemented in tcl; it is probably
obsolete.
The XF builder (version 2.2) is a TCL builder; versions are on
barkley.berkeley.edu. You may subscribe to a mailing list by sending
"sub xf-l <Your name>" to listserv@tubvm.cs.tu-berlin.de.
ADEW in the Andrew User Interface System supports WYSIWYG user
interface construction with the full selection of AUIS insets, including text,
rasters, tables, and the usual interactors. Semantics can be coded in C or in
Ness, the AUIS extension language.
Also:
In addition, these commercial products (unsorted) are available in
final or prerelease form [the * following the product name indicates that the
product is known to allow the designer to specify for each widget whether a
particular resource is hard-coded or written to an application defaults file,
for at least one form of output]. Some are much more than user-interface tools;
some are full user interface management systems; information on most is not
up-to-date:
Product Name Look/Feel Code Output Vendor
HP Interface Motif 1.1 C(Xm) HP/Visual Edge
Architect/ UIMX
OPEN LOOK Express OPEN LOOK C(Xol+ helper lib) AT&T /
Visual Edge
UIMX 2.0 * Motif 1.1 C(Xm + helper code) Visual Edge
514-332-6430
& distributors
X-Designer 1.1 * Motif 1.1 C(Xm); C/UIL Imperial
Software
Technology, Ltd
(+44 734 587055)
sales@ist.co.uk
XFaceMaker2 (XFM2) * Motif 1.0 C;C/script (C-like procedural
language);C/UIL
NSL
(33 1 43 36 77 50)
requests@nsl.fr
Builder Xcessory 3.0 * Motif 1.2 C(Xm); C/UIL[r/w] ICS
Ada; and reads GIL (617-621-0060)
info@ics.com
Builder Xcessory 2.6 * Motif 1.1 C(Xm); C/UIL[r/w] DEC
[VMS; OSF/1] (1-800-DIGITAL)
XBUILD 1.1 * Motif 1.0 C(Xm); C/UIL Nixdorf
(617-864-0066)
xbuild@nixdorf.com
iXBUILD Motif 1.1 C(Xm); C/UIL iXOS Software
karl@ixos.uucp
089/461005-69
TeleUSE 2.1 * Motif 1.1.5 C(Xm); C/UIL[r/w] Alsys(TeleSoft)
(619-457-2700)
gui_info@telesoft.com
in Germany: in GmbH,
+49 7531 65022,
gvr@in-gmbh.de
ezX 3.2 Motif 1.1 C(Xm +helper lib);C/UIL;Ada
Sunrise
(401-847-7868)
info@sunrise.com
Snapix Motif C/Xm ADNT
+33 1 3956 5333
OpenWindows Developers OPEN LOOK GIL [-> C/XView] Sun
Guide 3.0 GIL [-> C++/XView]
GIL [-> C/OLIT]
GIL [-> C/PostScript for TNT]
ExoCode/SXM Motif C(Xm) Expert Object
ExoCode/Plus OPEN LOOK XView 708-676-5555
TAE+ Xw;Motif C(Xw,Xm); C/TCL (TAE Control Language,
like UIL[needs helper library]);
VAX Fortran; Ada; C++
Nasa Goddard
(301) 286-6034
MOB, XSculptor Motif; OpenLook C/Xm,UIL; C/Xol Kovi
408-982-3840
PSM PM, MSW 3.0, C/UIL Lancorp
Motif 1.1.2,Mac Pty Ltd.
+61 3 629 4833
Fax: 629 1296
(Australia)
MOTIFATION * Motif 1.1.x|1.2 C(Xm) PEM Stuttgart
+49 (0) 0711/713045
+49 (0) 0711/713047 fax
basien@pem-stuttgart.de
UIB Open Look/Motif C++(OI) ParcPlace
+1 303-678-4626
ILOG BUILDER Motif ILOG
1 415 390 9000
info@ilog.com
XVT-Design Motif,OL,Windows,&c XVT
303-443-4223
info@xvt.com
Mimex Motif 1.2 C(Xm); C/UIL[r/w] Kernex
408-441-7376
Look for magazine reviews for more complete comparisons of meta-file formats,
documentation, real ease-of-use, etc; Unix World and Unix Review often carry
articles. See also SunExpert 5/93.
ParcPlace is making freely available its popular ObjectBuilder(tm)
and Object Interface (OI(tm)) products for the Linux operating system.
ObjectBuilder is a GUI builder written completely in C++, that enables UNIX
C++ developers to apply the principles of object-orientation to the
development of user interfaces. OI, a C++ class library, provides the toolkit
foundation for ObjectBuilder. OI implements the look-and-feel of both Motif
1.2 and OPEN LOOK. OI is built directly on top of Xlib and is unencumbered by
runtime royalties to any party. ObjectBuilder and OI are very extensible,
actively facilitating the use of subclassing to create new, reusable, user
interface components. Sources are on tsx-11.mit.edu in
/pub/linux/packages/OI and available from ParcPlace (+1 408 481 9090).
In addition, Neuron Data (1 415 321-4488) makes Open Interface, a
window-system-independent object toolkit which supports interfaces which are
or resemble (supersets of) Mac, Windows, and Motif and Open Look; the package
includes an interface builder.
In addition, the GRAMMI builder supports the development of Ada/X
applications using its own set of objects which have Motif look and feel.
GRAMMI is written in Ada and generates Ada specs and stub bodies. Call
1-800-877-1815 or send mail to info_server@evb.com with subject "send grammi"
[without quotes].
In addition, these non-WYSIWYG but related products may help for goals
of rapid prototyping of the application interface:
WCL: the Widget Creation Library. Basically describes the widget
hierarchy and actions in a resources file; available from fine archive servers
everywhere, including devvax.jpl.nasa.gov (128.149.1.143) in pub/. Wcl provides
a very thin layer over Xt without any internal tweaking. Version 2.5 is current
[3/93].
TCL/TK: TK is a Motif-like object set for use with the TCL scripting
language. There is also a package tclMotif on ftp.x.org which may be used to
add TCL scripting to Motif programs.
WAFE: Wafe is a package that implements a symbolic interface to the
Athena widgets (X11R5) and OSF/Motif. A typical Wafe application consists of
two parts: a front-end (Wafe) and an application program which runs typically
as a separate process. The application program can be implemented in an
arbitrary programming language and talks to the front-end via stdio. Since
Wafe (the front-end) was developed using the extensible TCL shell, an
application program can dynamically submit requests to the front-end to build
up the graphical user interface; the application can also down-load
application specific procedures into the front-end, which can be executed
without interaction with the application program. Wafe is available from
ftp.wu-wien.ac.at:pub/src/X11/wafe/wafe-0.96.tar.gz [10/93].
wafeperl 0.2, which links Perl 4.036 to Wafe 0.96, is available [12/93] from
ftp.wu-wien.ac.at in pub/src/X11/wafe/wafeperl-0.2.tar.gz.
XGEN: a scripting language which can be used to prototype Motif
environments; available on ftp.x.org.
WINTERP: an Xlisp-based Motif toolkit allows for interpretive
programming. The copy on the R4 tape is outdated; get a copy off ftp.x.org or
email to winterp-source%hplnpm@hplabs.hp.com.
The Serpent UIMS permits the building of user-interfaces without
specific knowledge of coding but with an understanding of attributes being set
on a particular [Motif] widget. Beta Release 1.2 is available from
ftp.sei.cmu.edu (128.237.1.13) and can be found in /pub/serpent. Serpent is
also available on ftp.x.org (18.24.0.11) in /contrib/serpent. Email questions
can go to serpent@sei.cmu.edu. A commercial version of Serpent is available as
"Agora" from ASET, 221 Woodhaven Drive, Pittsburgh, PA 15228.
Garnet is a Common Lisp-based GUI toolkit. Information is available
from garnet@cs.cmu.edu.
MetaCard is a hypertext/Rapid Application Development environment
similar to Apple/Claris Corporation's HyperCard (info@metacard.com). MetaCard
is available via anonymous FTP from ftp.metacard.com, csn.org, or
128.138.213.21. (Mailing list: listserv@grot.starconn.com).
Articles comparing these tools include:
UnixWorld 5/92; SunWorld 12/92; LAN Computing 12/92; SunExpert 5/93.
----------------------------------------------------------------------
Subject: 92)! Where can I find X tools callable from shell scripts?
I want to have a shell script pop up menus and yes/no dialog boxes if the user
is running X.
Several tools in the R3 contrib/ area were developed to satisfy these
needs: yorn pops up a yes/no box, xmessage displays a string, etc. There are
several versions of these tools; few, if any, have made it to the R4 contrib/
area, though they may still be available on various archive sites.
In addition, Richard Hesketh (rlh2@ukc.ac.uk) has posted the xmenu
package to comp.sources.x ("v08i008: xmenu") for 1-of-n choices. [7/90]
Two versions of XPrompt have been posted to comp.sources.x, the latter
being an unauthorized rewrite. [R. Forsman (thoth@reef.cis.ufl.edu), 1/91]
There is a version of XMenu available from comp.sources.x; it is
being worked on and will likely be re-released.
xp-1.1.tar.Z, xpick-1.0.tar.Z and xzap-1.0.tar.Z on ftp.x.org's
contrib/ are tools by Gerry.Tomlinson@newcastle.ac.UK which act as X versions
of the simple display and choice-making tools in K&P. [4/92]
xtpanel lets the user build a panel containing interactive objects such
as buttons, sliders, text fields, etc., either from the command line or using a
simple scripting language. It is available for anonymous ftp from
hanauma.Stanford.EDU (36.51.0.16) as pub/X/xtpanel-3.01.tar.Z and may also be
found in the alt.sources archives.
----------------------------------------------------------------------
Subject: 93) Where can I get an X-based debugger?
xdbx, an X interface to the dbx debugger, is available via ftp from
ftp.x.org. The current [1/91] version is 2.1 patchlevel 2.
An X interface to gdb called xxgdb is more like xdbx 2.1.2. It is part
of comp.sources.x volume 11 [2/91]; xxgdb-1.06.tar.Z is on ftp.x.org.
mxgdb is a Motif interface to gdb by Jim Tsillas
(jtsillas@proteon.com); version 1.2 was released 11/93.
UPS is a source-level debugger which runs under the X11 and SunView
window systems on Sun and DEC platforms. It is available from ftp.x.org
(18.24.0.11) as contrib/ups-2.45.tar.Z (also ups-2.45-to-2.45.2.patch.Z)
and unix.hensa.ac.uk (129.12.21.7) in /pub/misc/unix/ups (or try mail to
archive@unix.hensa.ac.uk). [10/92] Unofficial fixes by Rod Armstrong
(rod@sj.ate.slb.com) are on unix.hensa.ac.uk in
/misc/unix/ups/contrib/rod@sj.ate.slb.com.
Also:
MIPS produces a highly-customizable (WCL-based) Visual Debugger.
You should be able to use Sun's dbxtool with its X11/NeWS server.
The CodeCenter (617-498-3000) source-level debugger, available on most
major platforms, includes an X-based interface.
AT&T offers the eXamine Graphical Interface, an X11 interface to dbx
and C++ dbx for Sun3 and Sun4 and sdb and sdb++ for 386 and 3B2 platforms. Call
1-508-960-1997 or contact examine@mvuxi.att.com for more information.
Solbourne (+1 303-678-4626) offers PDB, its X-based debugger for C, C++
and Fortran. PDB uses the OI toolkit and runs in either Open Look or Motif
mode.
SCO (info@sco.com) offers dbXtra as part of several development
systems.
Lucid's Energize Programming System, a tightly integrated development
environment for C and C++ programs, incorporates a graphical user interface on
top of an extended version of gdb. Info: lucid-info@lucid.com, or
(800) 223-9322.
----------------------------------------------------------------------
Subject: 94)! How can I "tee" an X program identically to several displays?
There are several protocol multiplexer tools which provide for the
simultaneous display of X clients on any number of machines.
XMX (an X Protocol Multiplexor) is available from wilma.cs.brown.edu
(128.148.33.66) as pub/xmx.tar.Z It works independently of the server and does
not affect the application being shared; it was developed for use in the
electronic classroom. An update is expected soon [5/93].
XTV is a conference program which can be used to duplicate the
"chalkboard" on several displays. Release 1 is available on the X11R5 contrib
tapes; a more recent version is on ftp.cs.odu.edu as pub/wahab/XTV.r2.tar.Z.
SHX from Michael Altenhofen of Digital Equipment GmbH CEC Karlsruhe
also does this; it is a "WYSIWIS" (What You See Is What I See) package in the
context of a computer-based learning/training tool to provide online help from
remote tutors but is also useful for general window sharing. Information:
shX@nestvx.enet.dec.com. SHX can be found on ftp.x.org and
gatekeeper.dec.com:/pub/X11/contrib/shX.tar.Z,
crl.dec.com:/pub/X11/contrib/shX.tar.Z
Modifications to SHX for color mapping and private color allocation by
Mark J. Handley (M.Handley@cs.ucl.ac.uk) are on cs.ucl.ac.uk in
car/shX.car.tar.Z.
XTrap is implemented as a server/library extension and can be used
to record and then replay an x session. It is available as
ftp.x.org:/contrib/XTrapV33_X11R5.tar.Z.
wscrawl can be used as a "multi-person paint program". It's available
on sax.stanford.edu as wscrawl.shar.Z. Binaries are on doppler.ncsc.org in
pub/wscrawl.
Shdr implements a simple shared whiteboard, without a chalk-passing
mechanism. It's available on parcftp.xerox.com as pub/europarc/shdr.tar.Z.
SketchPad 1.0 (3/93) is a distributed interactive graphical editor
particularly designed for sketching. Sources have been posted to alt.sources
and are available from ftp.igd.fhg.de (192.44.32.1) in ~ftp/incoming/sketchpad.
The NESTOR project is described in "Upgrading A Window System For
Tutoring Functions", Michael Altenhofen et al., the proceedings of the EXUG
Conference 11/90.
Also of use:
Hewlett-Packard Co. has a commercial product, "HP SharedX" which works
under HP-UX currently on their 300, 400, and 700 series workstations and their
HP 700/RX X Stations. Machines receiving shared windows can be any X server.
HP SharedX consists of a server extensions and a Motif based user interface
process. Contact your local HP sales rep. for more information.
IBM offers a commercial product.
Sun offers multi-user confering software called ShowMe.
InSoft (Mechanicsburg, PA, USA, 717-730-9501) offers multi-user
conferencing software called Communique. Version 3.0 is available on Sun and
HP platforms.
Vartalaap is a multiparty multimedia Conferencing System that works
over Unix sockets; the interfaceis based on XView. It's available at
ftp.x.org under contrib/vartalaap.tar.Z.
Collage is a synchronous collaborative data analysis tool for use
over the Internet. Features include a shared whiteboard, screen
capture/sharing, a shared text editor, and data-analysis tools. Sources are
on ftp.ncsa.uiuc.edu (141.142.20.50) in /UNIX/XCollage/Collage1.2. Version
1.2 became available 10/93.
[Thanks in part to scott@spectra.com (Tim Scott), 5/91, and to Peter Cigehn
(peter@lulea.trab.se), 8/92 ]
----------------------------------------------------------------------
Subject: 95)! Can I use C++ with X11? Motif? XView?
The X11R4/5 header files are compatible with C++. The Motif 1.1 header
files are usable as is inside extern "C" {...}. However, the definition of
String in Intrinsic.h can conflict with the libg++ or other String class and
needs to be worked around.
Some other projects which can help:
WWL, a set of C++ classes by Jean-Daniel Fekete to wrap X Toolkit
widgets, available via anonymous FTP from ftp.x.org as contrib/WWL-1.2.tar.Z
[7/92] or lri.lri.fr (129.175.15.1) as pub/WWL-1.2.tar.Z. It works by
building a set of C++ classes in parallel to the class tree of the widgets.
The C++ InterViews toolkit is obtainable via anonymous FTP from
interviews.stanford.edu. InterViews uses a box/glue model similar to that of
TeX for constructing user interfaces and supports multiple looks on the user
interfaces. Some of its sample applications include a WYSIWIG document editor
(doc), a MacDraw-like drawing program (idraw) and an interface builder
(ibuild).
THINGS, a class library written at the Rome Air Force Base by the
Strategic Air Command, available as freeware on archive sites.
Motif++ is a public-domain library that defines C++ class wrappers for
Motif 1.1 and 1.2; it adds an "application" class for, e.g., initializing X,
and also integrates WCL and the Xbae widget set. This work was developed by
Ronald van Loon <rvloon@cv.ruu.nl> based on X++, a set of bindings done by
the University of Lowell Graphics Research Laboratory. The current sources
are available from decuac.dec.com (192.5.214.1) in
/pub/X11/motif++.28.jul.93.tar.gz. Send to motif++-request@cv.ruu.nl to be
added to the mailing list.
Xm++ is a user interface framework for C++ using the Motif and Athena
toolkits. Source is on ftp.x.org as contrib/Xm++.0.52.tar.Z; or email to
xmplus@ani.univie.ac.at.
The source code examples for Doug Young's "Object-Oriented Programming
with C++ and OSF/Motif" [ISBN 0-13-630252-1] do not include "widget wrappers"
but do include a set of classes that encapsulates higher-level facilities
commonly needed by Motif- or other Xt-based applications; check ftp.x.org in
~ftp/contrib/young.c++.tar.Z.
Rogue Wave offers "View.h++" for C++ programmers using Motif; info:
1-800-487-3217 or +1 503 754 2311.
A product called "Commonview" by Glockenspiel Ltd, Ireland (??)
apparently is a C++-based toolkit for multiple window systems, including PM,
Windows, and X/Motif.
Xv++ is sold by Qualix (415-572-0200; fax -1300); it implements an
interface from the GIL files that Sun's OpenWindows Developers Guide 3.0
produces to Xview wrapper classes in C++.
UIT is a set of C++ classes embedding the XView toolkit; it is intended
for use with Sun's OpenWindows Developers Guide 3.0 builder tool. Sources are
on ftp.x.org as UIT.tar.Z. Version 2 was released 5/28/92.
Also of likely use is ObjectCenter (Saber-C++). And a reasonable
alternative to all of the above is ParcPlace's (formerly Solbourne's) Object
Interface.
[Thanks to Douglas S. Rand (dsrand@mitre.org) and George Wu (gwu@tcs.com);2/91]
----------------------------------------------------------------------
Subject: 96)! Where can I obtain alternate language bindings to X/Xt/Motif?
Versions of the CLX Lisp bindings are part of the X11 core source
distributions. A version of CLX is on the R5 tape [10/91]; version 5.0.2 [9/92]
is on ftp.x.org in /contrib/CLX.R5.02.tar.Z.
The SAIC Ada-X11 bindings are through anonymous ftp in /pub from
stars.rosslyn.unisys.com (128.126.164.2) [perhaps
falcon.stars.ballston.paramax.com (129.204.6.253)?]
There is an X/Ada study team sponsored by NASA JSC, which apparently is
working out bindings. Information: xada@ghg.hou.tx.us.
GNU SmallTalk has a beta native SmallTalk binding to X called STIX (by
Steven.Byrne@Eng.Sun.COM). It is still in its beginning stages, and
documentation is sparse outside the SmallTalk code itself. The sources are
available as /pub/gnu/smalltalk-1.1.1.tar.Z on prep.ai.mit.edu (18.71.0.38) or
ugle.unit.no (129.241.1.97).
Prolog bindings (called "XWIP") written by Ted Kim at UCLA while
supported in part by DARPA are available by anonymous FTP from
ftp.x.org:contrib/xwip.tar.Z or ftp.cs.ucla.edu:pub/xwip.tar.Z.
These prolog language bindings depend on having a Quintus-type foreign function
interface in your prolog. The developer has gotten it to work with Quintus and
SICStus prolog. Inquiries should go to xwip@cs.ucla.edu. [3/90]
Scheme bindings to Xlib, OSF/Motif, and Xaw are part of the Elk
distribution; version 1.5a on ftp.x.org obsoletes the version on the R5 contrib
tape.
TCL bindings to Motif 1.[12] by Jan Newmarch
(jan@pandonia.canberra.edu.au) are on csc.canberra.edu.au and ftp.x.org.
Version 0.8 became available 11/93.
x-scm, a bolt-on accessory for Aubrey Jaffer's "scm" Scheme interpreter
that provides an interface to Xlib, Motif, and OpenLook, is now available via
FTP from altdorf.ai.mit.edu:archive/scm/xscm1.05.tar.Z and
nexus.yorku.ca:pub/scheme/new/xscm1.05.tar.Z.
Poplog V14.2 is offered by Integral Solutions Ltd. (Phone +44 (0)256
882028; Fax +44 (0)256 882182; Email isl@integ.uucp); it is an integrated
programming environment consisting of the programming languages Pop-11,
Prolog, Standard ML, and Lisp which are compiled to machine code via a common
virtual machine. Pop-11 provides an interface to the X Toolkit which can be
accessed from all other Poplog languages. The OLIT, Motif, and Athena widget
sets are supported, in addition to the custom Poplog (Xpw) widget set.
High-level Pop-11 libraries allow graph drawing, turtle graphics, and the
simple creation of basic button/menu based interfaces.
Ada bindings to Motif, explicitly, will eventually be made available by
the Jet Propulsion Laboratories, probably through the normal electronic
means. Advance information can be obtained from dsouleles@dsfvax.jpl.nasa.gov,
who may respond as time permits.
AdaMotif is a complete binding to X and Motif for the Ada language, for
many common systems; it is based in part upon the SAIC/Unisys bindings and also
includes a UIL to Ada translator. Info: Systems Engineering Research
Corporation, 1-800-Ada-SERC (well!serc@apple.com).
TCL bindings for Motif by Jan Newmarch (jan@pandonia.canberra.edu.au)
are available from csc.canberra.edu.au and ftp.x.org.
Also: the MIT Consortium, although not involved in producing Ada
bindings for X, maintains a partial listing of people involved in X and Ada;
information is available from Donna Converse, converse@x.org.
----------------------------------------------------------------------
Subject: 97) TOPIC: BUILDING THE X DISTRIBUTION [topic needs updating to R5]
----------------------------------------------------------------------
Subject: 98) What's a good source of information on configuring the X build?
This FAQ includes information on a number of "gotchas" that can bite
you on particular system. However, the best source of general information on
building the X11 release is found in the Release Notes. The file is bundled
separately from the rest of the release, so if it's become separated from your
sources you can FTP another copy separately: the file RELNOTES.[ms,PS,TXT] at
the top of the distribution. The file RELNOTES is also available from the
xstuff mail server.
In addition, O'Reilly & Associates's Volume 8 on X Administration
includes information on configuring and building X.
----------------------------------------------------------------------
Subject: 99) Why doesn't my Sun with a cg6 work with R5?
Apparently gcc is the problem; it seems to produce fine code for all
Sun displays except for the cgsix. The new sunGX.o distributed with fix-07
may fix the problem (note: not known to work on Solaris).
----------------------------------------------------------------------
Subject: 100) Why doesn't my Sun with SunOS 4.1 know about _dlsym, etc.?
If you get errors with _dlsym _dlopen _dlclose undefined, link with
libdl.a. Add "-ldl" to your and eventually to your site.def. You may want to
surround it with "-Bstatic -ldl -Bdynamic" if you add it to the EXTRA_LIBRARIES
variable, since "syslibs" get added after EXTRA_LIBRARIES on the eventual
compilation command; otherwise you may not have a shared libdl. (Or compile
the stubs shared.)
[thanks to Joe Backo (joe.backo@East.Sun.COM), 12/91]
----------------------------------------------------------------------
Subject: 101) What is this "_get_wmShellWidgetClass undefined" error?
In SunOS 4.1.2 Sun fixed a shared-library bug in ld which conflicts
with the way X builds the shared Xmu library, causing these symbols, notably,
to be undefined when building some X11 clients on SunOS 4.1.[23]:
_get_wmShellWidgetClass
_get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" is overkill; be sure to set
OSTeenyVersion correctly in the config/sun.cf file and rebuild X11R5.
To solve the problem if you are using OpenWindows 3.0 (X11R4-based Xt), please
contact your local Sun office and request the following patches:
Patch i.d. Description
100512-02 4.1.x OpenWindows 3.0 libXt Jumbo patch
100573-03 4.1.x OpenWindows 3.0 undefined symbols when using
shared libXmu
[Greg Earle, earle@Sun.COM; 7/92]
A source patch for use with the X11R4 libraries was developed by Conrad
Kimball (cek@sdc.boeing.com); it retrofits into R4 some fixes made in R5 to
get around this problem. The patch is on ftp.x.org in [1/93]
contrib/X11R4_sunos4.1.2_patch_version3.Z
----------------------------------------------------------------------
Subject: 102)+ What's this problem with undefined _X symbols on SunOS 4.1.3?
Make sure to set the OSTeenyVersion in the mit/config/sun.cf file
if you see that vast numbers of Xlib functions are undefined:
>cc -o bmtoa bmtoa.o -O -pipe -L../.././lib/Xmu -lXmu -L/work1/X11R5/lib
>ld: Undefined symbol
> _XGetVisualInfo
> _XFree
----------------------------------------------------------------------
Subject: 103)+ Why does cc get used when I build X11R5 with gcc?
When X11R5 was written gcc (version 1.X) did not support shared
libraries. Those parts requiring shared libraries are compiled with cc, those
that don't are compiled with gcc.
----------------------------------------------------------------------
Subject: 104) Why can't gcc 1.x compile X11R4 on my SPARC?
I used gcc to compile the whole distribution, but I get several segmentation
faults when running X.
Note first that gcc on RISC machines does not necessarily result in
any performance increase; it certainly is not as noticeable as it is on the
680x0 or VAX platforms.
Here is the problem: gcc and cc use incompatible methods of passing
structures as arguments and returning them as function values, so when
gcc-compiled parts of X are linked with Sun-supplied functions that pass or
return structs, run-time errors occur. Affected programs include rgb and
the server.
This is from the GCC manual:
On the Sparc, GNU CC uses an incompatible calling convention for
structures. It passes them by including their contents in the argument
list, whereas the standard compiler passes them effectively by
reference.
This really ought to be fixed, but such calling conventions are not yet
supported in GNU CC, so it isn't straightforward to fix it.
The convention for structure returning is also incompatible, and
`-fpcc-struct-return' does not help.
You can duck the problem either by using cc throughout or by using it for just
the routines which cause incompatibilities; the problem cannot be solved with
compilation flags.
Files which need to be compiled using cc include:
server/os/4.2bsd/oscolor.c
rgb/rgb.c
In addition, several of the "inet_" functions use structs as args or
return values:
clients/xhost/xhost.c
clients/xauth/gethost.c.
Calls to inet_addr in /lib/CLX/socket.c and lib/X/XConnDis.c are possibly
harmless as they don't involve structs.
[collected by bashford@scripps.edu (Don Bashford); 8/90]
----------------------------------------------------------------------
Subject: 105) What are these I/O errors running X built with gcc?
When I try to run xinit or the Xsun server I get the error
"Getting interface configuration: Operation not supported on socket.
Fatal server bug! no screens found."
Running the gcc fixincludes script apparently didn't work. You can do
this simple test:
#include <sys/ioctl.h>
SIOCGIFCONF
Run that through cc -E and gcc -E. The last line of output is the piece of
interest; it should be identical (modulo irrelevant differences like
whitespace). If the gcc version has 'x' where the cc version has 'i', your
fixincludes run didn't work for some reason or other; go back to your gcc
sources and run `fixincludes`; then rebuild the X distribution. If they are
identical, try running a make clean in mit/server and rebuilding, just to make
sure everything gets compiled with the proper include files.
[courtesy der Mouse, mouse@LARRY.MCRCIM.MCGILL.EDU; 9/90]
----------------------------------------------------------------------
Subject: 106) What are these problems compiling X11R4 on the older Sun3?
In mit/server/ddx/sun/sunCG3C.c, we have found "missing" defines for
CG3AC_MONOLEN, CG3BC_MONOLEN, CG3AC_ENBLEN, CG3BC_ENBLEN. What should these be?
The R4 Errata list distributed after X11R4 mentions that you can add
these lines to the file on older SunOS versions (e.g. 3.5) to compile:
#define CG3AC_MONOLEN (128*1024)
#define CG3AC_ENBLEN CG3AC_MONOLEN
#define CG3BC_MONOLEN CG3AC_MONOLEN
#define CG3BC_ENBLEN CG3AC_MONOLEN
However, the Sun3 should not actually ever have the CG3 device, and so
references to it can be removed from mit/server/ddx/sun/sunInit.c and the
Imakefile. [11/90]
----------------------------------------------------------------------
Subject: 107) What are these problems compiling the X server on SunOS 4.1.1?
The file <sundev/cg6reg.h> isn't being found.
Sun omitted <sundev/cg6reg.h> from SunOS 4.1.1. Remove the #include
from sunCG6C.c and replace it with the line
#define CG6_VADDR_COLOR 0x70016000
The file has changed from earlier versions of SunOS and should not be copied
from another distribution.
----------------------------------------------------------------------
Subject: 108) What are these problems using R4 shared libraries on SunOS 4?
All of the executables that I try to run have the following results:
ld.so: libXmu.so.4: not found
or even:
ld.so: call to undefined procedure __GetHostname from 0xf776a96c
If you are building with shared libraries on a Sun, remember that you
need to run "ldconfig" as root after installing the shared libraries (if you've
installed X on a file-server, run it on the server's clients, too). While
building and installing the distribution, you need to be careful to avoid
linking against any existing X shared libraries you might have (e.g. those
distributed with OpenWindows). You should make sure you do not have
LD_LIBRARY_PATH set in your environment during the build or the installation.
If you are going to keep xterm and xload as setuid programs, please note that
the shared libraries must be installed in /usr/lib, /usr/local/lib, or
/usr/5lib for these programs to work (or else those programs must be linked
statically). [courtesy X Consortium]
Note also that the program mkfontdir is run as part of the build; it
attempts, however, to use the shared libraries before they have been installed.
You can avoid the errors by building mkfontdir statically (pass -Bstatic to
most C compilers).
----------------------------------------------------------------------
Subject: 109) Can OLIT programs run with R5 Xt? (_XtQString undefined)
This is a bug in the OLIT. _XtQString was an external symbol that existed in
X11R4 (upon which OW 3.0's libXt is based). It wasn't documented and was
removed in X11R5 (MIT's guarantee of upward compatibility between the R4 and R5
libraries only applied to the documented interface).
A workaround is to temporarily set your LD_LIBRARY_PATH to point to the X11R4
or OpenWindows Xt library that you linked the program against.
[10/92; from Barry Margolin (barmar@think.com); 3/93 from Jeff Francis
(jpf@heliocentric.com)]
----------------------------------------------------------------------
Subject: 110) How do I get around the SunOS 4.1 security hole?
There is a security problem with certain R4 clients (xterm and xload)
running under SunOS 4.1 that have been installed setuid root and are using
shared libraries; to avoid the problem, do one of these:
1) make the program non-setuid. You should consult your system
administrator concerning protection of resources (e.g. ptys and /dev/kmem) used
by these programs, to make sure that you do not create additional security
problems at your site.
2) relink the programs statically (using -Bstatic).
3) install the libraries before linking and link with absolute paths
to the libraries.
[from rws@x.org (Bob Scheifler), 12/90]
The R5 version of xterm does this automatically by rebuilding xterm against the
newly-installed libraries when xterm is being installed; this prevents an suid
program from being built with libraries specified relatively. Note that this
may cause an inconvenience when doing the installation from NFS-mounted disks.
Xload has been rewritten to avoid the problem.
----------------------------------------------------------------------
Subject: 111) How do I get around the frame-buffer security hole?
On many systems the frame-buffer is unsecured by default; this permits
anyone who can log into your workstation to peek at your windowing session by
accessing the frame-buffer directly, or, as less of a privacy issue but perhaps
more annoying, to [accidentally] start up a second X session on your console
display. Check the man page for fbtab(5).
[Thanks to Art Mulder (art@cs.ualberta.ca); 2/93.]
----------------------------------------------------------------------
Subject: 112) TOPIC: BUILDING X PROGRAMS
----------------------------------------------------------------------
Subject: 113) What is Imake?
Imake is not a replacement for the make program; instead, it is a
makefile-generator that takes advantages of the include-file and macro-
processing capabilities of the C preprocessor cpp to generate makefiles
suitable for building software on a particular system. Although it is not
specific to X, the X release uses it to help solve a number of the
configuration issues that arise in making such a large system widely portable.
Imake has a fairly steep learning curve, in part because the process by
which the system-specific configuration files, system-independent configuration
files, and individual Imakefiles are melded to produce a Makefile is not
obvious.
There have been several different versions of imake; the R3, R4, and
R5 versions are different.
You can obtain information on imake from these sources:
- the R4 and R5 release notes and imake man page include information on
using Imake to build X
- the R4 and R5 file mit/config/README also contains useful information
- on the R4 tapes, contrib/doc/imake/imake.tex is Mark Moraes' R3/R4
guide to imake.
- the R5 mit/doc/config/usenixws/paper.ms contains a paper by Jim
Fulton on an early version of Imake
- Paul DuBois (dubois@primate.wisc.edu) has written a useful
explanation of how Imake works and how to use it in configuring X for non-
supported systems; the document is available from ftp.primate.wisc.edu
in the directory ~ftp/pub/imake-stuff; look for config-X11R4.ms (troff) and
config-X11R4.ps (PostScript). Some supplemental appendices are nearby.
[7/91: document version is now 1.06] These imake papers are available by email;
mail a message body of "send imake-stuff help" to almanac@primate.wisc.edu.
They are also available by gopher to gopher.primate.wisc.edu under "Primate
Center Software Archives".
- see "System Administration - Imake: Friend or Foe?" by Dinah McNutt
in the November 1991 issue of SunExpert.
- German readers should expect in June 1992 an article "Das Meta-Make
/ I make, you make / Schwerelos" by Rainer Klute in "iX
Multiuser-Multitasking-Magazin", directed at application programmers needing to
write Imakefiles. An English-language derivative of this article is in The
X Journal, issue 2:1.
- The O'Reilly X Resource issue #2 contains Paul Davey's article on
demystifying Imake.
- Alain Brossard's working document full of tips on Imake is in
sasun1.epfl.ch:pub/imakefile.1.Z.
- O'Reilly has published (7/93) "Software Portability with imake" by
Paul DuBois; ISBN 1-56592-055-4. The books electronic counterparts are on
ftp.primate.wisc.edu in pub/imake-book; imake.tar.Z is a stand-alone imake
installation.
[1/91;12/91;5/92;8/92;7/93]
----------------------------------------------------------------------
Subject: 114) Where can I get imake?
Versions are distributed with the R4 and R5 releases. An earlier
version is distributed with the X11R3 release; some third-party toolkits
redistribute versions of imake along with their own implementations of the
template and configuration files. There are no real standards for such
configuration files, although most *current* contributed software expects the
templates distributed with X11R5.
ftp.x.org contains the R5 distribution unpacked, so you can pick up
imake without picking up the entire distribution.
A stand-alone version of Imake, but one stemming from X11R5, is in
ftp.germany.eu.net:pub/X11/misc/imake/imake-pure.tar.Z (192.76.144.75).
A stand-alone version of Imake, but one stemming from X11R5, is in
ftp.primate.wisc.edu:pub/imake-book/imake.tar.Z.
----------------------------------------------------------------------
Subject: 115) I have a program with an Imakefile but no Makefile. What to do?
If you have R4 or R5 installed on your system, run "xmkmf". This is a
script which runs imake for you with the correct arguments. The output is a
Makefile configured for your system and based on the Imakefile. Then run make,
which will use that new Makefile to compile the program.
----------------------------------------------------------------------
Subject: 116) Why can't I link to the Xlib shape routines?
When I try to compile certain programs, I get the following link error:
Undefined:
_XShapeQueryExtension
_XShapeCombineMask
These routines are actually part of the Shape Extension to X (SHAPE)
which was introduced in the X11R4 distribution and allows non-rectangular
windows. Like the other sample server extensions, the shape extension will
only run on a server which supports it. Pre-X11R4 servers, as well as many
vendor-supplied servers, do not support the shape extension, in which case
they will display rectangular windows anyway.
In order to use the shape extension, you must link to the library
libXext.a. In the X11R4 distribution, this library and the associated includes
will be in the mit/extensions directory. If you do not have these files, do
not despair: many freeware programs which use the shape extension can also be
compiled without it by removing the -DSHAPE define from the Makefile; you can
probably do this and compile successfully against your older vendor-supplied X
libraries.
[from John B. Melby, melby%yk.fujitsu.co.jp@uunet.uu.net, 3/91]
----------------------------------------------------------------------
Subject: 117) What are these problems with "_XtInherit not found" on the Sun?
When I link a X program that I wrote on a SunOS 4.0.3 or 4.1 machine I get the
error "ld.so: symbol not found _XtInherit".
What you are seeing is a side-effect of a kludge in the R4 libXt.a to
get Sun shared libraries working. Apparently, you can't share a function that
is both called and compared, as _XtInherit is. This was handled by putting
_XtInherit in the same file as a function that is always used, thereby
guaranteeing that it would be loaded -- that is, in Initialize.c, where
XtToolkitInitialize() and XtInitialize() reside. These routines would normally
be called.
You are probably seeing this error because your program is not a normal
Xt-based program and does not call XtToolkitInitialize() anywhere.
1) it may be a program that uses Xt functions but never opens a
connection to the X server. [OSF/Motif's 1.1.0 UIL had this problem; it called
XtMalloc() and other Xt functions.] The solution is to add the call to your
program; the function does not have to be executed, just linked in.
2) alternatively, your program doesn't need any Xt functions and is
correct in not calling XtToolkitInitialize() -- it may be an Xlib or XView
program. In this case, you can remove -lXt from your link command.
It should not be necessary to link the shared libraries statically,
although this will certainly solve the problem.
[from Jordan Hayes (now jordan@MooreNet.COM) and Danny Backx (db@sunbim.be);
11/90]
You may also see this error compiling X11R5 programs on a SunOS 4.1.3 machine;
be sure to set OSTeenyVersion to 3 in the config/sun.cf file.
----------------------------------------------------------------------
Subject: 118) TOPIC: PROGRAMMING PROBLEMS AND PUZZLES
----------------------------------------------------------------------
Subject: 119) Why doesn't my program get the keystrokes I select for (sic)?
The window manager controls how the input focus is transferred from one
window to another. In order to get keystrokes, your program must ask the
window manager for the input focus. To do this, you must set up what are
called "hints" for the window manager. If your applications is Xlib-based, you
can use something like the following:
XWMHints wmhints;
...
wmhints.flags = InputHint;
wmhints.input = True;
XSetWMHints(dpy, window, &wmhints)
If your application is based on the Xt Intrinsics, you can set the XtNinput
resource to be True (as you probably want to in any case); if you don't have
source, you can start up the application with the resource '*input:True'.
Certain window managers, notably dxwm and olwm, are very picky about having
this done.
If you are using Sun's OpenWindows olwm, you can also add this resource
to your defaults file to use clients that aren't ICCCM-compliant.
OpenWindows.FocusLenience: true
[mostly courtesy Dave Lemke of NCD and Stuart Marks of Sun]
----------------------------------------------------------------------
Subject: 120) How do I deiconify a window?
To de-iconify a window, map it with XMapWindow(). To iconify a window, use
XIconifyWindow().
----------------------------------------------------------------------
Subject: 121) How do I figure out what window manager is running?
You can't reliably tell; whatever mechanism you could use could be
spoofed in any case.
For most cases, you shouldn't care which window manager is running, so
long as you do things in an ICCCM-conformant manner. There are some cases in
which particular window managers are known to do things wrong; checking for
particular hints placed on the window by the window manager so that you can
sidestep the problem may be appropriate in these cases. Alternatively, it may
be appropriate to determine which window manager is running in order to take
advantage of specific *added* features (such as olwm's push-pin menus) in order
to give your program *added* functionality. Beware of usurping the window
manager's functions by providing that functionality even when it is missing;
this surely leads to future compatibility problems.
----------------------------------------------------------------------
Subject: 122) Is there a skeleton X program available?
There is no general framework such as the TransSkel program for the
Macintosh which handles lots of the odds and ends and overhead of development
under a window system and which can be used as a platform for additional
development. In X, the problem is typically solved by using an interactive
application builder tool or by using cut&paste on existing X applications. Good
applications which you might look to manipulate when you want to "test just
this one little thing" include contrib/clients/xskel, a simple R4 program that
puts up a window and allows sketching in it and offers a starting point for
quick hacks, the Xaw examples in the examples/ directory in the R3 and R4
distributions, and the Xlib "Hello World" example in the R3 doc/HelloWorld and
R4 doc/tutorials/HelloWorld; an updated version of this program which uses R4
Xlib calls and current ICCCM conventions was posted in 2/90 to comp.windows.x
by Glenn Widener of Tektronix. [3/90]
In addition, a sample Xt program (for Xaw or Xm) by Rainer Klute
showing how to open multiple displays and how to catch a broken display
connection is available on ftp.x.org in contrib/mdisp.tar.Z. [4/92]
A sample multi-display Xt/Xaw program by Oliver Jones is on ftp.x.org
in contrib/MultiUserVote.tar.Z. (See also his article in The X Resource, Issue
3, "Multi-User Application Software Using Xt".)
----------------------------------------------------------------------
David B. Lewis faq%craft@uunet.uu.net
"Just the FAQs, ma'am." -- Joe Friday
--
David B. Lewis Temporarily at but not speaking for Visual, Inc.
day: dbl@visual.com evening: david%craft@uunet.uu.net
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads