diff -c -N ../faces/Faces.ad ./Faces.ad *** ../faces/Faces.ad Mon Jul 1 03:25:46 1991 --- ./Faces.ad Tue Dec 10 19:07:26 1996 *************** *** 13,17 **** faces.displayHostname: false faces.audioSupport: false ! faces.audioCommand: play faces.bellAudioFile: --- 13,17 ---- faces.displayHostname: false faces.audioSupport: false ! faces.audioCommand: rplay faces.bellAudioFile: diff -c -N ../faces/extern.h ./extern.h *** ../faces/extern.h Tue Nov 19 05:00:48 1991 --- ./extern.h Tue Dec 10 10:49:37 1996 *************** *** 82,87 **** --- 82,88 ---- extern int facetype ; /* Type of face file found. */ extern int firsttime ; /* Zeroised after first mail/printer check. */ extern int flashes ; /* Number of flashes for arrival of new mail. */ + extern int border_width ; /* Border width of window. */ extern int fromc_found ; /* Set if "From:" line found during processing. */ extern int froms_found ; /* Set if "From " line found during processing. */ extern int height ; /* Height in pixels of faces display. */ *** ../faces/faces.sendmail Mon Jul 1 03:25:50 1991 --- ./faces.sendmail Tue Dec 10 20:19:25 1996 *************** *** 37,40 **** -e ': copy' \ -e p \ -e n \ ! -e 'b copy' | /usr/lib/sendmail "$@" --- 37,40 ---- -e ': copy' \ -e p \ -e n \ ! -e 'b copy' | /usr/sbin/sendmail "$@" Common subdirectories: ../faces/filters and ./filters diff -c -N ../faces/main.c ./main.c *** ../faces/main.c Tue Nov 19 05:00:47 1991 --- ./main.c Wed Dec 11 09:26:19 1996 *************** *** 63,68 **** --- 63,69 ---- "period", /* Integer: period in seconds between checks. */ "bell", /* Integer: number of beeps for new arrival. */ "flash", /* Integer: number of flashes for new arrival. */ + "borderWidth", /* Integer: border width of window. */ "lower", /* Boolean: lower window if no mail. */ "raise", /* Boolean: raise window on update? */ "button1clear", /* Boolean: mouse button 1 clear window? */ *************** *** 150,155 **** --- 151,157 ---- int facetype ; /* Type of face file found. */ int firsttime = 1 ; /* Zeroised after first mail/printer check. */ int flashes = 0 ; /* Number of flashes for arrival of new mail. */ + int border_width = 2 ; /* Border width of window. */ int fromc_found = 0 ; /* Set if "From:" line found during processing. */ int froms_found = 0 ; /* Set if "From " line found during processing. */ int height ; /* Height in pixels of faces display. */ *************** *** 743,751 **** if (get_str_resource(R_FONT, str)) read_str(&fontname, str) ; if (get_str_resource(R_BGICON, str)) read_str(&bgicon, str) ; ! if (get_int_resource(R_PERIOD, &intval)) period = intval ; ! if (get_int_resource(R_BELL, &intval)) beeps = intval ; ! if (get_int_resource(R_FLASH, &intval)) flashes = intval ; if (get_bool_resource(R_LOWER, &boolval)) lowerwindow = boolval ; if (get_bool_resource(R_RAISE, &boolval)) raisewindow = boolval ; --- 745,754 ---- if (get_str_resource(R_FONT, str)) read_str(&fontname, str) ; if (get_str_resource(R_BGICON, str)) read_str(&bgicon, str) ; ! if (get_int_resource(R_PERIOD, &intval)) period = intval ; ! if (get_int_resource(R_BELL, &intval)) beeps = intval ; ! if (get_int_resource(R_FLASH, &intval)) flashes = intval ; ! if (get_int_resource(R_BORDERWIDTH,&intval)) border_width = intval ; if (get_bool_resource(R_LOWER, &boolval)) lowerwindow = boolval ; if (get_bool_resource(R_RAISE, &boolval)) raisewindow = boolval ; Common subdirectories: ../faces/xface and ./xface diff -c -N ../faces/y.tab.h ./y.tab.h *** ../faces/y.tab.h Thu Jan 1 01:00:00 1970 --- ./y.tab.h Wed Dec 11 09:26:39 1996 *************** *** 0 **** --- 1,11 ---- + #define EOL 257 + #define ATOM 258 + #define LIT_DOMAIN 259 + #define QUOTED_STRING 260 + typedef union { + char yChar; + char *yString; + Dom *yDom; + Addr *yAddr; + } YYSTYPE; + extern YYSTYPE yylval; --- /dev/null Wed Feb 25 13:29:07 1998 +++ Makefile Wed Feb 25 12:34:44 1998 @@ -0,0 +1,478 @@ +# +# Makefile for faces, an icon face server, plus associated software. +# +# Graphical versions for NeWS, SunView, X11 and XView. +# +# @(#)Makefile.dist 1.10 91/11/19 +# +# Copyright (c) Rich Burridge. +# Sun Microsystems, Australia - All rights reserved. +# +# Permission is given to distribute these sources, as long as the +# copyright messages are not removed, and no monies are exchanged. +# +# No responsibility is taken for any errors inherent either +# to the comments or the code of this program, but if reported +# to me then an attempt will be made to fix them. +# +#======================================================================== +# +# There are various small changes needed when compiling faces on +# different systems. These have been isolated here, and should be +# uncommented and set accordingly, if needed. +# +#======================================================================== +# Installation prefix. +PREFIX ?=@localbase@ +#------------------------------------------------------------------------ +# If you want audio support, then the following line should be uncommented. +# +AUDIO_SUPPORT = -DAUDIO_SUPPORT +#======================================================================== +# There is a default command (/usr/demo/SOUND/play), which is used to +# play audio files. Alternatively you can specify your own custom +# command here. Uncomment the following line and set appropriately. +# +AUDIO_CMD = -DAUDIO_CMD=\"@localbase@/bin/rplay\" +#======================================================================== +# Faces displays a background pattern in its' window. When the window +# is not completely full, this gives the appearance of trying to blend +# in with the background. By default, this is a root gray color, but you +# can specify the name of a file containing an alternate pattern to use. +# Uncomment the next two lines and set appropriately. +# +#BACKNAME = @localbase@/sample-background +#BACKGROUND = -DBACKGROUND=\"$(BACKNAME)\" +#------------------------------------------------------------------------ +# Uncomment the following two lines to use the Domain Name Service to +# attempt to convert unqualified hostnames, or hostnames with partial +# domains to fully qualified domain names. +# +# When used with NISLOOKUP, DNSLOOKUP will take precedance. +# +# NOTE that the domain name returned by DNS will be converted to lower +# case before attempting a machines.tab match, or constructing an icon +# file name. +# +# NOTE that for this to work you must have at least a minimal +# /etc/resolv.conf file containing a valid nameserver entry. +# +DNSLOOKUP = -DDNSLOOKUP +DNSLIB = +#------------------------------------------------------------------------ +# If you do not want to show the number of messages on the face icon, +# then uncomment the next line. +# +#DONTSHOWNO = -DDONTSHOWNO +#------------------------------------------------------------------------ +# If you do not want to show the timestamp on the face icon, then +# uncomment the next line. +# +#DONTSHOWTIME = -DDONTSHOWTIME +#------------------------------------------------------------------------ +# If you do not want to show the username on the face icon, then +# uncomment the next line. +# +#DONTSHOWUSER = -DDONTSHOWUSER +#------------------------------------------------------------------------ +# By default, faces looks for the face images in @localbase@/faces. If +# you wish to specify an alternate location, then these two lines should +# be uncommented and set appropriately. Note that the value must be +# a single directory name, not a colon separated list of paths. +# +FACEDIR = @localbase@/share/faces +CFACEDIR = -DFACEDIR=\"$(FACEDIR)\" +#------------------------------------------------------------------------ +# It is possible to determine what type of monitoring faces does at +# run time with different command line options, but it is also possible +# to define it at compile time. +# +# Monitor type (0 = mail (new), 1 = mail (all), 2 = print queue). +# 3 = custom prog, 4 = users). +# +#FMONTYPE = -DFMONTYPE=0 +#------------------------------------------------------------------------ +# If you have the poll(2) system call, then uncomment the following +# definition. Note that you will also have to uncomment the NOSELECT +# definition. This is needed for SVR4 machines. +# +#HASPOLL = -DHASPOLL +#------------------------------------------------------------------------ +# Some users on monochrome screens display everything in reverse video. +# If you would like faces to do the same, then this line needs to be +# uncommented. +# +#INVERT = -DINVERT +#------------------------------------------------------------------------ +# When no icon is found for a given user, the unknown icon may be displayed +# either with the user name, or labeled as `unknown'. The former case +# provides the most information, the latter allows all unknown users +# within a given community to be lumped into a single image. To select +# the latter case uncomment the following line. +# +#NAMEUNKNOWN = -DNAMEUNKNOWN +#------------------------------------------------------------------------ +# If you are compiling the NeWS version, then the following two lines +# should be uncommented, and set appropriately. +# +#NEWSINCDIR = -I$(OPENWINHOME)/include +#NEWSLIBDIR = -L$(OPENWINHOME)/lib +#------------------------------------------------------------------------ +# Uncomment the following line to use the Sun Network Information +# Services (NIS, formerly YP) to look for hosts which do not explicitly +# appear in the machines.tab file. When used with DNSLOOKUP, DNSLOOKUP +# takes precedance. +# +# Note that the domain name will be converted to lower case before +# attempting to match in the machines file, or create an icon filename. +# +NISLOOKUP = -DNISLOOKUP +#------------------------------------------------------------------------ +# If you don't want faces to use full domain names for extracting face +# icons, then you should uncomment the NODOMAINS definition below. +# +#NODOMAINS = -DNODOMAINS +#------------------------------------------------------------------------ +# If your system doesn't have the gethostname() system call, then this +# might be a useful alternative. This is needed for SVR4 machines. +# +#NOGETHOSTNAME = -DNOGETHOSTNAME +#------------------------------------------------------------------------ +# By default, faces will check the "From " line first for username and +# hostname, and then the "From:" line. +# Not all machines have the index() string library function. If you +# don't have this function then you should uncomment the NOINDEX +# definition below. +# +#NOINDEX = -DNOINDEX +#-------------------------------------------------------------------------- +# It appears that not every Unix system defines MAXPATHLEN, which indicates +# the maximum length of a Unix pathname. If your system doesn't, then +# you need to uncomment this definition. +# +#NOMAXPATHLEN = -DNOMAXPATHLEN +#-------------------------------------------------------------------------- +# Not every version of Unix (in particular System V derivitives) has the +# select() system call. If your machine doesn't have this call, then you +# need to uncomment the following definition. +# +#NOSELECT = -DNOSELECT +#-------------------------------------------------------------------------- +# If your system lacks the utime() library call and definition, then +# uncomment the following definition. +# +#NOUTIME = -DNOUTIME +#-------------------------------------------------------------------------- +# By default, faces rechecks for new mail or print jobs every sixty +# seconds. If you would like to specify an alternate period, then uncomment +# the following line and set appropriately. +# +#PERIOD = -DPERIOD=30 +#------------------------------------------------------------------------ +# By default, faces will examine printer queues a la Berkeley Style. +# Alternatively, if you have the PLP printer spooling system running, then +# uncomment the next line. +# +#PLP = -DPLP +#------------------------------------------------------------------------- +# If you are using the RAND mailer which uses four ^A characters to mark +# the beginning and end of messages, then you will need to uncomment the +# following line. +# +#RAND = -DRAND +#------------------------------------------------------------------------- +# Faces is designed to work on a big-endian machine by default. If you +# are compiling for a little-endian machine (such as the Sun 386i), then +# you need to uncomment the following line. +# +#REVORDER = -DREVORDER +#------------------------------------------------------------------------ +# If you not running under a BSD4.3 derived system, the parameters +# to the select call are different, and this definition should be +# uncommented. You need to uncomment this for SunOS v3.x. +# +SELTYPE = -DNO_43SELECT +#------------------------------------------------------------------------ +# If you are building faces on a Silicon Graphics machine, then you will +# need to uncomment the following two definitions. +# +#SGIDEF = -Umips +#SGILIBS = -lsun -lc_s +#------------------------------------------------------------------------ +# If the pending mail for users is in a different directory than +# /usr/spool/mail, uncomment the following and set appropriately. +# +SPOOLDIR = -DSPOOLDIR=\"/var/mail\" +#------------------------------------------------------------------------ +# If faces is setup to monitor mail, then the name of the default +# spoolfile is /usr/spool/mail/username. An alternative spoolfile name +# can be given by uncommenting the following line and setting +# appropriately. +# +#SPOOLFILE = -DSPOOLFILE=\"/usr/richb/Mail/pending\" +#-------------------------------------------------------------------------- +# If you are trying to build faces on an SVR4 machine, then you should +# uncomment the following entry, and set SVR4LIBS to the list of SVR4 +# specific libraries needed to link reve. +# +#SVR4LIBS = -lnsl -lsocket -lgen +#-------------------------------------------------------------------------- +# If you are running on a Unix System V machine, then you should uncomment +# the next definition. +# +#SYSV = -DSYSV32 +#-------------------------------------------------------------------------- +# If you are running SunOS v3.x, then pr_ttext doesn't exist, and +# you must uncomment this definition. +# +#TTEXT = -DNO_PR_TTEXT +#------------------------------------------------------------------------ +# Uncomment if building faces under Sequoia's operating system. +# +#TOPIX = -DTOPIX +#-------------------------------------------------------------------------- +# If the -U command line option is given to faces, then mail is sent to +# a special mail alias. This alias is really a shell script, which will +# take the given information, and try to update the faces database. By +# default that alias is called "facemaker", but it is possible to give an +# alternative alias here. This might be useful if a collection of machines +# were remotely mounting the faces database from a file server. +# +#UPDATE = -DUPDATE=\"facemaker@fileserver\" +#------------------------------------------------------------------------ +# If your system does not have the memset() library call, but instead +# uses the bzero() library call, then the following definition needs to +# be uncommented. +# +#USE_BZERO = -DUSE_BZERO +#------------------------------------------------------------------------ +# If your system does not have the getcwd() library call, but instead +# uses the getwd() library call, then the following definition needs to +# be uncommented. +# +#USE_GETWD = -DUSE_GETWD +#------------------------------------------------------------------------ +# If you are compiling the X11 version under MIT X11R3, you will need to +# uncomment the following definition: +# +#X11R3 = -DX11R3 +#------------------------------------------------------------------------ +# If you are compiling the X11 version and the X11 include and +# library files are not in a standard place, then the following +# two lines should be uncommented, and set appropriately. +# +X11INCDIR = -I$(X11BASE)/include +X11LIBDIR = -L$(X11BASE)/lib +#------------------------------------------------------------------------ +# If you are compiling the XView version, then the following two lines +# should be uncommented, and set appropriately. +# +#XVIEWINCDIR = -I$(OPENWINHOME)/include +#XVIEWLIBDIR = -L$(OPENWINHOME)/lib +# +#======================================================================= +# +# Default locations where faces files will be installed. +# You might wish to alter these values. +# +BINDIR = $(PREFIX)/bin +LIBDIR = $(PREFIX)/lib +INCDIR = $(PREFIX)/include +MANDIR = $(PREFIX)/man +MANSECT = 1 + +# +# Options for submakes +# +MAKEOPTS = $(MFLAGS) BINDIR=$(BINDIR) LIBDIR=$(LIBDIR) \ + INCDIR=$(INCDIR) MANDIR=$(MANDIR) CC=$(CC) \ + NOINDEX=$(NOINDEX) SYSV=$(SYSV) + +# +# Override DEBUG on the command line as `DEBUG=-DDEBUG' to enable various +# additional checking diagnostic output options. +# +DEBUG = + +# +# Compilation flags and standard macro definitions. +# +CDEFS = $(AUDIO_SUPPORT) $(AUDIO_CMD) $(BACKGROUND) \ + $(DNSLOOKUP) $(DONTSHOWNO) $(DONTSHOWTIME) $(DONTSHOWUSER) \ + $(CFACEDIR) $(FMONTYPE) $(HASPOLL) $(INVERT) \ + $(NAMEUNKNOWN) $(NEWSINCDIR) $(NISLOOKUP) $(NODOMAINS) \ + $(NOGETHOSTNAME) $(NOINDEX) $(NOMAXPATHLEN) $(NOSELECT) \ + $(NOUTIME) $(PERIOD) $(PLP) $(RAND) $(REVORDER) \ + $(SELTYPE) $(SGIDEF) $(SPOOLDIR) $(SPOOLFILE) $(SYSV) \ + $(TTEXT) $(TOPIX) $(UPDATE) $(USE_BZERO) $(USE_GETWD) \ + $(X11R3) $(X11INCDIR) $(XVIEWINCDIR) $(DEBUG) +CCOMP = -pipe -O2 +CFLAGS = $(CCOMP) $(CDEFS) +# +#======================================================================= + +.KEEP_STATE: + +BINARIES = psfaces svfaces xfaces xvfaces + +CC = cc +MAKE = make + +STDSRCS = address.c get.c main.c mon.c parsefrom.c rec.c +STDOBJS = address.o get.o main.o mon.o parsefrom.o rec.o +STDLIBS = -L./compface -lcompface $(DNSLIB) $(SGILIBS) + +COMPFACE = compface +FACES = facedir +FILTERS = filters +SCRIPTS = scripts +GSRCS = news.c sunview.c x11.c xview.c +HDRS = addr.h extern.h faces.h patchlevel.h +IMAGES = noface.xbm nomail.xbm noprint.xbm \ + nopaper.xbm nothing.xbm nousers.xbm +OTHERS = CHANGES CHANGES-v1.4 README TODO MANIFEST FILES \ + faces.man.text faces.man face_update.1 faces_cps.cps \ + Faces.ad Makefile.dist face_update +XFACE = xface + +SFILES1 = mon.c rec.c +SFILES2 = main.c parsefrom.c +SFILES3 = get.c news.c sunview.c +SFILES4 = x11.c $(HDRS) +SFILES5 = xview.c +SFILES6 = CHANGES-v1.4 +SFILES7 = CHANGES README TODO +SFILES8 = MANIFEST FILES Makefile.dist faces_cps.cps face_update \ + faces.sendmail +SFILES9 = faces.man face_update.1 $(IMAGES) +SFILES10 = faces.man.text Faces.ad +SFILES11 = $(FACES) +SFILES12 = $(COMPFACE) +SFILES13 = $(FILTERS) +SFILES14 = $(SCRIPTS) +SFILES15 = address.y $(XFACE) + +NEWSLIBS = $(NEWSLIBDIR) -lcps +SVIEWLIBS = -lsuntool -lsunwindow -lpixrect +# +# The following definition can vary. Here are a few examples: +# +# Sun/MIT X11R4: $(X11LIBDIR) -lX11 +# Dell Unix (Interactive 386/ix): $(X11LIBDIR) -lX11 -linet +# AT&T's XWIN: $(X11LIBDIR) -lX11_s -lc_s -lnsl_s -lpt +# +X11LIBS = -L/usr/X11R6/lib -lX11 +XVIEWLIBS = $(XVIEWLIBDIR) -lxview -lolgx -lX11 + +help: + @echo + @echo "You need to specify one of the following options:" + @echo + @echo " make sunview - to make the SunView version." + @echo " make news - to make the NeWS version." + @echo " make x11 - to make the X11 version." + @echo " make xview - to make the XView version." + @echo + @echo "This should be followed by:" + @echo + @echo " make install" + @echo " make clean" + @echo + +all: x11 + +news: $(STDOBJS) news.o faces_cps.h + (cd compface; $(MAKE) $(MAKEOPTS)) + (cd filters; $(MAKE) $(MAKEOPTS)) + $(CC) -o psfaces $(CFLAGS) $(STDOBJS) news.o \ + $(STDLIBS) $(NEWSLIBS) + -cp psfaces faces + +sunview: $(STDOBJS) sunview.o + (cd compface; $(MAKE) $(MAKEOPTS)) + (cd filters; $(MAKE) $(MAKEOPTS)) + $(CC) -o svfaces $(CFLAGS) $(STDOBJS) sunview.o \ + $(STDLIBS) $(SVIEWLIBS) + -cp svfaces faces + +x11: $(STDOBJS) x11.o + (cd compface; $(MAKE) $(MAKEOPTS)) + (cd filters; $(MAKE) $(MAKEOPTS)) + $(CC) -o xfaces $(CFLAGS) $(STDOBJS) x11.o \ + $(STDLIBS) $(X11LIBS) $(SVR4LIBS) + -cp xfaces faces + +xview: $(STDOBJS) xview.o + (cd compface; $(MAKE) $(MAKEOPTS)) + (cd filters; $(MAKE) $(MAKEOPTS)) + $(CC) -o xvfaces $(CFLAGS) $(STDOBJS) xview.o \ + $(STDLIBS) $(XVIEWLIBS) $(SVR4LIBS) + -cp xvfaces faces + +tables: + -mkdir $(FACEDIR) + -install -c -m 644 machine.tab $(FACEDIR) + -install -c -m 644 people.tab $(FACEDIR) + +install: + make tables + (cd compface; $(MAKE) $(MAKEOPTS) install) + (cd filters; $(MAKE) $(MAKEOPTS) install) + (cd scripts; $(MAKE) $(MAKEOPTS) install) + install -c -s -m 751 faces $(BINDIR) + install -c -m 755 face_update $(BINDIR) + install -c -m 755 faces.sendmail $(BINDIR) + install -c -m 644 faces.man \ + $(MANDIR)/man$(MANSECT)/faces.$(MANSECT) + install -c -m 444 face_update.1 \ + $(MANDIR)/man$(MANSECT)/face_update.$(MANSECT) + install -c -m 444 -o bin Faces.ad /usr/X11R6/lib/X11/app-defaults/Faces + +clean: + (cd compface; $(MAKE) $(MAKEOPTS) clean) + (cd filters; $(MAKE) $(MAKEOPTS) clean) + rm -f *.o Part* *~ $(BINARIES) faces core + +saber: + #load $(CDEFS) $(STDSRCS) x11.c $(STDLIBS) $(X11LIBS) + +lint: lint-news lint-sunview lint-x11 lint-xview +lint-news:; lint $(CDEFS) $(STDSRCS) news.c $(NEWSLIBS) +lint-sunview:; lint $(CDEFS) $(STDSRCS) sunview.c $(SVIEWLIBS) +lint-x11:; lint $(CDEFS) $(STDSRCS) x11.c +lint-xview:; lint $(CDEFS) $(STDSRCS) xview.c + +shar:; shar.script $(SFILES1) > faces.part1 + shar.script $(SFILES2) > faces.part2 + shar.script $(SFILES3) > faces.part3 + shar.script $(SFILES4) > faces.part4 + shar.script $(SFILES5) > faces.part5 + shar.script $(SFILES6) > faces.part6 + shar.script $(SFILES7) > faces.part7 + shar.script $(SFILES8) > faces.part8 + shar.script $(SFILES9) > faces.part9 + shar.script $(SFILES10) > faces.part10 + shar.script $(SFILES11) > faces.part11 + shar.script $(SFILES12) > faces.part12 + shar.script $(SFILES13) > faces.part13 + shar.script $(SFILES14) > faces.part14 + shar.script $(SFILES15) > faces.part15 + +create: SCCS + -sccs create $(STDSRCS) $(GSRCS) $(HDRS) $(IMAGES) $(OTHERS) + +SCCS: + mkdir SCCS + chmod 755 SCCS + +faces_cps.h: faces_cps.cps + cps $< + +get.o: get.c faces.h extern.h patchlevel.h +main.o: main.c faces.h $(IMAGES) +mon.o: mon.c faces.h extern.h +news.o: news.c faces.h extern.h faces_cps.h +rec.o: rec.c faces.h extern.h +sunview.o: sunview.c faces.h extern.h +x11.o: x11.c faces.h extern.h +xview.o: xview.c faces.h extern.h --- x11.c.orig Tue Nov 19 04:00:50 1991 +++ x11.c Wed Feb 25 12:33:23 1998 @@ -39,6 +39,8 @@ #include "faces.h" #include "extern.h" +#include + #ifdef HASPOLL #include #endif /*HASPOLL*/ @@ -58,7 +60,6 @@ #define F_ICON 0 /* Icon index to frame array. */ #define F_WINDOW 1 /* Window index to frame array. */ -#define FACES_BORDER_WIDTH 2 #define FRAME_MASK (ButtonPressMask | ExposureMask | \ ButtonMotionMask | KeyPressMask) #define ICON_MASK ExposureMask @@ -364,11 +365,13 @@ init_font() ; gc_mask = GCFont | GCForeground | GCBackground | GCGraphicsExposures ; gc_val.font = sfont->fid ; - gc_val.foreground = foregnd ; - gc_val.background = backgnd ; + gc_val.foreground = BlackPixel(dpy, screen) ; + gc_val.background = WhitePixel(dpy, screen) ; gc_val.graphics_exposures = False ; gc = XCreateGC(dpy, root, gc_mask, &gc_val) ; + gc_val.foreground = foregnd ; + gc_val.background = backgnd ; tilegc = XCreateGC(dpy, root, gc_mask, &gc_val) ; if (depth == 1) XSetFillStyle(dpy, tilegc, FillOpaqueStippled) ; else XSetFillStyle(dpy, tilegc, FillTiled) ; @@ -459,7 +462,11 @@ home = getenv("HOME") ; XrmInitialize() ; +#if (defined(BSD) && BSD >= 199306) + STRCPY(name, "@x11base@/lib/X11/app-defaults/Faces") ; +#else STRCPY(name, "/usr/lib/X11/app-defaults/Faces") ; +#endif /* Get applications defaults file, if any. */ @@ -576,14 +583,14 @@ winattrs.event_mask = FRAME_MASK ; frame[F_WINDOW] = XCreateWindow(dpy, root, size.x, size.y, - size.width, size.height, FACES_BORDER_WIDTH, + size.width, size.height, border_width, CopyFromParent, InputOutput, CopyFromParent, CWBackPixel | CWBorderPixel | CWEventMask, &winattrs) ; winattrs.event_mask = ICON_MASK ; frame[F_ICON] = XCreateWindow(dpy, root, - ix, iy, imagewidth, imageheight, FACES_BORDER_WIDTH, + ix, iy, imagewidth, imageheight, border_width, CopyFromParent, InputOutput, CopyFromParent, CWBackPixel | CWBorderPixel | CWEventMask, &winattrs) ; @@ -856,6 +863,7 @@ XFillRectangle(dpy, pr[(int) dtype], gc, x, y-9, (unsigned int) textwidth+2, 13) ; XSetFunction(dpy, gc, GXxor) ; + XSetForeground(dpy, gc, WhitePixel(dpy, screen)); XDrawImageString(dpy, pr[(int) dtype], gc, x, y, str, len) ; XSetFunction(dpy, gc, GXcopy) ; } --- faces.h.orig Tue Nov 19 04:00:49 1991 +++ faces.h Wed Feb 25 12:34:53 1998 @@ -44,7 +44,7 @@ #endif /* STDC */ #ifndef FACEDIR -#define FACEDIR "/usr/local/faces" +#define FACEDIR "@localbase@/faces" #endif /*FACEDIR*/ #define CLOSE (void) close /* To make line happy. */ @@ -102,9 +102,10 @@ enum mon_type { MONNEW, MONALL, MONPRINTER, MONPROG, MONUSERS } ; /* X resources used by faces. */ -enum res_type { R_WINGEOM, R_ICONGEOM, R_FGCOLOR, R_BGCOLOR, - R_FONT, R_BGICON, R_PERIOD, R_BELL, - R_FLASH, R_LOWER, R_RAISE, R_BUT1CLR, R_DISPHOST, +enum res_type { R_WINGEOM, R_ICONGEOM, R_FGCOLOR, R_BGCOLOR, + R_FONT, R_BGICON, R_PERIOD, R_BELL, + R_FLASH, R_BORDERWIDTH, R_LOWER, R_RAISE, + R_BUT1CLR, R_DISPHOST, #ifdef AUDIO_SUPPORT R_AUDIO, R_AUDIOCMD, R_BELLFILE #endif /*AUDIO_SUPPORT*/ @@ -193,8 +194,6 @@ #endif /*NOUTIME*/ extern char *getenv P(()) ; -extern char *malloc P(()) ; -extern char *realloc P(()) ; extern char *index P(()) ; extern char *rindex P(()) ; extern char *strcpy P(()) ; @@ -204,6 +203,8 @@ extern FILE *popen P(()) ; #endif /*SYSV32*/ +#include + /* Various programs that are used by faces. * You might need to change these on some machines. */ @@ -217,7 +218,11 @@ #define PRINTDEF "lpq -P %s" /* Updating the faces database: %s replaced with mail update alias name. */ +#if (defined(BSD) && BSD >= 199306) +#define UPDATEDEF "/usr/sbin/sendmail -oeq -oi %s" +#else #define UPDATEDEF "/usr/lib/sendmail -oeq -oi %s" +#endif /* Monitoring users on a machine: %s replaced with hostname. */ #define USERSDEF "rusers -l %s"