home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-04-19 | 50.4 KB | 1,359 lines |
- Newsgroups: comp.sources.x
- Path: uunet!zaphod.mps.ohio-state.edu!mips!msi!dcmartin
- From: cattelan@everest.ee.umn.edu (Russell Cattelan)
- Subject: v17i064: xwebster (MOTIF) (REPOST), Part01/01
- Message-ID: <1992Apr20.143700.21198@msi.com>
- Originator: dcmartin@fascet
- Sender: dcmartin@msi.com (David C. Martin - Moderator)
- Nntp-Posting-Host: fascet
- Organization: Molecular Simulations, Inc.
- Date: Mon, 20 Apr 1992 14:37:00 GMT
- Approved: dcmartin@msi.com
- Lines: 1345
-
- Submitted-by: cattelan@everest.ee.umn.edu (Russell Cattelan)
- Posting-number: Volume 17, Issue 64
- Archive-name: xwebster-motif/part01
-
- [ There appeared to be some problems w/ this posting (since this segment
- is not showing up outside my local USENET hierarchy.. here we go again ]
-
- #!/bin/sh
- # This is a shell archive (produced by shar 3.49)
- # To extract the files from this archive, save it to a file, remove
- # everything above the "!/bin/sh" line above, and type "sh file_name".
- #
- # made 04/14/1992 14:09 UTC by dcmartin@fascet
- # Source directory /home/fascet/dcmartin/csx/src/xwebster.motif
- #
- # existing files will NOT be overwritten unless -c is specified
- #
- # This is part 1 of a multipart archive
- # do not concatenate these parts, unpack them in order with /bin/sh
- #
- # This shar contains:
- # length mode name
- # ------ ---------- ------------------------------------------
- # 955 -rw-r--r-- Imakefile
- # 11405 -rw-r--r-- Makefile
- # 2239 -rw-r--r-- README
- # 5959 -rw-r--r-- README.mayer
- # 6945 -rw-r--r-- Xwebster.ad
- # 19389 -rw-r--r-- Xwebster.ad.hp_widgets
- # 19720 -rw-r--r-- controlpanel.c
- # 5712 -rw-r--r-- display_def.c
- # 21 -rw-r--r-- patchlevel.h
- # 1870 -rw-r--r-- user_prefs.h
- # 5889 -rw-r--r-- wordlist.c
- # 22128 -rw-r--r-- xwebster.c
- # 2464 -rw-r--r-- xwebster.h
- # 5680 -rw-r--r-- xwebster.man
- #
- if test -r _shar_seq_.tmp; then
- echo 'Must unpack archives in sequence!'
- echo Please unpack part `cat _shar_seq_.tmp` next
- exit 1
- fi
- # ============= Imakefile ==============
- if test -f 'Imakefile' -a X"$1" != X"-c"; then
- echo 'x - skipping Imakefile (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting Imakefile (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'Imakefile' &&
- #
- # If you XMLIB is defined in your Imake.tmpl comment out the
- # following line
- #
- XXMLIB = -lXm
- # for initiall development
- #CC = gcc
- #CDEBUGFLAGS = -g
- #
- #
- INCLUDES = -I$(TOP)/lib -I$(TOP)
- X
- #
- # Define SLOW_X_SERVER here if you have an X server that is too slow to draw
- # the stippling on pushbuttons that have temporarily been desensitized (aka
- # greyed out). On Suns with the MIT sample server, it is VERY painful.
- # HP's product X11 server, on the other hand, is quite fast and has no such
- # problems, even in color.
- #
- # This does not seem to be a problem even on the Suns RMC.
- #
- DEFINES = -DAPPDEFAULTSDIR=\"$(XAPPLOADDIR)\"
- HDRS = user_prefs.h \
- X xwebster.h
- LOCAL_LIBRARIES = $(XMLIB) \
- X $(XTOOLLIB) \
- X $(XLIB)
- OBJS = controlpanel.o \
- X display_def.o \
- X wordlist.o \
- X xwebster.o
- SRCS = controlpanel.c \
- X display_def.c \
- X wordlist.c \
- X xwebster.c
- X
- ComplexProgramTarget(xwebster)
- InstallAppDefaults(Xwebster)
- SHAR_EOF
- chmod 0644 Imakefile ||
- echo 'restore of Imakefile failed'
- Wc_c="`wc -c < 'Imakefile'`"
- test 955 -eq "$Wc_c" ||
- echo 'Imakefile: original size 955, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= Makefile ==============
- if test -f 'Makefile' -a X"$1" != X"-c"; then
- echo 'x - skipping Makefile (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting Makefile (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'Makefile' &&
- # Makefile generated by imake - do not edit!
- # $XConsortium: imake.c,v 1.65 91/07/25 17:50:17 rws Exp $
- #
- # The cpp used on this machine replaces all newlines and multiple tabs and
- # spaces in a macro expansion with a single space. Imake tries to compensate
- # for this, but is not always successful.
- #
- X
- # -------------------------------------------------------------------------
- # Makefile generated from "Imake.tmpl" and </tmp/IIf.a26129>
- # $XConsortium: Imake.tmpl,v 1.139 91/09/16 08:52:48 rws Exp $
- #
- # Platform-specific parameters may be set in the appropriate <vendor>.cf
- # configuration files. Site-specific parameters should be set in the file
- # site.def. Full rebuilds are recommended if any parameters are changed.
- #
- # If your C preprocessor does not define any unique symbols, you will need
- # to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
- # "make World" the first time).
- #
- X
- # -------------------------------------------------------------------------
- # site-specific configuration parameters that need to come before
- # the platform-specific parameters - edit site.def to change
- X
- # site: $XConsortium: site.def,v 1.2 91/07/30 20:26:44 rws Exp $
- X
- # -------------------------------------------------------------------------
- # platform-specific configuration parameters - edit sun.cf to change
- X
- # platform: $XConsortium: sun.cf,v 1.71 91/12/20 11:18:34 rws Exp $
- X
- # operating system: SunOS 4.1.1
- X
- # $XConsortium: sunLib.rules,v 1.7 91/12/20 11:19:47 rws Exp $
- X
- # -------------------------------------------------------------------------
- # site-specific configuration parameters that go after
- # the platform-specific parameters - edit site.def to change
- X
- # site: $XConsortium: site.def,v 1.2 91/07/30 20:26:44 rws Exp $
- X
- X SHELL = /bin/sh
- X
- X TOP = .
- X CURRENT_DIR = .
- X
- X AR = ar clq
- X BOOTSTRAPCFLAGS =
- X CC = /usr/lang/cc
- X AS = as
- X
- X COMPRESS = compress
- X CPP = /lib/cpp $(STD_CPP_DEFINES)
- X PREPROCESSCMD = /usr/lang/cc -E $(STD_CPP_DEFINES)
- X INSTALL = install
- X LD = ld
- X LINT = lint
- X LINTLIBFLAG = -C
- X LINTOPTS = -axz
- X LN = ln -s
- X MAKE = make
- X MV = mv
- X CP = cp
- X
- X RANLIB = ranlib
- X RANLIBINSTFLAGS =
- X
- X RM = rm -f
- X TROFF = psroff
- X MSMACROS = -ms
- X TBL = tbl
- X EQN = eqn
- X STD_INCLUDES =
- X STD_CPP_DEFINES =
- X STD_DEFINES =
- X EXTRA_LOAD_FLAGS =
- X EXTRA_LIBRARIES =
- X TAGS = ctags
- X
- X SHAREDCODEDEF = -DSHAREDCODE
- X SHLIBDEF = -DSUNSHLIB
- X
- X PROTO_DEFINES =
- X
- X INSTPGMFLAGS =
- X
- X INSTBINFLAGS = -m 0755
- X INSTUIDFLAGS = -m 4755
- X INSTLIBFLAGS = -m 0644
- X INSTINCFLAGS = -m 0444
- X INSTMANFLAGS = -m 0444
- X INSTDATFLAGS = -m 0444
- X INSTKMEMFLAGS = -g kmem -m 2755
- X
- X PROJECTROOT = /usr/local/
- X
- X TOP_INCLUDES = -I$(INCROOT)
- X
- X CDEBUGFLAGS = -fast
- X CCOPTIONS = -pipe
- X
- X ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES)
- X ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(DEFINES)
- X CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES)
- X LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES)
- X
- X LDLIBS = $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
- X
- X LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(LOCAL_LDFLAGS) -L$(USRLIBDIR)
- X
- X LDCOMBINEFLAGS = -X -r
- X DEPENDFLAGS =
- X
- X MACROFILE = sun.cf
- X RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut
- X
- X IMAKE_DEFINES =
- X
- X IRULESRC = $(CONFIGDIR)
- X IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)
- X
- X ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/Imake.rules \
- X $(IRULESRC)/Project.tmpl $(IRULESRC)/site.def \
- X $(IRULESRC)/$(MACROFILE) $(EXTRA_ICONFIGFILES)
- X
- # -------------------------------------------------------------------------
- # X Window System Build Parameters
- # $XConsortium: Project.tmpl,v 1.138 91/09/10 09:02:12 rws Exp $
- X
- # -------------------------------------------------------------------------
- # X Window System make variables; this need to be coordinated with rules
- X
- X PATHSEP = /
- X USRLIBDIR = /usr/local/lib
- X BINDIR = /usr/local/bin/X11
- X INCROOT = /usr/local/include
- X BUILDINCROOT = $(TOP)
- X BUILDINCDIR = $(BUILDINCROOT)/X11
- X BUILDINCTOP = ..
- X INCDIR = $(INCROOT)/X11
- X ADMDIR = /usr/adm
- X LIBDIR = $(USRLIBDIR)/X11
- X CONFIGDIR = $(LIBDIR)/config
- X LINTLIBDIR = $(USRLIBDIR)/lint
- X
- X FONTDIR = $(LIBDIR)/fonts
- X XINITDIR = $(LIBDIR)/xinit
- X XDMDIR = $(LIBDIR)/xdm
- X TWMDIR = $(LIBDIR)/twm
- X MANPATH = /usr/local/man
- X MANSOURCEPATH = $(MANPATH)/man
- X MANSUFFIX = n
- X LIBMANSUFFIX = 3
- X MANDIR = $(MANSOURCEPATH)$(MANSUFFIX)
- X LIBMANDIR = $(MANSOURCEPATH)$(LIBMANSUFFIX)
- X NLSDIR = $(LIBDIR)/nls
- X PEXAPIDIR = $(LIBDIR)/PEX
- X XAPPLOADDIR = $(LIBDIR)/app-defaults
- X FONTCFLAGS = -t
- X
- X INSTAPPFLAGS = $(INSTDATFLAGS)
- X
- X IMAKE = imake
- X DEPEND = makedepend
- X RGB = rgb
- X
- X FONTC = bdftopcf
- X
- X MKFONTDIR = mkfontdir
- X MKDIRHIER = /bin/sh $(BINDIR)/mkdirhier
- X
- X CONFIGSRC = $(TOP)/config
- X DOCUTILSRC = $(TOP)/doc/util
- X CLIENTSRC = $(TOP)/clients
- X DEMOSRC = $(TOP)/demos
- X LIBSRC = $(TOP)/lib
- X FONTSRC = $(TOP)/fonts
- X INCLUDESRC = $(TOP)/X11
- X SERVERSRC = $(TOP)/server
- X UTILSRC = $(TOP)/util
- X SCRIPTSRC = $(UTILSRC)/scripts
- X EXAMPLESRC = $(TOP)/examples
- X CONTRIBSRC = $(TOP)/../contrib
- X DOCSRC = $(TOP)/doc
- X RGBSRC = $(TOP)/rgb
- X DEPENDSRC = $(UTILSRC)/makedepend
- X IMAKESRC = $(CONFIGSRC)
- X XAUTHSRC = $(LIBSRC)/Xau
- X XLIBSRC = $(LIBSRC)/X
- X XMUSRC = $(LIBSRC)/Xmu
- X TOOLKITSRC = $(LIBSRC)/Xt
- X AWIDGETSRC = $(LIBSRC)/Xaw
- X OLDXLIBSRC = $(LIBSRC)/oldX
- X XDMCPLIBSRC = $(LIBSRC)/Xdmcp
- X BDFTOSNFSRC = $(FONTSRC)/bdftosnf
- X BDFTOSNFSRC = $(FONTSRC)/clients/bdftosnf
- X BDFTOPCFSRC = $(FONTSRC)/clients/bdftopcf
- X MKFONTDIRSRC = $(FONTSRC)/clients/mkfontdir
- X FSLIBSRC = $(FONTSRC)/lib/fs
- X FONTSERVERSRC = $(FONTSRC)/server
- X EXTENSIONSRC = $(TOP)/extensions
- X XILIBSRC = $(EXTENSIONSRC)/lib/xinput
- X PHIGSLIBSRC = $(EXTENSIONSRC)/lib/PEX
- X
- # $XConsortium: sunLib.tmpl,v 1.14 91/12/20 11:19:05 rws Exp $
- X
- SHLIBLDFLAGS = -assert pure-text
- PICFLAGS = -pic
- X
- X DEPEXTENSIONLIB =
- X EXTENSIONLIB = -lXext
- X
- X DEPXLIB = $(DEPEXTENSIONLIB)
- X XLIB = $(EXTENSIONLIB) -lX11
- X
- X DEPXMULIB = $(USRLIBDIR)/libXmu.sa.$(SOXMUREV)
- X XMULIBONLY = -lXmu
- X XMULIB = -lXmu
- X
- X DEPOLDXLIB =
- X OLDXLIB = -loldX
- X
- X DEPXTOOLLIB = $(USRLIBDIR)/libXt.sa.$(SOXTREV)
- X XTOOLLIB = -lXt
- X
- X DEPXAWLIB = $(USRLIBDIR)/libXaw.sa.$(SOXAWREV)
- X XAWLIB = -lXaw
- X
- X DEPXILIB =
- X XILIB = -lXi
- X
- X SOXLIBREV = 4.10
- X SOXTREV = 4.10
- X SOXAWREV = 5.0
- X SOOLDXREV = 4.10
- X SOXMUREV = 4.10
- X SOXEXTREV = 4.10
- X SOXINPUTREV = 4.10
- X
- X DEPXAUTHLIB = $(USRLIBDIR)/libXau.a
- X XAUTHLIB = -lXau
- X DEPXDMCPLIB = $(USRLIBDIR)/libXdmcp.a
- X XDMCPLIB = -lXdmcp
- X
- X DEPPHIGSLIB = $(USRLIBDIR)/libphigs.a
- X PHIGSLIB = -lphigs
- X
- X DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
- X XBSDLIB = -lXbsd
- X
- X LINTEXTENSIONLIB = $(LINTLIBDIR)/llib-lXext.ln
- X LINTXLIB = $(LINTLIBDIR)/llib-lX11.ln
- X LINTXMU = $(LINTLIBDIR)/llib-lXmu.ln
- X LINTXTOOL = $(LINTLIBDIR)/llib-lXt.ln
- X LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln
- X LINTXI = $(LINTLIBDIR)/llib-lXi.ln
- X LINTPHIGS = $(LINTLIBDIR)/llib-lphigs.ln
- X
- X DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
- X
- X DEPLIBS1 = $(DEPLIBS)
- X DEPLIBS2 = $(DEPLIBS)
- X DEPLIBS3 = $(DEPLIBS)
- X
- # -------------------------------------------------------------------------
- # Imake rules for building libraries, programs, scripts, and data files
- # rules: $XConsortium: Imake.rules,v 1.123 91/09/16 20:12:16 rws Exp $
- X
- # -------------------------------------------------------------------------
- # start of Imakefile
- X
- #
- # If you XMLIB is defined in your Imake.tmpl comment out the
- # following line
- #
- XXMLIB = -lXm
- # for initiall development
- #CC = gcc
- #CDEBUGFLAGS = -g
- #
- #
- INCLUDES = -I$(TOP)/lib -I$(TOP)
- X
- #
- # Define SLOW_X_SERVER here if you have an X server that is too slow to draw
- # the stippling on pushbuttons that have temporarily been desensitized (aka
- # greyed out). On Suns with the MIT sample server, it is VERY painful.
- # HP's product X11 server, on the other hand, is quite fast and has no such
- # problems, even in color.
- #
- # This does not seem to be a problem even on the Suns RMC.
- #
- DEFINES = -DAPPDEFAULTSDIR=\"$(XAPPLOADDIR)\"
- HDRS = user_prefs.h \
- X xwebster.h
- LOCAL_LIBRARIES = $(XMLIB) \
- X $(XTOOLLIB) \
- X $(XLIB)
- OBJS = controlpanel.o \
- X display_def.o \
- X wordlist.o \
- X xwebster.o
- SRCS = controlpanel.c \
- X display_def.c \
- X wordlist.c \
- X xwebster.c
- X
- X PROGRAM = xwebster
- X
- all:: xwebster
- X
- xwebster: $(OBJS) $(DEPLIBS)
- X $(RM) $@
- X $(CC) -o $@ $(OBJS) $(LDOPTIONS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS)
- X
- saber_xwebster:: $(SRCS)
- X # load $(ALLDEFINES) $(SRCS) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
- X
- osaber_xwebster:: $(OBJS)
- X # load $(ALLDEFINES) $(OBJS) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
- X
- install:: xwebster
- X @if [ -d $(DESTDIR)$(BINDIR) ]; then set +x; \
- X else (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); fi
- X $(INSTALL) -c $(INSTPGMFLAGS) xwebster $(DESTDIR)$(BINDIR)
- X
- install.man:: xwebster.man
- X @if [ -d $(DESTDIR)$(MANDIR) ]; then set +x; \
- X else (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); fi
- X $(INSTALL) -c $(INSTMANFLAGS) xwebster.man $(DESTDIR)$(MANDIR)/xwebster.$(MANSUFFIX)
- X
- depend::
- X $(DEPEND) $(DEPENDFLAGS) -s "# DO NOT DELETE" -- $(ALLDEFINES) -- $(SRCS)
- X
- lint:
- X $(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
- lint1:
- X $(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)
- X
- clean::
- X $(RM) $(PROGRAM)
- X
- install:: Xwebster.ad
- X @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then set +x; \
- X else (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); fi
- X $(INSTALL) -c $(INSTAPPFLAGS) Xwebster.ad $(DESTDIR)$(XAPPLOADDIR)/Xwebster
- X
- # -------------------------------------------------------------------------
- # common rules for all Makefiles - do not edit
- X
- emptyrule::
- X
- clean::
- X $(RM_CMD) "#"*
- X
- Makefile::
- X -@if [ -f Makefile ]; then set -x; \
- X $(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
- X else exit 0; fi
- X $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
- X
- tags::
- X $(TAGS) -w *.[ch]
- X $(TAGS) -xw *.[ch] > TAGS
- X
- saber:
- X # load $(ALLDEFINES) $(SRCS)
- X
- osaber:
- X # load $(ALLDEFINES) $(OBJS)
- X
- # -------------------------------------------------------------------------
- # empty rules for directories that do not have SUBDIRS - do not edit
- X
- install::
- X @echo "install in $(CURRENT_DIR) done"
- X
- install.man::
- X @echo "install.man in $(CURRENT_DIR) done"
- X
- Makefiles::
- X
- includes::
- X
- # -------------------------------------------------------------------------
- # dependencies generated by makedepend
- X
- SHAR_EOF
- chmod 0644 Makefile ||
- echo 'restore of Makefile failed'
- Wc_c="`wc -c < 'Makefile'`"
- test 11405 -eq "$Wc_c" ||
- echo 'Makefile: original size 11405, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= README ==============
- if test -f 'README' -a X"$1" != X"-c"; then
- echo 'x - skipping README (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting README (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'README' &&
- X Xwebster Motif
- X
- Whats new?
- X Well not alot, for the most part this is still the same program just
- redone to use the Motif Widgets.
- X The most significant change is the additional support for the
- NeXT version of websterd by Steve Hayman. Since the NeXTS also have
- the 9th edition Thesaurus as well the 9th edition Dictionary online
- Steve's version of websterd now has the "INDEX" directive, that allows
- slections of which data base to use.
- X To support both version of websterd I have added an additonal
- application resource "dictionarySource" by default this is set to the
- string "next" (Since that is the one I am using) if your webster
- server is not the NeXT version set this string to something else.
- (ie "other").
- X
- X It is important to note that the NeXT websterd will be set
- into "dictionary mode" or "thesaurus mode" depending upon which button
- is clicked. Clicking on Define will put it into dictionary mode,
- clicking on Thesaurus will put it into thesaurus mode. It will remain
- in a particular mode until set to something different, which means
- typing a word into the input box and then hitting <Return> will do a
- lookup based on whatever mode the websterd is currently in.
- X
- For example typing "moon" and then clicking the Thesaurus button will
- set the websterd into thesaurus mode and do a lookup of the word "moon".
- If you then type "cow" and hit <Return> you will get a thesaurus
- lookup of the word cow. It will continue to do thesaurus lookup until
- the Define button is clicked.
- X
- X The Xwebster.ad has been set up with emacs keybindings for
- both the word input box, and the definition display box if you do not
- care for these bindings either comment them out of the Xwebster.ad
- file or change them to your liking.
- X
- X
- Compiling should be fairly straight forward.
- X
- %xmkmf
- %make
- Finally check the values of "hostAddrList" and "hostPort" in the
- XXwebster.ad file and...
- %make install
- X
- X
- X
- This should put the Xwebster.ad in the "app-defaults" directory and
- xwebster in your BINDIR directory.
- X
- Any comments, suggestions drop me a line.
- X
- --------------------------------------------------------------
- X Russell Cattelan
- X cattelan@everest.ee.umn.edu
- X University of Minnesota, Electrical Engineering dept
- SHAR_EOF
- chmod 0644 README ||
- echo 'restore of README failed'
- Wc_c="`wc -c < 'README'`"
- test 2239 -eq "$Wc_c" ||
- echo 'README: original size 2239, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= README.mayer ==============
- if test -f 'README.mayer' -a X"$1" != X"-c"; then
- echo 'x - skipping README.mayer (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting README.mayer (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'README.mayer' &&
- X Xwebster, A Dictionary Browser
- X Niels P. Mayer
- X Hewlett-Packard Laboratories
- X Software Technology Lab.
- X Human-Computer Interaction Department.
- ------------------------------------------------------------------------------
- X
- XXwebster is used to look up words in the online copy of Webster's 7th
- dictionary, stored at SRI-NIC and also available on machines located at
- Boston U., Indiana U, Purdue U., MIT, Stanford, etc. In order to run xwebster
- you must have access to a webster server. In order to make xwebster run faster
- and more reliably (the "arpanet" can be flaky), you may want to ask your
- system administrators whether there is a webster server running locally.
- Chances are, if people at your site are using the tty-based webster(1)
- interface, there is probably a webster server "nearby".
- X
- Using xwebster is simple -- words are typed into a TextEdit widget in
- xwebster, and then one of three actions can be taken:
- X
- X 1) mousing [Define] (or hitting <ret>) after typing in a
- X word will attempt to show you a complete dictionary entry for the
- X word including definitions, pronunciation, and derivation. If the word
- X is misspelled, then a browser of similar words will be presented. If
- X the word contains wildcard characters (%=any char; *=any char seq),
- X then a browser of all matching words will be presented.
- X
- X 2) mousing [Complete] (or hitting <esc>) after a partial word has
- X been typed will attempt to complete what you have typed so far. If
- X what you have typed is a unique abbreviation for a word, the word is
- X completed. Otherwise xwebster will beep and indicate the ambiguity of
- X the partial word.
- X
- X 3) mousing [Endings] (or hitting <?>) after a partial word has been
- X entered will display a browser of all the words matching the partial
- X word.
- X
- Anytime there are words in the word browser panel, clicking on a word will
- cause its definition to be dispayed.
- X
- X ----------
- COMPILING:
- X
- XXwebster expects to use the X11r3 HP Xwidgets library, libXw.a, and the
- XX11R3 Xt intrinsics, libXt.a (with the latest patches, particularly
- fixes/fix8). The HP widgets are on the X11R3 tape (under
- contrib/widgets/Xhp/Xw/), and require a set of fixes by Martin Friedmann
- <martin@citi.umich.edu> in order to work under R3. These will probably be
- available from the usual archive sites, and in particular, from
- expo.lcs.mit.edu:contrib/Xhp.patch.works.tar.Z.
- X
- XXwebster has been tested under HPUX 6.2 and SunOS3.5. I've avoided any
- particularly hairy SYSVisms, so you sholdn't have any trouble getting it to
- run on your machine. You'll need the strtok() call - if your system doesn't
- have it (HPUX, System V, SunOS have it), get Henry Spencer's public domain
- strings(3) library from some comp.sources.unix archive site.
- X
- X ----------
- X
- CUSTOMIZING:
- X
- All the resources for xwebster are specified in the application default
- file Xwebster.ad, which MUST be installed in APPDEFAULTSDIR/Xwebster. Fully
- qualified resource names are used in this app-defaults file so as to
- document the widget hierarchy in the application. Documentation on
- customizing xwebster also appears in this defaults file. (APPDEFAULTSDIR
- is set in the imake defaults, it is usually /usr/lib/X11/app-defaults/)
- X
- Parameters for connecting to a webster server are contained in the
- resources "hostAddrList", "hostPort", and "hostServiceName". See the
- XXwebster.ad file for details and documentation.
- X
- XXwebster allows dictionary definitions to be viewed in either a scrolled
- StaticText widget (for those who like scrollbars), or in a TextEdit widget
- (for those who like Emacs, and need better control of cut/paste
- operations). The resource that controls this is "useEditorAsDisplay"
- X
- I personally use the following set of .Xdefaults for xwebster, in addition
- to the defaults provided by APPDEFAULTSDIR/Xwebster:
- X
- #
- # Global Defaults.
- #
- *foreground: White
- *background: DarkSlateGray
- *font: 6x13
- *Sash*background: wheat
- *Sash*foreground: black
- *topShadowColor: light blue
- *topShadowTile: foreground
- *bottomShadowColor: black
- *bottomShadowTile: foreground
- *TextEdit*background: IndianRed
- *TextEdit*foreground: Green
- *TextEdit*highlightThickness: 1
- *TextEdit*font: fixed
- *StaticText*background: DarkSlateGray
- *StaticText*foreground: White
- *StaticText.BorderWidth: 1
- *StaticText.ShadowOn: yes
- *StaticText*font: variable
- *PushButton*background: Blue
- *PushButton*foreground: White
- *PushButton*font: variable
- X
- #
- # Xwebster
- #
- xwebster*hostAddrList: 26.0.0.73 10.0.0.51
- xwebster*hostPort: 103
- xwebster*useEditorAsDisplay: TRUE
- xwebster*highlightColor: white
- xwebster*highlightTile: foreground
- xwebster*display.foreground: White
- xwebster*display.background: IndianRed
- xwebster*word_input*foreground: Green
- xwebster*word_input*background: IndianRed
- X
- X ----------
- X
- HISTORY/THANKS/AUTHORS:
- X
- This program was inspired by the webster(1) tty-based client to a webster
- server written by Dave Curry <davy@riacs.edu>, although most of the code
- was written from scratch because I didn't find the webster(1) source code
- until after the application was prototyped. The original webster
- client/server was written in MIDAS and ran under Tops-20, it was probably
- done by someone at SRI-NIC.
- X
- XXwebster was originally written and released by Niels Mayer
- <mayer@hplabs.hp.com> on the X11r3 contrib tape. Mark Moraes
- <moraes@csri.toronto.edu> took that version, updated it to work with the r3
- HP Xwidgets and r3 Toolkit Intrinsics, and fixed a bunch of stupid bugs
- that were making xwebster dump core an a SUN. He also made xwebster
- disconnect gracefully after the webster dictionary server times out.
- Finally, he wrote up a manual page and put together an Imake file. Thanks
- Mark!
- X
- If you have contributions to make to xwebster, please send them to me via
- email.
- X
- -------------------------------------------------------------------------------
- X Niels Mayer -- hplabs!mayer -- mayer@hplabs.hp.com
- X Hewlett-Packard Laboratories
- X Palo Alto, CA.
- X *
- SHAR_EOF
- chmod 0644 README.mayer ||
- echo 'restore of README.mayer failed'
- Wc_c="`wc -c < 'README.mayer'`"
- test 5959 -eq "$Wc_c" ||
- echo 'README.mayer: original size 5959, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= Xwebster.ad ==============
- if test -f 'Xwebster.ad' -a X"$1" != X"-c"; then
- echo 'x - skipping Xwebster.ad (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting Xwebster.ad (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'Xwebster.ad' &&
- XXwebster.helpText: WELCOME TO XWEBSTER, \n\n\
- originally by Niels Mayer (mayer@hplabs.hp.com)\n\n\
- Hp widget to Motif by Russell Cattelan (cattelan@everest.ee.umn.edu)\n\n\
- X Webster's 9th Collegiate Dictionary, Copyright (C) 1963 by Merriam-Webster,\n\
- X Inc. No part of this information may be copied or reprinted without the\n\
- X express written consent of the publisher.\n\n\
- This program connects to a Webster dictionary server to get definitions of\n\
- words. Words are entered in the TextEdit Widget in the center panel of\n\
- this program. You may then type <ret> or mouse [Define] to get the\n\
- definition of the word. If the word has any cross-references, they will be\n\
- presented in the word browser panel in xwebster. If the word is\n\
- "slightly misspelled", then a list of words is presented in the word browser\n\
- panel, one of which might be the word that you had intended.\n\n\
- Mousing [Endings] following part of a word will cause\n\
- xwebster to list all words beginning with the partial word in the word\n\
- browser panel. The program will beep and give an error message if nothing\n\
- matches.\n\n\
- Mousing [Complete] causes the program to attempt to\n\
- complete the word. If the word can be completed, the new word is placed in\n\
- the TextEdit widget; otherwise, the program beeps and displays a message\n\
- indicating that the word is ambiguous.\n\n\
- In all the above cases, the wildcard characters '%' and '*' may be used to\n\
- specify partial words. The '%' character matches exactly one character,\n\
- while the '*' matches zero or more characters. If wildcards are used, the\n\
- program will return either "No match" or a browser of matching words.\n\n\
- Mousing [Thesaurus] will set webster into thesaurus mode, which means\n\
- that all subsequent words typed in will be looked up in the online Thesaurus.\n\
- To return to "Dictionary" mode mouse [Define] button.\n
- !!
- !! Make sure to see this list to a least one of your webster servers
- !! there is no default address compiled into the program
- XXwebster.hostAddrList: 127.0.0.1
- XXwebster.hostPort: 2627
- XXwebster.hostServiceName: webster
- !!
- XXwebster.numWordsBeforeRefresh: 10
- !! If you are using Steve Hayman's websterd for the NeXT
- !! set this to "next" otherwise setting to anything else will
- !! set it back to default mode.
- XXwebster.dictionarySource: next
- !
- !! Change this as you wish. I like big fonts easier to see :-)
- XXwebster*display_scroller*display*font: -adobe-times-bold-r-normal--17-120-100-100-p-88-iso8859-1
- XXwebster*fontList:-adobe-times-bold-r-normal--17-120-100-100-p-88-iso8859-1
- !
- !
- XXwebster*define.labelString: Define <ret>
- XXwebster*complete.labelString: Complete <tab>
- XXwebster*endings.labelString: Endings <?>
- XXwebster*thesaurus.labelString: Thesaurus
- XXwebster*quit.labelString: Quit
- X
- XXwebster.panel.wordlist_scroller.height: 100
- XXwebster.panel.wordlist_scroller.wordlist.HSpace: 2
- XXwebster.panel.wordlist_scroller.wordlist.VSpace: 2
- XXwebster.panel.wordlist_scroller.wordlist.numColumns: 5
- !
- XXwebster*control_panel.word_input.columns: 30
- XXwebster*control_panel.word_input.minheight: 40
- XXwebster*display_scroller.display.rows: 24
- XXwebster*display_scroller.display.columns: 80
- X
- !! Change these as you wish I am going to comment them out
- !! since some people question my choice of colors
- !!
- !Xwebster*background: wheat
- !Xwebster.panel.wordlist_scroller*background: cornsilk1
- !Xwebster.panel.display_scroller*background: wheat
- !Xwebster.panel.display_scroller.display.background: cornsilk1
- !Xwebster*word_input.background: cornsilk1
- X
- !Xwebster*define.background: green
- !Xwebster*complete.background: green
- !Xwebster*endings.background: green
- !Xwebster*thesaurus.background: green
- !Xwebster*quit.background: green
- !Xwebster*help.background: green
- !Xwebster*word.background: green
- !Xwebster*word_list.background: green
- !Xwebster*control_panel.background: wheat
- !
- !
- ! Sets up the Word input box to use emacs key bindings
- ! I know motif says that it doesn't want to impose other peoples
- ! Religions on people, but if you don't like it just delete the
- ! Following lines.
- !
- ! Oh one other thing the orginal had Escape bound to
- ! webster-complete-word, but I'll be dammed it I can
- ! get the TextFieldWidget to reconize the escape key
- ! as an action. Besides that as long as we are going for
- ! the emacs bindings Tab seems more appropriate.
- !
- XXwebster*word_input.translations: #override \n\
- X <Key>Return: webster-define-word() \n\
- X <Key>?: webster-list-endings() \n\
- X Shift<Key>/: webster-list-endings() \n\
- X <Key>Tab: webster-complete-word() \n\
- X Ctrl<Key>M: webster-no-op() \n\
- X Meta<Key>]: webster-no-op() \n\
- X Ctrl<Key>[: webster-no-op() \n\
- X Ctrl<Key>N: webster-no-op() \n\
- X Ctrl<Key>P: webster-no-op() \n\
- X Ctrl<Key>V: webster-no-op() \n\
- X Meta<Key>V: webster-no-op() \n\
- X Ctrl<Key>Z: webster-no-op() \n\
- X Meta<Key>Z: webster-no-op() \n\
- X Ctrl<Key>J: webster-no-op() \n\
- X Ctrl<Key>O: webster-no-op() \n\
- X Ctrl<Key>F: forward-character() \n\
- X <Key>Right: forward-character() \n\
- X Ctrl<Key>B: backward-character() \n\
- X Meta<Key>F: forward-word() \n\
- X Meta<Key>B: backward-word() \n\
- X Ctrl<Key>A: beginning-of-line() \n\
- X Ctrl<Key>E: end-of-line() \n\
- X <Key>Down: webster-no-op() \n\
- X <Key>Up: webster-no-op() \n\
- X Ctrl<Key>D: delete-next-character() \n\
- X <Key>osfDelete: delete-previous-character() \n\
- X <Key>osfBackSpace: delete-previous-character() \n\
- X Ctrl<Key>H: delete-previous-character() \n\
- X Meta<Key>D: delete-next-word() \n\
- X Ctrl<Key>K: delete-to-end-of-line() \n\
- X Meta<Key>H: delete-previous-word()
- XXwebster*display.translations: #override \n\
- X <Key>osfBackSpace: previous-page() \n\
- X Ctrl<Key>H: previous-page() \n\
- X <Key>\\ : next-page() \n\
- X Ctrl<Key>F: forward-character() \n\
- X Ctrl<Key>B: backward-character() \n\
- X Meta<Key>F: forward-word() \n\
- X Meta<Key>B: backward-word() \n\
- X Meta<Key>]: forward-paragraph() \n\
- X Ctrl<Key>[: backward-paragraph() \n\
- X Ctrl<Key>A: beginning-of-line() \n\
- X Ctrl<Key>E: end-of-line() \n\
- X Ctrl<Key>N: next-line() \n\
- X Ctrl<Key>P: previous-line() \n\
- X Ctrl<Key>V: next-page() \n\
- X Meta<Key>V: previous-page() \n\
- X Meta<Key>\\<: beginning-of-file() \n\
- X Meta<Key>\\>: end-of-file() \n\
- X Ctrl<Key>Z: scroll-one-line-up() \n\
- X Meta<Key>Z: scroll-one-line-down() \n\
- X Ctrl<Key>L: redraw-display()
- X
- X
- SHAR_EOF
- chmod 0644 Xwebster.ad ||
- echo 'restore of Xwebster.ad failed'
- Wc_c="`wc -c < 'Xwebster.ad'`"
- test 6945 -eq "$Wc_c" ||
- echo 'Xwebster.ad: original size 6945, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= Xwebster.ad.hp_widgets ==============
- if test -f 'Xwebster.ad.hp_widgets' -a X"$1" != X"-c"; then
- echo 'x - skipping Xwebster.ad.hp_widgets (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting Xwebster.ad.hp_widgets (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'Xwebster.ad.hp_widgets' &&
- ################################################################################
- #
- # File: Xwebster
- # RCS: $Header: /home/everest1/cattelan/work/xwebster.motif/RCS/Xwebster.ad.hp_widgets,v 1.1 1992/03/21 22:39:43 cattelan Exp $
- # Description: Application Default: put in /usr/lib/X11/app-defaults/Xwebster
- # Author: Niels Mayer, HPLabs
- # Created: Thu Sep 1 01:14:17 1988
- # Modified: Mon Mar 6 01:10:41 1989 (Niels Mayer) mayer@hplnpm
- # Language: N/A
- # Package: N/A
- # Status: G-Job
- #
- # xwebster - dictionary browser
- #
- # Copyright 1988 Hewlett-Packard Company
- #
- # Permission to use, copy, modify, and distribute this software and its
- # documentation for any purpose and without fee is hereby granted, provided
- # that the above copyright notice appear in all copies and that both that
- # copyright notice and this permission notice appear in supporting
- # documentation, and that the name of HP not be used in advertising or
- # publicity pertaining to distribution of the software without specific,
- # written prior permission. HP makes no representations about the
- # suitability of this software for any purpose. It is provided "as is"
- # without express or implied warranty.
- #
- # Please send any improvements, bug fixes, useful modifications, and comments
- # to mayer@hplabs.hp.com.
- ################################################################################
- X
- ##
- ## this is the help display that comes up initially when you run Xwebster.
- ##
- *helpText: WELCOME TO XWEBSTER, by Niels Mayer (mayer@hplabs.hp.com)\n\n\
- X Webster's 7th Collegiate Dictionary, Copyright (C) 1963 by Merriam-Webster,\n\
- X Inc. No part of this information may be copied or reprinted without the\n\
- X express written consent of the publisher.\n\n\
- This program connects to a Webster dictionary server to get definitions of\n\
- words. Words are entered in the TextEdit Widget in the center panel of\n\
- this program. You may then type <ret> or mouse [Define] to get the\n\
- definition of the word. If the word has any cross-references, they will be\n\
- presented in the word browser panel in xwebster. If the word is\n\
- "slightly misspelled", then a list of words is presented in the word browser\n\
- panel, one of which might be the word that you had intended.\n\n\
- Typing '?' or mousing [Endings] following part of a word will cause\n\
- xwebster to list all words beginning with the partial word in the word\n\
- browser panel. The program will beep and give an error message if nothing\n\
- matches.\n\n\
- Typing <esc> or mousing [Complete] causes the program to attempt to\n\
- complete the word. If the word can be completed, the new word is placed in\n\
- the TextEdit widget; otherwise, the program beeps and displays a message\n\
- indicating that the word is ambiguous.\n\n\
- In all the above cases, the wildcard characters '%' and '*' may be used to\n\
- specify partial words. The '%' character matches exactly one character,\n\
- while the '*' matches zero or more characters. If wildcards are used, the\n\
- program will return either "No match" or a browser of matching words.\n
- X
- ##
- ## The following are parameters for accessing the webster server. Note that
- ## hostAddrList is a list of internet adresses that are tried in succession
- ## incase there's problems connecting to a server. In the following example,
- ## we try the two different SRI-NIC server addresses for a total of 10 times
- ## before giving up. Or replace these with your own webster server's parameters
- ##
- ## (Webster servers are available at ???.bu.edu, ???.indiana.edu, ???.mit.edu,
- ## ??.purdue.edu, and others. If you have the webster(1) tty interface to
- ## webster, then run strings on it to find out which server host it uses
- ## (or look at the source code). Webster servers tend to be located on port
- ## 103 or 2627.)
- ##
- *hostAddrList: 26.0.0.73 10.0.0.51 26.0.0.73 10.0.0.51 26.0.0.73 10.0.0.51 26.0.0.73 10.0.0.51 26.0.0.73 10.0.0.51
- *hostPort: 103
- *hostServiceName: webster
- X
- ##
- ## This is the width of the wordinput widget. I figure that most words are
- ## less than 30 characters long.
- ##
- *wordInputWidgetWidth: 30
- X
- ##
- ## if useEditorAsDisplay is true, then a TextEdit widget is used to display,
- ## definitions.
- ## if useEditorAsDisplay is false, then a statictext widget within a
- ## scrolled window is used to display definitions.
- ##
- ## Advantages for "*useEditorAsDisplay: FALSE" are:
- ## 1) obvious to use -- move around the definition with the scrollbar.
- ## Disadvantages are:
- ## 1) Can only cut entire text of definition via left-mouse selection,
- ## cannot cut an individual region of text, such as a single word.
- ## 2) Scrolling refreshes in an ugly fashion.
- ##
- ## Advantages for "*useEditorAsDisplay: TRUE" are:
- ## 1) can cut individual regions from the definition text.
- ## Disadvantages are:
- ## 1) "beginners" may not know that "emacs" commands allow moving around
- ## the definition. The TexEdit widget doesn't have a scrollbar, so it's
- ## not visually obvious that part of the definition may be off-screen.
- ##
- *useEditorAsDisplay: FALSE
- X
- ##
- ## The following control the size of the pane that display's word definitions.
- ## The webster server formats it's output for 80-column wide displays, and
- ## therefore, *displayWidth should be at least this wide. Due to weirdness
- ## of this implementation and the Xwidgets, "85" width allows for a scrollbar
- ## to fit in the display pane without covering up 80-column wide text.
- ##
- *displayWidth: 85
- *displayHeight: 10
- X
- ##
- ## When a long list of words is being sent by the server (eg, list endings of
- ## all words beginning with "a"), the wordlist display is updated every
- ## "numWordsBeforeRefresh" words. If the server is very slow (or the network is
- ## slow), it is useful to see its progress, so as to show that xwebster hasn't
- ## hung. On the other hand, if the server is very fast, then the wordlist display
- ## will update too much. So Adjust this value upwards if you don't care to see
- ## the words in the wordlist arrive from the server incementally or if you want
- ## to reduce the amount of display updating.
- ##
- *numWordsBeforeRefresh: 10
- X
- ###############################################################################
- # *panel -- XwvPanedWidgetClass.
- #
- *panel.sashIndent: -20
- X
- ###############################################################################
- ##
- ## *panel.display_scroller and *panel.display_scroller.display below only
- ## count if "*useEditorAsDisplay" resource is false. In that case, the
- ## widget displaying the definition is made up from a statictext widget within
- ## a scrollbar.
- ##
- # *panel.display_scroller -- XwswindowWidgetClass
- #
- ## preset: *panel.display_scroller.width = displayWidth*fontwidth where by default
- ## *displayWidth: 85
- #
- ## preset: *panel.display_scroller.height = displayHeight*fonthheight where by default
- ## *displayHeight: 10
- #
- ## Constraint resources added by VerticallyPanedWidget (XwvPanedWidgetClass):
- # *panel.display_scroller.min: 1
- # *panel.display_scroller.max: 10000
- # *panel.display_scroller.allowResize: FALSE
- # *panel.display_scroller.skipAdjust: FALSE
- X
- #
- # *panel.display_scroller.display -- XwstaticTextWidgetClass
- #
- *panel.display_scroller.display.borderWidth: 0
- *panel.display_scroller.display.shadowOn: no
- *panel.display_scroller.display.alignment: Left
- *panel.display_scroller.display.gravity: CenterGravity
- *panel.display_scroller.display.wrap: FALSE
- *panel.display_scroller.display.strip: FALSE
- # it would be very silly to use proportional fonts here, since the webster
- # server formats the text output for fixed width fonts.
- *display_scroller.display.font: 6x13
- X
- ###############################################################################
- ##
- ## *panel.display below only counts if "*useEditorAsDisplay" resource is true.
- ## In that case, the widget displaying the definition is made up from a
- ## TextEdit widget.
- ##
- # *panel.display -- XwtexteditWidgetClass
- #
- ## preset: *display.width = displayWidth*fontwidth where by default
- ## *displayWidth: 85
- #
- ## preset: *display.height = displayHeight*fonthheight where by default
- ## *displayHeight: 10
- #
- ## Constraint resources added by VerticallyPanedWidget (XwvPanedWidgetClass):
- # *panel.display.min: 1
- # *panel.display.max: 10000
- # *panel.display.allowResize: FALSE
- # *panel.display.skipAdjust: FALSE
- X
- *panel.display.wrap: wrapoff
- ## it would be very silly to use proportional fonts here, since the webster
- ## server formats the text output for fixed width fonts.
- *panel.display.font: 6x13
- ## this is the default TextEdit txlation table with all bindings that alter
- ## the editor's text removed. In addition, backspace and space move to
- ## previous and next pages, respectively.
- *panel.display.translations: \
- X <Key>BackSpace: previous-page() \n\
- X Ctrl<Key>H: previous-page() \n\
- X <Key>\\ : next-page() \n\
- X Ctrl<Key>F: forward-character() \n\
- X Ctrl<Key>Right: traverse-right() \n\
- X <Key>Right: forward-character() \n\
- X Ctrl<Key>B: backward-character() \n\
- X Ctrl<Key>Left: traverse-left() \n\
- X <Key>Left: backward-character() \n\
- X Meta<Key>F: forward-word() \n\
- X Meta<Key>B: backward-word() \n\
- X Meta<Key>]: forward-paragraph() \n\
- X Ctrl<Key>[: backward-paragraph() \n\
- X Ctrl<Key>A: beginning-of-line() \n\
- X Ctrl<Key>E: end-of-line() \n\
- X Ctrl<Key>N: next-line() \n\
- X Ctrl<Key>Down: traverse-down() \n\
- X <Key>Down: next-line() \n\
- X Ctrl<Key>P: previous-line() \n\
- X Ctrl<Key>Up: traverse-up() \n\
- X <Key>Up: previous-line() \n\
- X Ctrl<Key>V: next-page() \n\
- X Ctrl<Key>Next: traverse-next() \n\
- X <Key>Next: next-page() \n\
- X Meta<Key>V: previous-page() \n\
- X Ctrl<Key>Prior: traverse-prev() \n\
- X <Key>Prior: previous-page() \n\
- X Meta<Key>\\<: beginning-of-file() \n\
- X Meta<Key>\\>: end-of-file() \n\
- X Ctrl<Key>Home: traverse-home() \n\
- X Shift<Key>Home: end-of-file() \n\
- X <Key>Home: beginning-of-file() \n\
- X Ctrl<Key>Z: scroll-one-line-up() \n\
- X Meta<Key>Z: scroll-one-line-down() \n\
- X Ctrl<Key>L: redraw-display() \n\
- X <FocusIn>: focus-in() \n\
- X <FocusOut>: focus-out() \n\
- X <Btn1Down>: select-start() \n\
- X Button1<PtrMoved>: extend-adjust() \n\
- X <Btn1Up>: extend-end() \n\
- X <Btn3Down>: extend-start() \n\
- X Button3<PtrMoved>: extend-adjust() \n\
- X <Btn3Up>: extend-end() \n\
- X <Key>Execute: execute() \n\
- X <EnterWindow>: enter() \n\
- X <LeaveWindow>: leave()
- X
- ###############################################################################
- # *panel.titlebar -- XwtitlebarWidgetClass
- #
- ## preset: *panel.titlebar.titleForeground == *panel.titlebar.foreground
- ## preset: *panel.titlebar.titleBackground == *panel.titlebar.background
- X
- ## Constraint resources added by VerticallyPanedWidget (XwvPanedWidgetClass):
- ## preset: *panel.titlebar.min == *panel.titlebar.height
- ## preset: *panel.titlebar.max == *panel.titlebar.height
- # *panel.titlebar.allowResize: FALSE
- # *panel.titlebar.skipAdjust: FALSE
- X
- *panel.titlebar.titlePrecedence: 0
- *panel.titlebar.titleRegion: Center
- X
- #
- # *panel.titlebar.StaticText -- the label text on the titlebar panel
- #
- *panel.titlebar.StaticText.gravity: CenterGravity
- *panel.titlebar.StaticText.borderWith: 0
- *panel.titlebar.StaticText.shadowOn: no
- *panel.titlebar.alignment: Left
- *panel.titlebar.wrap: FALSE
- *panel.titlebar.font: variable
- X
- #
- # *panel.titlebar.PushButton -- XwpushButtonWidgetClass
- #
- *panel.titlebar.PushButton.traversalType: highlight_enter
- *panel.titlebar.PushButton.highlightThickness: 1
- ## color display users might want to uncomment the following line and set
- ## .highlightTile to foreground as well.
- # *panel.titlebar.PushButton.highlightColor: white
- *panel.titlebar.PushButton.highlightTile: 50_foreground
- *panel.titlebar.PushButton.font: variable
- X
- *panel.titlebar.quit_button.label: Quit
- *panel.titlebar.quit_button.region: Left
- # *panel.titlebar.quit_button.lPadding: 2
- # *panel.titlebar.quit_button.rPadding: 2
- # *panel.titlebar.quit_button.precedence: 1
- X
- *panel.titlebar.help_button.label: Help
- *panel.titlebar.help_button.region: Right
- # *panel.titlebar.help_button.lPadding: 2
- # *panel.titlebar.help_button.rPadding: 2
- # *panel.titlebar.help_button.precedence: 1
- X
- ###############################################################################
- # *panel.wordlist_scroller -- XwswindowWidgetClass
- #
- *panel.wordlist_scroller.height: 100
- X
- ## Constraint resources added by VerticallyPanedWidget (XwvPanedWidgetClass):
- # *panel.wordlist_scroller.min: 1
- # *panel.wordlist_scroller.max: 10000
- # *panel.wordlist_scroller.allowResize: FALSE
- # *panel.wordlist_scroller.skipAdjust: FALSE
- X
- #
- # *panel.wordlist_scroller.wordlist -- XwrowColWidgetClass
- #
- *panel.wordlist_scroller.wordlist.hSpace: 2
- *panel.wordlist_scroller.wordlist.vSpace: 2
- *panel.wordlist_scroller.wordlist.layoutType: requested_columns
- *panel.wordlist_scroller.wordlist.columns: 4
- *panel.wordlist_scroller.wordlist.forceSize: TRUE
- *panel.wordlist_scroller.wordlist.singleRow: FALSE
- *panel.wordlist_scroller.wordlist.mode: n_of_many
- *panel.wordlist_scroller.wordlist.borderWidth: 0
- X
- #
- # *panel.wordlist_scroller.wordlist.word -- XwpushButtonWidgetClass
- # ??? for some reason, I must spec this as *panel.wordlist_scroller*wordlist...
- # ??? rather than panel.wordlist_scroller.wordlist... even though
- # ??? wordlist_scroller is the parent of wordlist -- an Xtk bug, perhaps?
- *panel.wordlist_scroller*wordlist.word.font: 6x13
- *panel.wordlist_scroller*wordlist.word.traversalType: highlight_enter
- *panel.wordlist_scroller*wordlist.word.highlightThickness: 1
- ## color display users might want to uncomment the following line and set
- ## .highlightTile to foreground as well.
- # *panel.wordlist_scroller*wordlist.word.highlightColor: white
- *panel.wordlist_scroller*wordlist.word.highlightTile: 50_foreground
- X
- ###############################################################################
- # *panel.control_panel -- XwtitlebarWidgetClass
- X
- ## Constraint resources added by VerticallyPanedWidget (XwvPanedWidgetClass):
- ## preset: *panel.control_panel.min == *panel.control_panel.height
- ## preset: *panel.control_panel.max == *panel.control_panel.height
- # *panel.control_panel.allowResize: FALSE
- # *panel.control_panel.skipAdjust: FALSE
- X
- #
- # *panel.control_panel.PushButton -- XwpushButtonWidgetClass
- #
- *panel.control_panel.PushButton.traversalType: highlight_enter
- *panel.control_panel.PushButton.highlightThickness: 1
- ## color display users might want to uncomment the following line and set
- ## .highlightTile to foreground as well.
- # *panel.control_panel.PushButton.highlightColor: white
- *panel.control_panel.PushButton.highlightTile: 50_foreground
- *panel.control_panel.PushButton.font: variable
- X
- *panel.control_panel.define_button.label: Define <ret>
- *panel.control_panel.define_button.region: Center
- *panel.control_panel.define_button.precedence: 0
- # *panel.control_panel.define_button.lPadding: 2
- # *panel.control_panel.define_button.rPadding: 2
- X
- *panel.control_panel.complete_button.label: Complete <esc>
- *panel.control_panel.complete_button.region: Center
- *panel.control_panel.complete_button.precedence: 1
- # *panel.control_panel.complete_button.lPadding: 2
- # *panel.control_panel.complete_button.rPadding: 2
- X
- *panel.control_panel.endings_button.label: Endings <?>
- *panel.control_panel.endings_button.region: Center
- *panel.control_panel.endings_button.precedence: 1
- # *panel.control_panel.endings_button.lPadding: 2
- # *panel.control_panel.endings_button.rPadding: 2
- X
- #
- # *panel.control_panel.word_input -- XwtexteditWidgetClass
- #
- ## preset: *word_input.height = 1*fontheight,
- ## preset: *word_input.width = wordInputWidgetWidth*fontheight where by default
- ## *wordInputWidgetWidth: 30
- #
- *panel.control_panel.word_input.traversalType: highlight_enter
- *panel.control_panel.word_input.highlightThickness: 1
- ## color display users might want to uncomment the following line and set
- ## .highlightTile to foreground as well.
- # *panel.control_panel.word_input.highlightColor: white
- *panel.control_panel.word_input.highlightTile: 50_foreground
- *panel.control_panel.word_input.font: 6x13
- X
- *panel.control_panel.word_input.region: Center
- *panel.control_panel.word_input.precedence: 0
- # *panel.control_panel.word_input.lPadding: 2
- # *panel.control_panel.word_input.rPadding: 2
- *panel.control_panel.word_input.shadowOn: FALSE
- X
- ## TextEdit's default translation table that has been munged so that
- ## (1) ?, <esc> and <return> call endings, complete, and define.
- ## (2) since the word_input widget is only for a single line of text, all
- ## keystrokes from the default TextEdit table that deal with multiline text
- ## have been rebound to webster-no-op(), a function that just beeps.
- *panel.control_panel.word_input.translations: \
- X <Key>Return: webster-define-word() \n\
- X <Key>Escape: webster-complete-word() \n\
- X <Key>?: webster-list-endings() \n\
- X Shift<Key>/: webster-list-endings() \n\
- X Ctrl<Key>M: webster-no-op() \n\
- X Meta<Key>]: webster-no-op() \n\
- X Ctrl<Key>[: webster-no-op() \n\
- X Ctrl<Key>N: webster-no-op() \n\
- X Ctrl<Key>P: webster-no-op() \n\
- X Ctrl<Key>V: webster-no-op() \n\
- X Meta<Key>V: webster-no-op() \n\
- X Ctrl<Key>Z: webster-no-op() \n\
- X Meta<Key>Z: webster-no-op() \n\
- X Ctrl<Key>J: webster-no-op() \n\
- X Ctrl<Key>O: webster-no-op() \n\
- X Ctrl<Key>F: forward-character() \n\
- X Ctrl<Key>Right: traverse-right() \n\
- X <Key>Right: forward-character() \n\
- X Ctrl<Key>B: backward-character() \n\
- X Ctrl<Key>Left: traverse-left() \n\
- X <Key>Left: backward-character() \n\
- X Meta<Key>F: forward-word() \n\
- X Meta<Key>B: backward-word() \n\
- X Ctrl<Key>A: beginning-of-line() \n\
- X Ctrl<Key>E: end-of-line() \n\
- X Ctrl<Key>Down: traverse-down() \n\
- X <Key>Down: webster-no-op() \n\
- X Ctrl<Key>Up: traverse-up() \n\
- X <Key>Up: webster-no-op() \n\
- X Ctrl<Key>Next: traverse-next() \n\
- X Ctrl<Key>Prior: traverse-prev() \n\
- X <Key>Prior: webster-no-op() \n\
- X Meta<Key>\\<: beginning-of-file() \n\
- X Meta<Key>\\>: end-of-file() \n\
- X Ctrl<Key>Home: traverse-home() \n\
- X Shift<Key>Home: end-of-file() \n\
- X <Key>Home: beginning-of-file() \n\
- X Shift Meta<Key>D: kill-word() \n\
- X Ctrl<Key>D: delete-next-character() \n\
- X <Key>Delete: delete-previous-character() \n\
- X <Key>BackSpace: delete-previous-character() \n\
- SHAR_EOF
- true || echo 'restore of Xwebster.ad.hp_widgets failed'
- fi
- echo 'End of part 1'
- echo 'File Xwebster.ad.hp_widgets is continued in part 2'
- echo 2 > _shar_seq_.tmp
- exit 0
- --
- --
- Molecular Simulations, Inc. mail: dcmartin@msi.com
- 796 N. Pastoria Avenue uucp: uunet!dcmartin
- Sunnyvale, California 94086 at&t: 408/522-9236
-