Newsgroup: comp.windows.x
document_id: 64830
From: chongo@toad.com (Landon C. Noll)
Subject: 10th International Obfuscated C Code Contest Opening (1 of 2)

Enclosed are the rules, guidelines and related information for the 10th
International Obfuscated C Code Contest.  (This is part 1 of a 2 part
shar file).

Enjoy!

chongo <Landon Curt Noll> /\oo/\ 
Larry Bassel

=-=

#!/bin/sh
# This is a shell archive (shar 3.32)
# made 03/01/1993 12:01 UTC by chongo@toad.com
# Source directory /tmp
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   8585 -r--r--r-- rules
#  25375 -r--r--r-- guidelines
#  33961 -r--r--r-- mkentry.c
#   6257 -r--r--r-- obfuscate.info
#
# ============= rules ==============
echo "x - extracting rules (Text)"
sed 's/^X//' << 'SHAR_EOF' > rules &&
X10th International Obfuscated C Code Contest Rules
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X		b.  To darken.  2. To confuse:  his emotions obfuscated his
X		judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X		Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X		obfuscatory adj.
X
X
XGOALS OF THE CONTEST:
X
X    * To write the most Obscure/Obfuscated C program under the rules below.
X    * To show the importance of programming style, in an ironic way.
X    * To stress C compilers with unusual code.
X    * To illustrate some of the subtleties of the C language.
X    * To provide a safe forum for poor C code.  :-)
X
X
XRULES:
X
X    To help us with the volume of entries, we ask that you follow these rules:
X
X    1) Your entry must be a complete program.
X
X    2) Your entry must be <= 3217 bytes in length.  The number of characters
X       excluding whitespace (tab, space, newline), and excluding any ; { or }
X       followed by either whitespace or end of file, must be <= 1536.
X
X    3) Your entry must be submitted in the following format:
X
X---entry---
Xrule:	1993
Xfix:	y or n   (n => this is a new entry, y => this replaces an older entry)
Xtitle:	title of entry  		    (see comments below)
Xentry:	Entry number from 0 to 7 inclusive  (your 1st entry should by 0)
Xdate:	Date/time of submission in UTC	    (see comments below)
Xhost:	Machine(s) and OS(s) under which your entry was tested
X	Use tab indented lines if needed
X---remark---
X    Place remarks about this entry in this section.  It would be helpful if
X    you were to indent your remarks with 4 spaces, though it is not a
X    requirement.  Also, if possible, try to avoid going beyond the 79th
X    column.  Blank lines are permitted.
X---author---
Xname:	your name
Xorg:	School/Company/Organization
Xaddr:	postal address
X	use tab indented lines to continue
X	don't forget to include the country
Xemail:  Email address from a well known site or registered domain.
X        If you give several forms, list them on separate tab indented lines.
Xanon:	y or n   (y => remain anonymous, n => ok to publish this info)
X---info---
XIf your program needs an info file, place a uuencoded copy of it in
Xthis section.  In the case of multiple info files, use multiple info
Xsections.  If your entry does not need a info file, skip this section.
X---build---
XPlace a uuencoded copy of the command(s) used to compile/build your program
Xin this section.  It must uudecode into a file named 'build'.  The resulting
Xfile must be 255 bytes or less.
X---program---
XPlace a uuencoded copy of your program in this section.  It must uudecode
Xinto a file named is 'prog.c'.  The resulting file must follow rule #2.
X---end---
X
X      Regarding the above format:
X
X	* The title must match the expression: [a-zA-Z0-9_=][a-zA-Z0-9_=+-]*
X	  and must be 1 to 12 characters in length.
X
X	  It is suggested, but not required, that the title should
X	  incorporate your username; in the case of multiple authors,
X	  consider using parts of the usernames of the authors.
X
X	* The date in the ---entry--- section should be given with respect
X	  to UTC.  The format of the date should be as returned by asctime() 
X	  using the C locale.  (see guidelines for more info)
X
X	* You may correct/revise a previously submitted entry by sending
X	  it to the contest email address.  Be sure to set 'fix' in the 
X	  ---entry--- section to 'n'.  The corrected entry must use the same 
X	  title and entry number as submittion that is being corrected.  Be 
X	  sure that you note the resubmittion in the ---remark--- as well.
X
X	* With the exception of the header, all text outside of the above 
X	  format may be ignored by the judges.  If you need tell the judges
X	  something, put it in the ---remark--- section, or send a separate
X	  Email message to the judges.
X
X	* Information from the ---author--- section will be published unless 
X	  'y' was given to the respective author's 'anon' line.
X
X	* To credit multiple authors, include an ---author--- section for
X	  each author.  Each should start with ---author--- line, and
X	  should be found between the ---entry--- and ---build--- sections.
X
X	* The entry's remarks should include:
X	    - what this program does
X	    - how to run the program (sample args or input)
X	    - special compile or execution instructions, if any
X	    - special filename requirements (see rule 4 and 5)
X	    - information about any ---data--- files
X	    - why you think the program is obfuscated
X	    - note if this entry is a re-submission of a previous entry.
X	    - any other remarks (humorous or otherwise)
X
X	* Do not rot13 your entry's remarks.  You may suggest that certain
X	  portions of your remarks be rot13ed if your entry wins an award.
X
X        * Info files should be used only to supplement your entry.  They 
X	  should not be required to exist.
X
X	  If your entry does not need an info file, skip the ---info---
X	  section.  If your entry needs multiple info files, use multiple 
X	  ---info--- sections, one per info file.  You should describe
X	  each info file in the ---remark--- section.
X
X    4) If your entry is selected as a winner, it will be modified as follows:
X
X	   'build' is incorporated into a makefile, and 'build' is removed
X	   'prog.c' is renamed to your entry's title, followed by an optional
X	       digit, followed by '.c'
X	   your entry is compiled into a file with the name of your entry's
X	       title, possibly followed by a digit
X
X       If your entry requires that a build file exist, state so in your
X       entry's remark section.  The makefile will be arranged to execute a
X       build shell script containing the 'build' information.  The name of
X       this build shell script will be your entry's title, possibly followed
X       by a digit, followed by '.sh'.
X
X       If needed, your entry's remarks should indicate how your entry must
X       be changed in order to deal with the new filenames.
X
X    5) The build file, the source and the resulting executable should be
X       treated as read-only files.  If your entry needs to modify these files,
X       it should make and modify a copy of the appropriate file.  If this
X       occurs, state so in your entry's remarks.
X
X    6) Entries that cannot be compiled by an ANSI C compiler will be rejected.
X       Use of common C (K&R + extensions) is permitted, as long as it does not 
X       cause compile errors for ANSI C compilers.
X
X    7) The program must be of original work.  All programs must be in the
X       public domain.  All copyrighted programs will be rejected.
X
X    8) Entries must be received prior to 07-May-93 0:00 UTC.  (UTC is
X       essentially equivalent to Greenwich Mean Time)  Email your entries to:
X
X		...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate
X		obfuscate@toad.com
X
X       We request that your message use the subject 'ioccc entry'.
X
X       If possible, we request that you hold off on Emailing your entries
X       until 1-Mar-93 0:00 UTC.  Early entries will be accepted, however.
X       We will attempt to email a confirmation to the the first author for
X       all entries received after 1-Mar-93 0:00 UTC.
X
X    9) Each person may submit up to 8 entries per contest year.  Each entry
X       must be sent in a separate Email letter.
X
X   10) Entries requiring human interaction to be built are not allowed.  
X       Compiling an entry produce a file (or files) which may be executed.
X
X   11) Programs that require special privileges (setuid, setgid, super-user,
X       special owner or group) are not allowed.
X    
X
XFOR MORE INFORMATION:
X
X    The Judging will be done by Landon Noll and Larry Bassel.  Please send
X    questions or comments (but not entries) about the contest, to:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges
X	judges@toad.com
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain all 3 of them, send Email
X    to the address above and use the subject 'send rules'.
X
X    One may also obtain them via anonymous ftp from:
X
X	host: ftp.uu.net	(137.39.1.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  /pub/ioccc
X
X
Xchongo <Landon Curt Noll> /\cc/\  	hoptoad!chongo
XLarry Bassel			  	{uunet,ucbvax,cbosgd}|sun!lab
SHAR_EOF
chmod 0444 rules ||
echo "restore of rules failed"
set `wc -c rules`;Wc_c=$1
if test "$Wc_c" != "8585"; then
	echo original size 8585, current size $Wc_c
fi
# ============= guidelines ==============
echo "x - extracting guidelines (Text)"
sed 's/^X//' << 'SHAR_EOF' > guidelines &&
X10th International Obfuscated C Code Contest Guidelines, Hints and Comments
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
XABOUT THIS FILE:
X
X    This file is intended to help people who wish to submit entries to
X    the International Obfuscated C Code Contest (IOCCC for short).
X
X    This is not the IOCCC rules, though it does contain comments about
X    them.  The guidelines should be viewed as hints and suggestions.
X    Entries that violate the guidelines but remain within the rules are
X    allowed.  Even so, you are safer if you remain within the guidelines.
X
X    You should read the current IOCCC rules, prior to submitting entries.
X    The rules are typically sent out with these guidelines.
X
X
XWHAT IS NEW IN 1993:
X
X    The entry format is better (for us anyway).  The program mkentry.c
X    has been updated.  See ENTRY FORMAT.
X
X    We will reject entries that cannot be compiled using an ANSI C
X    compiler.  Certain old Obfuscation hacks that cause ANSI C compilers 
X    fits are no longer permitted.  Some of the new issues deal with 
X    non-integral array types, variable number of arguments, C preprocessor 
X    directives and the exit() function.  See OUR LIKES AND DISLIKES.
X
X
XHINTS AND SUGGESTIONS:
X
X    You are encouraged to examine the winners of previous contests.  See
X    FOR MORE INFORMATION for details on how to get previous winners.
X
X    Keep in mind that rules change from year to year, so some winning entries
X    may not be valid entries this year.  What was unique and novel one year
X    might be 'old' the next year.
X
X    An entry is usually examined in a number of ways.  We typically apply
X    a number of tests to an entry:
X
X	* look at the original source
X	* convert ANSI tri-graphs to ASCII
X	* C pre-process the source ignoring '#include' lines
X	* C pre-process the source ignoring '#define' and '#include' lines
X	* run it through a C beautifier
X	* examine the algorithm
X	* lint it
X	* compile it
X	* execute it
X
X    You should consider how your entry looks in each of the above tests.
X    You should ask yourself if your entry remains obscure after it has been
X    'cleaned up' by the C pre-processor and a C beautifier.
X
X    Your entry need not do well under all, or in most tests.  In certain
X    cases, a test is not important.  Entries that compete for the
X    'strangest/most creative source layout' need not do as well as
X    others in terms of their algorithm.  On the other hand, given
X    two such entries, we are more inclined to pick the entry that
X    does something interesting when you run it.
X
X    We try to avoid limiting creativity in our rules.  As such, we leave
X    the contest open for creative rule interpretation.  As in real life
X    programming, interpreting a requirements document or a customer request
X    is important.  For this reason, we often award 'worst abuse of the
X    rules' to an entry that illustrates this point in an ironic way.
X
X    If you do plan to abuse the rules, we suggest that you let us know
X    in the remarks section.  Please note that an invitation to abuse
X    is not an invitation to break.  We are strict when it comes to the
X    3217 byte size limit.  Also, abusing the entry format tends to
X    annoy more than amuse.
X
X    We do realize that there are holes in the rules, and invite entries
X    to attempt to exploit them.  We will award 'worst abuse of the rules'
X    and then plug the hole next year.  Even so, we will attempt to use
X    the smallest plug needed, if not smaller.  :-)
X
X    Check out your program and be sure that it works.  We sometimes make
X    the effort to debug an entry that has a slight problem, particularly
X    in or near the final round.  On the other hand, we have seen some
X    of the best entries fall down because they didn't work.
X
X    We tend to look down on a prime number printer, that claims that
X    16 is a prime number.  If you do have a bug, you are better off
X    documenting it.  Noting "this entry sometimes prints the 4th power
X    of a prime by mistake" would save the above entry.  And sometimes,
X    a strange bug/feature can even help the entry!  Of course, a correctly
X    working entry is best.
X
X
XOUR LIKES AND DISLIKES:
X
X    Doing masses of #defines to obscure the source has become 'old'.  We
X    tend to 'see thru' masses of #defines due to our pre-processor tests
X    that we apply.  Simply abusing #defines or -Dfoo=bar won't go as far
X    as a program that is more well rounded in confusion.
X
X    Many ANSI C compilers dislike the following code, and so do we:
X
X	#define d define
X	#d foo		   <-- don't expect this to turn into #define foo
X
X	int i;
X	j;		   <-- don't use such implicit type declaration
X	int k;
X
X    We suggest that you compile your entry with an ANSI C compiler.  If you 
X    must use non-ANSI C, such as K&R C, you must avoid areas that result in 
X    compile/link errors for ANSI C compilers.
X
X    Unfortunately, ANSI C requires array indexes to be of integral type.
X    Thus, the following classical obfuscation hacks are no longer allowed:
X
X	int i;
X	char *c;
X	i[c];		   <--- use c[i] instead
X	(i+3)["string"];   <--- use "string"[i+3] instead
X
X    If your entry uses functions that have a variable number of
X    arguments, be careful. Systems implement va_list as a wide variety
X    of ways.  Because of this, a number of operations using va_list are
X    not portable and must not be used:
X
X	* assigning a non-va_list variable to/from a va_list variable
X	* casting a non-va_list variable into/from a va_list variable
X	* passing a va_list variable to a function expecting a non-va_list arg
X	* passing a non-va_list variable to a function expecting a va_list arg
X	* performing arithmetic on va_list variables
X	* using va_list as a structure or union
X
X    In particular, do not treat va_list variables as if they were a char **'s.
X
X    Avoid using <varargs.h>, use <stdarg.h> instead.
X
X    If you use C preprocessor directives (#define, #if, #ifdef, ...),
X    the leading '#' must be the first character on a line.  While some
X    C preprocessors allow whitespace the leading '#', many do not.
X
X    Because the exit() function returns void on some systems, entries
X    must not assume that it returns an int.
X
X    Small programs are best when they are short, obscure and concise.
X    While such programs are not as complex as other winners, they do
X    serve a useful purpose.  They are often the only program that people
X    attempt to completely understand.  For this reason, we look for
X    programs that are compact, and are instructional.
X
X    One line programs should be short one line programs, say around 80
X    bytes long.  Getting close to 160 bytes is a bit too long in our opinion.
X
X    We tend to dislike programs that:
X
X	* are very hardware specific
X	* are very OS or Un*x version specific
X	     (index/strchr differences are ok, but socket/streams specific
X	      code is likely not to be)
X	* dump core or have compiler warnings
X	     (it is ok only if you warn us in the 'remark' header item)
X	* won't compile under both BSD or SYS V Un*x
X	* abusing the build file to get around the size limit
X	* obfuscate by excessive use of ANSI tri-graphs
X	* are longer than they need to be
X	* are similar to previous winners
X	* are identical to previous losers  :-)
X
X    Unless you are cramped for space, or unless you are entering the
X    'best one liner' category, we suggest that you format your program
X    in a more creative way than simply forming excessively long lines.
X
X    The build file should not be used to try and get around the size
X    limit.  It is one thing to make use of a several -D's to help out,
X    but it is quite another to use 200+ bytes of -D's in order to
X    try and squeeze the source under the size limit.  You should feel
X    free to make use of the build file space, but you are better off
X    if you show some amount of restraint.
X
X    We allowed whitespace, and in certain cases ; { or } do not impact
X    your program size (up to a certain point), because we want to get
X    away from source that is simply a compact blob of characters.
X
X    Given two versions of the same program, one that is a compact blob
X    of code, and the other that is formatted more like a typical C
X    program, we tend to favor the second version.  Of course, a third
X    version of the same program that is formatted in an interesting
X    and/or obfuscated way, would definitely win over the first two!
X
X    We suggest that you avoid trying for the 'smallest self-replicating'
X    program.  We are amazed at the many different sizes that claim
X    to be the smallest.  There is nothing wrong with self-replicating
X    programs.  In fact, a number of winners have been self-replicating.
X    You might want to avoid the claim of 'smallest', lest we (or others)
X    know of a smaller one!
X
X    X client entries should be as portable as possible.  Entries that
X    adapt to a wide collection of environments will be favored.  Don't
X    depend on a particular type of display.  For example, don't depend
X    on color or a given size.  Don't require backing store.
X
X    X client entries should avoid using X related libraries and
X    software that is not in wide spread use.  We ask that such X client
X    entries restrict themselves to only the low level Xlib and the
X    Athena widget set (libX11.a, libXaw.a, libXmu.a and libXt.a).
X    Don't use M*tif, Xv*ew, or OpenL*ok toolkits, since not everyone
X    has them.  Avoid depending on a particular window manager.  Not
X    everyone has X11r5, and some people are stuck back in X11r4 (or
X    earlier), so try to target X11r5 without requiring X11r5.  Better
X    yet, try to make your entry run on all version 11 X Window Systems.
X
X    X client entries should not to depend on particular items on
X    .Xdefaults.  If you must do so, be sure to note the required lines
X    in the ---remark--- section.
X
X    We like programs that:
X
X	* are as concise and small as they need to be
X	* do something at least quasi-interesting
X	* pass lint without complaint (not a requirement, but it is nice)
X	* are portable
X	* are unique or novel in their obfuscation style
X	* MAKE USE OF A NUMBER OF DIFFERENT TYPES OF OBFUSCATION
X	* make us laugh and/or throw up  :-)
X
X    Some types of programs can't excel in some areas.  Of course, your
X    program doesn't have to excel in all areas, but doing well in several
X    areas really does help.
X
X    We freely admit that interesting, creative or humorous comments in
X    the ---remark--- section helps your chance of winning.  If you had to
X    read of many twisted entries, you too would enjoy a good laugh or two.
X    We think the readers of the contest winners do as well.
X
X    Be creative!
X
X
XENTRY FORMAT:
X
X    In order to help us process the many entries, we must request your
X    assistance by formatting your entries in a certain way.  This format,
X    in addition, allows us to quickly separate information about the
X    author from the program itself.  (see JUDGING PROCESS)
X
X    We have provided the program, mkentry, as an example of how to
X    format entries.  You should be aware of the following warning that
X    is found in mkentry.c:
X
X	This program attempts to implement the IOCCC rules.  Every
X	attempt has been made to make sure that this program produces
X	an entry that conforms to the contest rules.  In all cases,
X	where this program differs from the contest rules, the
X	contest rules will be used.  Be sure to check with the
X	contest rules before submitting an entry.
X
X    You are not required to use mkentry.  It is convenient, however,
X    as it attempts to uuencode the needed files, and attempt to check
X    the entry against the size rules.
X
X    If you have any suggestions, comments, fixes or complaints about
X    the mkentry.c program, please send Email to the judges.  (see below)
X
X    The following is a sample entry:
X
X---entry---
Xrule:	1993
Xfix:	n
Xtitle:	chonglab
Xentry:	0
Xdate:	Mon Mar  1 08:45:20 1993
Xhost:	Un*x v6, pdp11/45
X	2.9BSD, pdp11/70
X---remark---
X    This is a non-obfuscated obfuscated C program.
X
X    It is likely not to win a prize.  But what do you expect from
X    a short example!
X---author---
Xname:	Landon Curt Noll
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	chongo@toad.com
Xanon:	n
X---author---
Xname:	Larry Bassel
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	hoptoad!sun!lab
X	lab@sun.com
Xanon:	n
X---info---
Xbegin 444 info.file
XM0V]P>7)I9VAT("AC*2!,86YD;VX@0W5R="!.;VQL+"`Q.3DS+@I!;&P@4FEG
XM:'1S(%)E<V5R=F5D+B`@4&5R;6ES<VEO;B!F;W(@<&5R<V]N86PL(&5D=6-A
XM=&EO;B!O<B!N;VXM<')O9FET('5S92!I<PIG<F%N=&5D('!R;W9I9&5D('1H
XM:7,@=&AI<R!C;W!Y<FEG:'0@86YD(&YO=&EC92!A<F4@:6YC;'5D960@:6X@
XM:71S(&5N=&ER971Y"F%N9"!R96UA:6YS('5N86QT97)E9"X@($%L;"!O=&AE
XM<B!U<V5S(&UU<W0@<F5C96EV92!P<FEO<B!P97)M:7-S:6]N(&EN('=R:71I
XM;F<*9G)O;2!,86YD;VX@0W5R="!.;VQL+@H*5&AA="!T:&%T(&ES+"!I<RX*
XM5&AA="!T:&%T(&ES(&YO="P*("`@(&ES(&YO="!T:&%T('1H870@;F]T(&ES
XM+@I4:&%T(&ES+"!T:&%T('1H870@:7,@;F]T+"!I<R$*"@D)+2T@8VAO;F=O
XM(#$Y-S0*"DQA<W0@>65A<BP@;VYE('!E<G-O;B!T;VQD('5S('1H870@=&AE
XM>2!A8W1U86QL>2!D96-O9&5D('1H:7,@9FEL92X*22!W;VYD97(@:&]W(&UA
X9;GD@=VEL;"!D;R!I="!T:&ES('EE87(_"@``
X`
Xend
X---build---
Xbegin 444 build
X28V,@<')O9RYC("UO('!R;V<*
X`
Xend
X---program---
Xbegin 444 prog.c
XM;6%I;B@I"GL*(VEF(&1E9FEN960H05]214=)4U1%4D5$7U9/5$527TE.7U-5
XM3DY95D%,15]#04Q)1D]23DE!7U5302D*("`@('!R:6YT9B@B5F]T92!,86YD
XM;VX@3F]L;"!F;W(@4W5N;GEV86QE($-I='D@0V]U;F-I;"!S96%T(",Q+EQN
X:(BD["B-E;F1I9@H@("`@97AI="@P*3L*?0H`
X`
Xend
X---end---
X
X    Typically the build file should assume that the source is prog.c
X    and will compile into prog.  If an entry wins, we will rename
X    its source and binary to avoid filename collision.  By tradition,
X    we use the name of the entry's title, followed by an optional
X    digit in case of name conflicts.
X
X    If the above entry somehow won the 'least likely to win' award,
X    we would use chonglab.c and chonglab.
X
X    If your entry depends on, or requires that your build, source
X    and/or binary files be a particular name, please say so in the
X    ---remark--- section.  If this case applies, it would be be helpful
X    if you did one of the following:
X
X	* Tell us how to change the filename(s) in your entry.
X
X	* Have the build file make copies of the files.  For example:
X
X		cc prog.c -o special_name		need special binary
X
X	    or  rm -f special_src.c			need special source
X		cp prog.c special_src.c
X		cc special_src.c -o special_name
X
X	    or  rm -f special_build			need special build
X		tail +4 build > special_build
X		sh < special_build
X
X	* Assume that we will use the entry title.  Send us a version of 
X	  your build/program files that uses the name convention.  You 
X	  should uuencode these files in ---data--- sections.
X
X    If your entry needs to modify its source, info or binary files,
X    please say so in the ---remark--- section.  You should try to avoid
X    touching your original build, source and binary files.  You should
X    arrange to make copies of the files you intend to modify.  This
X    will allow people to re-generate your entry from scratch.
X
X    Remember that your entry may be built without a build file.  We
X    typically incorporate the build lines into a Makefile.  If the
X    build file must exist, say so in the ---remark--- section.
X
X    If your entry needs special info files, you should uuencode them
X    into ---info--- sections.  In the case of multiple info files,
X    use multiple ---info--- sections.  If no info files are needed,
X    then skip the ---info--- section.
X
X    Info files are intended to be input, or detailed information that
X    does not fit well into the ---remark--- section.  For example, an
X    entry that implements a compiler might want to provide some sample
X    programs for the user to compile.  An entry might want to include a
X    lengthy design document, that might not be appropriate for a
X    'hints' file.
X
X    Info files should be used only to supplement your entry.  For
X    example, info files may provide sample input or detailed
X    information about your entry.  Because they are supplemental,
X    the entry should not require them exist.
X
X    In some cases, your info files might be renamed to avoid name
X    conflicts.  If info files should not be renamed for some reason,
X    say so in the ---remark--- section.
X
X    Info files must uudecode into the current directory.  If they
X    absolutely must be renamed, or moved into a sub-directory, say
X    so in the ---remark--- section.
X
X    When submitting multiple entries, be sure that each entry has
X    a unique entry number from 0 to 7.  Your first entry should
X    have entry number 0.
X
X    With the exception of the header, all text outside of the entry
X    format may be ignored.  That is, don't place text outside of the
X    entry and expect the judges to see it.  (Our decoding tools aren't
X    AI progs!) If you need tell the the something, put it in the 
X    ---remark--- section, or send a Email to the judges at:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X    
X    The date should be given with respect to UTC.  (Some systems refer 
X    to this as GMT or GMT0)  The format of the date should be that as 
X    returned by asctime() in the C locale.  An example of such a string is:
X
X	Thr Apr 01 00:47:00 1993
X
X    This format is similar to the output of the date(1) command.  The
X    string does not include the timezone name before the year.  On many 
X    systems, one of the following command will produce a similar string:
X
X	date -u "+%a %h %d %T 19%y"
X	date -u | sed -e 's/... \(19[0-9][0-9]\)$/\1/'
X	sh -c 'TZ=UTC date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT0 date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X
X    You are allowed to update/fix/revise your entry.  To do so, set
X    the 'fix' line in the ---entry--- section to 'y' instead of 'n'.
X    Be sure that the resubmittion uses the same title and entry number
X    as well, as these are used to determine which entry is to be
X    replaced.
X
X
XJUDGING PROCESS:
X
X    Entries are judged by Larry Bassel and Landon Curt Noll.
X
X    Entries are unpacked into individual directories.  The Email message
X    is unpacked into individual files, each containing:
X
X	---entry--- section
X	all ---author--- sections
X	all ---info--- sections
X	---build--- section
X	---program--- section
X	any other text, including the Email message headers
X
X    Prior to judging, the 'any other text' file is scanned to be sure
X    it does not contain useful information (or in case the entry was
X    malformed and did not unpack correctly).  Information from the
X    ---author--- sections are not read until the judging process is
X    complete, and then only from entries that have won an award.
X
X    The above process helps keep us biased for/against any one particular
X    individual.  We are usually kept in the dark as much as you are
X    until the final awards are given.  We like the surprise of finding
X    out in the end, who won and where they were from.
X
X    We attempt to keep all entries anonymous, unless they win an award.
X    Because the main 'prize' of winning is being announced, we make all
X    attempts to send non-winners into oblivion.  We remove all non-winning
X    files, and shred all related paper.  By tradition, we do not even
X    reveal the number of entries that we received.  (for the curious,
X    we do indicate the volume of paper consumed when presenting the IOCCC
X    winners at talks)
X
X    After the Usenix announcement, we attempt to send Email to the
X    authors of the winning entries.  One reason we do this is to give
X    the authors a chance to comment on the way we have presented their
X    entry.  They are given the chance to correct mistakes, typos.  We
X    often accept their suggestions/comments about our remarks as well.
X    This is done prior to posting the winners to the wide world.
X
X    Judging consists of a number of elimination rounds.  During a round,
X    the collection of entries are divided into two roughly equal piles;
X    the pile that advances on to the next round, and the pile that does
X    not.  We also re-examine the entries that were eliminated in the
X    previous round.  Thus, an entry gets at least two readings.
X
X    A reading consists of a number of actions:
X
X	* reading the ---entry--- section
X	* reading the uudecoded ---build--- section
X	* reading the uudecoded ---program--- section
X	* reading the uudecoded ---info--- section(s), if any
X	* passing the source thru the C pre-processor
X	    shipping over any #include files
X	* performing a number of C beautify/cleanup edits on the source
X	* passing the beautified source thru the C pre-processor
X	    shipping over any #include files
X
X    In later rounds, other actions are performed:
X
X	* linting the source
X	* compiling/building the source
X	* running the program
X	* performing misc tests on the source and binary
X
X    Until we reduce the stack of entries down to about 25 entries, entries
X    are judged on an individual basis.  An entry is set aside because it
X    does not, in our opinion, meet the standard established by the round.
X    When the number of entries thins to about 25 entries, we begin to form
X    award categories.  Entries begin to compete with each other for awards.
X    An entry often will compete in several categories.
X
X    The actual award category list will vary depending on the types of entries
X    we receive.  A typical category list might be:
X
X	* best small one line program
X	* best small program
X	* strangest/most creative source layout
X	* most useful obfuscated program
X	* best game that is obfuscated
X	* most creatively obfuscated program
X	* most deceptive C code
X	* best X client (see OUR LIKES AND DISLIKES)
X	* best abuse of ANSI C
X	* worst abuse of the rules
X	* <anything else so strange that it deserves an award>
X
X    We do not limit ourselves to this list.  For example, a few entries are so
X    good/bad that they are declared winners at the start of the final round.
X    We will invent awards categories for them, if necessary.
X
X    In the final round process, we perform the difficult tasks of
X    reducing the remaining entries (typically about 25) down to 8 or 10
X    winners.  Often we are confident that the entries that make it into
X    the final round are definitely better than the ones that do not
X    make it.  The selection of the winners out of the final round, is
X    less clear cut.
X
X    Sometimes a final round entry good enough to win, but is beat out
X    by a similar, but slightly better entry.  For this reason, it is
X    sometimes worthwhile to re-enter an improved version of an entry 
X    that failed to win in a previous year.  This assumes, of course, 
X    that the entry is worth improving in the first place!
X
X    More often that not, we select a small entry (usually one line), a
X    strange/creative layout entry, and an entry that abuses the contest
X    rules in some way.
X
X    In the end, we traditionally pick one entry as 'best'.  Sometimes such
X    an entry simply far exceeds any of the other entry.  More often, the
X    'best' is picked because it does well in a number of categories.
X
X
XANNOUNCEMENT OF WINNERS:
X
X    The first announcement, occurs at a Summer Usenix conference.  By tradition,
X    this is done during the latter part of the UUNET/IOCCC BOF, just prior to
X    the Berkeley BSD, and BSDI BOF.
X
X    Winning entries will be posted in late June to the following groups:
X
X	    comp.lang.c		  comp.unix.wizards	alt.sources
X
X    In addition, pointers to these postings are posted to the following
X
X	    comp.sources.d	  alt.sources.d		misc.misc
X	    comp.sources.misc	  comp.windows.x
X
X    Winning entries will be deposited into the uunet archives.  See
X    below for details.
X
X    Often, winning entries are published in selected magazines.  Winners 
X    have appeared in books ("The New Hackers Dictionary") and on T-Shirts.
X
X    Last, but not least, winners receive international fame and flames!  :-)
X
X
XFOR MORE INFORMATION:
X
X    You may contact the judges by sending Email to the following address:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    Questions and comments about the contest are welcome.
X
X    One may obtain a copy of the current rules, guidelines or mkentry
X    program.  To obtain all 3 of them, send Email to the address above 
X    and use the subject 'send rules'.
X
X    One may also obtain the above items, we well as winners of previous
X    contests, via anonymous ftp from:
X
X	host: ftp.uu.net	(137.39.1.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  pub/ioccc
X
X    Often, contest rules, guidelines and winners are available from
X    archive sites.  Check comp.sources.unix archives, for example.
X    You may also request previous winners by Email, using the judges
X    Email address, though we ask that you do this as a last resort.
X
X
Xchongo <Landon Curt Noll> /\cc/\  	hoptoad!chongo
XLarry Bassel			  	{uunet,ucbvax,cbosgd}|sun!lab
SHAR_EOF
chmod 0444 guidelines ||
echo "restore of guidelines failed"
set `wc -c guidelines`;Wc_c=$1
if test "$Wc_c" != "25375"; then
	echo original size 25375, current size $Wc_c
fi
echo "End of part 1, continue with part 2"
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
document_id: 64831
From: chongo@toad.com (Landon C. Noll)
Subject: 10th International Obfuscated C Code Contest Opening (part 2 of 2)

Enclosed are the rules, guidelines and related information for the 10th
International Obfuscated C Code Contest.  (This is part 2 of a 2 part
shar file).

Enjoy!

chongo <Landon Curt Noll> /\oo/\
Larry Bassel

=-=

#!/bin/sh
# This is part 02 of a multipart archive
# ============= mkentry.c ==============
echo "x - extracting mkentry.c (Text)"
sed 's/^X//' << 'SHAR_EOF' > mkentry.c &&
X/* @(#)mkentry.c	1.24 3/1/93 02:28:49 */
X/*
X * Copyright (c) Landon Curt Noll & Larry Bassel, 1993.  
X * All Rights Reserved.  Permission for personal, education or non-profit use 
X * is granted provided this this copyright and notice are included in its 
X * entirety and remains unaltered.  All other uses must receive prior 
X * permission in writing from both Landon Curt Noll and Larry Bassel.
X */
X/*
X * mkentry - make an International Obfuscated C Code Contest entry
X *
X * usage:
X *	mkentry -r remarks -b build -p prog.c -o ioccc.entry
X *
X *	-r remarks		file with remarks about the entry
X *	-b build		file containing how prog.c should be built
X *	-p prog.c		the obfuscated program source file
X *	-o ioccc.entry		ioccc entry output file
X *
X * compile by:
X *	cc mkentry.c -o mkentry
X */
X/*
X * Placed in the public domain by Landon Curt Noll, 1992.
X *
X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
X */
X/*
X * WARNING:
X *
X * This program attempts to implement the IOCCC rules.  Every attempt
X * has been made to make sure that this program produces an entry that
X * conforms to the contest rules.  In all cases, where this program
X * differs from the contest rules, the contest rules will be used.  Be
X * sure to check with the contest rules before submitting an entry.
X *
X * Send questions or comments (but not entries) about the contest, to:
X *
X *	...!{sun,pacbell,uunet,pyramid}!hoptoad!judges
X *	judges@toad.com
X * The rules and the guidelines may (and often do) change from year to
X * year.  You should be sure you have the current rules and guidelines
X * prior to submitting entries.  To obtain all 3 of them, send Email
X * to the address above and use the subject 'send rules'.
X *
X * Because contest rules change from year to year, one should only use this
X * program for the year that it was intended.  Be sure that the RULE_YEAR
X * define below matches this current year.
X */
X
X#include <stdio.h>
X#include <ctype.h>
X#include <time.h>
X#include <sys/types.h>
X#include <sys/stat.h>
X
X/* logic */
X#ifndef TRUE
X# define TRUE 1
X#endif /* TRUE */
X#ifndef FALSE
X# define FALSE 0
X#endif /* FALSE */
X#define EOF_OK TRUE
X#define EOF_NOT_OK FALSE
X
X/* global limits */
X#define RULE_YEAR 1993		/* NOTE: should match the current year */
X#define START_DATE "1Mar92 0:00 UTC"	/* first confirmation received */
X#define MAX_COL 79		/* max column a line should hit */
X#define MAX_BUILD_SIZE 256	/* max how to build size */
X#define MAX_PROGRAM_SIZE 3217	/* max program source size */
X#define MAX_PROGRAM_SIZE2 1536	/* max program source size not counting
X				   whitespace and {}; not followed by
X				   whitespace or EOF */
X#define MAX_TITLE_LEN 12	/* max chars in the title */
X#define MAX_ENTRY_LEN 1		/* max length in the entry input line */
X#define MAX_ENTRY 8		/* max number of entries per person per year */
X#define MAX_FILE_LEN 1024	/* max filename length for a info file */
X
X/* where to send entries */
X#define ENTRY_ADDR1 "...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate"
X#define ENTRY_ADDR2 "obfuscate@toad.com"
X
X/* uuencode process - assumes ASCII */
X#define UUENCODE(c) (encode_str[(int)(c)&0xff])
X#define UUENCODE_LEN 45		/* max uuencode chunk size */
X#define UUINFO_MODE 0444	/* mode of an info file's uuencode file */
X#define UUBUILD_MODE 0444	/* mode of the build file's uuencode file */
X#define UUBUILD_NAME "build"	/* name for the build file's uuencode file */
X#define UUPROG_MODE 0444	/* mode of the program's uuencode file */
X#define UUPROG_NAME "prog.c"	/* name for the program's uuencode file */
X
X/* encode_str[(char)val] is the uuencoded character of val */
Xchar encode_str[256+1] = "`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
X
X/* global declarations */
Xchar *program;			/* our name */
Xlong start_time;		/* the startup time */
X
X/* forward declarations */
Xvoid parse_args();
Xvoid usage();
XFILE *open_remark();
XFILE *open_build();
XFILE *open_program();
XFILE *open_output();
Xvoid output_entry();
Xvoid output_remark();
Xvoid output_author();
Xvoid output_info();
Xvoid output_build();
Xvoid output_program();
Xvoid output_end();
Xint get_line();
Xvoid output_till_dot();
Xint col_len();
Xvoid check_io();
Xvoid uuencode();
X
Xmain(argc, argv)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X{
X    FILE *remark=NULL;	/* open remarks stream */
X    FILE *build=NULL;	/* open build file stream */
X    FILE *prog=NULL;	/* open program stream */
X    FILE *output=NULL;	/* open output stream */
X    char *rname=NULL;	/* file with remarks about the entry */
X    char *bname=NULL;	/* file containing how prog.c should be built */
X    char *pname=NULL;	/* the obfuscated program source file */
X    char *oname=NULL;	/* ioccc entry output file */
X    struct tm *tm;	/* startup time structure */
X
X    /*
X     * check on the year
X     */
X    start_time = time((long *)0);
X    tm = gmtime(&start_time);
X    if (tm->tm_year != RULE_YEAR-1900) {
X	fprintf(stderr,
X	"%s: WARNING: this program applies to %d, which may differ from %d\n\n",
X	    argv[0], RULE_YEAR, 1900+tm->tm_year);
X    }
X
X    /*
X     * parse the command line args
X     */
X    parse_args(argc, argv, &rname, &bname, &pname, &oname);
X
X    /*
X     * open/check the input and output files
X     *
X     * We open and truncate the output file first, in case it is the same
X     * as one of the input files.
X     */
X    output = open_output(oname);
X    remark = open_remark(rname);
X    build = open_build(bname);
X    prog = open_program(pname);
X    if (output==NULL || remark==NULL || build==NULL || prog==NULL) {
X	exit(1);
X    }
X
X    /*
X     * output each section
X     */
X    output_entry(output, oname);
X    output_remark(output, oname, remark, rname);
X    output_author(output, oname);
X    output_info(output, oname);
X    output_build(output, oname, build, bname);
X    output_program(output, oname, prog, pname);
X    output_end(output, oname);
X
X    /* 
X     * flush the output 
X     */
X    if (fflush(output) == EOF) {
X	fprintf(stderr, "%s: flush error in %s: ", program, oname);
X	perror("");
X	exit(2);
X    }
X
X    /*
X     * final words
X     */
X    printf("\nYour entry can be found in %s.  You should check this file\n", 
X	oname);
X    printf("correct any problems and verify that the uudecode utility will\n");
X    printf("correctly decode your build file and program.\n\n");
X    printf("This program has been provided as a guide for submitters.  In\n");
X    printf("cases where it conflicts with the rules, the rules shall apply.\n");
X    printf("It is your responsibility to ensure that your entry conforms to\n");
X    printf("the current rules.\n\n");
X    printf("Email your entries to:\n");
X    printf("\t%s\n", ENTRY_ADDR1);
X    printf("\t%s\n\n", ENTRY_ADDR2);
X    printf("Please use the following subject when you Email your entry:\n");
X    printf("\tioccc entry\n\n");
X    /* all done */
X    exit(0);
X}
X
X/*
X * parse_args - parse the command line args
X *
X * Given the command line args, this function parses them and sets the
X * required name flags.  This function will return only if the command
X * line syntax is correct.
X */
Xvoid
Xparse_args(argc, argv, rname, bname, pname, oname)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X    char **rname;	/* file with remarks about the entry */
X    char **bname;	/* file containing how prog.c should be built */
X    char **pname;	/* the obfuscated program source file */
X    char **oname;	/* ioccc entry output file */
X{
X    char *optarg;	/* -flag option operand */
X    int flagname;	/* the name of the -flag */
X    int i;
X
X    /*
X     * Not everyone has getopt, so we must parse args by hand.
X     */
X    program = argv[0];
X    for (i=1; i < argc; ++i) {
X
X	/* determine the flagname */
X	if (argv[i][0] != '-') {
X	    usage(1);
X	    /*NOTREACHED*/
X	}
X	flagname = (int)argv[i][1];
X
X	/* determine the flag's operand */
X	if (flagname != '\0' && argv[i][2] != '\0') {
X	    optarg = &argv[i][2];
X	} else {
X	    if (i+1 >= argc) {
X		usage(2);
X		/*NOTREACHED*/
X	    } else {
X		optarg = argv[++i];
X	    }
X	}
X
X	/* save the flag's operand in the correct global variable */
X	switch (flagname) {
X	case 'r':
X	    *rname = optarg;
X	    break;
X	case 'b':
X	    *bname = optarg;
X	    break;
X	case 'p':
X	    *pname = optarg;
X	    break;
X	case 'o':
X	    *oname = optarg;
X	    break;
X	default:
X	    usage(3);
X	    /*NOTREACHED*/
X	}
X    }
X
X    /*
X     * verify that we have all of the required flags
X     */
X    if (*rname == NULL || *bname == NULL || *pname == NULL || *oname == NULL) {
X	usage(4);
X	/*NOTREACHED*/
X    }
X    return;
X}
X
X/*
X * usage - print a usage message and exit
X *
X * This function does not return.
X */
Xvoid
Xusage(exitval)
X    int exitval;		/* exit with this value */
X{
X    fprintf(stderr,
X	"usage: %s -r remarks -b build -p prog.c -o ioccc.entry\n\n", program);
X    fprintf(stderr, "\t-r remarks\tfile with remarks about the entry\n");
X    fprintf(stderr, "\t-b build\tfile containing how prog.c should be built\n");
X    fprintf(stderr, "\t-p prog.c\tthe obfuscated program source file\n");
X    fprintf(stderr, "\t-o ioccc.entry\tioccc entry output file\n");
X    exit(exitval);
X}
X
X/*
X * open_remark - open/check the remark file
X *
X * The remark file should be indented by 4 spaces, and should not extend 
X * beyond column MAX_COL.  These are not requirements, so we only warn.
X *
X * This function returns NULL on I/O or format error.
X */
XFILE *
Xopen_remark(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    char buf[BUFSIZ+1];		/* input buffer */
X    int toolong=0;		/* number of lines that are too long */
X    int non_indent=0;		/* number of lines not indented by 4 spaces */
X
X    /*
X     * open the remark input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open remark file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * look at each line
X     */
X    while (fgets(buf, BUFSIZ, stream) != NULL) {
X
X	/* count lines that do not start with 4 spaces */
X	if (buf[0] != '\n' && strncmp(buf, "    ", 4) != 0) {
X	    ++non_indent;
X	}
X
X	/* count long lines */
X	if (col_len(buf) > MAX_COL) {
X	    /* found a line that is too long */
X	    ++toolong;
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* note long lines if needed */
X    if (toolong > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s extend beyond the 80th column\n",
X	    program, toolong, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* note non-indented lines, if needed */
X    if (non_indent > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s are not indented by 4 spaces\n",
X	    program, non_indent, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_build - open/check the build file
X *
X * The how to build file must not be longer than MAX_BUILD_SIZE bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_build(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X
X    /*
X     * open the how to build input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_BUILD_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the how to build file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_BUILD_SIZE);
X	return(NULL);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * open_program - open/check the program source file
X *
X * The program source file must be <= 3217 bytes.  The number of
X * non-whitespace and }{; chars not followed by whitespace must
X * be <= 1536 bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_program(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X    int count;			/* special count size */
X    int c;			/* the character read */
X
X    /*
X     * open the program source input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open program source file: %s: ",
X	    program, filename);
X	perror("");
X	exit(7);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat program source file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_PROGRAM_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the program source file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_PROGRAM_SIZE);
X	return(NULL);
X    }
X
X    /*
X     * count the non-whitespace, non {}; followed by whitespace chars
X     */
X    count = 0;
X    c = 0;
X    while ((c=fgetc(stream)) != EOF) {
X	/* look at non-whitespace */
X	if (!isascii(c) || !isspace(c)) {
X	    switch (c) {
X	    case '{':		/* count if not followed by EOF or whitespace */
X	    case '}':
X	    case ';':
X		/* peek at next char */
X		c = fgetc(stream);
X		if (c != EOF && isascii(c) && !isspace(c)) {
X		    /* not followed by whitespace or EOF, count it */
X		    ungetc(c, stream);
X		    ++count;
X		}
X		break;
X	    default:
X		++count;
X		break;
X	    }
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* look at the special size */
X    if (count > MAX_PROGRAM_SIZE2) {
X	fprintf(stderr,
X	    "%s: FATAL: the number of bytes that are non-whitespace, and\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        that are not '{', '}', ';' followed by whitespace\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        or EOF must be <= %d bytes\n",
X	    program, MAX_PROGRAM_SIZE2);
X	fprintf(stderr,
X	    "%s:        in %s, %d bytes were found\n",
X	    program, filename, count);
X	return(NULL);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_output - open/check the entry output file
X *
X * This function returns NULL on open error.
X */
XFILE *
Xopen_output(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X
X    /*
X     * open the ioccc entry output file
X     */
X    stream = fopen(filename, "w");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open ioccc entry file for output: %s: ",
X	    program, filename);
X	perror("");
X	exit(8);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * output_entry - output the ---entry--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_entry(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char title[MAX_TITLE_LEN+1+1];	/* the entry's title */
X    char buf[MAX_COL+1+1];		/* I/O buffer */
X    int entry=0;			/* entry number */
X    int ret;				/* fields processed by fscanf */
X    int ok_line=0;			/* 0 => the line is not ok */
X    char skip;				/* input to skip */
X    FILE *date_pipe;			/* pipe to a date command */
X    time_t epoch_sec;			/* seconds since the epoch */
X    char *p;
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---entry---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the rule year
X     */
X    fprintf(output, "rule:\t%d\n", RULE_YEAR);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /* determine if this is a fix */
X    printf("Is this a fix, update or resubmittion to a ");
X    printf("previous entry (enter y or n)? ");
X    while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    if (buf[0] == 'y') {
X	fprintf(output, "fix:\ty\n");
X	check_io(output, oname, EOF_NOT_OK);
X	printf("\nBe sure that the title and entry number that you give\n");
X	printf("are the same of as the entry you are replacing\n");
X    } else {
X	fprintf(output, "fix:\tn\n");
X	check_io(output, oname, EOF_NOT_OK);
X    }
X
X    /*
X     * write the title
X     */
X    printf("\nYour title must match expression be a [a-zA-Z0-9_=] character\n");
X    printf("followed by 0 to %d more [a-zA-Z0-9_=+-] characters.\n\n",
X	MAX_TITLE_LEN-1);
X    printf("It is suggested, but not required, that the title should\n");
X    printf("incorporate your username; in the\n");
X    printf("case of multiple authors, consider using parts of the usernames\n");
X    printf("of the authors.\n\n");
X    printf("enter your title: ");
X    do {
X	/* prompt and read a line */
X	if ((ok_line = get_line(title, MAX_TITLE_LEN+1, MAX_COL-9)) <= 0) {
X	    printf("\ntitle is too long, please re-enter: ");
X	    continue;
X	}
X
X	/* verify the pattern, not everyone has regexp, so do it by hand */
X	if (!isascii((int)title[0]) ||
X	    !(isalnum((int)title[0]) || title[0] == '_' || title[0] == '=')) {
X	    printf("\ninvalid first character in the title\n\n");
X	    printf("enter your title: ");
X	    ok_line = 0;
X	} else {
X	    for (p=(&title[1]); *p != '\0' && *p != '\n'; ++p) {
X		if (!isascii((int)*p) ||
X		    !(isalnum((int)*p) || 
X		      *p == '_' || *p == '=' || *p == '+' || *p == '-')) {
X		    printf("\ninvalid character in the title\n\n");
X		    printf("enter your title: ");
X		    ok_line = 0;
X		}
X	    }
X	}
X    } while (ok_line <= 0);
X    fprintf(output, "title:\t%s", title);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the entry number
X     */
X    printf("\nEach person may submit up to %d entries per year.\n\n",
X	MAX_ENTRY);
X    printf("enter an entry number from 0 to %d inclusive: ", MAX_ENTRY-1);
X    do {
X	/* get a valid input line */
X	fflush(stdout);
X	ret = fscanf(stdin, "%d[\n]", &entry);
X	check_io(stdin, "stdin", EOF_NOT_OK);
X	/* skip over input until newline is found */
X	do {
X	    skip = fgetc(stdin);
X	    check_io(stdin, "stdin", EOF_NOT_OK);
X	    if (skip != '\n') {
X		/* bad text in input, invalidate entry number */
X		entry = -1;
X	    }
X	} while (skip != '\n');
X
X	/* check if we have a number, and if it is in range */
X	if (ret != 1 || entry < 0 || entry > MAX_ENTRY-1) {
X	    printf(
X	      "\nThe entry number must be between 0 and %d inclusive\n\n",
X		MAX_ENTRY-1);
X	    printf("enter the entry number: ");
X	}
X    } while (ret != 1 || entry < 0 || entry > MAX_ENTRY-1);
X    fprintf(output, "entry:\t%d\n", entry);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the submission date
X     */
X    /* returns a newline */
X    epoch_sec = time(NULL);
X    fprintf(output, "date:\t%s", asctime(gmtime(&epoch_sec)));
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the OS/machine host information
X     */
X    printf(
X      "\nEnter the machine(s) and OS(s) under which your entry was tested.\n");
X    output_till_dot(output, oname, "host:");
X}
X
X/*
X * output_remark - output the ---remark--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_remark(output, oname, remark, rname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *remark;		/* stream to the file containing remark text */
X    char *rname;		/* name of the remark file */
X{
X    char buf[BUFSIZ+1];		/* input/output buffer */
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---remark---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * copy the remark file to the section
X     */
X    while (fgets(buf, BUFSIZ, remark) != NULL) {
X	fputs(buf, output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    check_io(remark, rname, EOF_OK);
X
X    /* be sure that the remark section ends with a newline */
X    if (buf[strlen(buf)-1] != '\n') {
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X}
X
X/*
X * output_author - output the ---author--- section
X *
X * Read the needed information from stdin, and write the author section.
X * If multiple authors exist, multiple author sections will be written.
X */
Xvoid
Xoutput_author(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char buf[MAX_COL+1+1];	/* I/O buffer */
X    int more_auths;		/* TRUE => more authors to note */
X    int auth_cnt=0;		/* number of authors processed */
X
X    /*
X     * prompt the user for the author section
X     */
X    printf("\nEnter information about each author.  If your entry is after\n");
X    printf("%s and before the contest deadline, the judges\n", START_DATE);
X    printf("will attempt to Email back a confirmation to the first author\n");
X
X    /*
X     * place author information for each author in an individual section
X     */
X    do {
X
X	/* write the start of the section */
X	fprintf(output, "---author---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the author */
X	printf("\nAuthor #%d name: ", ++auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nname too long, please re-enter: ");
X	}
X	fprintf(output, "name:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the organization */
X	printf("\nEnter the School/Company/Organization of author #%d\n",
X	    auth_cnt);
X	printf("\nAuthor #%d org: ", auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter: ");
X	}
X	fprintf(output, "org:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the address */
X	printf(
X	    "\nEnter the postal address for author #%d.  Be sure to include\n",
X	    auth_cnt);
X	printf("your country and do not include your name.\n");
X	output_till_dot(output, oname, "addr:");
X
X	/* write the Email address */
X	printf(
X	    "\nEnter the Email address for author #%d.  Use an address from\n",
X	    auth_cnt);
X	printf(
X	    "a registered domain or well known site.  If you give several\n");
X	printf("forms, list them one per line.\n");
X	output_till_dot(output, oname, "email:");
X
X	/* write the anonymous status */
X	printf("\nShould author #%d remain anonymous (enter y or n)? ",
X	    auth_cnt);
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	fprintf(output, "anon:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* determine if there is another author */
X	printf("\nIs there another author (enter y or n)? ");
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	if (buf[0] == 'y') {
X	    more_auths = TRUE;
X	} else {
X	    more_auths = FALSE;
X	}
X    } while (more_auths == TRUE);
X    return;
X}
X
X/*
X * output_info - output the ---info--- section(s)
X *
X * Read the needed information from stdin, and write the info section.
X * If multiple info files exist, multiple info sections will be written.
X */
Xvoid
Xoutput_info(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char infoname[MAX_FILE_LEN+1];	/* filename buffer */
X    char yorn[1+1];		/* y or n answer */
X    char *uuname;		/* name to uuencode as */
X    FILE *infile;		/* info file stream */
X
X    /*
X     * prompt the user for info information
X     */
X    printf("\nInfo files should be used only to supplement your entry.\n");
X    printf("For example, info files may provide sample input or detailed\n");
X    printf("information about your entry.  Because they are supplemental,\n");
X    printf("the entry should not require them to exist.\n\n");
X
X    /*
X     * while there is another info file to save, uuencode it
X     */
X    printf("Do you have a info file to include (enter y or n)? ");
X    while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    while (yorn[0] == 'y') {
X
X	/* read the filename */
X	printf("\nEnter the info filename: ");
X	while (get_line(infoname, MAX_FILE_LEN+1, 0) <= 0) {
X	    printf("\nInfo filename too long, please re-enter: ");
X	}
X
X	/* compute the basename of the info filename */
X	/* remove the trailing newline */
X	uuname = &infoname[strlen(infoname)-1];
X	*uuname = '\0';
X	/* avoid rindex/shrrchr compat issues, do it by hand */
X	for (--uuname; uuname > infoname; --uuname) {
X	    if (*uuname == '/') {
X		++uuname;
X		break;
X	    }
X	}
X
X	/* attempt to open the info file */
X	infile = fopen(infoname, "r");
X	if (infile == NULL) {
X	    fprintf(stderr, "\n%s: cannot open info file: %s: ",
X		program, infoname);
X	    perror("");
X	    continue;
X	}
X
X	/*
X	 * write the start of the section
X	 */
X	fprintf(output, "---info---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* uuencode the info file */
X	uuencode(output, oname, infile, infoname, UUINFO_MODE, uuname);
X
X	printf("\nDo you have another info file to include (enter y or n)? ");
X	while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X    };
X    return;
X}
X
X/*
X * output_build - output the ---build--- section
X *
X * Read the needed information from stdin, and write the build section.
X */
Xvoid
Xoutput_build(output, oname, build, bname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *build;		/* open build file stream */
X    char *bname;		/* name of the build file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---build---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, build, bname, UUBUILD_MODE, UUBUILD_NAME);
X    return;
X}
X
X/*
X * output_program - output the ---program--- section
X *
X * Read the needed information form stdin, and write the program section.
X */
Xvoid
Xoutput_program(output, oname, prog, pname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *prog;			/* open program stream */
X    char *pname;		/* name of program file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---program---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, prog, pname, UUPROG_MODE, UUPROG_NAME);
X    return;
X}
X
X/*
X * output_end - output the ---end--- section
X *
X * Read the needed information form stdin, and write the 'end section'.
X */
Xvoid
Xoutput_end(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    /*
X     * write the final section terminator
X     */
X    fprintf(output, "---end---\n");
X    check_io(output, oname, EOF_NOT_OK);
X    return;
X}
X
X/*
X * get_line - get an answer from stdin
X *
X * This function will flush stdout, in case a prompt is pending, and
X * read in the answer.
X *
X * This function returns 0 if the line is too long, of the length of the
X * line (including the newline) of the line was ok.  This function does
X * not return if ERROR or EOF.
X */
Xint
Xget_line(buf, siz, maxcol)
X    char *buf;			/* input buffer */
X    int siz;			/* length of input, including the newline */
X    int maxcol;			/* max col allowed, 0 => disable check */
X{
X    int length;			/* the length of the input line */
X
X    /* flush terminal output */
X    fflush(stdout);
X
X    /* read the line */
X    if (fgets(buf, siz+1, stdin) == NULL) {
X	/* report the problem */
X	check_io(stdin, "stdin", EOF_NOT_OK);
X    }
X
X    /* look for the newline */
X    length = strlen(buf);
X    if (buf[length-1] != '\n') {
X	int eatchar;		/* the char being eaten */
X
X	/* no newline found, line must be too long, eat the rest of the line */
X	do {
X	    eatchar = fgetc(stdin);
X	} while (eatchar != EOF && eatchar != '\n');
X	check_io(stdin, "stdin", EOF_NOT_OK);
X
X	/* report the situation */
X	return 0;
X    }
X
X    /* watch for long lines, if needed */
X    if (maxcol > 0 && (length > maxcol || col_len(buf) > maxcol)) {
X	/* report the situation */
X	return 0;
X    }
X
X    /* return length */
X    return length;
X}
X
X/*
X * output_till_dot - output a set of lines until '.' by itself is read
X *
X * This routine will read a set of lines until (but not including)
X * a single line with '.' is read.  The format of the output is:
X *
X *	leader:\tfirst line
X *	\tnext line
X *	\tnext line
X *	   ...
X *
X * This routine will not return if I/O error or EOF.
X */
Xvoid
Xoutput_till_dot(output, oname, leader)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    char *leader;		/* the lead text for the first line */
X{
X    char buf[BUFSIZ+1];		/* input buffer */
X    int count;			/* lines read */
X    int done=FALSE;		/* TRUE => finished reading input */
X
X    /* instruct the user on how to input */
X    printf("\nTo end input, enter a line with a single period.\n");
X
X    /* read lines until '.' or EOF */
X    count = 0;
X    while (!done) {
X	/* issue the prompt */
X	printf("%s\t", (count>0) ? "" : leader);
X	fflush(stdout);
X
X	/* get the line */
X	if (get_line(buf, BUFSIZ, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter:\n\t");
X	    continue;
X	}
X
X	/* note if '.' was read */
X	if (strcmp(buf, ".\n") == 0) {
X	    done = TRUE;
X	}
X
X	/* write line if we read something */
X	if (!done) {
X	    fprintf(output, "%s\t%s", (count++>0) ? "" : leader, buf);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X    }
X
X    /* if no lines read, at least output something */
X    if (count <= 0) {
X	fprintf(output, "%s\t.\n", leader);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    return;
X}
X
X/*
X * col_len - determine the highest that a string would reach
X *
X * Given a string, this routine returns that a string would reach
X * if the string were printed at column 1.  Tab stops are assumed
X * to start at 9, 17, 25, 33, ...
X */
Xint
Xcol_len(string)
X    char *string;		/* the string to examine */
X{
X    int col;	/* current column */
X    char *p;	/* current char */
X
X    /* scan the string */
X    for (col=0, p=string; *p != '\0' && *p != '\n'; ++p) {
X	/* note the column shift */
X	col = (*p=='\t') ? 1+((col+8)/8*8) : col+1;
X    }
X    if (*p == '\n') {
X	--col;
X    }
X
X    /* return the highest column */
X    return col;
X}
X
X/*
X * check_io - check for EOF or I/O error on a stream
X *
X * Does not return if EOF or I/O error.
X */
Xvoid
Xcheck_io(stream, name, eof_ok)
X    FILE *stream;		/* the stream to check */
X    char *name;			/* the name of this stream */
X    int eof_ok;			/* EOF_OK or EOF_NOT_OK */
X{
X    /* test for I/O error */
X    if (ferror(stream)) {
X	fprintf(stderr, "%s: error on %s: ", program, name);
X	perror("");
X	exit(1);
X
X    /* test for EOF */
X    } else if (eof_ok == EOF_NOT_OK && feof(stream)) {
X	fprintf(stderr, "%s: EOF on %s\n", program, name);
X	exit(1);
X    }
X    return;
X}
X
X/*
X * uuencode - uuencode a file
X *
X * Perform the uuencoding process identical to the process performed
X * by the uuencode(1) utility.
X *
X * This routine implements the algorithm described in the uuencode(5)
X * 4.3BSD Reno man page.
X */
Xvoid
Xuuencode(output, oname, infile, iname, umode, uname)
X    FILE *output;		/* output file stream */
X    char *oname;		/* output filename */
X    FILE *infile;		/* input file stream */
X    char *iname;		/* input filename */
X    int umode;			/* the mode to put on the uuencode file */
X    char *uname;		/* name to put on the uuencode file */
X{
X    char buf[UUENCODE_LEN+1];	/* the uuencode buffer */
X    int read_len;		/* actual number of chars read */
X    int val;			/* 6 bit chunk from buf */
X    char filler='\0';		/* filler uuencode pad text */
X    char *p;
X
X    /*
X     * output the initial uuencode header
X     */
X    fprintf(output, "begin %o %s\n", umode, uname);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * clear out the input buffer
X     */
X    for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	*p = '\0';
X    }
X
X    /*
X     * We will process UUENCODE_LEN chars at a time, forming
X     * a single output line each time.
X     */
X    while ((read_len=fread(buf,sizeof(buf[0]),UUENCODE_LEN,infile)) > 0) {
X	
X	/*
X	 * the first character is the length character
X	 */
X	fputc(UUENCODE(read_len), output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * We will convert 24 bits at a time.  Thus we will convert
X	 * 3 sets of 8 bits into 4 sets of uuencoded 6 bits.
X	 */
X	for (p=buf; read_len>0; read_len-=3, p+=3) {
X
X	    /* bits 0 to 5 */
X	    val = (p[0]>>2)&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 6 to 11 */
X	    val = ((p[0]<<4)&0x30) | ((p[1]>>4)&0x0f);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 12 to 17 */
X	    val = ((p[1]<<2)&0x3c) | ((p[2]>>6)&0x03);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 18 to 23 */
X	    val = p[2]&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X
X	/* end of UUENCODE_LEN line */
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * clear out the input buffer  (don't depend on bzero() or memset())
X	 */
X	for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	    *p = '\0';
X	}
X    }
X
X    /* check the last read on the input file */
X    check_io(infile, iname, EOF_OK);
X
X    /* write end of uuencode file */
X    fprintf(output, "%c\nend\n", UUENCODE(filler));
X    check_io(output, oname, EOF_NOT_OK);
X}
SHAR_EOF
chmod 0444 mkentry.c ||
echo "restore of mkentry.c failed"
set `wc -c mkentry.c`;Wc_c=$1
if test "$Wc_c" != "33961"; then
	echo original size 33961, current size $Wc_c
fi
# ============= obfuscate.info ==============
echo "x - extracting obfuscate.info (Text)"
sed 's/^X//' << 'SHAR_EOF' > obfuscate.info &&
X1993 Obfuscated contest information
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
XThe International Obfuscated C Code Contest (IOCCC), in the sprit of
Xco-operation, is willing mention other programming contents, as space
Xpermits.  
X
XHow to have your contest included in this file:
X
X    If you wish the IOCCC judges to include your contest in this file,
X    send a request to:
X
X	judges@toad.com
X
X    We request that contest descriptions be limited to 50 lines and to
X    not exceed 2500 bytes.  We typically request that your contest
X    include a current description of the IOCCC.
X
X    In order to be included in this file for given year, we must
X    receive a current description no EARLIER than Jan 1 00:00:00 UTC and
X    no LATER than Feb 15 00:00:00 UTC.  Agreement to publish your
X    contest must also be obtained prior to Feb 15.  Annual contests
X    that fail to submit a new entry will be dropped from this file.
X
XOfficial Disclaimer:  (pardon the officialese)
X
X    The contents noted below, other than the IOCCC, are not affiliated 
X    with the IOCCC, nor are they endorsed by the IOCCC.  We reserve the 
X    right to refuse to print information about a given contest.
X
X    The information below was provided by the particular contest
X    organizer(s) and printed by permission.  Please contact the
X    contest organizer(s) directly regarding their contents.
X
XWith that official notice given, we present for your ENJOYMENT, the following
Xinformation about contents:
X
X---------------------------------------------------------------------------
X
X    10th International Obfuscated C Contest   
X    
X	"The original obfuscated contest"
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X                b.  To darken.  2. To confuse:  Their emotions obfuscated 
X		their judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X                Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X                obfuscatory adj.
X 
X    GOALS OF THE CONTEST:
X 
X        * To write the most Obscure/Obfuscated C program under the rules below.
X        * To show the importance of programming style, in an ironic way.
X        * To stress C compilers with unusual code.
X        * To illustrate some of the subtleties of the C language.
X        * To provide a safe forum for poor C code.  :-)
X 
X    The IOCCC is the grandfather of USENET programming contests.  Since
X    1984, this contest demonstrated that a program that mearly works
X    correctly is not sufficient.  The IOCCC has also done much to add
X    the arcane word 'obfuscated' back into the English language.
X    (see "The New Hacker's Dictionary" by Eric Raymond)
X 
X    You are strongly encouraged to read the new contest rules before
X    sending any entries.  The rules, and sometimes the contest Email
X    address itself, change over time.  A valid entry one year may
X    be rejected in a later year due to changes in the rules.  The typical
X    start date for contests is in early March.  Contest rules are normally not
X    finalized and posted until the beginning of the contest.  The typical 
X    closing date for contests are in early May.
X 
X    The contest rules are posted to comp.unix.wizards, comp.lang.c,
X    misc.misc, alt.sources and comp.sources.d.  If you do not have access 
X    to these groups, or if you missed the early March posting, you may 
X    request a copy from the judges, via Email, at;
X 
X        judges@toad.com   -or-   ...!{sun,uunet,utzoo,pyramid}!hoptoad!judges
X 
X    Previous contest winners are available via anonymous ftp from
X    ftp.uu.net under the directory /pub/ioccc.
X
X---------------------------------------------------------------------------
X
X    0th International Obfuscated Perl Contest
X	By: Landon Noll & Larry Wall
X
X    This content is being planned.  Someday when Landon & Larry are not too 
X    busy, they will actually get around to posting the first set of rules!
X
X    Landon says: "Yes, I know that I said we would have a contest in 1993,
X		  but other existing projects got in the way.  Hopefully
X		  something will be developed after Nov 1993."
X
X---------------------------------------------------------------------------
X
X                2nd International obFUsCaTeD POsTsCripT Contest
X                     Jonathan Monsarrat (jgm@cs.brown.edu)
X                         Alena Lacova (alena@nikhef.nl)
X
X    A  contest of  programming skills  and  knowledge, exclusively  for the
X    PostScript programming language. Its purpose:
X
X    * To spread knowledge of PostScript and its details.
X    * To applaud those with the best tricks.
X    * To prove  that humans can  beat those damnable  machine generators at
X      their own game by writing  the most obscure and mysterious PostScript
X      programs ever.
X
X    Winners will receive the fame and attention that goes with having their
X    program entry posted as a winner to programmers world-wide.
X
X    The 1993 contest rules and results are available by ftp as
X    ``wilma.cs.brown.edu:pub/postscript/obfuscated*.shar'', or individually
X    in the obfuscated directory. The judges will post the 1994 rules
X    in November to comp.lang.postscript on Usenet, and other places.
X    Send questions to jgm@cs.brown.edu.
X
X    Categories include: Best Obfuscated PostScript, Best Artwork,
X    Most Compact, Best Interactive Program, Most Useful, and
X    anything so unusual and creative that it deserves an award.
X
X    The judges will choose the winners of each category.
X
X    Alena Lacova  is a system  administrator at NIKHEF  (Institute for High
X    Energy and Nuclear  Physics) in the  Netherlands. She is  the author of
X    The PostScript Chaos  Programs, which draw  Julia sets, Mandelbrot sets
X    and other kinds of fractal functions.
X
X    Jonathan Monsarrat is a graduate  student from MIT and Brown University
X    in  the  U.S.A. He  is  the  FAQ maintainer  for  the  Usenet newsgroup
X    comp.lang.postscript and the author of The PostScript Zone and LameTeX.
X .
X
SHAR_EOF
chmod 0444 obfuscate.info ||
echo "restore of obfuscate.info failed"
set `wc -c obfuscate.info`;Wc_c=$1
if test "$Wc_c" != "6257"; then
	echo original size 6257, current size $Wc_c
fi
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
document_id: 66322
From: ware@cis.ohio-state.edu (Peter Ware)
Subject: comp.windows.x.intrinsics Frequently Asked Questions (FAQ)

Archive-name: Xt-FAQ
Version: $Id: FAQ-Xt,v 1.28 93/04/02 12:41:12 ware Exp $

		    The X Toolkit Intrinsics F.A.Q
			  A monthly posting


This article contains the answers to some Frequently Asked Questions
(FAQ) from comp.windows.x about the X Toolkit Intrinsics.  To submit
questions (preferably with an answer) send email to: ware@cis.ohio-state.edu

Many FAQs, including this one, are available on the archive site
rtfm.mit.edu in the directory pub/usenet/news.answers.  The name
under which a FAQ is archived appears in the Archive-name 
line at the top of the article.  This FAQ is archived as Xt-FAQ.

All code fragments are public domain.  

			       Contents
0.  Xt Glossary
1.  Software Versions
2.  Related FAQ's
3.  Why does my application core dump when I use signals/alarms/cthreads?
4.  How do I use a different visual than the default?
5.  Which visual should an application use?
6.  Why do only Shell widgets have a Visual?
7.  Which visual, depth and colormap do Shells inherit?
8.  I've done all the above and I still get a BadMatch error.  Why?
9.  Why doesn't my widget get destroyed when I call XtDestroyWidget()?
10. How do I exit but still execute the DestroyCallbacks?
11. How do I resize a Shell widget?
12. Why can't XtAppAddInput() handle files?
13. What good books and magazines are there on Xt?
14. What Widgets are available?
15. What alternatives to the Intrinsics are there?
16. How do I pass a float value to XtSetValues?
17. How do I write a resource converter?
18. How do I open multiple displays?
19. What changed from R3 to R4 to R5?
20. Where are the resources loaded from?
21. What order are callbacks executed in?
22. How do I know if a widget is visible?
23. How do I reparent a widget in Xt, i.e. XtReparentWidget()?
24. Why use XtMalloc, XtFree, etc?
25. How to debug an Xt application?
26. Why don't XtAddInput(), XtAddTimeout() and XtAddWorkProc() work?
27. What is and how can I implement drag and drop?

----------------------------------------------------------------------
0.  Xt Glossary
----------------------------------------------------------------------

o The Xt Intrinsics implement an object oriented interface to C code
  to allow useful graphical components to be created.  Included with
  this are classes that provide the base functionality: Object,
  RectObj, Core, Composite, Constraint, Shell, OverrideShell, WMShell,
  etc.  The terms "Xt" and "Intrinsics" are used interchangeably,
  however, they are used very precisely to mean a specific library of the X
  window system.  In particular, it does not include the Athena,
  Motif, OLIT or any other widget set.  Without further widgets the
  Intrinsics are not especially useful.

o A widget refers to a user interface abstraction created via Xt.  The
  precise use, is any object that is a subclass of the Core class.  It
  is used loosely to refer to anything that is a subclass of the
  Object class although these are more accurately called windowless
  widgets or gadgets.

o Xlib is the C interface to the X11 protocol.  It is one layer below
  the Xt Intrinsics.  Typically a widget uses relatively few Xlib
  functions because Xt provides most such services although an
  understanding of Xlib helps with problems.

----------------------------------------------------------------------
1.  Software Versions
----------------------------------------------------------------------

The following are the latest versions of Xt based software:
        _____________________________________________________________
	Software	Version		Released	Next Expected
        _____________________________________________________________
	X11R4		patch 18			(none)
	X11R5		patch 21	12/18/92	??
	Athena Widgets	(see X11R5)
	Motif		1.2.1		9/92		??
	OLIT		??		??		??
	Xtra		2.5		6/15/92		??
	Xw		X11R4				(none)
	Xcu		X11R5				(none)
	fwf		3.4		1/11/92		4/93
        _____________________________________________________________

----------------------------------------------------------------------
2.  Related FAQ's
----------------------------------------------------------------------
David B. Lewis (uunet!craft!faq) maintains the FAQ on X.  It
is posted monthly on comp.windows.x and located on export in contrib/FAQ.

Liam R. E. Quin (lee@sq.sq.com) posts an FAQ list on Open Look to 
comp.windows.x.  

Jan Newmarch (jan@pandonia.canberra.edu.au) posts an FAQ list on Motif 
to comp.windows.x.motif.

Peter Ware (ware@cis.ohio-state.edu) posts an FAQ list for
comp.windows.x.intrinsics; it is on export in contrib/FAQ-Xt.

----------------------------------------------------------------------
3.  Why does my application core dump when I use signals/alarms/cthreads?
----------------------------------------------------------------------

In brief, Xlib, Xt and most widget sets have no mutual exclusion for
critical sections.  Any interrupt handler is likely to leave one of
the above libraries in an inconsistent state -- such as all the
appropriate flags not yet set, dangling pointers, in the middle of a
list traversal, etc.  Note that the ANSI C standard points out that
behavior of a signal handler is undefined if the signal handler calls
any function other than signal() itself, so this is not a problem
specific to Xlib and Xt; the POSIX specification mentions other
functions which may be called safely but it may not be assumed that
these functions are called by Xlib or Xt functions.

The only safe way to deal with signals is to set a flag in the
interrupt handler.  This flag later needs to be checked either by a
work procedure or a timeout callback.  It is incorrect to add either
of these in the interrupt handler.  As another note, it is dangerous
to add a work procedure that never finishes.  This effectively
preempts any work procedures previously added and so they will never
be called.  Another option is to open a pipe, tell the event loop
about the read end using XtAppAddInput() and then the signal handler
can write a byte to the write end of the pipe for each signal.
However, this could deadlock your process if the pipe fills up.

Why don't the Intrinsics deal with this problem?  Primarily because it
is supposed to be a portable layer to any hardware and operating
system.   Is that a good enough reason -- I don't think so.

        Note: the article in The X Journal 1:4 and the example in O'Reilly
Volume 6 are in error.

----------------------------------------------------------------------
4.  How do I use a different visual than the default?
----------------------------------------------------------------------

This requires a more complicated answer than it should.  A window has
three things that are visual specific -- the visual, colormap and
border pixmap.  All widgets have their own Colormap and BorderPixmap
resource; only shell widgets have Visual resources (another questions
deals with why shells have a Visual).  The default value of these
resources is CopyFromParent which does exactly what it says.  In the
shell widget CopyFromParent gets evalulated as DefaultVisualOfScreen
and DefaultColormapOfScreen.  When any one of the three resources is
not properly set, a BadMatch error occurs when the window is
created.  They are not properly set because each of the values depends
on the visual being used.  

How to get this to work?  There are two parts to the answer.  The
first is if you want an application to start with a particular visual
and the second is if you want a particular shell within an application
to start with a different visual.  The second is actually easier
because the basic information you need is available.  The first is a
little harder because you'll need to initialize much of the toolkit
yourself in order to determine the needed information.

/*
 * Some sample code to start up an application using something other
 * than the default visual.
 *
 * To compile:
 *	cc -g visual.c -o visual -lXaw -lXmu -lXt -lXext -lX11 -lm
 *
 * To run:
 *	./visual -geometry 300x300 -depth 24 -visual StaticColor -fg blue -bg yellow
 *
 * you need to move the mouse to get the particular visuals colormap
 * to install.
 */

#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Shell.h>

typedef struct
{
	Visual	*visual;
	int	depth;
} OptionsRec;

OptionsRec	Options;

XtResource resources[] =
{
	{"visual", "Visual", XtRVisual, sizeof (Visual *),
	XtOffsetOf (OptionsRec, visual), XtRImmediate, NULL},
	{"depth", "Depth", XtRInt, sizeof (int),
	XtOffsetOf (OptionsRec, depth), XtRImmediate, NULL},
};

XrmOptionDescRec Desc[] =
{
	{"-visual", "*visual", XrmoptionSepArg, NULL},
	{"-depth", "*depth", XrmoptionSepArg, NULL}
};



int
main (argc, argv)
	int		argc;
	char		**argv;
{
	XtAppContext	app;		/* the application context */
	Widget		top;		/* toplevel widget */
	Display		*dpy;		/* display */
	char		**xargv;	/* saved argument vector */
	int		xargc;		/* saved argument count */
	Colormap	colormap;	/* created colormap */
	XVisualInfo	vinfo;		/* template for find visual */
	XVisualInfo	*vinfo_list;	/* returned list of visuals */
	int		count;		/* number of matchs (only 1?) */
	Arg		args[10];
	Cardinal	cnt;
	char		*name = "test";
	char		*class = "Test";

	/*
	 * save the command line arguments
	 */

	xargc = argc;
	xargv = (char **) XtMalloc (argc * sizeof (char *));
	bcopy ((char *) argv, (char *) xargv, argc * sizeof (char *));

	/*
	 * The following creates a _dummy_ toplevel widget so we can
	 * retrieve the appropriate visual resource.
	 */
	cnt = 0;
	top = XtAppInitialize (&app, class, Desc, XtNumber (Desc), &argc, argv,
			       (String *) NULL, args, cnt);
	dpy = XtDisplay (top);
	cnt = 0;
	XtGetApplicationResources (top, &Options, resources,
				   XtNumber (resources),
				   args, cnt);
	cnt = 0;
	if (Options.visual && Options.visual != DefaultVisualOfScreen (XtScreen (top)))
	{
		XtSetArg (args[cnt], XtNvisual, Options.visual); ++cnt;
		/*
		 * Now we create an appropriate colormap.  We could
		 * use a default colormap based on the class of the
		 * visual; we could examine some property on the
		 * rootwindow to find the right colormap; we could
		 * do all sorts of things...
		 */
		colormap = XCreateColormap (dpy,
					    RootWindowOfScreen (XtScreen (top)),
					    Options.visual,
					    AllocNone);
		XtSetArg (args[cnt], XtNcolormap, colormap); ++cnt;

		/*
		 * Now find some information about the visual.
		 */
		vinfo.visualid = XVisualIDFromVisual (Options.visual);
		vinfo_list = XGetVisualInfo (dpy, VisualIDMask, &vinfo, &count);
		if (vinfo_list && count > 0)
		{
			XtSetArg (args[cnt], XtNdepth, vinfo_list[0].depth);
			++cnt;
			XFree ((XPointer) vinfo_list);
		}
	}
	XtDestroyWidget (top);


	/*
	 * Now create the real toplevel widget.
	 */
	XtSetArg (args[cnt], XtNargv, xargv); ++cnt;
	XtSetArg (args[cnt], XtNargc, xargc); ++cnt;
	top = XtAppCreateShell ((char *) NULL, class,
				applicationShellWidgetClass,
				dpy, args, cnt);

	/*
	 * Display the application and loop handling all events.
	 */
	XtRealizeWidget (top);
	XtAppMainLoop (app);
	return (0);
}

----------------------------------------------------------------------
5.  Which visual should an application use?
----------------------------------------------------------------------

This is a point that can be argued about but one opinion is there is
no way for an application to know the appropriate visual -- it has to
be specified by the user.  If you disagree with this then your
application probably falls into the category of always using the
default visual or it is hardware specific and expects some particular
visual such as 24bit TrueColor with an OverlayPlane extension (or some
such).

Why?  No application runs in isolation.  Depending on the way a server
allocates resources I may not always want your application to run in
TrueColor mode if it is going to mess up my other applications.  I may
be very upset if it chooses to run in GreyScale instead of PsuedoColor
or just monochrome.

As an example, on a low end color Sun server there are many different
possible visuals: monochrome, 256 entry colormap, static gray, static
color, and a 3/3/2 TrueColor.  The SGI Iris's offer all the above 
plus 12 bit TrueColor, 24 bit TrueColor, an Overlay Plane.

----------------------------------------------------------------------
6.  Why do only Shell widgets have a Visual?
----------------------------------------------------------------------

This is strictly by convention.  It makes it possible for an arbitrary
widget to know that the visual it uses can be found by looking for the
shell widget that is its ancestor and obtaining the visual of that
shell.

A widget can have its own visual resource.  If it does, it must have
its own realize method to use the visual when it calls
XCreateWindow().  You should also make this a resource that can be
obtained with XtGetValues() so other widgets can find it.  A
reasonable value is probably XtNvisual.

----------------------------------------------------------------------
7.  Which visual, depth and colormap do Shells inherit?
----------------------------------------------------------------------

The default value for these resources are set to CopyFromParent.  This
is interpreted as the DefaultColormapOfScreen(), DefaultDepthOfScreen()
and the default visual of the screen if the widget has no parent -- i.e.
it is an applicationShellWidgetClass and the root of your widget tree.

If the parent of the widget is not null, then the shell copies
colormap and depth from its parent and uses CopyFromParent as the
visual.

----------------------------------------------------------------------
8.  I've done all the above and I still get a BadMatch error.  Why?
----------------------------------------------------------------------

Some resource converters improperly cache references.  This was
especially true of X11R3 and earlier versions of Motif.

----------------------------------------------------------------------
9.  Why doesn't my widget get destroyed when I call XtDestroyWidget()?
----------------------------------------------------------------------

See section 2.8 of the Xt specification.

It eventually does get destroyed, just not immediately.  The
Intrinsics destroy a widget in a two-phase process.  First it and all
of its children have a flag set that indicate it is being destroyed.
It is then put on a list of widgets to be destroyed.  This way any
pending X events or further references to that widget can be cleaned
up before the memory is actually freed.  The second phase is then
performed after all callbacks, event handlers, and actions have
completed, before checking for the next X event.  At this point the
list is traversed and each widget's memory is actually free()'d, among
other things.

As some further caveats/trivia, the widgets may be destroyed if the
Intrinsics determine that they have no further references to the
widgets on the list.  If so, then the phase 2 destruction occurs
immediately.  Also, if nested event loops are used, widgets placed on
the destroy list before entering the inner event loop are not
destroyed until returning to the outer event loop.

----------------------------------------------------------------------
10. How do I exit but still execute the DestroyCallbacks?
----------------------------------------------------------------------

The problem is if a simple and entirely reasonable approach to exiting
an application is used, such as calling exit() directly, then a widget
may not have a chance to clean up any external state -- such as open
sockets, temporary files, allocated X resources, etc.  (this code for
simplicity reasons assumes only a single toplevel widget):


	Widget
	ToplevelGet (gw)
		Widget		gw;		/* widget to find toplevel */
	{
		Widget		top;

		for (top = gw; XtParent (top); top = XtParent (top))
			/* empty */;
		return (top);
	}

	void
	ExitCallback (gw, closure, call_data)
		Widget		gw;		/* widget */
		XtPointer	closure;	/* data the app specified */
		XtPointer	call_data;	/* widget specific data */
	{
		Widget		toplevel;

		toplevel = ToplevelGet (gw);
		XtUnmapWidget (toplevel);	/* make it disappear quickly */
		XtDestroyWidget (toplevel);
		exit (0);
	}

One can see that the above code exit's immediately after destroying
the toplevel widget.  The trouble is the phase 2 destruction may never
occur.  

This works for most widgets and most applications but will not work
for those widgets that have any external state.  You might think that
since it works now it will always work but remember that part of the
reason an object oriented approach is used is so one can be ignorant
of the implementation details for each widget.  Which means that the
widget may change and someday require that some external state is
cleaned up by the Destroy callbacks.

One alternative is to modify ExitCallback() to set a global flag and
then test for that flag in a private event loop.  However, private
event loops are frowned upon because it tends to encourage sloppy, and
difficult to maintain practices.

Try the following code instead.

	#include <X11/Intrinsic.h>

	extern Widget ToplevelGet (
	#if NeedFunctionPrototypes
		Widget		gw
	#endif
	);

	extern Boolean ExitWorkProc (
	#if NeedFunctionPrototypes
		XtPointer	closure
	#endif
	);

	extern void ExitCallback (
	#if NeedFunctionPrototypes
		Widget		gw,
		XtPointer	closure,
		XtPointer	call_data
	#endif
	);

	Widget
	ToplevelGet (gw)
	Widget		gw;		/* widget to find toplevel */
	{
		Widget		top;

		for (top = gw; XtParent (top); top = XtParent (top))
			/* empty */;
		return (top);
	}


	void
	ExitCallback (gw, closure, call_data)
	Widget		gw;		/* widget */
	XtPointer	closure;	/* data the app specified */
	XtPointer	call_data;	/* widget specific data */
	{
		Widget		toplevel;

		toplevel = ToplevelGet (gw);
		XtUnmapWidget (toplevel);	/* make it disappear quickly */
		XtDestroyWidget (toplevel);
		XtAppAddWorkProc (XtWidgetToApplicationContext (gw),
				  ExitWorkProc, (XtPointer) NULL);
	}

	Boolean
	ExitWorkProc (closure)
		XtPointer	closure;
	{
		exit (0);
		/*NOTREACHED*/
	}


ExitCallback() adds a work procedure that will get called when the
application is next idle -- which happens after all the events are
processed and the destroy callbacks are executed.

----------------------------------------------------------------------
11. How do I resize a Shell widget?
----------------------------------------------------------------------

After it is realized, one doesn't resize a Shell widget.  The proper
thing is to resize the currently managed child of the Shell widget
using XtSetValues().  The geometry change is then propagated to the
Shell which asks the window manager which may or may not allow the
request.  However, the Shell must have the resource
XtNallowShellResize set to True otherwise it will not even ask the
window manager to grant the request and the Shell will not resize.

To change the position of a Shell, use XtSetValues() on the Shell, not
the child, and within the limits of the window manager it should be granted.

----------------------------------------------------------------------
12. Why can't XtAppAddInput() handle files?
----------------------------------------------------------------------

It does, however Unix semantics for when I/O is ready for a file does
not fit most peoples' intuitive model.  In Unix terms a file
descriptor is ready for reading whenever the read() call would not
block, ignoring the setting of optional flags that indicate not to
block.  This works as expected for terminals, sockets and pipes.  For
a file the read() will always return but the return indicates an EOF
-- i.e. no more data.  The result is the code in the Intrinsics always
calls the input handler because it always thinks something is about to
be read.  The culprit is the select() system call or on SYSV based
OS's it is the poll() system call.

How to get around this on a Unix system?  The best approach is to use
another process to check for available input on the file.  Use a pipe
to connect the application with this other process and pass the file
descriptor from the pipe to XtAppAddInput().  A suitable program on
BSD systems is "tail -f filename".

It's rumored that select() on some systems is not _completely_
reliable.  In particular:

	- IBM AIX 3.1: this is one where it would work for a while
	  (several thousand times) and then stop until some other
	  event woke it up. This seemed to be the result of a race
	  condition in the Kernel.  IBM claims to have a fix for this.

	- Pyramid, doesn't work at all.

	- Ultrix (and possibly others where pipes are implemented as
	  sockets), wasn't completely broken, but although the writing
	  side wrote in 512 byte blocks the reading side received it
	  all broken up as if it was being put into the pipe a byte at
	  a time.  You can waste a lot of time by reading small blocks
	  (get raound it by detecting the situation and having
	  select() ignore the pipe for 10 mseconds - by then it had
	  been given the whole block).


Note that all the above descriptions used Unix terminology such as
read(), file descriptor, pipes, etc.  This is an OS dependent area and
may not be identical on all systems.  However the Intrinsic designers
felt it was a common enough operation that it should be included with
part of the toolkit.  Why they didn't also deal with signals at this
point I don't know.

----------------------------------------------------------------------
13. What good books and magazines are there on Xt?
----------------------------------------------------------------------

I have a favorite that is the definitive reference.  To my perspective
it offers a reasonable introduction but also goes into the full
details of the Intrinsics.  When I started using it I was already
familiar with Xt and the concepts behind it, so newcomers may or may
not find it useful.  I've always found it accurate and complete, which
means its a 1000 pages.

Asente, Paul J., and Swick, Ralph R., "X Window System Toolkit, The
	Complete Programmer's Guide and Specification", Digital Press,
	1990, ISBN 1-55558-051-3, order number EY-E757E-DP; and by
	Prentice-Hall, ISBN 0-13-972191-6. Also available through DEC
	Direct at 1-800-DIGITAL.

The other book I commonly recomend to novices is:

Young, Doug. "The X Window System: Applications and Programming with
	Xt (Motif Version)," Prentice Hall, 1989 (ISBN 0-13-497074-8).
	(ISBN 0-13-972167-3)

And of course O'Reilly has an entire series of manuals on X and Xt.
O'Reilly ordering is 800-998-9938.  In particular, Volume 5 is an Xt
reference done in manual page style.  The 3rd edition is extensively
overhauled and goes far beyond the MIT manual pages.  I'm finding it
very useful.  In particular, the permutted index and references to
other manual pages help a great deal in chasing down related
information.

I read two periodicals, "The X Resource" and the "The X Journal".
These are the only two dealing specifically with X.  "The X Resource"
is published quarterly, by O'Reilly, with one of the issues being the
MIT X Consortium Technical Conference Proceedings.  There is no
advertising.  I've found it informative with pretty good depth.  For
orders, call 1-800-998-9938, or email cathyr@ora.com.  For editorial
matters, email adrian@ora.com.  Table of contents are posted at
math.utah.edu in ~ftp/pub/tex/bib in TeX form and on ftp.uu.net in
~ftp/published/oreilly/xresource in ASCII form.


"The X Journal" is a bimonthly trade rag with lots of advertising.
The articles are informative and oriented toward a less technical
audience.  I read it more to see what's going on then with an
expectation of learning a great deal (but remember, I represent a
fairly small percentage of people).  Also, they have a pretty good
collection of people on the advisory board and as columnists.  Call
(908) 563-9033.

----------------------------------------------------------------------
14. What Widgets are available?
----------------------------------------------------------------------

There are three popular widget sets:

Athena	- The set provided with X11.  This is sufficient for most
	  purposes but is on the ugly side.  Recently, a 3d look is
	  available for ftp on export.lcs.mit.edu:/contrib/Xaw3d.tar.Z.
Motif	- From OSF available for a license fee and commonly shipped on
	  many workstation vendors platforms (almost everyone but
	  Sun).  It looks good and works well but personally I think
	  it is poorly implemented.
OLIT	- The Open Look Intrinsics Toolkit is a set of widgets
	  implementing Sun's Open Look specification.  Developed by
	  AT&T.  I've never used it so can't comment on its quality.
	  I've heard rumours that it is a pain to actually get.

In addition the following collection of widgets are also available:

Xtra	- a library of widgets for sale from Graphical Software
	  Technology (310-328-9338).  It includes bar graph, stacked
	  bar graph, line graph, pie chart, xy plot, hypertext, help,
	  spreadsheet, and data entry form widgets.  I've never seen
	  them so I can't comment.
FWF	- The Free Widget Foundation is attempting to collect a set of
	  freely available widgets.  Included are a Pixmap editor,
	  FileDialog, and a few others.  The current set of widgets
	  can be obtained via anonymous ftp from the machine
	  a.cs.uiuc.edu (128.174.252.1) in the file pub/fwf.shar.Z.
Xcu	- The Cornell University widgets from Gene Dykes.  One of the
	  early widget sets released.  Provides a nice appearance for
	  buttons and has a mini command language.  Probably not so
	  widely used.
Xs	- The Sony widget set.  This was around during R3 days but
	  seemed to disappear.  It looked like it had promise.
Xw	- The HP widgets.  The precursor to Motif.  Originally written
	  for R3 there exists diffs to get it to work under R4 & R5.
	  Again, a pretty good widget set but has more or less died.
	  The precursor to this was the Xray toolkit which was
	  originally implemented for X10R4 and apparently provided
	  much experience for the designers of Xt.
Xo	- A widget set I'm working on.  It's still primitive but you
	  can give it a try in archive.cis.ohio-state.edu:pub/Xo/*

The following specialized widgets are also available:

Tbl	- Implements a tabular layout of widgets.  Supports Motif
	  widgets as children.  Part of Wcl.
Plots	- The Athena Plotting widgets (not the Athena widgets).
	  Contact gnb@bby.oz.au or joe@Athena.MIT.EDU.

----------------------------------------------------------------------
15. What alternatives to the Intrinsics are there?
----------------------------------------------------------------------

	__________________________________________
	Name		Language	Vendor
	__________________________________________
	Xview		C		Sun
	OI		C++		ParcPlace
	Interviews	C++		Stanford
	Tcl/tk		C		sprite.berkeley.edu
	__________________________________________


However much I like C and admire the skill in both designing and
implementing the Intrinsics, hopefully some alternative will develop
in the next 3-5 years that uses an object oriented language.  Keep
your eyes open and expect some change about the same time a language
other than C _starts_ gaining acceptance.

----------------------------------------------------------------------
16. How do I pass a float value to XtSetValues?
----------------------------------------------------------------------

First, what is going wrong is the structure for an Arg is (essentially)
	typdef struct
	{	
	    String	name;
	    long	value;
	} Arg;

and the code:
	Arg	arg;

	XtSetArg (arg, "name", 3.2)

expands to
	Arg	arg;

	arg.name = "name";
	arg.value = 3.2;

you can see that with normal C type conversions, the arg.value
gets the integer "3" instead of the floating point value "3.2".  When
the value is copied into the widget resource, the bit pattern is
wildly different than that required for a floating point value.  So,
how to get around this?

The following macro is from the Athena widgets document and I am now
recomending it over the previous suggestions.

#define XtSetFloatArg(arg, n, d) \
    if (sizeof(float) > sizeof(XtArgVal)) { \
        XtSetArg(arg, n, &(d)); \
    } else { \
        XtArgVal *ld = (XtArgVal *)&(d); \
        XtSetArg(arg, n, *ld); \
    }


----------------------------------------------------------------------
17. How do I write a resource converter?
----------------------------------------------------------------------

Courtesy of Rich Thomson (rthomson@dsd.es.com):

The following discussion of resource converters assumes R4 (or R5)
Intrinsics.  Resource converters changed between R3 and R4 to allow
for destructors and caching of converted values.

There are several main types of resource converters:

    string to data type
    data type to string
    data type to data type

i) string to data type
    Usually a string to data type converter has a fixed set of strings
    that will be converted to data type values.  This is most often
    used to map enumerated names to enumerated values:

	Name		Value
	"True"		1
	"False"		0

    In this case, the string to data type converter needs to compare
    the resource value to the list of fixed strings.  This is most
    readily accomplished by the use of the "quark" mechanism of the
    resource manager.  The resource value is turned into a quark,
    which is a unique representation of the string that fits into a
    single word.  Then the resource quark is compared against the
    quarks for the fixed strings representing the enumerated values.

    If there are many enumerated strings in the converter (or many
    converters, each with a small number of enumeration strings), then
    a global initialization routine might be used to turn all the
    resource strings into quarks.  That way, the first time one of
    these converters is used, the strings will be turned into quarks
    and held in static variables for use in the next invocation of one
    of the converters.

ii) data type to string
    This type of converter is slightly easier than the string to data
    type converters since the use of quarks isn't necessary.  Instead,
    the data type value is simply converted to a string value,
    probably by the use of sprintf.

    Data type to string converters are useful for applications that
    wish to convert an internal data type value into a string so that
    they can write out a valid resource specification to a file.  This
    mechanism can be used to provide a "snapshot" of application state
    into a file.  This snapshot can be used to restore the program to
    a known state via the usual X resource database mechanisms.

    If you are taking the trouble to write a string to data type
    converter, it isn't much extra effort to write the data type to
    string converter.  Writing both at the same time helps to ensure
    that they are consistent.

iii) data type to data type
    This type of converter is used to convert an existing data type
    value to another data type.  For instance, an X pixel value can be
    converted to an RGB data type that contains separate fields for
    red, green and blue.


The type signature for a resource converter is as follows:

typedef Boolean (*XtTypeConverter)(Display *, XrmValuePtr, Cardinal *,
	XrmValuePtr, XrmValuePtr, XtPointer *);
    Display *dpy;
    XrmValuePtr args;
    Cardinal *num_args;
    XrmValuePtr fromVal;
    XrmValuePtr toVal;
    XtPointer *converter_data;

When the converter is invoked, the "fromVal" argument points to the source
X resource manager value and the "toVal" argument points to the
destination X resource manager value.  The "converter_data" argument
is an opaque pointer to some converter-specific data that is specified
when the converter is registered.  The "args" and "num_args" arguments
allow extra information to be passed to the converter when it is
invoked.  For instance, the Pixel to RGB structure converter discussed
above would need colormap and visual arguments in which to lookup the
Pixel to obtain the RGB values corresponding to that pixel.

Care must be taken with the "toVal" argument.  An XrmValue has the
following type definition and specifies a size and location for a
converted value:

typedef struct {
    unsigned int    size;
    caddr_t         addr;
} XrmValue, *XrmValuePtr;

When the converter is invoked, the address may point to a location of
the given size for the converted value or the location can be NULL.
In the former case, the converter should ensure that the size of the
destination area is large enough to handle the converted value.  If
the destination area is not large enough, then the converter should
set the size to the amount of space needed and return False.  The
caller can then ensure that enough space is allocated and reinvoke the
converter.  If the size is large enough, then the converter can simply
copy the converted value into the space given and return True.

If the location is NULL, then the converter can assign the location to
the address of a static variable containing the converted value and
return True.

When writing a group of converters, this code is often repeated and it
becomes convenient to define a macro:

    #define DONE(var, type) \
      if (toVal->addr) \
	{ \
	  if (toVal->size < sizeof(type)) \
	    { \
	      toVal->size = sizeof(type); \
	      return False; \
	    } \
	  else \
	    *((type *) toVal->addr) = var; \
	} \
      else \
	toVal->addr = (caddr_t) &var; \
      toVal->size = sizeof(type); \
      return True;

    #define DONESTR(str) \
      if (toVal->addr && toVal->size < sizeof(String)) \
	{ \
	  toVal->size = sizeof(String); \
	  return False; \
	} \
      else \
	toVal->addr = (caddr_t) str; \
      toVal->size = sizeof(String); \
      return True;

Inside the converter, it is a good idea to perform a little safety
checking on the "num_args" and "args" arguments to ensure that your
converter is being called properly.

Once you have written your converter, you need to register it with the
Intrinsics.  The Intrinsics invokes resource converters when creating
widgets and fetching their resource values from the resource database.

To register a converter with a single application context, use
XtAppSetTypeConverter:

void XtAppSetTypeConverter(context, from, to, converter, args, num_args,
	cache, destructor)
    XtAppContext context;
    String from;
    String to;
    XtTypeConverter converter;
    XtConvertArgList args;
    Cardinal num_args;
    XtCacheType cache;
    XtDestructor destructor;

To register a converter with all application contexts, use
XtSetTypeConverter:

void XtSetTypeConverter(from, to, converter, args, num_args,
	cache, destructor)
    String from;
    String to;
    XtTypeConverter converter;
    XtConvertArgList args;
    Cardinal num_args;
    XtCacheType cache;
    XtDestructor destructor;

In the R3 Intrinsics, there were the routines XtAppAddConverter and
XtAddConverter; these have been superseded by XtAppSetTypeConverter
and XtSetTypeConverter.  Whenever possible, the newer routines should be
used.

When a converter is registered with the Intrinsics, a "cache" argument
specifies how converted resource values are to be cached:

    XtCacheNone		Don't cache any converted values
    XtCacheAll		Cache all converted values
    XtCacheByDisplay	Cache converted values on a per display basis

Caching converted values that require a round-trip to the server is a
good idea (for instance string to Pixel conversions).

The "destructor" argument is a routine that is invoked then the
resource is destroyed, either because its cached reference count has
been decremented to zero or because the widget owning the value is
being destroyed.  XtDestructor has the following type definition:

typedef void (*XtDestructor)(XtAppContext, XrmValuePtr, XtPointer,
	XrmValuePtr, Cardinal *);
    XtAppContext context;
    XrmValuePtr to;
    XtPointer converter_data;
    XrmValuePtr args;
    Cardinal *num_args;

The destructor is invoked to free any auxiliary storage associated
with the "to" argument, but does not actually free the storage pointed
to by the "to" argument itself (to->addr).  The destructor is passed
the extra arguments that were passed to the converter when the
conversion was performed (for instance, colormap and visual arguments
for the string to Pixel converter since the destructor would need to
free the allocated Pixel from the colormap) as well as the private
data passed in when the converter was registered.

Sample converter code can be found in the following files in the MIT
R5 distribution:

    mit/lib/Xt/Converters.c
    contrib/lib/PEXt/Converters.c
    contrib/lib/PEXt/Converters.h

----------------------------------------------------------------------
18. How do I open multiple displays?
----------------------------------------------------------------------

See "Multi-user Application Software Using Xt", The X Resource, Issue 3,
(Summer 1992) by Oliver Jones for a complete coverage of the issues
involved.  Most of this answer is based on that article.  In a
nutshell, one uses XtOpenDisplay() to add each display to a _single_
application context and then XtCloseDisplay() to shutdown each display
and remove it from the application context.

The real problems occur when trying to close down a display.  This can
happen 3 ways:
	1. User selects a "quit" button on one of the displays,
	2. User has window manager send a WM_DELETE_WINDOW message,
	3. Server disconnect -- possibly from a KillClient message,
	   server shutdown/crash, or network failure.

I'll assume you can deal gracefully with 1 & 2 since it is _merely_ a
problem of translating a Widget to a display and removing that
display.  If not, then read the Oliver Jones article.

The third one is difficult to handle.  The following is based on the
Oliver Jones article and I include it here because it is a difficult
problem.

The difficulty arises because the Xlib design presumed that an I/O
error is always unrecoverable and so fatal.  This is essentially true
for a single display X based application, but not true for a
multiple display program or an application that does things other than
display information on an X server.  When an X I/O error occurs the
I/O error handler is called and _if_ it returns then an exit()
happens.  The only way around this is to use setjmp/longjmp to avoid
returning to the I/O error handler.  The following code fragment
demonstrates this:

#include <setjmp.h>
jmp_buf XIOrecover;

void
XIOHandler (dpy)
	Display		*dpy;
{
	destroyDisplay (dpy);
	longjmp (XIOrecover, 1);
}

main ()
{
	...
	if (setjmp (XIOrecover) == 0)
		XSetIOErrorHandler (XIOHandler);
	XtAppMainLoop (app_context);
}

The destroyDisplay() is something that given a Display pointer can go
back to the application specific data and perform any necessary
cleanup.  It should also call XtCloseDisplay().

For those of you unfamiliar with setjmp/longjmp, when setjmp() is
first called it returns a 0 and save's enough information in the
jmp_buf that a latter execution of longjmp() can return the program to
the same state as if the setjmp() was just executed.  The return value
of this second setjmp() is the value of the second argument to
longjmp().  There are several caveats about using these but for this
purpose it is adequate.

Some other problems you might run into are resource converters that
improperly cache resources.  The most likely symptoms are Xlib errors
such as BadColor, BadAtom, or BadFont.  There may be problems with the
total number of displays you can open since typically only a limited
number of file descriptors are available with 32 being a typical
value.  You may also run into authorization problems when trying to
connect to a display.

There was much discussion in comp.windows.x about this topic in
November of 91.  Robert Scheifler posted an article which basically
said this is the way it will be and Xlib will not change.

----------------------------------------------------------------------
19. What changed from R3 to R4 to R5?
----------------------------------------------------------------------

This addresses only changes in the Intrinsics.  First, the general
changes for each release are described.  Then a, certainly incomplete,
list of new functions added and others that are now deprecated are
listed.  Brevity is a primary goal.

Much of the following information is retrieved from Chapter 13 of the MIT
Xt Intrinsics Manual and from O'Reilly Volume 5, 3rd edition.

From R3 to R4
- Addition of gadgets (windowless widgets)
- New resource type converter interface to handle cacheing and
  additional  data.
- Variable argument list interface.
- #define XtSpecificationRelease 4  (added with this release)
- WMShellPart, TopLevelShellPart & TransientShellPart changed
  incompatibly.
- core.initialize, core.set_values added ArgList and count parameters
- event handlers had continue_to_dispatch parameter added
- core.set_values_almost specification changed.
- core.compress_exposure changed to an enumerated data type from Boolean
- core.class_inited changed to enumerated data type from Boolean
- constraint.get_values_hook added to extension record
- core.initialize_hook obsolete as info is passed to core.initialize
- shell.root_geometry_manager added to extension record
- core.set_values_hook obsolete as info is passed to core.set_values
- Calling XtQueryGeometry() must store complete geometry.
- Added UnrealizeCallback.
- XtTranslateCoords() actually works under R4.

From R4 to R5:
- Psuedo resource baseTranslation added.
- Searching for app-default, and other files, made more flexible
- customization resource added.
- Per-screen resource database.
- Support permanently allocated strings.
- Permanetly allocated strings required for several class fields.
- The args argument to XtAppInitialize, XtVaAppInitialize,
  XtOpenDisplay, XtDisplayInitialize, and XtInitialize were changed
  from Cardinal* to int*
- Many performance improvements (this is summarized from the article
  "Xt Performance Improvements in Release 5" by Gabe Beged-Dov in "The
  X Resource", Issue 3):
	- XrmStringToQuark() augmented with XrmPermStringToQuark() to
	  avoid string copies.  Several fields in the class record are
	  indicated as needing permanent strings.
	- Using an array of Strings for resources
	- Callback lists redesigned to use less memory
	- Translation manager redesigned and rewritten so it takes
	  less memory, translation tables merges are faster, cache of
	  action bindings
	- Keycode to Keysyms are cached.
	- Better sharing of GC's with modifiable fields
	- Window to Widget translation uses less space and faster
	- Does not malloc space for widget name since quark is available
	- Widget space is allocated to include the constraints
	- Over several example programs, about a 26% reduction in
	  memory usage.

Functions new with R5:
----------------------
XtAllocateGC()		- sharable GC with modifiable fields  
XtGetActionList()	- get the action table of a class
XtScreenDatabase()	- return resource database for a screen
XtSetLanguageProc()	- register language procedure called to set locale


Functions new with R4:
----------------------
XtAppAddActionHook()	- procedure to call before _every_ action.
XtAppInitialize()	- lots of initialization work.
XtAppReleaseCacheRefs()	- decrement cache reference count for converter
XtAppSetFallbackResources() - specify default resources
XtAppSetTypeConverter()	- register a new style converter
XtCallCallbackList()	- directly execute a callback list
XtCallConverter	()	- invoke a new style converter
XtCallbackReleaseCacheRef() - release a cached resource value
XtCallbackReleaseCacheRefList() - release a list of cached resource values
XtConvertAndStore()	- find and call a resource converter
XtDirectConvert()	- Invoke old-style converter
XtDisplayOfObject()	- Return the display
XtDisplayStringConversionWarning() - issue a warning about conversion
XtFindFile()		- Find a file
XtGetActionKeysym()	- Retrieve keysym & modifies for this action
XtGetApplicationNameAndClass() - return name and class
XtGetConstraintResourceList() - get constraints for a widget
XtGetKeysymTable()	- return keycode-to-keysym mapping table
XtGetMultiClickTime()	- read the multi-click time
XtGetSelectionRequest()	- retrieve the SelectionRequest event
XtGetSelectionValueIncremental() - obtain the selection value incrementally
XtGetSelectionValuesIncremental() - obtain the selection value incrementally
XtInitializeWidgetClass() - initialize a widget class manually
XtInsertEventHanlder()	- register event handler before/after others
XtInsertRawEventHandler() - register event handler without modify input mask
XtIsObject()		- test if subclass of Object
XtIsRectObj()		- test if subclass of RectObj
XtKeysymToKeyCodeList()	- return list of keycodes
XtLastTimestampProcessed() - retrieve most recent event time
XtMenuPopdown		- Action for popping down a widget
XtMenuPopup		- Action for popping up a widget
XtOffsetOf		- macro for structure offsets
XtOwnSelectionIncremental() - make selection data availabe incrementally
XtPoupSpringLoaded()	- map a spring-loaded popup
XtRegisterGrabAction()	- indicate action procedure needs a passive grab
XtRemoveActiohHook()	- remove function called after every action
XtResolvePathname()	- find a file
XtScreenOfObject()	- return screen of object.
XtSetMultiClickTime()	- set the multi-click time
XtSetWMColormapWindows() - set WM_COLORMAP_WINDOWS for custom colormaps
XtUngrabButton()	- cancel a passive button grab
XtUngrabKey()		- cancel a passive key grab
XtUngrabKeybard()	- release an active keyboard grab
XtUngrabPointer()	- release an active pointer grab
XtVa*()			- varags interfaces to a bunch of functions
XtWindowOfObject()	- return Window of nearest widget ancestor


Deprecated		Replacement			When
----------------------------------------------------------------------
XtAddActions()		XtAppAddActions()		R3
XtAddConverter()	XtAppAddConverter()		R3
XtAddInput()		XtAppAddInput ()		R3
XtAddTimeout()		XtAppAddTimeout()		R3
XtAddWorkProc()		XtAppAddWorkProc()		R3
XtConvert()		XtConvertAndStore()		R4
XtCreateApplicationShell XtAppCreateShell()		R3
XtDestroyGC()		XtReleaseGC()			R3
XtError()		XtAppError()			R3
XtGetErrorDatabase()	XtAppGetErrorDatabase		R3
XtGetErrorDatabaseText() XtAppGetErrorDatabaseText	R3
XtGetSelectionTimeout()	XtAppGetSelectionTimeout	R3
XtInitialize()		XtAppInitialize()		R3
XtMainLoop()		XtAppMainLoop()			R3
MenuPopdown(action)	XtMenuPopdown(action)		R4
MenuPopup(action)	XtMenuPopup(action)		R4
XtNextEvent()		XtAppNextEvent()		R3
XtPeekEvent()		XtAppPeekEvent()		R3
XtPending()		XtAppPending()			R3
XtSetErrorHandler()	XtAppSetErrorHandler()		R3
XtSetErrorMsgHandler	XtAppSetErrorMsgHandler()	R3
XtSetSelectionTimeout()	XtAppSetSelectionTimeout()	R3
XtSetWarningHandler()	XtAppSetWarningHandler()	R3
XtSetWarningMsgHandler() XtAppSetWarningMsgHandler()	R3
XtWarning()		XtAppWarning()			R3
XtWarningMsg()		XtAppWarningMsg()		R3

----------------------------------------------------------------------
20. Where are the resources loaded from?
----------------------------------------------------------------------

The resources of a widget are filled in from the following places
(from highest priority to lowest priority):

	1. Args passed at creation time.
	2. Command line arguments.
	3. User's per host defaults file
	4. User's defaults file.
	5. User's per application default file.
	6. System wide per application default file.

Note that 2-6 are read only once on application startup.  The result
of steps 3-6 is a single resource database used for further queries.

The per host defaults file contains customizations for all
applications executing on a specific computer.  This file is either
specified with the XENVIRONMENT environment variable or if that is not
set then the file $HOME/.Xdefaults-<host> is used.

The user defaults file is either obtained from the RESOURCE_MANAGER
property on the root window of the display or if that is not set then
the file $HOME/.Xdefaults is used.  Typically, the program "xrdb" is
used to set the RESOURCE_MANAGER property.  Please note that this
should be kept relatively small as each client that connects to the
display must transfer the property.  A size of around 1-3KByte is
reasonable.  Some toolkits may track changes to the RESOURCE_MANAGER
but most do not.

A user may have many per application default files containing
customizations specific to each application.  The intrinsics are quite
flexible on how this file is found.  Read the next part that describes
the various environment variables and how they effect where this file
is found.

The system wide per application default files are typically found in
/usr/lib/X11/app-defaults.  If such a file is not found then the
fallback resources are used.  The intrinsics are quite flexible on how
this file is found.  Read the next part that describes the various
environment variables and how they effect where this file is found.

[Thanks to Oliver Jones (oj@pictel.com) for the following, 6/92]

You can use several environment variables to control how resources are
loaded for your Xt-based programs -- XFILESEARCHPATH,
XUSERFILESEARCHPATH, and XAPPLRESDIR.  These environment variables
control where Xt looks for application-defaults files as an
application is initializing.  Xt loads at most one app-defaults file
from the path defined in XFILESEARCHPATH and another from the path
defined in XUSERFILESEARCHPATH.

Set XFILESEARCHPATH if software is installed on your system in such a
way that app-defaults files appear in several different directory
hierarchies.  Suppose, for example, that you are running Sun's Open
Windows, and you also have some R4 X applications installed in
/usr/lib/X11/app-defaults. You could set a value like this for
XFILESEARCHPATH, and it would cause Xt to look up app-defaults files
in both /usr/lib/X11 and /usr/openwin/lib (or wherever your
OPENWINHOME is located):

	setenv XFILESEARCHPATH /usr/lib/X11/%T/%N:$OPENWINHOME/lib/%T/%N

The value of this environment variable is a colon-separated list of
pathnames.  The pathnames contain replacement characters as follows
(see XtResolvePathname()):

	%N	The value of the filename parameter, or the
		application's class name.
	%T	The value of the file "type".  In this case, the
		literal string "app-defaults"
	%C	customization resource (R5 only)
	%S	Suffix.  None for app-defaults.
	%L	Language, locale, and codeset (e.g. "ja_JP.EUC")
	%l	Language part of %L  (e.g. "ja")
	%t	The territory part of the display's language string
	%c	The codeset part of the display's language string

Let's take apart the example.  Suppose the application's class name is
"Myterm". Also, suppose Open Windows is installed in /usr/openwin.
(Notice the example omits locale-specific lookup.)

	/usr/lib/X11/%T/%N        means /usr/lib/X11/app-defaults/Myterm
	$OPENWINHOME/lib/%T/%N    means /usr/openwin/lib/app-defaults/Myterm

As the application initializes, Xt tries to open both of the above
app-defaults files, in the order shown.  As soon as it finds one, it
reads it and uses it, and stops looking for others.  The effect of
this path is to search first in /usr/lib/X11, then in /usr/openwin.

Let's consider another example. This time, let's set
XUSERFILESEARCHPATH so it looks for the file Myterm.ad in the current
working directory, then for Myterm in the directory ~/app-defaults.

	setenv XUSERFILESEARCHPATH ./%N.ad:$HOME/app-defaults/%N

The first path in the list expands to ./Myterm.ad.  The second expands
to $HOME/app-defaults/Myterm.  This is a convenient setting for
debugging because it follows the Imake convention of naming the
app-defaults file Myterm.ad in the application's source directory, so
you can run the application from the directory in which you are
working and still have the resources loaded properly.

NOTE: when looking for app-default files with XUSERFILESEARCHPATH,
      for some  bizarre reason, neither the type nor file suffix is
      defined so %T and %S are useless.

With R5, there's another twist.  You may specify a customization
resource value.  For example, you might run the "myterm" application
like this:

	myterm -xrm "*customization: -color"

If one of your pathname specifications had the value
"/usr/lib/X11/app-defaults/%N%C" then the expanded pathname would be
"/usr/lib/X11/app-defaults/Myterm-color" because the %C substitution
character takes on the value of the customization resource.

The default XFILESEARCHPATH, compiled into Xt, is:

		/usr/lib/X11/%L/%T/%N%C:\  (R5)
		/usr/lib/X11/%l/%T/%N%C:\  (R5)
		/usr/lib/X11/%T/%N%C:\     (R5)
		/usr/lib/X11/%L/%T/%N:\
		/usr/lib/X11/%l/%T/%N:\
		/usr/lib/X11/%T/%N

(Note: some sites replace /usr/lib/X11 with a ProjectRoot in this
batch of default settings.)

The default XUSERFILESEARCHPATH, also compiled into Xt, is 

		<root>/%L/%N%C:\  (R5)
		<root>/%l/%N%C:\  (R5)
		<root>/%N%C:\     (R5)
		<root>/%L/%N:\
		<root>/%l/%N:\
		<root>/%N:

<root> is either the value of XAPPLRESDIR or the user's home directory
if XAPPLRESDIR is not set.  If you set XUSERFILESEARCHPATH to some
value other than the default, Xt ignores XAPPLRESDIR altogether.

Notice that the quick and dirty way of making your application find
your app-defaults file in your current working directory is to set
XAPPLRESDIR to ".", a single dot.  In R3, all this machinery worked
differently; for R3 compatibilty, many people set their XAPPLRESDIR
value to "./", a dot followed by a slash.


----------------------------------------------------------------------
21. What order are callbacks executed in?
----------------------------------------------------------------------
(Courtesy of Donna Converse, converse@expo.lcs.mit.edu; 5/10/92)

The Intrinsics library do not guarantee an order.  This is because
both the widget writer and the application writer have the ability to
modify the entire contents of the callback list.  Neither one
currently knows what the other is doing and so the Intrinsics cannot
guarantee the order of execution.

The application programmer cannot rely on the widget writer; the
widget writer is not required to document when the widget will add and
remove callbacks from the list or what effect this will have;
therefore the functionality contained in a callback should be
independent of the functionality contained in other callbacks on the
list.

Even though the Xt standard in the definition of XtAddCallback
says:

 	"callback_name: Specifies the callback list to which the
 	procedure is to be appended."
 
you may not infer from the word "appended" that the callback routines
are called in the same order as they have been added to the callback
list.

----------------------------------------------------------------------
22. How do I know if a widget is visible?
----------------------------------------------------------------------
(Courtesy of Donna Converse, converse@expo.lcs.mit.edu; 5/14/92)

> I am building a widget needs to know if it is visible. I set the visible
> interest field in Core and if my window is completely obscured, the Core
> visible flag goes FALSE. However, if my window is iconified, the flag
> stays set to TRUE.

Right, everything is implemented correctly.  This demonstrates a "deficiency"
in the X protocol, and the Core widget is reflecting the capabilities of the
protocol.  (The "deficiency" is that the information is available in one way,
in this case an inconvenient way.)  The Xt specification is accurate, in
the second and third paragraphs of section 7.10.2, so read this section
carefully.  The visible field will not change in response to iconification.

A VisibilityNotify event will not be received when the window goes from
viewable to unviewable, that is, when the widget or an ancestor is unmapped;
that is, when iconification occurs.  This is the protocol deficiency.
Visibility state and viewable state have specific meanings in the X protocol;
see the glossary in your Xlib and X protocol reference manual.

> Is this a problem with "mwm" or is there something
> else which needs to be done?

You'll see this with any window manager, with no window manager.

> If the problem is "mwm", what is the fastest
> way to determine if a window is iconified? 

As an application writer, keep track with a global Boolean in an action
routine with translations for MapNotify and UnmapNotify on the Shell widget
which contains your custom widget.  As the custom widget writer, see the
map_state field returned by a call to XGetWindowAttributes.  These are
suggestions.

----------------------------------------------------------------------
23. How do I reparent a widget in Xt, i.e. XtReparentWidget()?
----------------------------------------------------------------------

You can't.

----------------------------------------------------------------------
24. Why use XtMalloc, XtFree, etc?
----------------------------------------------------------------------

Unfortunately, most code that calls malloc(), realloc() or calloc()
tends to ignore the possibility of returning NULL.  At best it is
handled something like:

	ptr = (type *) malloc (sizeof (type))
	if (!ptr)
	{
		perror ("malloc in xyzzy()");
		exit (1)
	}
To handle this common case the Intrinsics define the functions
XtMalloc(), XtCalloc(), XtNew(), XtNewString() and XtRealloc() which
all use the standard C language functions malloc(), calloc() and
realloc() but execute XtErrorMsg() if a NULL value is returned.  Xt
error handlers are not supposed to return so this effectively exits.

In addition, if XtRealloc() is called with a NULL pointer, it uses
XtMalloc() to get the initial space.  This allows code like:

	if (!ptr)
		ptr = (type *) malloc (sizeof (type));
	else
		ptr = (type *) realloc (ptr, sizeof (type) * (count + 1));
	++count;

to be written as:

	ptr = XtRealloc (ptr, sizeof (ptr) * ++count);

Also, XtFree() accepts a NULL pointer as an argument.  Generally, I've
found the Xt functions conveniant to use.  However, anytime I'm
allocating anything potentially large I use the standard functions so
I can fully recover from not enough memory errors.

XtNew() and XtNewString() are conveniant macros for allocating a
structure or copying a string:

	  struct abc *xyzzy;
	  char	     *ptr;
	  char	     *str = "abcdef";

	  xyzzy = XtNew (struct abc);	/* takes care of type casting */
	  ptr = XtNewString (str);

A strict interpretation of the Intrinsics reference manual allow an
implementation to provide functions that are not exchangable with
malloc() and free().  I.e. code such as:

	 char	      *ptr;

	 ptr = XtMalloc (100);
	 /* ... */
	 free (ptr);

may not work.  Personally, I'd call any implementation that did this
broken and complain to the vendor.

A common error for Motif programmers is to use XtFree() on a string
when they should really be using XmStringFree().

----------------------------------------------------------------------
25. How to debug an Xt application?
----------------------------------------------------------------------
First, I'd recomend getting "purify" from Pure Software.  This is a
great package for tracing memory problems on Sun's.  It's a bit pricey
at $2750 but I'd still recomend it.  Excuse the marketing blurb
(contact support@pure.com for more info).

	Purify inserts additional checking instructions directly into
	the object code produced by existing compilers.  These
	instructions check every memory read and write performed by
	the program under test and detect several types of access
	errors, such as reading unitialized memory, writing past
	malloc'd bounds, or writing to freed memory.  Purify inserts
	checking logic into all of the code in a program, including
	third party and vendor object-code libraries, and verifies
	system call interfaces.  In addition, Purify tracks memory
	usage and identifies individual memory leaks using a novel
	adaption of garbage collection techniques.  Purify's nearly
	comprehensive memory access checking slows the target program
	down typically by a factor of two to five.

An alternative package that isn't as pricey ($395 for a Sun), runs on
many Unix's and has pretty similar features is "The SENTINEL Debugging
Environment".  This replaces malloc() and several other C library
functions to add additional checks.  (contact cpcahil@virtech.vti.com
for more info)

Next, if you are getting any sort of Xlib error, you'll need to run in
synchronous mode, easily accomplished with the "-sync" command line
argument or by setting the variable Xdebug to 1 with your debugger.  Then
set a break point in exit().  This will let you trace back to the
original Xlib function being called.  If you don't run in synchronous
mode, then the actual error may have occured any number of calls to
Xlib previously since the Xlib calls are buffered and replies from the
server are asynchronous.

Next, if you are having trouble with window layout, you can use the
undocumented resource "xtIdentifyWindows" or the class resource
"XtDebug" to cause the widget name to be identified with each window.
For example:

    example% xload -xrm '*XtDebug:true' &
    example% xwininfo -tree
	     <click in new xload window>

will give the normal information but the widget name and class of each
window is included.  This can help for checking the location and size
of errant widgets.

Next, if you are having trouble with geometry managers or you want to
test the way a widget manages it's children, you can try
export.lcs.mit.edu:contrib/libXtGeo.tar.Z.  This acts as a filter
between any children and a geometry manager and checks the behaviour
of both.  It's a very clever idea.

The most unfortunate problem is debugging a callback while the
application is executing a grab of the keyboard or mouse (such as from
a pulldown menu).  The server effectively locks up and you'll need to
go to another machine and kill the debugger manually.  The server
locks up because the application being debugged has said no one else
can have access to the keyboard but the application is not stopped
waiting because the debugger is waiting for your commands.
Unfortunately you can't give them because all the input is going to
your application which is stopped.

The best way to debug this kind of problem is with two machines on
your desk, running the program under a debugger (or other environment)
on one machine, and running the application on the other, possibly
using a command sequence like this:

	othermachine% xhost +thismachine
	thismachine% setenv DISPLAY othermachine:0;
	thismachine% gdb application	# Your favorite debugger.
	or this:
	othermachine% xhost +thismachine
	thismachine% gdb application
	(gdb) set environment DISPLAY othermachine:0
	(gdb) run ...

I believe CodeCenter, a C interpreter/graphical debugger has a method
of dealing with this by explicitely calling the Xlib functions to
release any grabs during breakpoints.

Debugging widget problems requires pretty good debugging skills and
knowledge of how widgets work.  You can go a long way without knowing
the internals of a particular widget but not very far without
understanding how a widget works.  Judicious use of conditional
breakpoints and adding print statements with the debugger help a great
deal.

----------------------------------------------------------------------
26. Why don't XtAddInput(), XtAddTimeout() and XtAddWorkProc() work?
----------------------------------------------------------------------
   I have got a delicate problem with the three routines XtAddInput,
   XtAddTimeOut and XtAddWorkProc. The problem I have is that when
   I use them in my application they seem not to be registred properly.
   I have made a handy little testprogram where everything works
   perfect, but in my "real" application nothing happens. 

The introduction in R3 of the XtApp*() functions obsoleted those
routines (see Q19 for other changes in R3, R4, and R5).  What happens is
they use a default application context different then the one you may
have created.  Since events and timeouts are distributed on a per
application context basis and you are using two application contexts,
you won't get those events.

For example:

	...
	cnt = 0;
	toplevel = XtAppInitialize(&app, class,
				   Desc, XtNumber (Desc),
				   &argc, argv,
				   Fallback, args, cnt);

	XtAddTimeOut (...)
	XtAddWorkProc (...)

	XtAppMainLoop (app)

would never invoke the timeout.

----------------------------------------------------------------------
27. What is and how can I implement drag and drop?
----------------------------------------------------------------------
(Courtesy of Roger Reynolds, rogerr@netcom.com; 19 Feb 93)

Drag-n-drop is a buzzword for moving data between clients, in an
``intuitive'' fashion.

Motif Version 1.2 supports drag-n-drop capabilities, OpenLook has
supported d-n-d all along.  The two protocols are not compatable with
each other, and so far as I know, they are not published.

I wrote a package called RDD which is designed to be a flexible public
protocol for doing drag 'n drop operations between clients.  My
intention was to provide a tool which would make it easy for people to
support a "standard" drag-n-drop protocol in the programs they develop
and contribute or sell, regardless of what widget set is used (as long
as it is based on Xt).

The implementation is based upon my understanding of the ICCCM
conventions, for more details read the code.

I have heard from dozens of people using RDD who like it and feel that
it works a whole lot better than Motif 1.2 stuff.  Also, there seem to
be many who think that it is neat but are constrained to use Motif
anyway.

The latest RDD (and some other stuff) is available for ftp from
netcom.com, in /pub/rogerr.  A (possibly older) version is also
available on export.lcs.mit.edu in /contrib.
-- 
Pete Ware					ware@cis.ohio-state.edu
CIS Dept, Ohio State University			w/ (614) 292-7318
228 Bolz Hall, 2036 Neil Ave.			h/ (614) 538-0965
Columbus, OH 43210

Newsgroup: comp.windows.x
document_id: 66398
From: stevevr@tt718.ecs.comm.mot.com (Steve Vranyes)
Subject: Re: TeleUse, UIM/X, and C++

In article <1993Apr1.213842.6086@ctp.com>, hubec@ctp.com (Hubert Chou) writes:
|> Does anyone have any good ideas on how to integrate C++ code elegantly
|> with TeleUse, UIM/X / Interface Architect generated code?
|> 
|> Source would be great, but any suggestions are welcome.
|> 
|> 
|> Hubie Chou
|> (617) 374-8454
|> hubec@ctp.com
|> 

I don't know a great deal about the support for C++ in UIM/X, but I can tell 
you that there is good support for it in TeleUSE.  In TeleUSE you can call any
C++ method from a "D" module.  What you can do then is to use the "D" language
for most of your interface code and then use C++ for you application code.

I should tell you that there is some real neat stuff coming out of TeleUSE soon
in regard to C++, but I can't give you many details.  You should talk to your local sales rep and get the lowdown on what they will be doing in the near furture.

If you want example code of how C++ integrates with TeleUSE you should look at
$TeleUSE/examples/Thermometer

-- 
+------------------------------------------------------------------------------+
|Steve Vranyes                                                                 |
|Voice    : (708) 576 - 0338                                                   |
|E-mail   : stevevr@ecs.comm.mot.com                                           |
|U.S.Post : Motorola Inc.                                                      |
|           1301 E. Algonquin Rd.                                              |
|           Schaumburg, IL 60196                                               |
+------------------------------------------------------------------------------+

Newsgroup: comp.windows.x
document_id: 66399
From: jan@camhpp12.mdcbbs.com (Jan Vandenbrande)
Subject: xv -root with vue? (was Re: xloadimage -onroot ...)

On a related note, how can I use xv to display colored GIFs on my
root display with HP Vue?

All I can do with Vue is display xbm's through their
Backdrop Style Manager.

xv does not seem to be able to override whatever Vue
puts there.

Thanks, Jan

-- 
Jan Vandenbrande
jan@ug.eds.com			(New address)
jan@lipari.usc.edu		(school address, forwards)
UUCP: {uunet, uupsi}!ug!jan

Newsgroup: comp.windows.x
document_id: 66400
From: zack@netcom.com (Zack T. Smith)
Subject: Strange exposure problem

Hi, 

I'm trying to write a Motif program on an Interactive Unix machine, and I'm
observing very strange behavior when my program attempts to expose a
DrawingArea. Namely, some Xlib operations work, and some do not. In
particular, the expose consist of two XFillRectangle calls followed by some
XDrawPoint calls, and for reasons unknown to me the point calls are failing
whenever a pulldown or popup up menu is (clicked on and) moved in the
rightward direction over the drawing area, but after the move, is still on
some part of the drawing area. This also happens less consistently when the
pulldown/popup is moved in the leftward direction.

Assuming that my code is not doing anything incredibly odd, is this a server
bug?

Thanks,

Zack T. Smith


Newsgroup: comp.windows.x
document_id: 66401
From: ai900@yfn.ysu.edu (Joshua P. Weage)
Subject: X for PC


I have heard of two packages for the PC that support X-Win.
The first is Linux which is a free Unix Package.  The Second
is X-Appeal, which sounds pretty good.  It can be found at
 garbo.uwusa.fi in the ~ftp/pc/demo/ dir.  The files are

	xap13exe.zip
	xap10fon.zip
	drivers.zip

This should get you started.

Josh.
-- 
+  Joshua Weage : U.S. Snail - 277 Spring Rd, Baroda, MI  49101 +
+  E-Mail: cs890@freenet-in-a.cwru.edu |  ai900@yfn.ysu.edu     +
+   Fidonet:  Joshua Weage @ 1:2340/130                         +
+  All ideas are my own and no one elses!!                      +

Newsgroup: comp.windows.x
document_id: 66402
From: andy@ice.stx.com (Andy Moore)
Subject: Q: How to avoid XOpenDisplay hang?

I'm writing 'xwall', a simple X version of 'wall', and I want it to
put a message up on each of a default list of displays.  The problem
is that XOpenDisplay hangs if one of the displays is currently
controlled by xdm (login screen).   I've been through the manuals
and FAQ and don't see a simple way to see if a display is 'openable'
ahead of time, or to get XOpenDisplay to fail after a short period
of time.  Any hints, suggestions, clues, or pointers to info?  Thanks...

-- 
Andy Moore (andy@ice.stx.com)
_______________________________________________________________________________
"You could say I've lost faith in the politicians/
 They all seem like game show hosts to me..."          - Sting

Newsgroup: comp.windows.x
document_id: 66403
From: ewang@ucsee.Berkeley.EDU (Edward Wang)
Subject: Widget source code needed

I'm considering writing my own widgets, but I like to have some sample
widget source code to look over first.  Where could I find something
like this?  Are there any archives accessible by anonymous ftp that contain 
such information?

							Thanks,
							Edward




Newsgroup: comp.windows.x
document_id: 66404
From: ahlenius@rtsg.mot.com (Mark Ahlenius)
Subject: converting color gif to X pixmap

I have looked through the FAQ sections and have not
seen a answer for this.

I have an X/Motif application that I have written.
I have a couple of gif files (or pict) that I have
scanned in with a color scanner.  Now I would like
to be able to convert the gif files into a format
that could be read into my application and displayed
on the background of its main window. Preferably with
pixmaps, or perhaps as an XImage.

I have found functions in the pbmplus program suite
to convert gif to xbm, but that is monochrome, and
I really do need color.

I have looked at xv, which reads in gif, and writes
out several formats, but have not found a way to write
out a file which can be read in as a pixmap.

Is there an easy way to do this?

email responses preferred.

thanks!

'mark

ahlenius@rtsg.mot.com

-- 
===============	regards   'mark  =============================================
Mark Ahlenius 		  voice:(708)-632-5346  email: ahlenius@marble.rtsg.mot.com
Motorola Inc.		  fax:  (708)-632-2413
Arlington, Hts. IL, USA	 60004

Newsgroup: comp.windows.x
document_id: 66406
From: jck@catt.citri.edu.au (Justin Kibell)
Subject: Re: Honors Degrees: Do they mean anything?

What has this got to do with comp.windows.x?

     _,_
    (o o)
-oo0-\_/-0oo--------------------------------------------------------------
Justin Kibell - Systems Programmer - XMelba Project Team - C.A.T.T.
Collaborative Information Technology Research Institute - Melbourne - Vic.
Internet: jck@jaguar.catt.citri.edu.au   Phone: +61 03 282 2456  Australia


Newsgroup: comp.windows.x
document_id: 66407
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Help building X11R5 with gcc

Can people please send me any hints on building X11R5 with gcc 2.3.3 ?  Is
there any pitfalls to be avoided ?  Any hints ?  I would appreciate hearing other
peoples' stories on this.

--tim


-- 
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
document_id: 66408
From: chongo@toad.com (Landon C. Noll)
Subject: Reposting: 10th International Obfuscated C Code Contest rules (1 of 2)

We have received a number of requests for a reposting of the
International Obfuscated C Code Contest rules and guidelines.  Also
some people requested that these rules be posted to a wider set of
groups.  Sorry for the cross posting.

Some technical clarifications were made to the rules and guidelines
(See the diff marks at the right hand edge).  The rules and guidelines
for this year remain the same, so people who have already or are
in the process of submitting entries for the 1993 IOCCC need not worry 
about these changes.

chongo <Landon Curt Noll> /\cc/\        chongo@toad.com
Larry Bassel                            lab@sun.com

=-=

#!/bin/sh
# This is a shell archive (shar 3.32)
# made 04/05/1993 23:00 UTC by chongo@toad.com
# Source directory /tmp
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   8971 -r--r--r-- rules
#  25592 -r--r--r-- guidelines
#  34482 -r--r--r-- mkentry.c
#   6418 -r--r--r-- obfuscate.info
#
# ============= rules ==============
echo "x - extracting rules (Text)"
sed 's/^X//' << 'SHAR_EOF' > rules &&
X10th International Obfuscated C Code Contest Rules
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X		b.  To darken.  2. To confuse:  his emotions obfuscated his
X		judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X		Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X		obfuscatory adj.
X
X
XGOALS OF THE CONTEST:
X
X    * To write the most Obscure/Obfuscated C program under the rules below.
X    * To show the importance of programming style, in an ironic way.
X    * To stress C compilers with unusual code.
X    * To illustrate some of the subtleties of the C language.
X    * To provide a safe forum for poor C code.  :-)
X
X
XNOTE: Changes from the 1993 draft are noted by change bars.  --->	      |
X
X
XRULES:
X
X    To help us with the volume of entries, we ask that you follow these rules:
X
X    1) Your entry must be a complete program.
X
X    2) Your entry must be <= 3217 bytes in length.  The number of characters
X       excluding whitespace (tab, space, newline), and excluding any ; { or }
X       followed by either whitespace or end of file, must be <= 1536.
X
X    3) Your entry must be submitted in the following format:
X
X---entry---
Xrule:	1993
Xfix:	y or n   (n => this is a new entry, y => this replaces an older entry)
Xtitle:	title of entry  		    (see comments below)
Xentry:	Entry number from 0 to 7 inclusive  (your 1st entry should by 0)
Xdate:	Date/time of submission in UTC	    (see comments below)
Xhost:	Machine(s) and OS(s) under which your entry was tested
X	Use tab indented lines if needed
X---remark---
X    Place remarks about this entry in this section.  It would be helpful if
X    you were to indent your remarks with 4 spaces, though it is not a
X    requirement.  Also, if possible, try to avoid going beyond the 79th
X    column.  Blank lines are permitted.
X---author---
Xname:	your name
Xorg:	School/Company/Organization
Xaddr:	postal address
X	use tab indented lines to continue
X	don't forget to include the country
Xemail:  Email address from a well known site or registered domain.
X        If you give several forms, list them on separate tab indented lines.
Xanon:	y or n   (y => remain anonymous, n => ok to publish this info)
X---info---
XIf your program needs an info file, place a uuencoded copy of it in
Xthis section.  In the case of multiple info files, use multiple info
Xsections.  If your entry does not need a info file, skip this section.
X---build---
XPlace a uuencoded copy of the command(s) used to compile/build your program
Xin this section.  It must uudecode into a file named 'build'.  The resulting
Xfile must be 255 bytes or less.
X---program---
XPlace a uuencoded copy of your program in this section.  It must uudecode
Xinto a file named is 'prog.c'.  The resulting file must follow rule #2.
X---end---
X
X      Regarding the above format:
X
X	* The title must match the expression: [a-zA-Z0-9_=][a-zA-Z0-9_=+-]*
X	  and must be 1 to 12 characters in length.
X
X	  It is suggested, but not required, that the title should
X	  incorporate your username; in the case of multiple authors,
X	  consider using parts of the usernames of the authors.
X
X	* The date in the ---entry--- section should be given with respect
X	  to UTC.  The format of the date should be as returned by asctime()
X	  using the C locale.  (see guidelines for more info)
X
X	* You may correct/revise a previously submitted entry by sending
X	  it to the contest email address.  Be sure to set 'fix' in the
X	  ---entry--- section to 'n'.  The corrected entry must use the same
X	  title and entry number as submittion that is being corrected.  Be
X	  sure that you note the resubmittion in the ---remark--- as well.
X
X	* With the exception of the header, all text outside of the above
X	  format may be ignored by the judges.  If you need tell the judges
X	  something, put it in the ---remark--- section, or send a separate
X	  Email message to the judges.
X
X	* Information from the ---author--- section will be published unless
X	  'y' was given to the respective author's 'anon' line.
X
X	* To credit multiple authors, include an ---author--- section for
X	  each author.  Each should start with ---author--- line, and
X	  should be found between the ---entry--- and ---build--- sections.
X
X	* The entry's remarks should include:
X	    - what this program does
X	    - how to run the program (sample args or input)
X	    - special compile or execution instructions, if any
X	    - special filename requirements (see rule 4 and 5)
X	    - information about any ---data--- files
X	    - why you think the program is obfuscated
X	    - note if this entry is a re-submission of a previous entry.
X	    - any other remarks (humorous or otherwise)
X
X	* Do not rot13 your entry's remarks.  You may suggest that certain
X	  portions of your remarks be rot13ed if your entry wins an award.
X
X        * Info files should be used only to supplement your entry.  They
X	  should not be required to exist.
X
X	  If your entry does not need an info file, skip the ---info---
X	  section.  If your entry needs multiple info files, use multiple
X	  ---info--- sections, one per info file.  You should describe
X	  each info file in the ---remark--- section.
X
X    4) If your entry is selected as a winner, it will be modified as follows:
X
X	   'build' is incorporated into a makefile, and 'build' is removed
X	   'prog.c' is renamed to your entry's title, followed by an optional
X	       digit, followed by '.c'
X	   your entry is compiled into a file with the name of your entry's
X	       title, possibly followed by a digit
X
X       If your entry requires that a build file exist, state so in your
X       entry's remark section.  The makefile will be arranged to execute a
X       build shell script containing the 'build' information.  The name of
X       this build shell script will be your entry's title, possibly followed
X       by a digit, followed by '.sh'.
X
X       If needed, your entry's remarks should indicate how your entry must
X       be changed in order to deal with the new filenames.
X
X    5) The build file, the source and the resulting executable should be
X       treated as read-only files.  If your entry needs to modify these files,
X       it should make and modify a copy of the appropriate file.  If this
X       occurs, state so in your entry's remarks.
X
X    6) Entries that cannot be compiled by an ANSI C compiler will be rejected.
X       Use of common C (K&R + extensions) is permitted, as long as it does not
X       cause compile errors for ANSI C compilers.
X
X    7) The program must be of original work.  All programs must be in the
X       public domain.  All copyrighted programs will be rejected.
X
X    8) Entries must be received prior to 07-May-93 0:00 UTC.  (UTC is
X       essentially equivalent to Greenwich Mean Time)  Email your entries to:
X
X		...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate
X		obfuscate@toad.com
X
X       We request that your message use the subject 'ioccc entry'.
X
X       If possible, we request that you hold off on Emailing your entries
X       until 1-Mar-93 0:00 UTC.  Early entries will be accepted, however.
X       We will attempt to email a confirmation to the the first author for
X       all entries received after 1-Mar-93 0:00 UTC.
X
X    9) Each person may submit up to 8 entries per contest year.  Each entry
X       must be sent in a separate Email letter.
X
X   10) Entries requiring human interaction to be built are not allowed.
X       Compiling an entry produce a file (or files) which may be executed.
X
X   11) Programs that require special privileges (setuid, setgid, super-user,
X       special owner or group) are not allowed.
X
X
XFOR MORE INFORMATION:
X
X    The Judging will be done by Landon Noll and Larry Bassel.  Please send
X    questions or comments about the contest, to:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for  |
X	judges@toad.com					 submitting entries)  |
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain them, send Email to the address   |
X    above and use the subject 'send rules'.				      |
X
X    One may obtain winners of previous contests (1984 to date), via ftp from: |
X
X	host: ftp.uu.net	(192.48.96.9)				      |
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc						      |
X
X    As a last resort, previous winners may be obtained by sending Email       |
X    to the above address.  Please use the subject 'send YEAR winners',        |
X    where YEAR is a single 4 digit year, a year range, or 'all'.	      |
X
X
Xchongo <Landon Curt Noll> /\cc/\  	chongo@toad.com			      |
XLarry Bassel			  	lab@sun.com			      |
SHAR_EOF
chmod 0444 rules ||
echo "restore of rules failed"
set `wc -c rules`;Wc_c=$1
if test "$Wc_c" != "8971"; then
	echo original size 8971, current size $Wc_c
fi
# ============= guidelines ==============
echo "x - extracting guidelines (Text)"
sed 's/^X//' << 'SHAR_EOF' > guidelines &&
X10th International Obfuscated C Code Contest Guidelines, Hints and Comments
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
XABOUT THIS FILE:
X
X    This file is intended to help people who wish to submit entries to
X    the International Obfuscated C Code Contest (IOCCC for short).
X
X    This is not the IOCCC rules, though it does contain comments about
X    them.  The guidelines should be viewed as hints and suggestions.
X    Entries that violate the guidelines but remain within the rules are
X    allowed.  Even so, you are safer if you remain within the guidelines.
X
X    You should read the current IOCCC rules, prior to submitting entries.
X    The rules are typically sent out with these guidelines.
X
X    Changes from the 1993 draft are noted by change bars.  --->		      |
X
X
XWHAT IS NEW IN 1993:
X
X    The entry format is better (for us anyway).  The program mkentry.c
X    has been updated.  See ENTRY FORMAT.
X
X    We will reject entries that cannot be compiled using an ANSI C
X    compiler.  Certain old Obfuscation hacks that cause ANSI C compilers
X    fits are no longer permitted.  Some of the new issues deal with
X    non-integral array types, variable number of arguments, C preprocessor
X    directives and the exit() function.  See OUR LIKES AND DISLIKES.
X
X
XHINTS AND SUGGESTIONS:
X
X    You are encouraged to examine the winners of previous contests.  See
X    FOR MORE INFORMATION for details on how to get previous winners.
X
X    Keep in mind that rules change from year to year, so some winning entries
X    may not be valid entries this year.  What was unique and novel one year
X    might be 'old' the next year.
X
X    An entry is usually examined in a number of ways.  We typically apply
X    a number of tests to an entry:
X
X	* look at the original source
X	* convert ANSI tri-graphs to ASCII
X	* C pre-process the source ignoring '#include' lines
X	* C pre-process the source ignoring '#define' and '#include' lines
X	* run it through a C beautifier
X	* examine the algorithm
X	* lint it
X	* compile it
X	* execute it
X
X    You should consider how your entry looks in each of the above tests.
X    You should ask yourself if your entry remains obscure after it has been
X    'cleaned up' by the C pre-processor and a C beautifier.
X
X    Your entry need not do well under all, or in most tests.  In certain
X    cases, a test is not important.  Entries that compete for the
X    'strangest/most creative source layout' need not do as well as
X    others in terms of their algorithm.  On the other hand, given
X    two such entries, we are more inclined to pick the entry that
X    does something interesting when you run it.
X
X    We try to avoid limiting creativity in our rules.  As such, we leave
X    the contest open for creative rule interpretation.  As in real life
X    programming, interpreting a requirements document or a customer request
X    is important.  For this reason, we often award 'worst abuse of the
X    rules' to an entry that illustrates this point in an ironic way.
X
X    If you do plan to abuse the rules, we suggest that you let us know
X    in the remarks section.  Please note that an invitation to abuse
X    is not an invitation to break.  We are strict when it comes to the
X    3217 byte size limit.  Also, abusing the entry format tends to
X    annoy more than amuse.
X
X    We do realize that there are holes in the rules, and invite entries
X    to attempt to exploit them.  We will award 'worst abuse of the rules'
X    and then plug the hole next year.  Even so, we will attempt to use
X    the smallest plug needed, if not smaller.  :-)
X
X    Check out your program and be sure that it works.  We sometimes make
X    the effort to debug an entry that has a slight problem, particularly
X    in or near the final round.  On the other hand, we have seen some
X    of the best entries fall down because they didn't work.
X
X    We tend to look down on a prime number printer, that claims that
X    16 is a prime number.  If you do have a bug, you are better off
X    documenting it.  Noting "this entry sometimes prints the 4th power
X    of a prime by mistake" would save the above entry.  And sometimes,
X    a strange bug/feature can even help the entry!  Of course, a correctly
X    working entry is best.
X
X
XOUR LIKES AND DISLIKES:
X
X    Doing masses of #defines to obscure the source has become 'old'.  We
X    tend to 'see thru' masses of #defines due to our pre-processor tests
X    that we apply.  Simply abusing #defines or -Dfoo=bar won't go as far
X    as a program that is more well rounded in confusion.
X
X    Many ANSI C compilers dislike the following code, and so do we:
X
X	#define d define
X	#d foo		   <-- don't expect this to turn into #define foo
X
X	int i;
X	j;		   <-- don't use such implicit type declaration
X	int k;
X
X    We suggest that you compile your entry with an ANSI C compiler.  If you
X    must use non-ANSI C, such as K&R C, you must avoid areas that result in
X    compile/link errors for ANSI C compilers.
X
X    Unfortunately, some ANSI C compilers require array indexes to be of       |
X    integral type.  Thus, the following classical obfuscation hacks should    |
X    not be used in 1993.  This rule may be relaxed in future contests.	      |
X
X	int i;
X	char *c;
X	i[c];		   <--- use c[i] instead
X	(i+3)["string"];   <--- use "string"[i+3] instead
X
X    If your entry uses functions that have a variable number of
X    arguments, be careful. Systems implement va_list as a wide variety
X    of ways.  Because of this, a number of operations using va_list are
X    not portable and must not be used:
X
X	* assigning a non-va_list variable to/from a va_list variable
X	* casting a non-va_list variable into/from a va_list variable
X	* passing a va_list variable to a function expecting a non-va_list arg
X	* passing a non-va_list variable to a function expecting a va_list arg
X	* performing arithmetic on va_list variables
X	* using va_list as a structure or union
X
X    In particular, do not treat va_list variables as if they were a char **'s.
X
X    Avoid using <varargs.h>, use <stdarg.h> instead.
X
X    If you use C preprocessor directives (#define, #if, #ifdef, ...),
X    the leading '#' must be the first character on a line.  While some
X    C preprocessors allow whitespace the leading '#', many do not.
X
X    Because the exit() function returns void on some systems, entries
X    must not assume that it returns an int.
X
X    Small programs are best when they are short, obscure and concise.
X    While such programs are not as complex as other winners, they do
X    serve a useful purpose.  They are often the only program that people
X    attempt to completely understand.  For this reason, we look for
X    programs that are compact, and are instructional.
X
X    One line programs should be short one line programs, say around 80
X    bytes long.  Getting close to 160 bytes is a bit too long in our opinion.
X
X    We tend to dislike programs that:
X
X	* are very hardware specific
X	* are very OS or Un*x version specific
X	     (index/strchr differences are ok, but socket/streams specific
X	      code is likely not to be)
X	* dump core or have compiler warnings
X	     (it is ok only if you warn us in the 'remark' header item)
X	* won't compile under both BSD or SYS V Un*x
X	* abusing the build file to get around the size limit
X	* obfuscate by excessive use of ANSI tri-graphs
X	* are longer than they need to be
X	* are similar to previous winners
X	* are identical to previous losers  :-)
X
X    Unless you are cramped for space, or unless you are entering the
X    'best one liner' category, we suggest that you format your program
X    in a more creative way than simply forming excessively long lines.
X
X    The build file should not be used to try and get around the size
X    limit.  It is one thing to make use of a several -D's to help out,
X    but it is quite another to use 200+ bytes of -D's in order to
X    try and squeeze the source under the size limit.  You should feel
X    free to make use of the build file space, but you are better off
X    if you show some amount of restraint.
X
X    We allowed whitespace, and in certain cases ; { or } do not impact
X    your program size (up to a certain point), because we want to get
X    away from source that is simply a compact blob of characters.
X
X    Given two versions of the same program, one that is a compact blob
X    of code, and the other that is formatted more like a typical C
X    program, we tend to favor the second version.  Of course, a third
X    version of the same program that is formatted in an interesting
X    and/or obfuscated way, would definitely win over the first two!
X
X    We suggest that you avoid trying for the 'smallest self-replicating'
X    program.  We are amazed at the many different sizes that claim
X    to be the smallest.  There is nothing wrong with self-replicating
X    programs.  In fact, a number of winners have been self-replicating.
X    You might want to avoid the claim of 'smallest', lest we (or others)
X    know of a smaller one!
X
X    X client entries should be as portable as possible.  Entries that
X    adapt to a wide collection of environments will be favored.  Don't
X    depend on a particular type of display.  For example, don't depend
X    on color or a given size.  Don't require backing store.
X
X    X client entries should avoid using X related libraries and
X    software that is not in wide spread use.  We ask that such X client
X    entries restrict themselves to only the low level Xlib and the
X    Athena widget set (libX11.a, libXaw.a, libXmu.a and libXt.a).
X    Don't use M*tif, Xv*ew, or OpenL*ok toolkits, since not everyone
X    has them.  Avoid depending on a particular window manager.  Not
X    everyone has X11r5, and some people are stuck back in X11r4 (or
X    earlier), so try to target X11r5 without requiring X11r5.  Better
X    yet, try to make your entry run on all version 11 X Window Systems.
X
X    X client entries should not to depend on particular items on
X    .Xdefaults.  If you must do so, be sure to note the required lines
X    in the ---remark--- section.
X
X    We like programs that:
X
X	* are as concise and small as they need to be
X	* do something at least quasi-interesting
X	* pass lint without complaint (not a requirement, but it is nice)
X	* are portable
X	* are unique or novel in their obfuscation style
X	* MAKE USE OF A NUMBER OF DIFFERENT TYPES OF OBFUSCATION
X	* make us laugh and/or throw up  :-)
X
X    Some types of programs can't excel in some areas.  Of course, your
X    program doesn't have to excel in all areas, but doing well in several
X    areas really does help.
X
X    We freely admit that interesting, creative or humorous comments in
X    the ---remark--- section helps your chance of winning.  If you had to
X    read of many twisted entries, you too would enjoy a good laugh or two.
X    We think the readers of the contest winners do as well.
X
X    Be creative!
X
X
XENTRY FORMAT:
X
X    In order to help us process the many entries, we must request your
X    assistance by formatting your entries in a certain way.  This format,
X    in addition, allows us to quickly separate information about the
X    author from the program itself.  (see JUDGING PROCESS)
X
X    We have provided the program, mkentry, as an example of how to
X    format entries.  You should be aware of the following warning that
X    is found in mkentry.c:
X
X	This program attempts to implement the IOCCC rules.  Every
X	attempt has been made to make sure that this program produces
X	an entry that conforms to the contest rules.  In all cases,
X	where this program differs from the contest rules, the
X	contest rules will be used.  Be sure to check with the
X	contest rules before submitting an entry.
X
X    You are not required to use mkentry.  It is convenient, however,
X    as it attempts to uuencode the needed files, and attempt to check
X    the entry against the size rules.
X
X    If you have any suggestions, comments, fixes or complaints about
X    the mkentry.c program, please send Email to the judges.  (see below)
X
X    The following is a sample entry:
X
X---entry---
Xrule:	1993
Xfix:	n
Xtitle:	chonglab
Xentry:	0
Xdate:	Mon Mar  1 08:45:20 1993
Xhost:	Un*x v6, pdp11/45
X	2.9BSD, pdp11/70
X---remark---
X    This is a non-obfuscated obfuscated C program.
X
X    It is likely not to win a prize.  But what do you expect from
X    a short example!
X---author---
Xname:	Landon Curt Noll
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	chongo@toad.com
Xanon:	n
X---author---
Xname:	Larry Bassel
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	hoptoad!sun!lab
X	lab@sun.com
Xanon:	n
X---info---
Xbegin 444 info.file
XM0V]P>7)I9VAT("AC*2!,86YD;VX@0W5R="!.;VQL+"`Q.3DS+@I!;&P@4FEG
XM:'1S(%)E<V5R=F5D+B`@4&5R;6ES<VEO;B!F;W(@<&5R<V]N86PL(&5D=6-A
XM=&EO;B!O<B!N;VXM<')O9FET('5S92!I<PIG<F%N=&5D('!R;W9I9&5D('1H
XM:7,@=&AI<R!C;W!Y<FEG:'0@86YD(&YO=&EC92!A<F4@:6YC;'5D960@:6X@
XM:71S(&5N=&ER971Y"F%N9"!R96UA:6YS('5N86QT97)E9"X@($%L;"!O=&AE
XM<B!U<V5S(&UU<W0@<F5C96EV92!P<FEO<B!P97)M:7-S:6]N(&EN('=R:71I
XM;F<*9G)O;2!,86YD;VX@0W5R="!.;VQL+@H*5&AA="!T:&%T(&ES+"!I<RX*
XM5&AA="!T:&%T(&ES(&YO="P*("`@(&ES(&YO="!T:&%T('1H870@;F]T(&ES
XM+@I4:&%T(&ES+"!T:&%T('1H870@:7,@;F]T+"!I<R$*"@D)+2T@8VAO;F=O
XM(#$Y-S0*"DQA<W0@>65A<BP@;VYE('!E<G-O;B!T;VQD('5S('1H870@=&AE
XM>2!A8W1U86QL>2!D96-O9&5D('1H:7,@9FEL92X*22!W;VYD97(@:&]W(&UA
X9;GD@=VEL;"!D;R!I="!T:&ES('EE87(_"@``
X`
Xend
X---build---
Xbegin 444 build
X28V,@<')O9RYC("UO('!R;V<*
X`
Xend
X---program---
Xbegin 444 prog.c
XM;6%I;B@I"GL*(VEF(&1E9FEN960H05]214=)4U1%4D5$7U9/5$527TE.7U-5
XM3DY95D%,15]#04Q)1D]23DE!7U5302D*("`@('!R:6YT9B@B5F]T92!,86YD
XM;VX@3F]L;"!F;W(@4W5N;GEV86QE($-I='D@0V]U;F-I;"!S96%T(",Q+EQN
X:(BD["B-E;F1I9@H@("`@97AI="@P*3L*?0H`
X`
Xend
X---end---
X
X    Typically the build file should assume that the source is prog.c
X    and will compile into prog.  If an entry wins, we will rename
X    its source and binary to avoid filename collision.  By tradition,
X    we use the name of the entry's title, followed by an optional
X    digit in case of name conflicts.
X
X    If the above entry somehow won the 'least likely to win' award,
X    we would use chonglab.c and chonglab.
X
X    If your entry depends on, or requires that your build, source
X    and/or binary files be a particular name, please say so in the
X    ---remark--- section.  If this case applies, it would be be helpful
X    if you did one of the following:
X
X	* Tell us how to change the filename(s) in your entry.
X
X	* Have the build file make copies of the files.  For example:
X
X		cc prog.c -o special_name		need special binary
X
X	    or  rm -f special_src.c			need special source
X		cp prog.c special_src.c
X		cc special_src.c -o special_name
X
X	    or  rm -f special_build			need special build
X		tail +4 build > special_build
X		sh < special_build
X
X	* Assume that we will use the entry title.  Send us a version of
X	  your build/program files that uses the name convention.  You
X	  should uuencode these files in ---data--- sections.
X
X    If your entry needs to modify its source, info or binary files,
X    please say so in the ---remark--- section.  You should try to avoid
X    touching your original build, source and binary files.  You should
X    arrange to make copies of the files you intend to modify.  This
X    will allow people to re-generate your entry from scratch.
X
X    Remember that your entry may be built without a build file.  We
X    typically incorporate the build lines into a Makefile.  If the
X    build file must exist, say so in the ---remark--- section.
X
X    If your entry needs special info files, you should uuencode them
X    into ---info--- sections.  In the case of multiple info files,
X    use multiple ---info--- sections.  If no info files are needed,
X    then skip the ---info--- section.
X
X    Info files are intended to be input, or detailed information that
X    does not fit well into the ---remark--- section.  For example, an
X    entry that implements a compiler might want to provide some sample
X    programs for the user to compile.  An entry might want to include a
X    lengthy design document, that might not be appropriate for a
X    'hints' file.
X
X    Info files should be used only to supplement your entry.  For
X    example, info files may provide sample input or detailed
X    information about your entry.  Because they are supplemental,
X    the entry should not require them exist.
X
X    In some cases, your info files might be renamed to avoid name
X    conflicts.  If info files should not be renamed for some reason,
X    say so in the ---remark--- section.
X
X    Info files must uudecode into the current directory.  If they
X    absolutely must be renamed, or moved into a sub-directory, say
X    so in the ---remark--- section.
X
X    When submitting multiple entries, be sure that each entry has
X    a unique entry number from 0 to 7.  Your first entry should
X    have entry number 0.
X
X    With the exception of the header, all text outside of the entry
X    format may be ignored.  That is, don't place text outside of the
X    entry and expect the judges to see it.  (Our decoding tools aren't
X    AI progs!) If you need tell the the something, put it in the
X    ---remark--- section, or send a Email to the judges at:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    The date should be given with respect to UTC.  (Some systems refer
X    to this as GMT or GMT0)  The format of the date should be that as
X    returned by asctime() in the C locale.  An example of such a string is:
X
X	Thr Apr 01 00:47:00 1993
X
X    This format is similar to the output of the date(1) command.  The
X    string does not include the timezone name before the year.  On many
X    systems, one of the following command will produce a similar string:
X
X	date -u "+%a %h %d %T 19%y"
X	date -u | sed -e 's/... \(19[0-9][0-9]\)$/\1/'
X	sh -c 'TZ=UTC date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT0 date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X
X    You are allowed to update/fix/revise your entry.  To do so, set
X    the 'fix' line in the ---entry--- section to 'y' instead of 'n'.
X    Be sure that the resubmittion uses the same title and entry number
X    as well, as these are used to determine which entry is to be
X    replaced.
X
X
XJUDGING PROCESS:
X
X    Entries are judged by Larry Bassel and Landon Curt Noll.
X
X    Entries are unpacked into individual directories.  The Email message
X    is unpacked into individual files, each containing:
X
X	---entry--- section
X	all ---author--- sections
X	all ---info--- sections
X	---build--- section
X	---program--- section
X	any other text, including the Email message headers
X
X    Prior to judging, the 'any other text' file is scanned to be sure
X    it does not contain useful information (or in case the entry was
X    malformed and did not unpack correctly).  Information from the
X    ---author--- sections are not read until the judging process is
X    complete, and then only from entries that have won an award.
X
X    The above process helps keep us biased for/against any one particular
X    individual.  We are usually kept in the dark as much as you are
X    until the final awards are given.  We like the surprise of finding
X    out in the end, who won and where they were from.
X
X    We attempt to keep all entries anonymous, unless they win an award.
X    Because the main 'prize' of winning is being announced, we make all
X    attempts to send non-winners into oblivion.  We remove all non-winning
X    files, and shred all related paper.  By tradition, we do not even
X    reveal the number of entries that we received.  (for the curious,
X    we do indicate the volume of paper consumed when presenting the IOCCC
X    winners at talks)
X
X    After the Usenix announcement, we attempt to send Email to the
X    authors of the winning entries.  One reason we do this is to give
X    the authors a chance to comment on the way we have presented their
X    entry.  They are given the chance to correct mistakes, typos.  We
X    often accept their suggestions/comments about our remarks as well.
X    This is done prior to posting the winners to the wide world.
X
X    Judging consists of a number of elimination rounds.  During a round,
X    the collection of entries are divided into two roughly equal piles;
X    the pile that advances on to the next round, and the pile that does
X    not.  We also re-examine the entries that were eliminated in the
X    previous round.  Thus, an entry gets at least two readings.
X
X    A reading consists of a number of actions:
X
X	* reading the ---entry--- section
X	* reading the uudecoded ---build--- section
X	* reading the uudecoded ---program--- section
X	* reading the uudecoded ---info--- section(s), if any
X	* passing the source thru the C pre-processor
X	    shipping over any #include files
X	* performing a number of C beautify/cleanup edits on the source
X	* passing the beautified source thru the C pre-processor
X	    shipping over any #include files
X
X    In later rounds, other actions are performed:
X
X	* linting the source
X	* compiling/building the source
X	* running the program
X	* performing misc tests on the source and binary
X
X    Until we reduce the stack of entries down to about 25 entries, entries
X    are judged on an individual basis.  An entry is set aside because it
X    does not, in our opinion, meet the standard established by the round.
X    When the number of entries thins to about 25 entries, we begin to form
X    award categories.  Entries begin to compete with each other for awards.
X    An entry often will compete in several categories.
X
X    The actual award category list will vary depending on the types of entries
X    we receive.  A typical category list might be:
X
X	* best small one line program
X	* best small program
X	* strangest/most creative source layout
X	* most useful obfuscated program
X	* best game that is obfuscated
X	* most creatively obfuscated program
X	* most deceptive C code
X	* best X client (see OUR LIKES AND DISLIKES)
X	* best abuse of ANSI C
X	* worst abuse of the rules
X	* <anything else so strange that it deserves an award>
X
X    We do not limit ourselves to this list.  For example, a few entries are so
X    good/bad that they are declared winners at the start of the final round.
X    We will invent awards categories for them, if necessary.
X
X    In the final round process, we perform the difficult tasks of
X    reducing the remaining entries (typically about 25) down to 8 or 10
X    winners.  Often we are confident that the entries that make it into
X    the final round are definitely better than the ones that do not
X    make it.  The selection of the winners out of the final round, is
X    less clear cut.
X
X    Sometimes a final round entry good enough to win, but is beat out
X    by a similar, but slightly better entry.  For this reason, it is
X    sometimes worthwhile to re-enter an improved version of an entry
X    that failed to win in a previous year.  This assumes, of course,
X    that the entry is worth improving in the first place!
X
X    More often that not, we select a small entry (usually one line), a
X    strange/creative layout entry, and an entry that abuses the contest
X    rules in some way.
X
X    In the end, we traditionally pick one entry as 'best'.  Sometimes such
X    an entry simply far exceeds any of the other entry.  More often, the
X    'best' is picked because it does well in a number of categories.
X
X
XANNOUNCEMENT OF WINNERS:
X
X    The first announcement, occurs at a Summer Usenix conference.  By tradition,
X    this is done during the latter part of the UUNET/IOCCC BOF, just prior to
X    the Berkeley BSD, and BSDI BOF.
X
X    Winning entries will be posted in late June to the following groups:
X
X	    comp.lang.c		  comp.unix.wizards	alt.sources
X
X    In addition, pointers to these postings are posted to the following
X
X	    comp.sources.d	  alt.sources.d		misc.misc
X	    comp.sources.misc	  comp.windows.x
X
X    Winning entries will be deposited into the uunet archives.  See
X    below for details.
X
X    Often, winning entries are published in selected magazines.  Winners
X    have appeared in books ("The New Hackers Dictionary") and on T-Shirts.
X
X    Last, but not least, winners receive international fame and flames!  :-)
X
X
XFOR MORE INFORMATION:
X
X    You may contact the judges by sending Email to the following address:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    Questions and comments about the contest are welcome.
X
X    The rules and the guidelines may (and often do) change from year to	      |
X    year.  You should be sure you have the current rules and guidelines	      |
X    prior to submitting entries.  To obtain them, send Email to the address   |
X    above and use the subject 'send rules'.				      |
X
X    One may obtain winners of previous contests (1984 to date), via ftp from: |
X
X	host: ftp.uu.net	(192.48.96.9)				      |
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc						      |
X
X    As a last resort, previous winners may be obtained by sending Email	      |
X    to the above address.  Please use the subject 'send YEAR winners',	      |
X    where YEAR is a single 4 digit year, a year range, or 'all'.	      |
X
X
Xchongo <Landon Curt Noll> /\cc/\  	chongo@toad.com			      |
XLarry Bassel			  	lab@sun.com			      |
SHAR_EOF
chmod 0444 guidelines ||
echo "restore of guidelines failed"
set `wc -c guidelines`;Wc_c=$1
if test "$Wc_c" != "25592"; then
	echo original size 25592, current size $Wc_c
fi
echo "End of part 1, continue with part 2"
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
document_id: 66409
From: chongo@toad.com (Landon C. Noll)
Subject: Reposting: 10th International Obfuscated C Code Contest rules (2 of 2)

We have received a number of requests for a reposting of the
International Obfuscated C Code Contest rules and guidelines.  Also
some people requested that these rules be posted to a wider set of
groups.  Sorry for the cross posting.

Some technical clarifications were made to the rules and guidelines.
(See the diff marks at the right hand edge)  The rules and guidelines
for this year remain the same, so people who have already or are
in the process of submitting entries for the 1993 IOCCC need not worry 
about these changes.

chongo <Landon Curt Noll> /\cc/\        chongo@toad.com
Larry Bassel                            lab@sun.com

=-=

#!/bin/sh
# This is part 02 of a multipart archive
# ============= mkentry.c ==============
echo "x - extracting mkentry.c (Text)"
sed 's/^X//' << 'SHAR_EOF' > mkentry.c &&
X/* @(#)mkentry.c	1.25 4/5/93 15:58:08 */
X/*
X * Copyright (c) Landon Curt Noll & Larry Bassel, 1993.
X * All Rights Reserved.  Permission for personal, education or non-profit use
X * is granted provided this this copyright and notice are included in its
X * entirety and remains unaltered.  All other uses must receive prior
X * permission in writing from both Landon Curt Noll and Larry Bassel.
X */
X/*
X * mkentry - make an International Obfuscated C Code Contest entry
X *
X * usage:
X *	mkentry -r remarks -b build -p prog.c -o ioccc.entry
X *
X *	-r remarks		file with remarks about the entry
X *	-b build		file containing how prog.c should be built
X *	-p prog.c		the obfuscated program source file
X *	-o ioccc.entry		ioccc entry output file
X *
X * compile by:
X *	cc mkentry.c -o mkentry
X */
X/*
X * Placed in the public domain by Landon Curt Noll, 1992.
X *
X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
X */
X/*
X * WARNING:
X *
X * This program attempts to implement the IOCCC rules.  Every attempt
X * has been made to make sure that this program produces an entry that
X * conforms to the contest rules.  In all cases, where this program
X * differs from the contest rules, the contest rules will be used.  Be
X * sure to check with the contest rules before submitting an entry.
X *
X * FOR MORE INFORMATION:
X *
X *   You may contact the judges by sending Email to the following address:
X *
X *	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X *	judges@toad.com					 submitting entries)
X *
X *   Questions and comments about the contest are welcome.
X *
X *  The rules and the guidelines may (and often do) change from year to
X *  year.  You should be sure you have the current rules and guidelines
X *  prior to submitting entries.  To obtain them, send Email to the address
X *  above and use the subject 'send rules'.
X *
X *  One may obtain winners of previous contests (1984 to date), via ftp from:
X *
X *	host: ftp.uu.net	(192.48.96.9)
X *	user: anonymous
X *	pass: yourname@yourhost
X *	dir:  ~/pub/ioccc
X *
X *  As a last resort, previous winners may be obtained by sending Email
X *  to the above address.  Please use the subject 'send YEAR winners',
X *  where YEAR is a single 4 digit year, a year range, or 'all'.
X *
X * Because contest rules change from year to year, one should only use this
X * program for the year that it was intended.  Be sure that the RULE_YEAR
X * define below matches this current year.
X */
X
X#include <stdio.h>
X#include <ctype.h>
X#include <time.h>
X#include <sys/types.h>
X#include <sys/stat.h>
X
X/* logic */
X#ifndef TRUE
X# define TRUE 1
X#endif /* TRUE */
X#ifndef FALSE
X# define FALSE 0
X#endif /* FALSE */
X#define EOF_OK TRUE
X#define EOF_NOT_OK FALSE
X
X/* global limits */
X#define RULE_YEAR 1993		/* NOTE: should match the current year */
X#define START_DATE "1Mar92 0:00 UTC"	/* first confirmation received */
X#define MAX_COL 79		/* max column a line should hit */
X#define MAX_BUILD_SIZE 256	/* max how to build size */
X#define MAX_PROGRAM_SIZE 3217	/* max program source size */
X#define MAX_PROGRAM_SIZE2 1536	/* max program source size not counting
X				   whitespace and {}; not followed by
X				   whitespace or EOF */
X#define MAX_TITLE_LEN 12	/* max chars in the title */
X#define MAX_ENTRY_LEN 1		/* max length in the entry input line */
X#define MAX_ENTRY 8		/* max number of entries per person per year */
X#define MAX_FILE_LEN 1024	/* max filename length for a info file */
X
X/* where to send entries */
X#define ENTRY_ADDR1 "...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate"
X#define ENTRY_ADDR2 "obfuscate@toad.com"
X
X/* uuencode process - assumes ASCII */
X#define UUENCODE(c) (encode_str[(int)(c)&0xff])
X#define UUENCODE_LEN 45		/* max uuencode chunk size */
X#define UUINFO_MODE 0444	/* mode of an info file's uuencode file */
X#define UUBUILD_MODE 0444	/* mode of the build file's uuencode file */
X#define UUBUILD_NAME "build"	/* name for the build file's uuencode file */
X#define UUPROG_MODE 0444	/* mode of the program's uuencode file */
X#define UUPROG_NAME "prog.c"	/* name for the program's uuencode file */
X
X/* encode_str[(char)val] is the uuencoded character of val */
Xchar encode_str[256+1] = "`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
X
X/* global declarations */
Xchar *program;			/* our name */
Xlong start_time;		/* the startup time */
X
X/* forward declarations */
Xvoid parse_args();
Xvoid usage();
XFILE *open_remark();
XFILE *open_build();
XFILE *open_program();
XFILE *open_output();
Xvoid output_entry();
Xvoid output_remark();
Xvoid output_author();
Xvoid output_info();
Xvoid output_build();
Xvoid output_program();
Xvoid output_end();
Xint get_line();
Xvoid output_till_dot();
Xint col_len();
Xvoid check_io();
Xvoid uuencode();
X
Xmain(argc, argv)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X{
X    FILE *remark=NULL;	/* open remarks stream */
X    FILE *build=NULL;	/* open build file stream */
X    FILE *prog=NULL;	/* open program stream */
X    FILE *output=NULL;	/* open output stream */
X    char *rname=NULL;	/* file with remarks about the entry */
X    char *bname=NULL;	/* file containing how prog.c should be built */
X    char *pname=NULL;	/* the obfuscated program source file */
X    char *oname=NULL;	/* ioccc entry output file */
X    struct tm *tm;	/* startup time structure */
X
X    /*
X     * check on the year
X     */
X    start_time = time((long *)0);
X    tm = gmtime(&start_time);
X    if (tm->tm_year != RULE_YEAR-1900) {
X	fprintf(stderr,
X	"%s: WARNING: this program applies to %d, which may differ from %d\n\n",
X	    argv[0], RULE_YEAR, 1900+tm->tm_year);
X    }
X
X    /*
X     * parse the command line args
X     */
X    parse_args(argc, argv, &rname, &bname, &pname, &oname);
X
X    /*
X     * open/check the input and output files
X     *
X     * We open and truncate the output file first, in case it is the same
X     * as one of the input files.
X     */
X    output = open_output(oname);
X    remark = open_remark(rname);
X    build = open_build(bname);
X    prog = open_program(pname);
X    if (output==NULL || remark==NULL || build==NULL || prog==NULL) {
X	exit(1);
X    }
X
X    /*
X     * output each section
X     */
X    output_entry(output, oname);
X    output_remark(output, oname, remark, rname);
X    output_author(output, oname);
X    output_info(output, oname);
X    output_build(output, oname, build, bname);
X    output_program(output, oname, prog, pname);
X    output_end(output, oname);
X
X    /*
X     * flush the output
X     */
X    if (fflush(output) == EOF) {
X	fprintf(stderr, "%s: flush error in %s: ", program, oname);
X	perror("");
X	exit(2);
X    }
X
X    /*
X     * final words
X     */
X    printf("\nYour entry can be found in %s.  You should check this file\n",
X	oname);
X    printf("correct any problems and verify that the uudecode utility will\n");
X    printf("correctly decode your build file and program.\n\n");
X    printf("This program has been provided as a guide for submitters.  In\n");
X    printf("cases where it conflicts with the rules, the rules shall apply.\n");
X    printf("It is your responsibility to ensure that your entry conforms to\n");
X    printf("the current rules.\n\n");
X    printf("Email your entries to:\n");
X    printf("\t%s\n", ENTRY_ADDR1);
X    printf("\t%s\n\n", ENTRY_ADDR2);
X    printf("Please use the following subject when you Email your entry:\n");
X    printf("\tioccc entry\n\n");
X    /* all done */
X    exit(0);
X}
X
X/*
X * parse_args - parse the command line args
X *
X * Given the command line args, this function parses them and sets the
X * required name flags.  This function will return only if the command
X * line syntax is correct.
X */
Xvoid
Xparse_args(argc, argv, rname, bname, pname, oname)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X    char **rname;	/* file with remarks about the entry */
X    char **bname;	/* file containing how prog.c should be built */
X    char **pname;	/* the obfuscated program source file */
X    char **oname;	/* ioccc entry output file */
X{
X    char *optarg;	/* -flag option operand */
X    int flagname;	/* the name of the -flag */
X    int i;
X
X    /*
X     * Not everyone has getopt, so we must parse args by hand.
X     */
X    program = argv[0];
X    for (i=1; i < argc; ++i) {
X
X	/* determine the flagname */
X	if (argv[i][0] != '-') {
X	    usage(1);
X	    /*NOTREACHED*/
X	}
X	flagname = (int)argv[i][1];
X
X	/* determine the flag's operand */
X	if (flagname != '\0' && argv[i][2] != '\0') {
X	    optarg = &argv[i][2];
X	} else {
X	    if (i+1 >= argc) {
X		usage(2);
X		/*NOTREACHED*/
X	    } else {
X		optarg = argv[++i];
X	    }
X	}
X
X	/* save the flag's operand in the correct global variable */
X	switch (flagname) {
X	case 'r':
X	    *rname = optarg;
X	    break;
X	case 'b':
X	    *bname = optarg;
X	    break;
X	case 'p':
X	    *pname = optarg;
X	    break;
X	case 'o':
X	    *oname = optarg;
X	    break;
X	default:
X	    usage(3);
X	    /*NOTREACHED*/
X	}
X    }
X
X    /*
X     * verify that we have all of the required flags
X     */
X    if (*rname == NULL || *bname == NULL || *pname == NULL || *oname == NULL) {
X	usage(4);
X	/*NOTREACHED*/
X    }
X    return;
X}
X
X/*
X * usage - print a usage message and exit
X *
X * This function does not return.
X */
Xvoid
Xusage(exitval)
X    int exitval;		/* exit with this value */
X{
X    fprintf(stderr,
X	"usage: %s -r remarks -b build -p prog.c -o ioccc.entry\n\n", program);
X    fprintf(stderr, "\t-r remarks\tfile with remarks about the entry\n");
X    fprintf(stderr, "\t-b build\tfile containing how prog.c should be built\n");
X    fprintf(stderr, "\t-p prog.c\tthe obfuscated program source file\n");
X    fprintf(stderr, "\t-o ioccc.entry\tioccc entry output file\n");
X    exit(exitval);
X}
X
X/*
X * open_remark - open/check the remark file
X *
X * The remark file should be indented by 4 spaces, and should not extend
X * beyond column MAX_COL.  These are not requirements, so we only warn.
X *
X * This function returns NULL on I/O or format error.
X */
XFILE *
Xopen_remark(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    char buf[BUFSIZ+1];		/* input buffer */
X    int toolong=0;		/* number of lines that are too long */
X    int non_indent=0;		/* number of lines not indented by 4 spaces */
X
X    /*
X     * open the remark input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open remark file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * look at each line
X     */
X    while (fgets(buf, BUFSIZ, stream) != NULL) {
X
X	/* count lines that do not start with 4 spaces */
X	if (buf[0] != '\n' && strncmp(buf, "    ", 4) != 0) {
X	    ++non_indent;
X	}
X
X	/* count long lines */
X	if (col_len(buf) > MAX_COL) {
X	    /* found a line that is too long */
X	    ++toolong;
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* note long lines if needed */
X    if (toolong > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s extend beyond the 80th column\n",
X	    program, toolong, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* note non-indented lines, if needed */
X    if (non_indent > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s are not indented by 4 spaces\n",
X	    program, non_indent, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_build - open/check the build file
X *
X * The how to build file must not be longer than MAX_BUILD_SIZE bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_build(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X
X    /*
X     * open the how to build input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_BUILD_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the how to build file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_BUILD_SIZE);
X	return(NULL);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * open_program - open/check the program source file
X *
X * The program source file must be <= 3217 bytes.  The number of
X * non-whitespace and }{; chars not followed by whitespace must
X * be <= 1536 bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_program(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X    int count;			/* special count size */
X    int c;			/* the character read */
X
X    /*
X     * open the program source input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open program source file: %s: ",
X	    program, filename);
X	perror("");
X	exit(7);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat program source file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_PROGRAM_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the program source file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_PROGRAM_SIZE);
X	return(NULL);
X    }
X
X    /*
X     * count the non-whitespace, non {}; followed by whitespace chars
X     */
X    count = 0;
X    c = 0;
X    while ((c=fgetc(stream)) != EOF) {
X	/* look at non-whitespace */
X	if (!isascii(c) || !isspace(c)) {
X	    switch (c) {
X	    case '{':		/* count if not followed by EOF or whitespace */
X	    case '}':
X	    case ';':
X		/* peek at next char */
X		c = fgetc(stream);
X		if (c != EOF && isascii(c) && !isspace(c)) {
X		    /* not followed by whitespace or EOF, count it */
X		    ungetc(c, stream);
X		    ++count;
X		}
X		break;
X	    default:
X		++count;
X		break;
X	    }
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* look at the special size */
X    if (count > MAX_PROGRAM_SIZE2) {
X	fprintf(stderr,
X	    "%s: FATAL: the number of bytes that are non-whitespace, and\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        that are not '{', '}', ';' followed by whitespace\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        or EOF must be <= %d bytes\n",
X	    program, MAX_PROGRAM_SIZE2);
X	fprintf(stderr,
X	    "%s:        in %s, %d bytes were found\n",
X	    program, filename, count);
X	return(NULL);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_output - open/check the entry output file
X *
X * This function returns NULL on open error.
X */
XFILE *
Xopen_output(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X
X    /*
X     * open the ioccc entry output file
X     */
X    stream = fopen(filename, "w");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open ioccc entry file for output: %s: ",
X	    program, filename);
X	perror("");
X	exit(8);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * output_entry - output the ---entry--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_entry(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char title[MAX_TITLE_LEN+1+1];	/* the entry's title */
X    char buf[MAX_COL+1+1];		/* I/O buffer */
X    int entry=0;			/* entry number */
X    int ret;				/* fields processed by fscanf */
X    int ok_line=0;			/* 0 => the line is not ok */
X    char skip;				/* input to skip */
X    FILE *date_pipe;			/* pipe to a date command */
X    time_t epoch_sec;			/* seconds since the epoch */
X    char *p;
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---entry---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the rule year
X     */
X    fprintf(output, "rule:\t%d\n", RULE_YEAR);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /* determine if this is a fix */
X    printf("Is this a fix, update or resubmittion to a ");
X    printf("previous entry (enter y or n)? ");
X    while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    if (buf[0] == 'y') {
X	fprintf(output, "fix:\ty\n");
X	check_io(output, oname, EOF_NOT_OK);
X	printf("\nBe sure that the title and entry number that you give\n");
X	printf("are the same of as the entry you are replacing\n");
X    } else {
X	fprintf(output, "fix:\tn\n");
X	check_io(output, oname, EOF_NOT_OK);
X    }
X
X    /*
X     * write the title
X     */
X    printf("\nYour title must match expression be a [a-zA-Z0-9_=] character\n");
X    printf("followed by 0 to %d more [a-zA-Z0-9_=+-] characters.\n\n",
X	MAX_TITLE_LEN-1);
X    printf("It is suggested, but not required, that the title should\n");
X    printf("incorporate your username; in the\n");
X    printf("case of multiple authors, consider using parts of the usernames\n");
X    printf("of the authors.\n\n");
X    printf("enter your title: ");
X    do {
X	/* prompt and read a line */
X	if ((ok_line = get_line(title, MAX_TITLE_LEN+1, MAX_COL-9)) <= 0) {
X	    printf("\ntitle is too long, please re-enter: ");
X	    continue;
X	}
X
X	/* verify the pattern, not everyone has regexp, so do it by hand */
X	if (!isascii((int)title[0]) ||
X	    !(isalnum((int)title[0]) || title[0] == '_' || title[0] == '=')) {
X	    printf("\ninvalid first character in the title\n\n");
X	    printf("enter your title: ");
X	    ok_line = 0;
X	} else {
X	    for (p=(&title[1]); *p != '\0' && *p != '\n'; ++p) {
X		if (!isascii((int)*p) ||
X		    !(isalnum((int)*p) ||
X		      *p == '_' || *p == '=' || *p == '+' || *p == '-')) {
X		    printf("\ninvalid character in the title\n\n");
X		    printf("enter your title: ");
X		    ok_line = 0;
X		}
X	    }
X	}
X    } while (ok_line <= 0);
X    fprintf(output, "title:\t%s", title);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the entry number
X     */
X    printf("\nEach person may submit up to %d entries per year.\n\n",
X	MAX_ENTRY);
X    printf("enter an entry number from 0 to %d inclusive: ", MAX_ENTRY-1);
X    do {
X	/* get a valid input line */
X	fflush(stdout);
X	ret = fscanf(stdin, "%d[\n]", &entry);
X	check_io(stdin, "stdin", EOF_NOT_OK);
X	/* skip over input until newline is found */
X	do {
X	    skip = fgetc(stdin);
X	    check_io(stdin, "stdin", EOF_NOT_OK);
X	    if (skip != '\n') {
X		/* bad text in input, invalidate entry number */
X		entry = -1;
X	    }
X	} while (skip != '\n');
X
X	/* check if we have a number, and if it is in range */
X	if (ret != 1 || entry < 0 || entry > MAX_ENTRY-1) {
X	    printf(
X	      "\nThe entry number must be between 0 and %d inclusive\n\n",
X		MAX_ENTRY-1);
X	    printf("enter the entry number: ");
X	}
X    } while (ret != 1 || entry < 0 || entry > MAX_ENTRY-1);
X    fprintf(output, "entry:\t%d\n", entry);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the submission date
X     */
X    /* returns a newline */
X    epoch_sec = time(NULL);
X    fprintf(output, "date:\t%s", asctime(gmtime(&epoch_sec)));
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the OS/machine host information
X     */
X    printf(
X      "\nEnter the machine(s) and OS(s) under which your entry was tested.\n");
X    output_till_dot(output, oname, "host:");
X}
X
X/*
X * output_remark - output the ---remark--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_remark(output, oname, remark, rname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *remark;		/* stream to the file containing remark text */
X    char *rname;		/* name of the remark file */
X{
X    char buf[BUFSIZ+1];		/* input/output buffer */
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---remark---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * copy the remark file to the section
X     */
X    while (fgets(buf, BUFSIZ, remark) != NULL) {
X	fputs(buf, output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    check_io(remark, rname, EOF_OK);
X
X    /* be sure that the remark section ends with a newline */
X    if (buf[strlen(buf)-1] != '\n') {
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X}
X
X/*
X * output_author - output the ---author--- section
X *
X * Read the needed information from stdin, and write the author section.
X * If multiple authors exist, multiple author sections will be written.
X */
Xvoid
Xoutput_author(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char buf[MAX_COL+1+1];	/* I/O buffer */
X    int more_auths;		/* TRUE => more authors to note */
X    int auth_cnt=0;		/* number of authors processed */
X
X    /*
X     * prompt the user for the author section
X     */
X    printf("\nEnter information about each author.  If your entry is after\n");
X    printf("%s and before the contest deadline, the judges\n", START_DATE);
X    printf("will attempt to Email back a confirmation to the first author\n");
X
X    /*
X     * place author information for each author in an individual section
X     */
X    do {
X
X	/* write the start of the section */
X	fprintf(output, "---author---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the author */
X	printf("\nAuthor #%d name: ", ++auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nname too long, please re-enter: ");
X	}
X	fprintf(output, "name:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the organization */
X	printf("\nEnter the School/Company/Organization of author #%d\n",
X	    auth_cnt);
X	printf("\nAuthor #%d org: ", auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter: ");
X	}
X	fprintf(output, "org:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the address */
X	printf(
X	    "\nEnter the postal address for author #%d.  Be sure to include\n",
X	    auth_cnt);
X	printf("your country and do not include your name.\n");
X	output_till_dot(output, oname, "addr:");
X
X	/* write the Email address */
X	printf(
X	    "\nEnter the Email address for author #%d.  Use an address from\n",
X	    auth_cnt);
X	printf(
X	    "a registered domain or well known site.  If you give several\n");
X	printf("forms, list them one per line.\n");
X	output_till_dot(output, oname, "email:");
X
X	/* write the anonymous status */
X	printf("\nShould author #%d remain anonymous (enter y or n)? ",
X	    auth_cnt);
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	fprintf(output, "anon:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* determine if there is another author */
X	printf("\nIs there another author (enter y or n)? ");
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	if (buf[0] == 'y') {
X	    more_auths = TRUE;
X	} else {
X	    more_auths = FALSE;
X	}
X    } while (more_auths == TRUE);
X    return;
X}
X
X/*
X * output_info - output the ---info--- section(s)
X *
X * Read the needed information from stdin, and write the info section.
X * If multiple info files exist, multiple info sections will be written.
X */
Xvoid
Xoutput_info(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char infoname[MAX_FILE_LEN+1];	/* filename buffer */
X    char yorn[1+1];		/* y or n answer */
X    char *uuname;		/* name to uuencode as */
X    FILE *infile;		/* info file stream */
X
X    /*
X     * prompt the user for info information
X     */
X    printf("\nInfo files should be used only to supplement your entry.\n");
X    printf("For example, info files may provide sample input or detailed\n");
X    printf("information about your entry.  Because they are supplemental,\n");
X    printf("the entry should not require them to exist.\n\n");
X
X    /*
X     * while there is another info file to save, uuencode it
X     */
X    printf("Do you have a info file to include (enter y or n)? ");
X    while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    while (yorn[0] == 'y') {
X
X	/* read the filename */
X	printf("\nEnter the info filename: ");
X	while (get_line(infoname, MAX_FILE_LEN+1, 0) <= 0) {
X	    printf("\nInfo filename too long, please re-enter: ");
X	}
X
X	/* compute the basename of the info filename */
X	/* remove the trailing newline */
X	uuname = &infoname[strlen(infoname)-1];
X	*uuname = '\0';
X	/* avoid rindex/shrrchr compat issues, do it by hand */
X	for (--uuname; uuname > infoname; --uuname) {
X	    if (*uuname == '/') {
X		++uuname;
X		break;
X	    }
X	}
X
X	/* attempt to open the info file */
X	infile = fopen(infoname, "r");
X	if (infile == NULL) {
X	    fprintf(stderr, "\n%s: cannot open info file: %s: ",
X		program, infoname);
X	    perror("");
X	    continue;
X	}
X
X	/*
X	 * write the start of the section
X	 */
X	fprintf(output, "---info---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* uuencode the info file */
X	uuencode(output, oname, infile, infoname, UUINFO_MODE, uuname);
X
X	printf("\nDo you have another info file to include (enter y or n)? ");
X	while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X    };
X    return;
X}
X
X/*
X * output_build - output the ---build--- section
X *
X * Read the needed information from stdin, and write the build section.
X */
Xvoid
Xoutput_build(output, oname, build, bname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *build;		/* open build file stream */
X    char *bname;		/* name of the build file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---build---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, build, bname, UUBUILD_MODE, UUBUILD_NAME);
X    return;
X}
X
X/*
X * output_program - output the ---program--- section
X *
X * Read the needed information form stdin, and write the program section.
X */
Xvoid
Xoutput_program(output, oname, prog, pname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *prog;			/* open program stream */
X    char *pname;		/* name of program file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---program---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, prog, pname, UUPROG_MODE, UUPROG_NAME);
X    return;
X}
X
X/*
X * output_end - output the ---end--- section
X *
X * Read the needed information form stdin, and write the 'end section'.
X */
Xvoid
Xoutput_end(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    /*
X     * write the final section terminator
X     */
X    fprintf(output, "---end---\n");
X    check_io(output, oname, EOF_NOT_OK);
X    return;
X}
X
X/*
X * get_line - get an answer from stdin
X *
X * This function will flush stdout, in case a prompt is pending, and
X * read in the answer.
X *
X * This function returns 0 if the line is too long, of the length of the
X * line (including the newline) of the line was ok.  This function does
X * not return if ERROR or EOF.
X */
Xint
Xget_line(buf, siz, maxcol)
X    char *buf;			/* input buffer */
X    int siz;			/* length of input, including the newline */
X    int maxcol;			/* max col allowed, 0 => disable check */
X{
X    int length;			/* the length of the input line */
X
X    /* flush terminal output */
X    fflush(stdout);
X
X    /* read the line */
X    if (fgets(buf, siz+1, stdin) == NULL) {
X	/* report the problem */
X	check_io(stdin, "stdin", EOF_NOT_OK);
X    }
X
X    /* look for the newline */
X    length = strlen(buf);
X    if (buf[length-1] != '\n') {
X	int eatchar;		/* the char being eaten */
X
X	/* no newline found, line must be too long, eat the rest of the line */
X	do {
X	    eatchar = fgetc(stdin);
X	} while (eatchar != EOF && eatchar != '\n');
X	check_io(stdin, "stdin", EOF_NOT_OK);
X
X	/* report the situation */
X	return 0;
X    }
X
X    /* watch for long lines, if needed */
X    if (maxcol > 0 && (length > maxcol || col_len(buf) > maxcol)) {
X	/* report the situation */
X	return 0;
X    }
X
X    /* return length */
X    return length;
X}
X
X/*
X * output_till_dot - output a set of lines until '.' by itself is read
X *
X * This routine will read a set of lines until (but not including)
X * a single line with '.' is read.  The format of the output is:
X *
X *	leader:\tfirst line
X *	\tnext line
X *	\tnext line
X *	   ...
X *
X * This routine will not return if I/O error or EOF.
X */
Xvoid
Xoutput_till_dot(output, oname, leader)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    char *leader;		/* the lead text for the first line */
X{
X    char buf[BUFSIZ+1];		/* input buffer */
X    int count;			/* lines read */
X    int done=FALSE;		/* TRUE => finished reading input */
X
X    /* instruct the user on how to input */
X    printf("\nTo end input, enter a line with a single period.\n");
X
X    /* read lines until '.' or EOF */
X    count = 0;
X    while (!done) {
X	/* issue the prompt */
X	printf("%s\t", (count>0) ? "" : leader);
X	fflush(stdout);
X
X	/* get the line */
X	if (get_line(buf, BUFSIZ, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter:\n\t");
X	    continue;
X	}
X
X	/* note if '.' was read */
X	if (strcmp(buf, ".\n") == 0) {
X	    done = TRUE;
X	}
X
X	/* write line if we read something */
X	if (!done) {
X	    fprintf(output, "%s\t%s", (count++>0) ? "" : leader, buf);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X    }
X
X    /* if no lines read, at least output something */
X    if (count <= 0) {
X	fprintf(output, "%s\t.\n", leader);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    return;
X}
X
X/*
X * col_len - determine the highest that a string would reach
X *
X * Given a string, this routine returns that a string would reach
X * if the string were printed at column 1.  Tab stops are assumed
X * to start at 9, 17, 25, 33, ...
X */
Xint
Xcol_len(string)
X    char *string;		/* the string to examine */
X{
X    int col;	/* current column */
X    char *p;	/* current char */
X
X    /* scan the string */
X    for (col=0, p=string; *p != '\0' && *p != '\n'; ++p) {
X	/* note the column shift */
X	col = (*p=='\t') ? 1+((col+8)/8*8) : col+1;
X    }
X    if (*p == '\n') {
X	--col;
X    }
X
X    /* return the highest column */
X    return col;
X}
X
X/*
X * check_io - check for EOF or I/O error on a stream
X *
X * Does not return if EOF or I/O error.
X */
Xvoid
Xcheck_io(stream, name, eof_ok)
X    FILE *stream;		/* the stream to check */
X    char *name;			/* the name of this stream */
X    int eof_ok;			/* EOF_OK or EOF_NOT_OK */
X{
X    /* test for I/O error */
X    if (ferror(stream)) {
X	fprintf(stderr, "%s: error on %s: ", program, name);
X	perror("");
X	exit(1);
X
X    /* test for EOF */
X    } else if (eof_ok == EOF_NOT_OK && feof(stream)) {
X	fprintf(stderr, "%s: EOF on %s\n", program, name);
X	exit(1);
X    }
X    return;
X}
X
X/*
X * uuencode - uuencode a file
X *
X * Perform the uuencoding process identical to the process performed
X * by the uuencode(1) utility.
X *
X * This routine implements the algorithm described in the uuencode(5)
X * 4.3BSD Reno man page.
X */
Xvoid
Xuuencode(output, oname, infile, iname, umode, uname)
X    FILE *output;		/* output file stream */
X    char *oname;		/* output filename */
X    FILE *infile;		/* input file stream */
X    char *iname;		/* input filename */
X    int umode;			/* the mode to put on the uuencode file */
X    char *uname;		/* name to put on the uuencode file */
X{
X    char buf[UUENCODE_LEN+1];	/* the uuencode buffer */
X    int read_len;		/* actual number of chars read */
X    int val;			/* 6 bit chunk from buf */
X    char filler='\0';		/* filler uuencode pad text */
X    char *p;
X
X    /*
X     * output the initial uuencode header
X     */
X    fprintf(output, "begin %o %s\n", umode, uname);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * clear out the input buffer
X     */
X    for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	*p = '\0';
X    }
X
X    /*
X     * We will process UUENCODE_LEN chars at a time, forming
X     * a single output line each time.
X     */
X    while ((read_len=fread(buf,sizeof(buf[0]),UUENCODE_LEN,infile)) > 0) {
X
X	/*
X	 * the first character is the length character
X	 */
X	fputc(UUENCODE(read_len), output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * We will convert 24 bits at a time.  Thus we will convert
X	 * 3 sets of 8 bits into 4 sets of uuencoded 6 bits.
X	 */
X	for (p=buf; read_len>0; read_len-=3, p+=3) {
X
X	    /* bits 0 to 5 */
X	    val = (p[0]>>2)&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 6 to 11 */
X	    val = ((p[0]<<4)&0x30) | ((p[1]>>4)&0x0f);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 12 to 17 */
X	    val = ((p[1]<<2)&0x3c) | ((p[2]>>6)&0x03);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 18 to 23 */
X	    val = p[2]&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X
X	/* end of UUENCODE_LEN line */
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * clear out the input buffer  (don't depend on bzero() or memset())
X	 */
X	for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	    *p = '\0';
X	}
X    }
X
X    /* check the last read on the input file */
X    check_io(infile, iname, EOF_OK);
X
X    /* write end of uuencode file */
X    fprintf(output, "%c\nend\n", UUENCODE(filler));
X    check_io(output, oname, EOF_NOT_OK);
X}
SHAR_EOF
chmod 0444 mkentry.c ||
echo "restore of mkentry.c failed"
set `wc -c mkentry.c`;Wc_c=$1
if test "$Wc_c" != "34482"; then
	echo original size 34482, current size $Wc_c
fi
# ============= obfuscate.info ==============
echo "x - extracting obfuscate.info (Text)"
sed 's/^X//' << 'SHAR_EOF' > obfuscate.info &&
X1993 Obfuscated contest information
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
XThe International Obfuscated C Code Contest (IOCCC), in the sprit of
Xco-operation, is willing mention other programming contents, as space
Xpermits.
X
XHow to have your contest included in this file:
X
X    If you wish the IOCCC judges to include your contest in this file,
X    send a request to:
X
X	judges@toad.com
X
X    We request that contest descriptions be limited to 50 lines and to
X    not exceed 2500 bytes.  We typically request that your contest
X    include a current description of the IOCCC.
X
X    In order to be included in this file for given year, we must
X    receive a current description no EARLIER than Jan 1 00:00:00 UTC and
X    no LATER than Feb 15 00:00:00 UTC.  Agreement to publish your
X    contest must also be obtained prior to Feb 15.  Annual contests
X    that fail to submit a new entry will be dropped from this file.
X
XOfficial Disclaimer:  (pardon the officialese)
X
X    The contents noted below, other than the IOCCC, are not affiliated
X    with the IOCCC, nor are they endorsed by the IOCCC.  We reserve the
X    right to refuse to print information about a given contest.
X
X    The information below was provided by the particular contest
X    organizer(s) and printed by permission.  Please contact the
X    contest organizer(s) directly regarding their contents.
X
XWith that official notice given, we present for your ENJOYMENT, the following
Xinformation about contents:
X
X---------------------------------------------------------------------------
X
X    10th International Obfuscated C Contest
X
X	"The original obfuscated contest"
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X                b.  To darken.  2. To confuse:  Their emotions obfuscated
X		their judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X                Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X                obfuscatory adj.
X
X    GOALS OF THE CONTEST:
X
X        * To write the most Obscure/Obfuscated C program under the rules below.
X        * To show the importance of programming style, in an ironic way.
X        * To stress C compilers with unusual code.
X        * To illustrate some of the subtleties of the C language.
X        * To provide a safe forum for poor C code.  :-)
X
X    The IOCCC is the grandfather of USENET programming contests.  Since
X    1984, this contest demonstrated that a program that simply works
X    correctly is not sufficient.  The IOCCC has also done much to add
X    the arcane word 'obfuscated' back into the English language.
X    (see "The New Hacker's Dictionary" by Eric Raymond)
X
X    You are strongly encouraged to read the new contest rules before
X    sending any entries.  The rules, and sometimes the contest Email
X    address itself, change over time.  A valid entry one year may
X    be rejected in a later year due to changes in the rules.  The typical
X    start date for contests is in early March.  Contest rules are normally not
X    finalized and posted until the beginning of the contest.  The typical
X    closing date for contests are in early May.
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain them, send Email to the address
X    above and use the subject 'send rules'.
X
X    One may obtain winners of previous contests (1984 to date), via ftp from:
X
X	host: ftp.uu.net	(192.48.96.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc
X
X    As a last resort, previous winners may be obtained by sending Email
X    to the above address.  Please use the subject 'send YEAR winners',
X    where YEAR is a single 4 digit year, a year range, or 'all'.
X
X---------------------------------------------------------------------------
X
X    0th International Obfuscated Perl Contest
X	By: Landon Noll & Larry Wall
X
X    This content is being planned.  Someday when Landon & Larry are not too
X    busy, they will actually get around to posting the first set of rules!
X
X    Landon says: "Yes, I know that I said we would have a contest in 1993,
X		  but other existing projects got in the way.  Hopefully
X		  something will be developed after Nov 1993."
X
X---------------------------------------------------------------------------
X
X                2nd International obFUsCaTeD POsTsCripT Contest
X                     Jonathan Monsarrat (jgm@cs.brown.edu)
X                         Alena Lacova (alena@nikhef.nl)
X
X    A  contest of  programming skills  and  knowledge, exclusively  for the
X    PostScript programming language. Its purpose:
X
X    * To spread knowledge of PostScript and its details.
X    * To applaud those with the best tricks.
X    * To prove  that humans can  beat those damnable  machine generators at
X      their own game by writing  the most obscure and mysterious PostScript
X      programs ever.
X
X    Winners will receive the fame and attention that goes with having their
X    program entry posted as a winner to programmers world-wide.
X
X    The 1993 contest rules and results are available by ftp as
X    ``wilma.cs.brown.edu:pub/postscript/obfuscated*.shar'', or individually
X    in the obfuscated directory. The judges will post the 1994 rules
X    in November to comp.lang.postscript on Usenet, and other places.
X    Send questions to jgm@cs.brown.edu.
X
X    Categories include: Best Obfuscated PostScript, Best Artwork,
X    Most Compact, Best Interactive Program, Most Useful, and
X    anything so unusual and creative that it deserves an award.
X
X    The judges will choose the winners of each category.
X
X    Alena Lacova  is a system  administrator at NIKHEF  (Institute for High
X    Energy and Nuclear  Physics) in the  Netherlands. She is  the author of
X    The PostScript Chaos  Programs, which draw  Julia sets, Mandelbrot sets
X    and other kinds of fractal functions.
X
X    Jonathan Monsarrat is a graduate  student from MIT and Brown University
X    in  the  U.S.A. He  is  the  FAQ maintainer  for  the  Usenet newsgroup
X    comp.lang.postscript and the author of The PostScript Zone and LameTeX.
X .
X
SHAR_EOF
chmod 0444 obfuscate.info ||
echo "restore of obfuscate.info failed"
set `wc -c obfuscate.info`;Wc_c=$1
if test "$Wc_c" != "6418"; then
	echo original size 6418, current size $Wc_c
fi
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
document_id: 66410
From: brown@ftms.UUCP (Vidiot)
Subject: Re: problem with xvertext package

In article <1993Mar31.181357.28381@sierra.com> dkarr@sierra.com (David Karr) writes:
<I might have a need in the future to display rotated text.  I noticed the
<"xvertext" package on the net.  It looks very good, but it has one slight
<problem.  The API to it assumes you have a font name, not an already loaded
<font.  It shouldn't be too difficult to split up the function into two
<interface routines, one with a font name, and one with an XFontStruct, but
<I thought I would ask the author (Alan Richardson
<(mppa3@uk.ac.sussex.syma)) first in case he was planning this already.
<Unfortunately, his email address bounced.  Does Alan R. or the current
<maintainer of "xvertext" see this?

The e-mail address you mentioned above is for use with the U.K.  As you know,
the Brits do everything backwards :-)  So, the real address from the states is:

	mppa3@syma.sussex.ac.uk

Give it a try.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 66411
From: Bill.Kayser@delft.SGp.slb.COM (Bill Kayser)
Subject: Re: gadgets vs widgets


> 
> > Motif managers take a very simplistic approach to the way they handle events 
> > for gadgets: they track for all events(such as Motion Notify) wether or not 
> > the gadget expresses interest in the events. As a result, gadgets typically
> > generate a great deal more network traffic.  Those with X terminals might find 
> > a noticable network performance drop as a result.
> > 
> > Really?  What's the point using Gadgets then?
> 
> It is a case of memory vs. network performance tradeoff.  Gadgets
> save both client and server memory.  But memory is easily expandable while
> network performance is not, so if I were designing Motif I would
> at least make it *possible* to avoid using gadgets.  At present you
> really don't have a choice because Motif forces you to use gadgets
> in menus and in various other places.
> 
> Adrian Nye
> O'Reilly and Associates, Inc.


I've been using the XmGraph widget that's been floating around and I
noticed the performance is significantly better using Gadgets, perhaps
even 100% faster.  I had heard in an old programming course that gadgets
were no longer any benefit to performance, and that it's just as well
to use widgets everywhere.  So why would ~50 pushbutton gadgets be a lot
quicker than 50 pushbuttons in the graph?  Should I start putting gadgets
back into my long pulldown menus? 

XmGraph manages children connected by XmArc widgets in a directed network
type graph with automatic layout capability.


Bill

---------------------------------------------------------------------------
                                         Schlumberger Geco-Prakla
                                         Internet : kayser@delft.sgp.slb.com

Newsgroup: comp.windows.x
document_id: 66412
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

epstein@trwacs.fp.trw.com (Jeremy Epstein) writes:

>dmm@head-cfa.harvard.edu (David Meleedy) writes:

>[Description of compiling problems deleted.]

>>gcc -fpcc-struct-return -o bmtoa bmtoa.o -O2 -funroll-loops   -L../.././lib/Xmu 
>>-lXmu -L../.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L/afs/cfa/syste
>>m/sun4c_413/usr/head/lib/X11/X11R5    
>>ld: Undefined symbol
>>   _XGetVisualInfo
>>   _XFree
>>   _XInternAtom

>[etc.]

>There's a bug in SunOS 4.1.3, which is alluded to in the FAQ (although
>there it's talking about X11R4 as being affected).  You need to force
>libXmu to be linked statically, rather than dynamically, which works
>around the linker error.  The simplest thing to do is edit each of
>the Makefiles where there's a failure and change the line which reads:
>	XMULIB = -L$(XMUSRC) -lXmu
>to:
>	XMULIB = -L$(XMUSRC) -Bstatic -lXmu -Bdynamic

No. This is only relevant for OpenWindows 3.x as shipped with SunOS.
It is not relevant for MIT R5. MIT R5 should compile without problems.

Casper

Newsgroup: comp.windows.x
document_id: 66413
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Help building X11R5 with gcc

In article <1993Apr6.024257.8480@etrog.se.citri.edu.au>
tim@kimba.catt.citri.edu.au (Tim Liddelow) writes:
|> Can people please send me any hints on building X11R5 with gcc 2.3.3 ?  Is
|> there any pitfalls to be avoided ?  Any hints ?  I would appreciate hearing other
|> peoples' stories on this.

I have been building X11 with gcc since 2.1 and the only time I had
trouble was when the position independant code option broke (so I
couldn't use gcc to build Sun shared libraries). The important thing to
do is to follow the tips given in the gcc release. Gcc generates code
that requires libgcc2 and you should take that into account when
deciding which compiler to use for the libraries.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
document_id: 66414
From: cheong@solomon.technet.sg (SCSTECH admin)
Subject: Getting Pseudo TTY in X/Motif

Hi,

I am about to write an application in X/Motif that will require the
embedding of a pseudo tty. So, before I re-invent the wheel, has anyone
written/gotten a motif widget that does the job ? Otherwise, I would
appreciate any pointers to make such a beast.

My environment is X11R4/Motif 1.1 and X11R5/Motif 1.2 (if this helps).


Thanks in advance.


Arthur Lim
Email : arthur@mailhost.scs.com.sg


Newsgroup: comp.windows.x
document_id: 66415
From: wilie.wilson@analog.com ( willie wilson )
Subject: Experiences of DESQview/X? 

I need to have PCs and SPARCstations run the same application ( namely
MicroSoft Project ). The original system ran on the PC. Now it needs to
be expanded to allow UNIX users to work with the application. The
current proposal is to use DESQview/X as a display server for the
application.

I would like to know your experiences with using DESQview/X to run an
application on a PC and displaying on a SPARCstation. I've heard that
the network traffic is slow.

Replies only by e-mail please.

Thanks, in advance.
---
               ,__o
             _-\_<,
...Willie   (*)/'(*)
willie.wilson@analog.com


Newsgroup: comp.windows.x
document_id: 66416
From: Bill.Kayser@delft.SGp.slb.COM (Bill Kayser)
Subject: Re: TeleUse, UIM/X, and C++


> 
> Does anyone have any good ideas on how to integrate C++ code elegantly
> with TeleUse, UIM/X / Interface Architect generated code?
> 
> Source would be great, but any suggestions are welcome.

It's my understanding that the next release of UIM/X, due out
last February :-) has full support for C++.

I use XDesigner which does not have the interpreter or UI meta languages
of these other tools but does fully support C++ code generation,
reusable templates via C++ classes which are generated, a variety of
other handy features for using C++ and layout functions in different
ways, and generates Motif 1.2 code (including drag 'n drop, 
internationalization, etc.).  Fits in quite nicely with Doug Young's
paradigm for C++/Motif.

Available in the US from VI Corp, in Europe from Imperial Software,
London (see FAQ for details).

Bill
________________________________________________________________________
                                           Schlumberger Geco Prakla
                                           kayser@delft.sgp.slb.com

Newsgroup: comp.windows.x
document_id: 66417
From: ware@oboe.cis.ohio-state.edu (Peter Ware)
Subject: Re: Private Colormaps & Widget creation

You are right in supposing that the problem is with the XmNcolormap
(XtNcolormap for truly literate beings) not being set.  What you want
to do is start your application with your new colormap.  This can be a
chicken and egg sort of problem, however.  If you look at the Xt FAQ
there is an example that should show how it can be done.  If not, let
me know and maybe I can improve the example.

--pete
--
Pete Ware					ware@cis.ohio-state.edu
CIS Dept, Ohio State University			w/ (614) 292-7318
228 Bolz Hall, 2036 Neil Ave.			h/ (614) 538-0965
Columbus, OH 43210

Newsgroup: comp.windows.x
document_id: 66418
From: wilk@Informatik.TU-Muenchen.DE (Christian Wilk)
Subject: XtShellStrings,XtStrings?


Hello,

does somebody know the functions  XtShellStrings and XtStrings?
I haven't found them in any librarys not Xm, Xt, nor X11, and I need
them to install a tool.

Any hints greatly appreciated! Please reply via e-mail.

Thanks in advance!
_______________________________________________________________________________

christian wilk			 I've seen things you people wouldn't believe.
technical university of munich	 Attack ships on fire off the shoulder of Orion.
munich, germany			 I watched C-beams glitter in the dark near the
				 Tannhauser gate. All those moments will be lost
wilk@informatik.tu-muenchen.de   in time - like tears in rain. Time to die.
								-- Roy Batty
_______________________________________________________________________________

Newsgroup: comp.windows.x
document_id: 66419
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: XtShellStrings,XtStrings?

In article <1993Apr5.145635.16857@Informatik.TU-Muenchen.DE>
wilk@Informatik.TU-Muenchen.DE (Christian Wilk) writes:
|> 
|> Hello,
|> 
|> does somebody know the functions  XtShellStrings and XtStrings?
|> I haven't found them in any librarys not Xm, Xt, nor X11, and I need
|> them to install a tool.
|> 
|> Any hints greatly appreciated! Please reply via e-mail.

They aren't functions, they are character arrays. The standard strings
are either defined as string constants or character pointers into
XtShellStrings and XtStrings determined by XTSTRINGDEFINES. Your
libraries were compiled with this defined and your application with it
undefined so simply recompile one or the other. It is probably worth
adding -DXTSTRINGDEFINES to your CFLAGS.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
document_id: 66420
From: rbw@jet.uk (Dr Richard B Wilkinson)
Subject: XBell

I have a program produces a continuous tone by calling XBell
repeatedly at an interval equal to the duration of the bell. If it is
run more than once on a display, the tones are buffered in the X
server and the tone contunues after all occurrences of the program
have exited. Is there a convenient way of preventing this, e.g., by
emptying the X server bell buffer when each program exits?
- Disclaimer: Please note that the above is a personal view and should not 
  be construed as an official comment from the JET project.

Newsgroup: comp.windows.x
document_id: 66421
From: michaelr@spider.co.uk (Michael S. A. Robb)
Subject: Re: Honors Degrees: Do they mean anything?

In article <TKLD.93Apr2123341@burns.cogsci.ed.ac.uk> tkld@cogsci.ed.ac.uk (Kevin Davidson) writes:
>
>>   In my opinion, a programming degree is still worth having.
>
> Yes, but a CS degree is *not* a programming degree. Does anybody know of
>a computing course where *programming* is taught ? Computer Science is
>a branch of maths (or the course I did was).
> I've also done a Software Engineering course - much more practical and likely
>to be the sort of thing an employer really wants, rather than what they think
>they want, but also did not teach programming. The ability to program was
>an entry requirement.

At Robert Gordon University, programming was the main (most time-consuming) 
start of the course. The first two years consisted of five subjects:
Software Engineering (Pascal/C/UNIX), Computer Engineering (6502/6809/68000 
assembler), Computer Theory (LISP/Prolog), Mathematics/Statistics and 
Communication Skills (How to pass interviews/intelligence tests and group
discussions e.g. How to survive a helicopter crash in the North Sea).
The third year (Industrial placement) was spent working for a computer company 
for a year. The company could be anywhere in Europe (there was a special 
Travel Allowance Scheme to cover the visiting costs of professors).  
The fourth year included Operating Systems(C/Modula-2), Software Engineering 
(C/8086 assembler), Real Time Laboratory (C/68000 assembler) and Computing 
Theory (LISP).  There were also Group Projects in 2nd and 4th Years, where 
students worked in teams to select their own project or decide to work for an 
outside company (the only disadvantage being that specifications would change 
suddenly).
 
In the first four years, there was a 50%:50% weighting between courseworks and 
exams for most subjects. However in the Honours year, this was reduced to a 
30%:70% split between an Individual Project and final exams (no coursework 
assessment) - are all Computer Science courses like this?

BTW - we started off with 22 students in our first year and were left with 8 by
Honours year. Also, every course is tutored separately. Not easy trying
to sleep when you are in 8 student class :-). 

Cheers,
  Michael 
-- 
| Michael S. A. Robb     | Tel: +44 31 554 9424  | "..The problem with bolt-on
| Software Engineer      | Fax: +44 31 554 0649  |  software is making sure the
| Spider Systems Limited | E-mail:               |  bolts are the right size.."
| Edinburgh, EH6 5NG     | michaelr@spider.co.uk |             - Anonymous

Newsgroup: comp.windows.x
document_id: 66422
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 4/5

Archive-name: x-faq/part4
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  80)! Where can I get an X-based plotting program?

These usually are available from uucp sites such as uunet or other sites as
marked; please consult the archie server to find more recent versions.

 gnuplot	X (xplot), PostScript and a bunch of other drivers.
	export.lcs.mit.edu [and elsewhere]:contrib/gnuplot3.1.tar.Z

 gl_plot	X output only [?]
	comp.sources.unix/volume18

 graph+
	yallara.cs.rmit.oz.au:/pub/graph+.tar.Z [131.170.24.42]
	comp.sources.unix/volume8

 pdraw,drawplot		2D and 3D X,PS
	scam.berkeley.edu:/src/local/3dplot.tar.Z [128.32.138.1]
	scam.berkeley.edu:/src/local/contour.tar.Z [128.32.138.1]
	scam.berkeley.edu:/src/local/drawplot.tar.Z [128.32.138.1]
	uunet:~ftp/contrib/drawplot.tar.Z

 xgraph		plot, zoom. Outputs PS or HPGL.
	shambhala.berkeley.edu:/pub/xgraph-11.tar.Z [128.32.132.54]
	sun1.ruf.uni-freiburg.de:X11/contrib/xgraph-11.tar.Z [132.230.1.1]
	nisc.jvnc.net:pub/xgraph-11.tar.Z [128.121.50.7]
	comp.sources.x/volume3
	or many other sites 

 ACE/gr (formerly xvgr and xmgr) XY plotting tools
	ftp.ccalmr.ogi.edu [129.95.72.34]
	XView version: /CCALMR/pub/acegr/xvgr-2.09.tar.Z
	Motif version: /CCALMR/pub/acegr/xmgr-2.09.tar.Z
	[mirrored on export in /contrib/acegr]

 XGobi		An interactive dynamic scatter-plotting tool from Bellcore
	lib.stat.cmu.edu: general/xgobi* [log in as statlib with your email
	as the password; or send email to statlib@lib.stat.cmu.edu containing
	the one-line message "send xgobi from general"]
	Information from: Debby Swayne, dfs@bellcore.com.

 Robot		a scientific XView-based graph plotting and data analysis tool
	ftp.astro.psu.edu:pub/astrod/robotx0.46.tar.Z [128.118.147.28]

 plotmtv	a multi-purpose 2D/3D plotter
	tanqueray.berkeley.edu:/pub/Plotmtv1.3.1.tar.Z
	

[2/91. Thanks in part to: emv@ox.com (Ed Vielmetti); geoff@Veritas.COM 
(Geoffrey Leach); Paul A. Scowen (uk1@spacsun.rice.edu); black@beno.CSS.GOV 
(Mike Black)]

----------------------------------------------------------------------
Subject:  81)  Where can I get an X-based spreadsheet?

A version of "sc" for X and which supports Lotus files is available from
vernam.cs.uwm.edu in xspread2.0.tar.Z. It also includes graphing functions.
Information: soft-eng@cs.uwm.edu.

The GNU package OLEO is available in prep.ai.mit.edu:pub/gnu/oleo-1.2.2.tar.Z;
it can generate PostScript renditions of spreadsheets.

Also:

Several of the below are part of integrated office-productivity tools which may
also include word-processing, email, conferencing, image processing, and 
drawing/painting, among other features.

Vendor                        Product    Contact Information 
------                        -------    -------------------
Access Technology             20/20      508-655-9191
Informix                      WingZ      800-331-1763
Quality Software Products     Q-Calc/eXclaim    800-628-3999 (CA:213-410-0303) 
Unipress                      Q-Calc     201-985-8000
Uniplex                       Uniplex    214-717-0068, 800-356-8063
Digital			      DECdecision   1-800-DIGITAL
Applix			      Aster*x	 508-870-0300, 1-800-8APPLIX.
AIS			      XESS	 919-942-7801, info@ais.com
BBN Software Products         BBN/Slate  617-873-5000 slate-offer@bbn.com
Elsid Software Systems	      Ripcam	 613-228-9468

SAS by the SAS Institute now has a spreadsheet module; the X version is
available on the current popular RISC platforms.

----------------------------------------------------------------------
Subject:  82)  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 (pete@egh-qc.co.uk); 7/92]
[thanks to Atul Chhabra (atul@nynexst.com); 10/92]

----------------------------------------------------------------------
Subject:  83)  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.5.2 is now available; the major site is prep.ai.mit.edu. 
[11/92] 

	GSPreview (by the Computing Laboratory of the University of Kent at 
Canterbury) is an X user interface (WCL-based) to the Ghostscript 2.4[.1]
interpreter [5/92].  The source is available for anonymous ftp from 
export.lcs.mit.edu as gspreview.2.0.tar.Z.

	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.4.1.tar.Z [1/93]. There are also several executables available
on ftp.cs.wisc.edu:/pub/X/ghostview-exe for various architectures.

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. 

----------------------------------------------------------------------
Subject:  84)  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 export in contrib/xgks-widget.tar.Z. 

----------------------------------------------------------------------
Subject:  85)  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 export.lcs.mit.edu (18.24.0.12), 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 export 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 export as PEXt.tar.Z; it includes a PEX widget making it easier to
include PEX in Xt-based programs.

----------------------------------------------------------------------
Subject:  86)  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 export.lcs.mit.edu;
current version is patchlevel 16 [12/92].

----------------------------------------------------------------------
Subject:  87)  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.

In addition:

	xproof, an X previewer for ditroff has been contributed by Marvin 
Solomon (solomon@cs.wisc.edu); version 3.5 is available on export 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:  88)! Where can I get a WYSIWYG interface builder?

	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 export.lcs.mit.edu.

	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.

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
VUIT 2.0		Motif 1.1	C/UIL[r/w]		DEC 
								(1-800-DIGITAL)
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 2.0 *	Motif 1.1	C(Xm); C/UIL[r/w]	ICS 
					Ada			(617-621-0060)
								info@ics.com
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]
								Telesoft
								(619-457-2700)
							gui_info@telesoft.com
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.0|1.1.2	C(Xm)			AKA EDV
						       +49 (0) 234/33397-0
						       +49 (0) 234/33397-40 fax
UIB			Open Look/Motif	C++(OI)			ParcPlace 
								+1 303-678-4626
								
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.

	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 are planned to have a Motif 
look.  GRAMMI is written in Ada and generates Ada specs and stub bodies. 
(1-800-GRAMMI-1).

	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].
	WINTERP: an Xlisp-based Motif toolkit allows for interpretive 
programming. The copy on the R4 tape is outdated; get a copy off export 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 export.lcs.mit.edu (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.

----------------------------------------------------------------------
Subject:  89)  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 export'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.tar.Z and may also be found 
in the alt.sources archives.

----------------------------------------------------------------------
Subject:  90)  Where can I get an X-based debugger?

	xdbx, an X interface to the dbx debugger, is available via ftp from 
export. 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 export.
	mxgdb is a Motif interface to gdb by Jim Tsillas 
(jtsillas@bubba.ma30.bull.com); version 1.1.5 was released 1/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 export 
(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:  91)! 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.
	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 export 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:
		gatekeeper.dec.com      pub/X11/contrib/XTrap_v31.tar.Z
		export.lcs.mit.edu      contrib/XTrap_v31.tar.Z
	wscrawl can be used as a "multi-person paint program". It's available
on sax.stanford.edu as wscrawl.shar.Z.
	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) offers multi-user confering software 
called Communique.

[Thanks in part to scott@spectra.com (Tim Scott), 5/91, and to Peter Cigehn 
(peter@lulea.trab.se), 8/92 ]

----------------------------------------------------------------------
Subject:  92)  TOPIC: BUILDING THE X DISTRIBUTION [topic needs updating to R5]
----------------------------------------------------------------------
Subject:  93)  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:  94)  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:  95)  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 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:  96)  What is this strange problem building X clients on SunOS 4.1.2?

	In SunOS 4.1.2 Sun fixed a shared-library bug in ld which conflicts
with the way X11R4 builds the shared Xmu library, causing these symbols to be
undefined when building some X11 clients: 
	_get_wmShellWidgetClass
	_get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" appears to work. 

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 MIT 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 export in [1/93]
	contrib/X11R4_sunos4.1.2_patch_version3.Z

----------------------------------------------------------------------
Subject:  97)  Why can't gcc 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:  98)  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:  99)  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: 100)  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: 101)  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 MIT 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: 102)  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: 103)  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@expo.lcs.mit.edu (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: 104)  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: 105)  TOPIC: BUILDING X PROGRAMS 
----------------------------------------------------------------------
Subject: 106)  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.
	- see "System Administration - Imake: Friend of 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.

[1/91;12/91;5/92;8/92]

----------------------------------------------------------------------
Subject: 107)  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.
	export 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).

----------------------------------------------------------------------
Subject: 108)  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: 109)  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 MIT 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: 110)  What are these problems with "_XtInherit not found" on the Sun?
When I run 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]

----------------------------------------------------------------------
Subject: 111)  Why can't I compile my R3 Xaw contrib programs under the new X?
I have a program that worked well under X11R3. When I try to link it under 
the current version of X, I get this message:
	Undefined:
	_XtScrollBarSetThumb
	_XtTextSetInsertionPoint
	_XtTextReplace

	There were several name changes in the Athena widget set (in addition
to the header files moving into <X11/Xaw/>); these are mentioned in the R4
release notes. In this case, these functions are not really Xt functions but
are part of the Xaw text widget and so have been renamed from Xt* to Xaw*.
[10/90]

----------------------------------------------------------------------
Subject: 112)  TOPIC: PROGRAMMING PROBLEMS AND PUZZLES
----------------------------------------------------------------------
Subject: 113)  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: 114)  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: 115)  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 export.lcs.mit.edu in contrib/mdisp.tar.Z. [4/92]

----------------------------------------------------------------------
Subject: 116)  Why does XtGetValues not work for me (sic)?

	The XtGetValues interface for retrieving resources from a widget is
sensitive to the type of variable. Your code may be doing something like this:
	{
	Arg args[3];
	int i;
	int sensitive;		/* oops; wrong data type */
	i=0;
	XtSetArg (args[i], XtNsensitive, &sensitive); i++;
	XtGetValues(widget, args, i );
	...
	}

But XtNsensitive is a Boolean, which on most machines is a single byte; 
declaring the variable "sensitive" as Boolean works properly. This problem 
comes up often when using particular toolkits that redefine the Xt types 
Dimension and Position; code that assumes they are int will have similar 
problems if those types are actually short. In general: you are safe if you
use the actual type of the resource, as it appears in the widget's man page.
[11/90]

----------------------------------------------------------------------
Subject: 117)  Why don't XtConfigureWidget/XtResizeWidget/XtMoveWidget work?

	You're probably trying to use these functions from application code.
They should be used only internally to widgets; these functions are for a 
parent widget to change the geometry of its children. Other promising 
functions, XtMakeGeometryRequest() and XtMakeResizeRequest(), are also for use 
only by widgets, in this case by a child to request a change from its parent.
	The only way for your application to request a geometry change for a
widget is to issue an XtSetValues call setting some of the geometry resources.
Although this will result in the widget-internal functions' being called, your
application code must use the standard XtSetValues interface or risk the 
widgets' data becoming corrupted.
	[The Xlib calls XMoveWindow() and XResizeWindow() should similarly be 
avoided; they shouldn't be used to change XtNx, XtNy, XtNwidth, or XtNheight.]

----------------------------------------------------------------------
Subject: 118)  Why isn't there an XtReparentWidget call like XReparentWindow?

	Although there are various details of the current implementation of
the Xt internals which make reparenting difficult, the major reason that no
such call exists is that it remains undefined what the set of resources for
the "new" widget should be. Resources are typically set based on the location
in the instance hierarchy; what resources should change if the instance moves?
What should happen to the widget's children? And by the time such semantics are
defined, there would probably be little advantage over destroying the old 
widget and creating a new widget in the correct location with the desired 
resources, as setting the resources correctly is the majority of work in 
creating a new widget.

	Note that reparenting is possible in the OI toolkit.

----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
document_id: 66423
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: whole win on screen?

Window placement on screen
--------------------------

I would like to configure my system (a HP UNIX) to avoid that any corner
of a given window is displayed outside of the visible screen. The whole
window should be visible and it should be impossible to move any window
outside the visible aerea.

1. Can this be done by configuring the window manager's resources

2. Can this be done on applikation level 

3. A hardcoded solution is possible, but is it possible to have a
  upper limit of a given window size


Thank you for information and help


Newsgroup: comp.windows.x
document_id: 66424
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 5/5

Archive-name: x-faq/part5
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject: 119)  I'm writing a widget and can't use a float as a resource value.

Float resources are not portable; the size of the value may be larger than
the size of an XtPointer. Try using a pointer to a float instead; the Xaw
Scrollbar float resources are handled in this way. 

----------------------------------------------------------------------
Subject: 120)  Is this a memory leak in the X11R4 XtDestroyWidget()?!

Yes. This is the "unofficial" fix-19 for the X11R4 Destroy.c:

*** Destroy.c.1.37	Thu Jul 11 15:41:25 1991
--- lib/Xt/Destroy.c	Thu Jul 11 15:42:23 1991
***************
*** 1,4 ****
--- 1,5 ----
  /* $XConsortium: Destroy.c,v 1.37 90/09/28 10:21:32 swick Exp $ */
+ /* Plus unofficial patches in revisions 1.40 and 1.41 */
  
  /***********************************************************
  Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts,
***************
*** 221,239 ****
       */
  
      int i = 0;
!     DestroyRec* dr = app->destroy_list;
      while (i < app->destroy_count) {
  	if (dr->dispatch_level >= dispatch_level)  {
  	    Widget w = dr->widget;
  	    if (--app->destroy_count)
  		bcopy( (char*)(dr+1), (char*)dr,
! 		       app->destroy_count*sizeof(DestroyRec)
  		      );
  	    XtPhase2Destroy(w);
  	}
  	else {
  	    i++;
- 	    dr++;
  	}
      }
  }
--- 222,245 ----
       */
  
      int i = 0;
!     DestroyRec* dr;
      while (i < app->destroy_count) {
+ 
+ 	/* XtPhase2Destroy can result in calls to XtDestroyWidget,
+ 	 * and these could cause app->destroy_list to be reallocated.
+ 	 */
+ 
+ 	dr = app->destroy_list + i;
  	if (dr->dispatch_level >= dispatch_level)  {
  	    Widget w = dr->widget;
  	    if (--app->destroy_count)
  		bcopy( (char*)(dr+1), (char*)dr,
! 		       (app->destroy_count - i) * sizeof(DestroyRec)
  		      );
  	    XtPhase2Destroy(w);
  	}
  	else {
  	    i++;
  	}
      }
  }

[from Donna Converse, converse@expo.lcs.mit.EDU]

----------------------------------------------------------------------
Subject: 121)  Are callbacks guaranteed to be called in the order registered?

	Although some books demonstrate that the current implementation of Xt
happens to call callback procedures in the order in which they are registered, 
the specification does not guarantee such a sequence, and supplemental 
authoritative documents (i.e. the Asente/Swick volume) do say that the order is
undefined.  Because the callback list can be manipulated by both the widget and
the application, Xt cannot guarantee the order of execution.
	In general, the callback procedures should be thought of as operating 
independently of one another and should not depend on side-effects of other
callbacks operating; if a seqence is needed, then the single callback to be 
registered can explicitly call other functions necessary.

[4/92; thanks to converse@expo.lcs.mit.edu]

----------------------------------------------------------------------
Subject: 122)  Why doesn't XtDestroyWidget() actually destroy the widget?

	XtDestroyWidget() operates in two passes, in order to avoid leaving
dangling data structures; the function-call marks the widget, which is not 
actually destroyed until your program returns to its event-loop. 

----------------------------------------------------------------------
Subject: 123)  How do I query the user synchronously using Xt?
	
	It is possible to have code which looks like this trivial callback,
which has a clear flow of control. The calls to AskUser() block until answer
is set to one of the valid values. If it is not a "yes" answer, the code drops
out of the callback and back to an event-processing loop: 

	void quit(Widget w, XtPointer client, XtPointer call)
	{
		int             answer;
		answer = AskUser(w, "Really Quit?");
		if (RET_YES == answer)
			{
			answer = AskUser(w, "Are You Really Positive?");
			if (RET_YES == answer)
				exit(0);
                }
	}

	A more realistic example might ask whether to create a file or whether 
to overwrite it.
	This is accomplished by entering a second event-processing loop and
waiting until the user answers the question; the answer is returned to the
calling function. That function AskUser() looks something like this, where the 
Motif can be replaced with widget-set-specific code to create some sort of 
dialog-box displaying the question string and buttons for "OK", "Cancel" and 
"Help" or equivalents:

  int AskUser(w, string)
        Widget          w;
        char           *string;
  {
        int             answer=RET_NONE;	/* some not-used marker */
        Widget          dialog;			/* could cache&carry, but ...*/
        Arg             args[3];
        int             n = 0;
        XtAppContext    context;

        n=0;
        XtSetArg(args[n], XmNmessageString, XmStringCreateLtoR(string,
                XmSTRING_DEFAULT_CHARSET)); n++;
        XtSetArg(args[n], XmNdialogStyle, XmDIALOG_APPLICATION_MODAL); n++;
        dialog = XmCreateQuestionDialog(XtParent(w), string, args, n);
        XtAddCallback(dialog, XmNokCallback, response, &answer);
        XtAddCallback(dialog, XmNcancelCallback, response, &answer);
        XtAddCallback(dialog, XmNhelpCallback, response, &answer);
        XtManageChild(dialog);

        context = XtWidgetToApplicationContext (w);
        while (answer == RET_NONE || XtAppPending(context)) {
                XtAppProcessEvent (context, XtIMAll);
        }
        XtDestroyWidget(dialog);  /* blow away the dialog box and shell */
        return answer;
  }

	The dialog supports three buttons, which are set to call the same 
function when tickled by the user.  The variable answer is set when the user 
finally selects one of those choices:

  void response(w, client, call)
        Widget          w;
        XtPointer client;
        XtPointer call;
  {
  int *answer = (int *) client;
  XmAnyCallbackStruct *reason = (XmAnyCallbackStruct *) call;
        switch (reason->reason) {
        case XmCR_OK:
                *answer = RET_YES;	/* some #define value */
                break;
        case XmCR_CANCEL:
                *answer = RET_NO; 
		break;
        case XmCR_HELP:
                *answer = RET_HELP;
                break;
        default:
                return;
        }
}

and the code unwraps back to the point at which an answer was needed and
continues from there.

[Thanks to Dan Heller (argv@sun.com); further code is in Dan's R3/contrib
WidgetWrap library. 2/91]

----------------------------------------------------------------------
Subject: 124)  How do I determine the name of an existing widget?
I have a widget ID and need to know what the name of that widget is.

	Users of R4 and later are best off using the XtName() function, which 
will work on both widgets and non-widget objects.

	If you are still using R3, you can use this simple bit of code to do 
what you want. Note that it depends on the widget's internal data structures 
and is not necessarily portable to future versions of Xt, including R4.

	#include <X11/CoreP.h>
	#include <X11/Xresource.h>
	String XtName (widget)
	Widget widget;	/* WILL work with non-widget objects */
	{
	return XrmNameToString(widget->core.xrm_name);
	}

[7/90; modified with suggestion by Larry Rogers (larry@boris.webo.dg.com) 9/91]

----------------------------------------------------------------------
Subject: 125)  Why do I get a BadDrawable error drawing to XtWindow(widget)?
I'm doing this in order to get a window into which I can do Xlib graphics
within my Xt-based program:

> canvas = XtCreateManagedWidget ( ...,widgetClass,...) /* drawing area */
> ...
> window = XtWindow(canvas);	/* get the window associated with the widget */
> ...
> XDrawLine (...,window,...);	/* produces error */

	The window associated with the widget is created as a part of the 
realization of the widget.  Using a window id of NULL ("no window") could 
create the error that you describe.  It is necessary to call XtRealizeWidget() 
before attempting to use the window associated with a widget. 
	Note that the window will be created after the XtRealizeWidget() call, 
but that the server may not have actually mapped it yet, so you should also 
wait for an Expose event on the window before drawing into it.

----------------------------------------------------------------------
Subject: 126)  Why do I get a BadMatch error when calling XGetImage?

The BadMatch error can occur if the specified rectangle goes off the edge of 
the screen. If you don't want to catch the error and deal with it, you can take
the following steps to avoid the error:

1) Make a pixmap the same size as the rectangle you want to capture.
2) Clear the pixmap to background using XFillRectangle.
3) Use XCopyArea to copy the window to the pixmap.
4) If you get a NoExpose event, the copy was clean. Use XGetImage to grab the
image from the pixmap.
5) If you get one or more GraphicsExpose events, the copy wasn't clean, and 
the x/y/width/height members of the GraphicsExpose event structures tell you 
the parts of the pixmap which aren't good.
6) Get rid of the pixmap; it probably takes a lot of memory.

[10/92; thanks to Oliver Jones (oj@pictel.com)]

----------------------------------------------------------------------
Subject: 127)  How can my application tell if it is being run under X?

	A number of programs offer X modes but otherwise run in a straight
character-only mode. The easiest way for an application to determine that it is
running on an X display is to attempt to open a connection to the X server:
	
	display = XOpenDisplay(display_name);
	if (display)
		{ do X stuff }
	else
		{ do curses or something else }
where display_name is either the string specified on the command-line following
-display, by convention, or otherwise is (char*)NULL [in which case 
XOpenDisplay uses the value of $DISPLAY, if set].

This is superior to simply checking for the existence a -display command-line 
argument or checking for $DISPLAY set in the environment, neither of which is 
adequate. [5/91]

----------------------------------------------------------------------
Subject: 128)  How do I make a "busy cursor" while my application is computing?
Is it necessary to call XDefineCursor() for every window in my application?

	The easiest thing to do is to create a single InputOnly window that is 
as large as the largest possible screen; make it a child of your toplevel 
window and it will be clipped to that window, so it won't affect any other 
application. (It needs to be as big as the largest possible screen in case the 
user enlarges the window while it is busy or moves elsewhere within a virtual 
desktop.) Substitute "toplevel" with your top-most widget here (similar code 
should work for Xlib-only applications; just use your top Window):

     unsigned long valuemask;
     XSetWindowAttributes attributes;

     /* Ignore device events while the busy cursor is displayed. */
     valuemask = CWDontPropagate | CWCursor;
     attributes.do_not_propagate_mask =  (KeyPressMask | KeyReleaseMask |
         ButtonPressMask | ButtonReleaseMask | PointerMotionMask);
     attributes.cursor = XCreateFontCursor(XtDisplay(toplevel), XC_watch);

     /* The window will be as big as the display screen, and clipped by
        its own parent window, so we never have to worry about resizing */
     XCreateWindow(XtDisplay(toplevel), XtWindow(toplevel), 0, 0,
         65535, 65535, (unsigned int) 0, 0, InputOnly,
         CopyFromParent, valuemask, &attributes);

where the maximum size above could be replaced by the real size of the screen,
particularly to avoid servers which have problems with windows larger than
32767.

When you want to use this busy cursor, map and raise this window; to go back to
normal, unmap it. This will automatically keep you from getting extra mouse
events; depending on precisely how the window manager works, it may or may not
have a similar effect on keystrokes as well.

In addition, note also that most of the Xaw widgets support an XtNcursor 
resource which can be temporarily reset, should you merely wish to change the
cursor without blocking pointer events.

[thanks to Andrew Wason (aw@cellar.bae.bellcore.com), Dan Heller 
(argv@sun.com), and mouse@larry.mcrcim.mcgill.edu; 11/90,5/91]

----------------------------------------------------------------------
Subject: 129)  How do I fork without hanging my parent X program?

	An X-based application which spawns off other Unix processes which 
continue to run after it is closed typically does not vanish until all of its 
children are terminated; the children inherit from the parent the open X 
connection to the display. 
	What you need to do is fork; then, immediately, in the child process, 
		close (ConnectionNumber(XtDisplay(widget)));
to close the file-descriptor in the display information. After this do your 
exec. You will then be able to exit the parent.
	Alternatively, before exec'ing make this call, which causes the file 
descriptor to be closed on exec.
		(void) fcntl(ConnectionNumber(XDisplay), F_SETFD, 1);

[Thanks to Janet Anstett (anstettj@tramp.Colorado.EDU), Gordon Freedman 
(gjf00@duts.ccc.amdahl.com); 2/91. Greg Holmberg (holmberg@frame.com), 3/93.]

----------------------------------------------------------------------
Subject: 130)  Can I make Xt or Xlib calls from a signal handler?

	No. Xlib and Xt have no mutual exclusion for protecting critical 
sections. If your signal handler makes such a call at the wrong time (which 
might be while the function you are calling is already executing), it can leave
the library in an inconsistent state. Note that the ANSI C standard points
out that behavior of a signal handler is undefined if the signal handler calls
any function other than signal() itself, so this is not a problem specific to
Xlib and Xt; the POSIX specification mentions other functions which may be
called safely but it may not be assumed that these functions are called by 
Xlib or Xt functions.
	You can work around the problem by setting a flag in the interrupt
handler and later checking it with a work procedure or a timer event which
has previously been added.

	Note: the article in The X Journal 1:4 and the example in O'Reilly 
Volume 6 are in error.

[Thanks to Pete Ware (ware@cis.ohio-state.edu) and Donna Converse 
(converse@expo.lcs.mit.EDU), 5/92]

----------------------------------------------------------------------
Subject: 131)  What are these "Xlib sequence lost" errors?

	You may see these errors if you issue Xlib requests from an Xlib error 
handler, or, more likely, if you make calls which generate X requests to Xt or 
Xlib from a signal handler, which you shouldn't be doing in any case. 

----------------------------------------------------------------------
Subject: 132)  How can my Xt program handle socket, pipe, or file input?

	It's very common to need to write an Xt program that can accept input 
both from a user via the X connection and from some other file descriptor, but 
which operates efficiently and without blocking on either the X connection or 
the other file descriptor.
	A solution is use XtAppAddInput(). After you open your file descriptor,
use XtAppAddInput() to register an input handler. The input handler will be 
called every time there is something on the file descriptor requiring your 
program's attention. Write the input handler like you would any other Xt 
callback, so it does its work quickly and returns.  It is important to use only
non-blocking I/O system calls in your input handlers.
	Most input handlers read the file descriptor, although you can have an 
input handler write or handle exception conditions if you wish.
	Be careful when you register an input handler to read from a disk file.
You will find that the function is called even when there isn't input pending.
XtAppAddInput() is actually working as it is supposed to. The input handler is 
called whenever the file descriptor is READY to be read, not only when there is
new data to be read. A disk file (unlike a pipe or socket) is almost always 
ready to be read, however, if only because you can spin back to the beginning
and read data you've read before.  The result is that your function will almost
always be called every time around XtAppMainLoop(). There is a way to get the 
type of interaction you are expecting; add this line to the beginning of your 
function to test whether there is new data:
	     if (ioctl(fd, FIONREAD, &n) == -1 || n == 0) return;
But, because this is called frequently, your application is effectively in a 
busy-wait; you may be better off not using XtAppAddInput() and instead setting 
a timer and in the timer procedure checking the file for input.

[courtesy Dan Heller (argv@ora.com), 8/90; mouse@larry.mcrcim.mcgill.edu 5/91;
Ollie Jones (oj@pictel.com) 6/92]

----------------------------------------------------------------------
Subject: 133)  How do I simulate a button press/release event for a widget?

	You can do this using XSendEvent(); it's likely that you're not setting
the window field in the event, which Xt needs in order to match to the widget
which should receive the event.
	 If you're sending events to your own application, then you can use 
XtDispatchEvent() instead. This is more efficient than XSendEvent() in that you
avoid a round-trip to the server.
	Depending on how well the widget was written, you may be able to call
its action procedures in order to get the effects you want.

[courtesy Mark A. Horstman (mh2620@sarek.sbc.com), 11/90]

----------------------------------------------------------------------
Subject: 134)  Why doesn't anything appear when I run this simple program?

> ...
> the_window = XCreateSimpleWindow(the_display,
>      root_window,size_hints.x,size_hints.y,
>      size_hints.width,size_hints.height,BORDER_WIDTH,
>      BlackPixel(the_display,the_screen),
>      WhitePixel(the_display,the_screen));
> ...
> XSelectInput(the_display,the_window,ExposureMask|ButtonPressMask|
> 	ButtonReleaseMask);
> XMapWindow(the_display,the_window);
> ...
> XDrawLine(the_display,the_window,the_GC,5,5,100,100);
> ...

	You are right to map the window before drawing into it. However, the 
window is not ready to be drawn into until it actually appears on the screen --
until your application receives an Expose event. Drawing done before that will 
generally not appear. You'll see code like this in many programs; this code 
would appear after window was created and mapped:
  while (!done)
    {
      XNextEvent(the_display,&the_event);
      switch (the_event.type) {
	case Expose:	 /* On expose events, redraw */
		XDrawLine(the_display,the_window,the_GC,5,5,100,100);
		break;
	...
	}
    }

	Note that there is a second problem: some Xlib implementations don't 
set up the default graphics context to have correct foreground/background 
colors, so this program could previously include this code:
  ...
  the_GC_values.foreground=BlackPixel(the_display,the_screen);	/* e.g. */
  the_GC_values.background=WhitePixel(the_display,the_screen);	/* e.g. */
  the_GC = XCreateGC(the_display,the_window,
                GCForeground|GCBackground,&the_GC_values);
  ...
 
Note: the code uses BlackPixel and WhitePixel to avoid assuming that 1 is 
black and 0 is white or vice-versa.  The relationship between pixels 0 and 1 
and the colors black and white is implementation-dependent.  They may be 
reversed, or they may not even correspond to black and white at all.

Also note that actually using BlackPixel and WhitePixel is usually the wrong 
thing to do in a finished program, as it ignores the user's preference for 
foreground and background.

And also note that you can run into the same situation in an Xt-based program
if you draw into the XtWindow(w) right after it has been realized; it may
not yet have appeared.

----------------------------------------------------------------------
Subject: 135)  What is the difference between a Screen and a screen?

	The 'Screen' is an Xlib structure which includes the information about
one of the monitors or virtual monitors which a single X display supports. A 
server can support several independent screens. They are numbered unix:0.0,
unix:0.1, unix:0.2, etc; the 'screen' or 'screen_number' is the second digit --
the 0, 1, 2 which can be thought of as an index into the array of available 
Screens on this particular Display connection.
	The macros which you can use to obtain information about the particular
Screen on which your application is running typically have two forms -- one
which takes a Screen and one with takes both the Display and the screen_number.
	In Xt-based programs, you typically use XtScreen(widget) to determine 
the Screen on which your application is running, if it uses a single screen.
	(Part of the confusion may arise from the fact that some of the macros
which return characteristics of the Screen have "Display" in the names -- 
XDisplayWidth, XDisplayHeight, etc.)
	
----------------------------------------------------------------------
Subject: 136)  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 export.lcs.mit.edu 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; 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) as /pub/X11/motif++.21.jul.92.tar.Z.
	
	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 export 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 export.mit.edu.au 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: 137)  Where can I obtain alternate language bindings to X?

	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 export.lcs.mit.edu 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). 
	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
export.lcs.mit.edu: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 export obsoletes the version on the R5 contrib
tape. 
	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.

	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).

	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@expo.lcs.mit.edu.

----------------------------------------------------------------------
Subject: 138)  Can XGetWindowAttributes get a window's background pixel/pixmap?

	No.  Once set, the background pixel or pixmap of a window cannot be 
re-read by clients.  The reason for this is that a client can create a pixmap,
set it to be the background pixmap of a window, and then free the pixmap. The 
window keeps this background, but the pixmap itself is destroyed.  If you're 
sure a window has a background pixel (not a pixmap), you can use XClearArea() 
to clear a region to the background color and then use XGetImage() to read 
back that pixel.  However, this action alters the contents of the window, and 
it suffers from race conditions with exposures. [courtesy Dave Lemke of NCD 
and Stuart Marks of Sun]

	Note that the same applies to the border pixel/pixmap. This is a 
(mis)feature of the protocol which allows the server is free to manipulate the
pixel/pixmap however it wants.  By not requiring the server to keep the 
original pixel or pixmap, some (potentially a lot of) space can be saved. 
[courtesy Jim Fulton, MIT X Consortium]

----------------------------------------------------------------------
Subject: 139)  How do I create a transparent window?
	
	A completely transparent window is easy to get -- use an InputOnly
window. In order to create a window which is *mostly* transparent, you have
several choices:
	- the SHAPE extension first released with X11R4 offers an easy way to
make non-rectangular windows, so you can set the shape of the window to fit the
areas where the window should be nontransparent; however, not all servers 
support the extension.
	- a machine-specific method of implementing transparent windows for
particular servers is to use an overlay plane supported by the hardware.  Note 
that there is no X notion of a "transparent color index".
	- a generally portable solution is to use a large number of tiny 
windows, but this makes operating on the application as a unit difficult.
	- a final answer is to consider whether you really need a transparent
window or if you would be satisfied with being able to overlay your application
window with information; if so, you can draw into separate bitplanes in colors
that will appear properly.

[thanks to der Mouse, mouse@lightning.McRCIM.McGill.EDU, 3/92; see also
The X Journal 1:4 for a more complete answer, including code samples for this
last option]

----------------------------------------------------------------------
Subject: 140)  Why doesn't GXxor produce mathematically-correct color values?

	When using GXxor you may expect that drawing with a value of black on a
background of black, for example, should produce white. However, the drawing
operation does not work on RGB values but on colormap indices. The color that
the resulting colormap index actually points to is undefined and visually
random unless you have actually filled it in yourself. [On many X servers Black
and White often 0/1 or 1/0; programs taking advantage of this mathematical
coincidence will break.]
	If you want to be combining colors with GXxor, then you should be 
allocating a number of your own color cells and filling them with your chosen
pre-computed values.
	If you want to use GXxor simply to switch between two colors, then you 
can take the shortcut of setting the background color in the GC (graphics 
context) to 0 and the foreground color to a value such that when it draws over 
red, say, the result is blue, and when it draws over blue the result is red. 
This foreground value is itself the XOR of the colormap indices of red and 
blue.

[Thanks to Chris Flatters (cflatter@zia.aoc.nrao.EDU) and Ken Whaley 
(whaley@spectre.pa.dec.com), 2/91]

----------------------------------------------------------------------
Subject: 141)  Why does every color I allocate show up as black?

	Make sure you're using 16 bits and not 8.  The red, green, and blue 
fields of an XColor structure are scaled so that 0 is nothing and 65535 is 
full-blast. If you forget to scale (using, for example, 0-255 for each color) 
the XAllocColor function will perform correctly but the resulting color is 
usually black. 

[Thanks to Paul Asente, asente@adobe.com, 7/91]

----------------------------------------------------------------------
Subject: 142)  Why can't my program get a standard colormap?
I have an image-processing program which uses XGetRGBColormap() to get the 
standard colormap, but it doesn't work. 

	XGetRGBColormap() when used with the property XA_RGB_DEFAULT_MAP does 
not create a standard colormap -- it just returns one if one already exists.
Use xstdcmap or do what it does in order to create the standard colormap first.

[1/91; from der Mouse (mouse@larry.mcrcim.mcgill.edu)]

----------------------------------------------------------------------
Subject: 143)  Why does the pixmap I copy to the screen show up as garbage? 

	The initial contents of pixmaps are undefined.  This means that most
servers will allocate the memory and leave around whatever happens to be there 
-- which is usually garbage.  You probably want to clear the pixmap first using
XFillRectangle() with a function of GXcopy and a foreground pixel of whatever 
color you want as your background (or 0L if you are using the pixmap as a 
mask). [courtesy Dave Lemke of NCD and Stuart Marks of Sun]

----------------------------------------------------------------------
Subject: 144)  How do I check whether a window ID is valid?
My program has the ID of a window on a remote display. I want to check whether
the window exists before doing anything with it.

	Because X is asynchronous, there isn't a guarantee that the window 
would still exist between the time that you got the ID and the time you sent an
event to the window or otherwise manipulated it. What you should do is send the
event without checking, but install an error handler to catch any BadWindow 
errors, which would indicate that the window no longer exists. This scheme will
work except on the [rare] occasion that the original window has been destroyed 
and its ID reallocated to another window.

[courtesy Ken Lee (klee@synoptics.com), 4/90]

----------------------------------------------------------------------
Subject: 145)  Can I have two applications draw to the same window?

	Yes. The X server assigns IDs to windows and other resources (actually,
the server assigns some bits, the client others), and any application that 
knows the ID can manipulate the resource [almost any X server resource, except
for GCs and private color cells, can be shared].
	The problem you face is how to disseminate the window ID to multiple 
applications. A simple way to handle this (and which solves the problem of the
applications' running on different machines) is in the first application to 
create a specially-named property on the root-window and put the window ID into
it. The second application then retrieves the property, whose name it also
knows, and then can draw whatever it wants into the window.
	[Note: this scheme works iff there is only one instance of the first
application running, and the scheme is subject to the limitations mentioned
in the Question about using window IDs on remote displays.]
	Note also that you will still need to coordinate any higher-level 
cooperation among your applications. 
	Note also that two processes can share a window but should not try to 
use the same server connection. If one process is a child of the other, it 
should close down the connection to the server and open its own connection.

[mostly courtesy Phil Karlton (karlton@wpd.sgi.com) 6/90]

----------------------------------------------------------------------
Subject: 146)  Why can't my program work with tvtwm or swm?

	A number of applications, including xwd, xwininfo, and xsetroot, do not
handle the virtual root window which tvtwm and swm use; they typically return 
the wrong child of root. A general solution is to add this code or to use it in
your own application where you would normally use RootWindow(dpy,screen):

/* Function Name: GetVRoot
 * Description: Gets the root window, even if it's a virtual root
 * Arguments: the display and the screen
 * Returns: the root window for the client
 */
#include <X11/Xatom.h>
Window GetVRoot(dpy, scr)
Display        *dpy;
int             scr;
{
Window          rootReturn, parentReturn, *children;
unsigned int    numChildren;
Window          root = RootWindow(dpy, scr);
Atom            __SWM_VROOT = None;
int             i;

  __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False);
  XQueryTree(dpy, root, &rootReturn, &parentReturn, &children, &numChildren);
  for (i = 0; i < numChildren; i++) {
	Atom            actual_type;
	int             actual_format;
	long            nitems, bytesafter;
	Window         *newRoot = NULL;

	if (XGetWindowProperty(dpy, children[i], __SWM_VROOT, 0, 1,
	    False, XA_WINDOW, &actual_type, &actual_format, &nitems,
            &bytesafter, (unsigned char **) &newRoot) == Success && newRoot) {
			root = *newRoot;
			break;
		}
	}

	return root;
}

[courtesy David Elliott (dce@smsc.sony.com). Similar code is in ssetroot, a
version of xsetroot distributed with tvtwm. 2/91]

A header file by Andreas Stolcke of ICSI on export.lcs.mit.edu:contrib/vroot.h 
functions similarly by providing macros for RootWindow and DefaultRootWindow;
code can include this header file first to run properly in the presence of a
virtual desktop.
	
----------------------------------------------------------------------
Subject: 147)  How do I keep a window from being resized by the user?

	Resizing the window is done through the window manager; window managers
can pay attention to the size hints your application places on the window, but 
there is no guarantee that the window manager will listen. You can try setting 
the minimum and maximum size hints to your target size and hope for the best. 
[1/91]

----------------------------------------------------------------------
Subject: 148)  How do I keep a window in the foreground at all times?

	It's rather antisocial for an application to constantly raise itself
[e.g. by tracking VisibilityNotify events] so that it isn't overlapped -- 
imagine the conflict between two such programs running.  
	The only sure way to have your window appear on the top of the stack
is to make the window override-redirect; this means that you are temporarily
assuming window-management duties while the window is up, so you want to do 
this infrequently and then only for short periods of time (e.g. for popup 
menus or other short parameter-setting windows).

[thanks to der Mouse (mouse@larry.mcrcim.mcgill.edu); 7/92]

----------------------------------------------------------------------
Subject: 149)  How do I make text and bitmaps blink in X?

	There is no easy way.  Unless you're willing to depend on some sort of
extension (as yet non-existent), you have to arrange for the blinking yourself,
either by redrawing the contents periodically or, if possible, by playing games
with the colormap and changing the color of the contents.

[Thanks to mouse@larry.mcrcim.mcgill.edu (der Mouse), 7/91]

----------------------------------------------------------------------
Subject: 150)+ How do I get a double-click in Xlib?

	Users of Xt have the support of the translation manager to help 
get notification of double-clicking.
	There is no good way to get only a double-click in Xlib, because the 
protocol does not provide enough support to do double-clicks.  You have to do 
client-side timeouts, unless the single-click action is such that you can defer
actually taking it until you next see an event from the server.  Thus, you 
have to do timeouts, which means system-dependent code.  On most UNIXish 
implementations, you can use XConnectionNumber to get the file descriptor of 
the X connection and then use select() or something similar on that.
	Note that many user-interface references suggest that a double-click
be used to extend the action indicated by a single-click; if this is the case
in your interface then you can execute the first action and as a compromise
check the timestamp on the second event to determine whether it, too, should
be the single-click action or the double-click action.

[Thanks to mouse@larry.mcrcim.mcgill.edu (der Mouse), 4/93]

----------------------------------------------------------------------
Subject: 151)! How do I render rotated text?
	
	Xlib intentionally does not provide such sophisticated graphics 
capabilities, leaving them up to server-extensions or clients-side graphics
libraries.
	Your only choice, if you want to stay within the core X protocol, is to
render the text into a pixmap, read it back via XGetImage(), rotate it "by 
hand" with whatever matrices you want, and put it back to the server via 
XPutImage(); more specifically:
	1) create a bitmap B and write your text to it.
	2) create an XYBitmap image I from B (via XGetImage).
	3) create an XYBitmap Image I2 big enough to handle the transformation.
	4) for each x,y in I2, I2(x,y) = I(a,b) where 
		a = x * cos(theta) - y * sin(theta)
		b = x * sin(theta) + y * cos(theta)
	5) render I2
	Note that you should be careful how you implement this not to lose
bits; an algorithm based on shear transformations may in fact be better.
	The high-level server-extensions and graphics packages available for X 
also permit rendering of rotated text: Display PostScript, PEX, PHiGS, and GKS,
although most are not capable of arbitrary rotation and probably do not use the
same fonts that would be found on a printer.
	In addition, if you have enough access to the server to install a font
on it, you can create a font which consists of letters rotated at some
predefined angle. Your application can then itself figure out placement of each
glyph.

[courtesy der Mouse (mouse@larry.mcrcim.mcgill.edu), Eric Taylor 
(etaylor@wilkins.bmc.tmc.edu), and Ken Lee (klee@synoptics.com), 11/90;
Liam Quin (lee@sq.com), 12/90]

	InterViews (C++ UI toolkit, in the X contrib software) has support for
rendering rotated fonts in X.  It could be one source of example code.
[Brian R. Smith (brsmith@cs.umn.edu), 3/91]
	Another possibility is to use the Hershey Fonts; they are 
stroke-rendered and can be used by X by converting them into XDrawLine 
requests. [eric@pencom.com, 10/91]

	The xrotfont program by Alan Richardson (mppa3@syma.sussex.ac.uk) 
(posted to comp.sources.x July 14 1992) paints a rotated font by implementing 
the method above and by using an outline (Hershey) font.
	The xvertext package by Alan Richardson (mppa3@syma.sussex.ac.uk) is a 
set of functions to facilitate the writing of text at any angle.  Version 3.0 
was recently released to alt.sources and comp.sources.misc [3/93]; it is also 
on export as contrib/xvertext.3.0.shar.Z. 

	O'Reilly's X Resource Volume 3 includes information from HP about
modifications to the X fonts server which provide for rotated and scaled text.

----------------------------------------------------------------------
Subject: 152)  What is the X Registry? (How do I reserve names?)

	There are places in the X Toolkit, in applications, and in the X
protocol that define and use string names. The context is such that conflicts
are possible if different components use the same name for different things.
	The MIT X Consortium maintains a registry of names in these domains:
orgainization names, selection names, selection targets, resource types,
application classes, and class extension record types; and several others.
	The list as of 7/91 is in the directory mit/doc/Registry on the R5 
tape; it is also available by sending "send docs registry" to the xstuff mail
server.
	To register names (first come, first served) or to ask questions send 
to xregistry@expo.lcs.mit.edu; be sure to include a postal address for
confirmation.

[11/90; condensed from Asente/Swick Appendix H]
----------------------------------------------------------------------


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

Newsgroup: comp.windows.x
document_id: 66425
From: guy@x.co.uk (Guy Singh)
Subject: Re: >>>>> MOUSE BUTTONS 1,2 & 3 <<<<<<<< urgent !

>>>>> On 5 Apr 93 10:10:23 GMT, it4ik@dmu.ac.uk (I Kler) said:
IK> Nntp-Posting-Host: elm

IK> I know it sounds stupid, but....

IK> Does anyone know how to control individual mouse buttons.
IK> I am writing an application, which currently makes use of
IK> ButtonPressMask, however this is invoked by the pressing
IK> of any mouse button. I want to be able to restrict this
IK> to one of the 3 buttons. I tried Button1PressMask, but
IK> just get undefined errors. I know it can be done, and I
IK> am pretty sure theres an easy answer to it, but I just don't know
IK> what it is.
IK> "time is of the essence ..."

There is no event mask for a particular mouse button press. However in your
event handler you can use the event structure passed in and query it to find
which button was pressed i.e.

void
SomeEventHandler(Widget w, XtPointer data, XEvent *event)
{
    /* Catch the button 1 (usually left button) */
    if ( event->xbutton.button == Button1 ) {
        /* do some action */
    } else {
        /* do nothing and exit from function */
    } 
}
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
document_id: 66426
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Re: X protocol packet type

In article <93091.144124DEP@SLACVM.SLAC.STANFORD.EDU> <DEP@SLACVM.SLAC.STANFORD.EDU> writes:
>Is there a way to identify an X-protocol packet under DECNET? Under
>TCP/IP?
>
	The information in the packets isn't necessarily
distinctive -- you need to know that it is an X11 connection.
	-- Ethan

Newsgroup: comp.windows.x
document_id: 66427
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Drawing colour pixmaps - not rectangular


In article <1993Mar31.022947.149@etrog.se.citri.edu.au>, jck@catt.citri.edu.au (Justin Kibell) writes:

|>   I am writing a program which needs to draw colour XPM pixmap files onto a background without having the borders show up. I cannot do xor as the colours all stuff up. I cannot use XCopyPlane() as that is for single planes only. I want to be able to specify a colour in the pixmap to be used as the opaque colour. Is this possible. 
|> 
|> Games such as xjewel have the same problem. How does the mouse pointer do it?
|> 
|> Any help would be helpful? :-)
|> 

You wanna do masking. Build a bitmap (pixmap of depth one) where all pixels
you name "opaque" are 1 (that get copied) and the others are 0. Use this
bitmap as the clip_mask in the gc used for XCopyArea(), and remember to
adjust the clip_origin coordinates to the XCopyArea() blit origin.

The Mouse pointer (besides from that it is driven using RAMDAC analog
mapping on most hardwares) uses a mask, too.

But be warned: blitting through a mask and especially moving around this mask
is annoying slow on most xservers... it flickers even at 40 MIPS...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66428
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Pixmaps, Masks, & Icons - Clues?


In article <44975@sophia.inria.fr>, lehors@koala.inria.fr (Arnaud Le_Hors) writes:
|> In article <BUZZ.93Mar31093626@lion.bear.com>, buzz@bear.com (Buzz Moschetti)
|> writes:
|> > This is a simple X graphics question:
|> > 
|> > Assume you have a valid Window w, an icon pixmap, and the background
|> > mask (also a pixmap) for that icon.  You wish to place the icon at (x,y)
|> > in w *without* the background.
|> > 
|> > Question: What combination of XCopyArea() and GC functions are necessary?
|> > I think the idea is to "merge only those pixels of pixmap into w as
|> > indicated by the corresponding mask pixel value."  Specifically, the
|> > problem involves a pixmap and mask generated by the XPM libs.
|> > 
|> > Any clues would be most appreciated.
|> 
|> 
|> Xpm provides you with symbolic color names which can be specified at load time.
|> So, for doing what you want I would suggest you to define a Background symbol
|> in your pixmap file which you'll set to whatever color is used by the widget or
|> the window on which you want to put your pixmap. 
|> This would surely be the simplest and fastest way to do what you want.  

No. As soon as you blit two of this icons once on top of the other with a
little dislocation, you see the rectangular blit crashes too much of the
icon first blitted, because it draws a full rectangle. The way to do it
is masking: Create a bitmap with all pixels to be merged are 1 and all
not to be merged are 0. Then, set the clip_mask of the gc to this
bitmap, set the clip_x_origin and clip_y_origin of the gc to the x/y
coordinates where you blit the icon to the destination drawable, use GXCopy,
and XCopyArea() the icon pixmap to the destination drawable using this gc.


--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66429
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 1/5

Archive-name: x-faq/part1
Last-modified: 1993/04/04

This article and several following contain the answers to some Frequently Asked 
Questions (FAQ) often seen in comp.windows.x. It is posted to help reduce 
volume in this newsgroup and to provide hard-to-find information of general 
interest.

		Please redistribute this article!

This article includes answers to the following questions, which are loosely
grouped into categories. Questions marked with a + indicate questions new to 
this issue; those with significant changes of content since the last issue are 
marked by !:

  0)  TOPIC: BASIC INFORMATION SOURCES AND DEFINITIONS
  1)! What books and articles on X are good for beginners?
  2)! What courses on X and various X toolkits are available?
  3)! What conferences on X are coming up?
  4)  What X-related public mailing lists are available?
  5)  How can I meet other X developers? 
  6)  What related FAQs are available?
  7)  How do I ask a net-question so as to maximize helpful responses?
  8)  What publications discussing X are available?
  9)  What are these common abbreviations/acronyms?
 10)  What is the ICCCM? (How do I write X-friendly applications?)
 11)  What is the X Consortium, and how do I join?
 12)  Just what are OPEN LOOK and Motif?
 13)  Just what is OpenWindows?
 14)  Just what is DECWindows?
 15)  What is PEX?
 16)  What is "low-bandwidth X" (LBX)? XRemote? PPP? SLIP? CSLIP?
 17)  TOPIC: USING X IN DAY-TO-DAY LIFE
 18)! What are all these different window managers?
 19)  Why does my X session exit when I kill my window manager (sic)?
 20)  Can I save the state of my X session, like toolplaces does?
 21)  How do I use another window manager with DEC's session manager?
 22)  How do I change the keyboard auto-repeat rate?
 23)  How do I remap the keys on my keyboard to produce a string?
 24)! How do I make a screendump or print my application?
 25)  How do I make a color PostScript screendump of the X display?
 26)  How do I make a screendump including the X cursor?
 27)  How do I convert/view Mac/TIFF/GIF/Sun/PICT/img/FAX images in X?
 28)  How can I change the titlebar of my xterm window?
 29)  Where can I find the xterm control sequences?
 30)- Why does the R3 xterm, et al, fail against the R4 server?
 31)  How can I use characters above ASCII 127 in xterm ?
 32)  Why are my xterm menus so small?
 33)  How can I print the current selection?
 34)  How does Xt use environment variables in loading resources?
 35)  How to I have the R4 xdm put a picture behind the log-in window?
 36)  Why isn't my PATH set when xdm runs my .xsession file?
 37)  How do I keep my $DISPLAY when I rlogin to another machine?
 38)  How can I design my own font?
 39)  Why does adding a font to the server not work (sic)?
 40)  How do I convert a ".snf" font back to ".bdf" font?
 41)  What is a general method of getting a font in usable format?
 42)  How do I use DECwindows fonts on my non-DECwindows server?
 43)  How do I add ".bdf" fonts to my DECwindows server?
 44)! How can I set backgroundPixmap in a defaults file? (What is XPM?)
 45)  Why can't I override translations? Only the first item works.
 46)  How can I have xclock or oclock show different timezones?
 47)  I have xmh, but it doesn't work. Where can I get MH?
 48)  Why am I suddenly unable to connect to my Sun X server?
 49)  Why don't the R5 PEX demos work on my mono screen?
 50)! How do I get my Sun Type-[45] keyboard fully supported by Xsun?
 51)  How do I report bugs in X?
 52)  Why do I get "Warning: Widget class version mismatch"?
 53)  Where can I find a dictionary server for xwebster?
 54)  TOPIC: OBTAINING X AND RELATED SOFTWARE AND HARDWARE
 55)  Is X public-domain software?
 56)  How compatible are X11R3, R4, and R5? What changes are there?
 57)! Where can I get X11R5 (source and/or binaries)?
 58)! Where can I get patches to X11R5?
 59)  What is the xstuff mail-archive?
 60)! Where can I get X11R4 (source and binaries)?
 61)  Where can I get OSF/Motif?
 62)  Does Motif work with X11R4? X11R5?
 63)  Where can I get toolkits implementing OPEN LOOK?
 64)! Where can I get other X sources? (including R5 modifications)
 65)! Where can I get interesting widgets?
 66)  Where can I get a good file-selector widget?
 67)  What widget is appropriate to use as a drawing canvas?
 68)  What is the current state of the world in X terminals?
 69)  Where can I get an X server with a touchscreen or lightpen?
 70)  Where can I get an X server on a PC (DOS or Unix)?
 71)  Where can I get an X server on a Macintosh running MacOS?
 72)  Where can I get X for the Amiga?
 73)  Where can I get a fast X server for a workstation?
 74)! Where can I get a server for my high-end Sun graphics board?
 75)  Where can I get an "X terminal" server for my low-end Sun 3/50?
 76)  What terminal emulators other than xterm are available?
 77)! Where can I get an X-based editor or word-processor?
 78)  Where can I get an X-based mailer?
 79)! Where can I get an X-based paint/draw program?
 80)! Where can I get an X-based plotting program?
 81)  Where can I get an X-based spreadsheet?
 82)  Where can I get X-based project-management software?
 83)  Where can I get an X-based PostScript previewer?
 84)  Where can I get an X-based GKS package?
 85)  Where can I get an X-based PEX package?
 86)  Where can I get an X-based TeX or DVI previewer?
 87)  Where can I get an X-based troff previewer?
 88)! Where can I get a WYSIWYG interface builder?
 89)  Where can I find X tools callable from shell scripts?
 90)  Where can I get an X-based debugger?
 91)! How can I "tee" an X program identically to several displays?
 92)  TOPIC: BUILDING THE X DISTRIBUTION [topic needs updating to R5]
 93)  What's a good source of information on configuring the X build?
 94)  Why doesn't my Sun with a cg6 work with R5?
 95)  Why doesn't my Sun with SunOS 4.1 know about _dlsym, etc.?
 96)  What is this strange problem building X clients on SunOS 4.1.2?
 97)  Why can't gcc compile X11R4 on my SPARC?
 98)  What are these I/O errors running X built with gcc?
 99)  What are these problems compiling X11R4 on the older Sun3?
100)  What are these problems compiling the X server on SunOS 4.1.1?
101)  What are these problems using R4 shared libraries on SunOS 4?
102)  Can OLIT programs run with R5 Xt? (_XtQString undefined)
103)  How do I get around the SunOS 4.1 security hole?
104)  How do I get around the frame-buffer security hole?
105)  TOPIC: BUILDING X PROGRAMS 
106)  What is Imake?
107)  Where can I get imake?
108)  I have a program with an Imakefile but no Makefile. What to do?
109)  Why can't I link to the Xlib shape routines?
110)  What are these problems with "_XtInherit not found" on the Sun?
111)  Why can't I compile my R3 Xaw contrib programs under the new X?
112)  TOPIC: PROGRAMMING PROBLEMS AND PUZZLES
113)  Why doesn't my program get the keystrokes I select for (sic)?
114)  How do I figure out what window manager is running?
115)  Is there a skeleton X program available?
116)  Why does XtGetValues not work for me (sic)?
117)  Why don't XtConfigureWidget/XtResizeWidget/XtMoveWidget work?
118)  Why isn't there an XtReparentWidget call like XReparentWindow?
119)  I'm writing a widget and can't use a float as a resource value.
120)  Is this a memory leak in the X11R4 XtDestroyWidget()?!
121)  Are callbacks guaranteed to be called in the order registered?
122)  Why doesn't XtDestroyWidget() actually destroy the widget?
123)  How do I query the user synchronously using Xt?
124)  How do I determine the name of an existing widget?
125)  Why do I get a BadDrawable error drawing to XtWindow(widget)?
126)  Why do I get a BadMatch error when calling XGetImage?
127)  How can my application tell if it is being run under X?
128)  How do I make a "busy cursor" while my application is computing?
129)  How do I fork without hanging my parent X program?
130)  Can I make Xt or Xlib calls from a signal handler?
131)  What are these "Xlib sequence lost" errors?
132)  How can my Xt program handle socket, pipe, or file input?
133)  How do I simulate a button press/release event for a widget?
134)  Why doesn't anything appear when I run this simple program?
135)  What is the difference between a Screen and a screen?
136)  Can I use C++ with X11? Motif? XView?
137)  Where can I obtain alternate language bindings to X?
138)  Can XGetWindowAttributes get a window's background pixel/pixmap?
139)  How do I create a transparent window?
140)  Why doesn't GXxor produce mathematically-correct color values?
141)  Why does every color I allocate show up as black?
142)  Why can't my program get a standard colormap?
143)  Why does the pixmap I copy to the screen show up as garbage? 
144)  How do I check whether a window ID is valid?
145)  Can I have two applications draw to the same window?
146)  Why can't my program work with tvtwm or swm?
147)  How do I keep a window from being resized by the user?
148)  How do I keep a window in the foreground at all times?
149)  How do I make text and bitmaps blink in X?
150)+ How do I get a double-click in Xlib?
151)! How do I render rotated text?
152)  What is the X Registry? (How do I reserve names?)

If you have suggestions or corrections for any of these answers or any 
additional information, please send them directly to uunet!craft!faq;
the information will be included in the next revision (or possibly the one 
after that; thanks for the many suggestions which haven't been incorporated 
yet). 

This version of the FAQ is in the process of having R3 information replaced
by R5 information.

This posting is intended to be distributed at approximately the beginning of 
each month. New versions are archived on export.lcs.mit.edu and are also 
available from mail-server@pit-manager.mit.edu and archive-server@nic.switch.ch
(send "help").

The information contained herein has been gathered from a variety of sources. 
In many cases attribution has been lost; if you would like to claim 
responsibility for a particular item, please let me know. 

Conventions used below: telephone numbers tend to be Bell-system unless 
otherwise noted; prices on items are not included; email addresses are those
that work from the US.

X Window System is a trademark of the Massachusetts Institute of Technology. 
Other trademarks are the property of their respective owners.

(Note: a script by George Ferguson (ferguson@cs.rochester.edu) to pretty-print
this faq is available from ugle.unit.no:/pub/X11/contrib/xfaq2texinfo.)

----------------------------------------------------------------------
Subject:   0)  TOPIC: BASIC INFORMATION SOURCES AND DEFINITIONS
----------------------------------------------------------------------
Subject:   1)! What books and articles on X are good for beginners?

	Ken Lee of SynOptics (klee@synoptics.com) regularly posts to 
comp.windows.x and ba.windows.x a bibliography containing cites of all known 
reference books and how-to manuals and also cites of selected technical 
articles on X and X programming; it is ftp-able as 
	export.lcs.mit.edu:/contrib/Xbibliography and 
	gatekeeper.dec.com:/pub/X11/contrib/Xbibliography

Here is an unordered set of the reference books and tutorials most useful for
beginners; most appear on that list [comments are gathered from a variety of 
places and are unattributable]:

Asente, Paul J., and Swick, Ralph R., "X Window System Toolkit, The Complete
Programmer's Guide and Specification", Digital Press, 1990.  The bible on Xt. A
treasury of information, excellent and invaluable.  Distributed by Digital 
Press, ISBN 1-55558-051-3, order number EY-E757E-DP; and by Prentice-Hall, 
ISBN 0-13-972191-6. Also available through DEC Direct at 1-800-DIGITAL. 
[The examples are on export.lcs.mit.edu in contrib/ and on gatekeeper.dec.com 
(16.1.0.2) in pub/X11/contrib as asente-swick.examples.tar.Z.  They were also 
posted to comp.sources.x as xt-examples/part0[1-5].]

Jones, Oliver, Introduction to the X Window System, Prentice-Hall, 1988, 1989.
ISBN 0-13-499997-5. An excellent introduction to programming with Xlib.  
Written with the programmer in mind, this book includes many practical tips 
that are not found anywhere else. This book is not as broad as the O'Reilly 
Xlib tutorial, but Jones is an experienced X programmer and this shows in the 
quality and depth of the material in the book. Originally written for X11R1, 
recent printings have included corrections and additions and current material.
 
Young, Doug. "The X Window System: Applications and Programming with Xt (Motif 
Version)," Prentice Hall, 1989 (ISBN 0-13-497074-8). The excellent tutorial 
"X Window System Programming and Applications with Xt," (ISBN 0-13-972167-3) 
updated for Motif. [The examples are available on export; the ones from the 
Motif version are in ~ftp/contrib/young.motif.tar.Z.]

Young, Doug and John Pew, "The X Window System: Programming and Applications 
with Xt, OPEN LOOK Edition" (ISBN 0-13-982992-X). The tutorial rewritten for 
OLIT, with new examples and drag/drop information. [Examples are on export in
youg.olit.tar.Z and in you OpenWindows 3 distribution in 
$OPENWINHOME/share/src/olit/olitbook.]

Heller, Dan. "Motif Programmers Manual". The 6th Volume in the O'Reilly series
covers Motif application programming; it's full of good examples. With Motif
reference pages. (ISBN 0-9937175-70-6.)  [The examples are available on uunet
in comp.sources.x and nutshell archives.] [A Motif 1.2 will be out soon.]
 
Scheifler, Robert, and James Gettys, with Jim Flowers and David Rosenthal, "X 
Window System: The Complete Reference to Xlib, X Protocol, ICCCM, XLFD, X 
Version 11, Release 5, Third Edition," Digital Press, 1992. "The Bible" in its 
latest revision, an enhanced version of X documentation by the authors of the 
Xlib documentation. This is the most complete published description of the X 
programming interface and X protocol. It is the primary reference work and is 
not introductory tutorial documentation; additional tutorial works will usually
be needed by most new X programmers.  Digital Press order EY-J802E-DP, ISBN 
0-13-971201-1.
 	
Nye, Adrian, "Xlib Programming Manual, Volume 1" and "Xlib Reference Manual, 
Volume 2," O'Reilly and Associates. A superset of the MIT X documentation; the 
first volume is a tutorial with broad coverage of Xlib, and the second 
contains reference pages for Xlib functions and many useful reference 
appendices.  Both cover X11R5 (and R4). ISBN 0-937175-26-9 (volume 1) and ISBN 
0-937175-27-7 (volume 2). 

Nye, Adrian, and Tim O'Reilly, "X Toolkit Programming Manual, Volume 4,"
O'Reilly and Associates, 1989. The folks at O'Reilly give their comprehensive
treatment to programming with the MIT Intrinsics; R4 versions are now
available, as is a Motif 1.1 version (Volume 4M).

O'Reilly, Tim, ed.,  "X Toolkit Reference Manual, Volume 5," O'Reilly and 
Associates. A professional reference manual for the MIT X11R4 and X11R5 Xt.

Mansfield, Niall. "The X Window System: A User's Guide," Addison-Wesley, 1989.
A tutorial introduction to using X, now upgraded for R4. ISBN 0-201-51341-2.

Quercia, Valerie and Tim O'Reilly. "X Window System User's Guide," O'Reilly and
Associates. A tutorial introduction to using X. ISBN 0-937175-36-6.
Also available in R4 and Motif flavors.

Mui, Linda and Eric Pearce. "X Window System Administrator's Guide for X11 R4 
and R5" [ORA Volume 8]. Help for X users and administrators. 
ISBN 0-937175-83-8.

(Prentice-Hall ordering is 201-767-5937. O'Reilly ordering is 800-998-9938.)

In addition, check the X11R4 and X11R5 core distribution in doc/tutorials for 
some useful papers and tutorials, particularly the file answers.txt.  "Late 
Night's Top Ten X11 Questions" by Dave Lemke (lemke@ncd.com) and Stuart Marks 
(smarks@sun.com) answers other common questions and some of these here in more
detail.

New R5 versions of the O'Reilly references (not yet Volume 6) are now available
[8/92].  A single volume, "Programmer's Supplement for R5" by David Flanagan, 
provides an overview of new R5 features; it includes man pages for Xlib, Xt, 
and Xmu. [ISBN  0-937175-86-2]

----------------------------------------------------------------------
Subject:   2)! What courses on X and various X toolkits are available?

	Advanced Computing Environments periodically offers at least a two-day
Introduction course. Contact Susie Karlson at 415-941-3399 for information.

	AT&T offers training in Xlib and in the Xol set. Contact AT&T Corporate
Education & Training for more info; 1-800-TRAINER in the USA.

	BIM Educational Services offers training in X administration and in
programming with Xt/Motif and Open Windows; the courses are given near 
Brussels. Info: edu@sunbim.be, voice +32-(0)2-7595925, fax +32-(0)2-7599209.

	Communica Software Consultants offers three-day hands-on courses in X 
designed for the X Window System developer and programmer. Contact Chris 
Clarkson, telephone 61 8 3732523, e-mail communica@communica.oz.au. [12/92]

	Cora Computer Technologies (516-485-7343) offers several courses.

	GHCT offers a one week lecture/lab course for programmmers designed by
Douglas Young based on his book "The X Window System: Programming and Applica-
tions with Xt, OSF/Motif Edition". Information: Brian Stell (415-966-8805 or
ghct!brian@sgi.com).

	GHG offers a range of courses on X and Motif. Information: 713-488-8806
or training-info@ghg.hou.tx.us.

	Hands On Learning has live training and self-paced video workshops on 
topics such as using and/or programming X, Xlib, Xm, Xt, and widget-writing. 
Information: 617-272-0088, 800-248-9133.

	Hewlett-Packard (1-800-HPCLASS; or contact your local HP center) offers
a 2-day "Introduction to X", a 5-day Xlib course, a 1-day Xt and Motif 1.1 
seminar, and a 5-day Motif lab course.

	Integrated Computer Solutions, Inc., offers several multi-day, hands-on
courses on X, Xt, and the Xaw and Motif widget sets, in particular. Information
is available at 617-621-0060 and info@ics.com.

	Intelligent Visual Computing teaches several lab courses on-site for
Motif and XView. IVC is at 1-800-776-2810 or +1 919-481-1353 or at 
info@ivc.com.

	Iris Computing Laboratories offers five-day Xlib and Xt courses.
Info: +1-505-988-2670 or info@spectro.com.

	IXI Limited (+44 223 462 131) offers regular X training courses for 
both programmers and non-technical managers. See also: Unipalm, below.

	Learning Tree International offers a four-day course in X Window System
applications development, including Xlib and some information on Motif.  For 
more info call 800-824-9155 (213-417-3484); 613-748-7741 in Canada. Courses are
offered in major North American cities; also in London, Stockholm, Tokyo, and 
elsewhere.

	Lurnix offers 4-day "type-along courses" on Xt; the course is being
ported from Xaw to Xm. Information is available at 800-433-9337 (in CA: -9338).

	Mitch Trachtenberg and Associates offers regular 5-day lab courses on
programming with OSF/Motif, usually in but not limited to Cambridge, MA. 
Info: +1 617-225-0440, info@mta.com.

	Non Standard Logics (+33 (1) 43 36 77 50; requests@nsl.fr) offers
courses on programming with Xlib, Motif, and creating Motif widgets.

	OSF Educational Services (617-621-8778) offers one-day seminars and 
one-week Motif lab courses.

	John A. Pew offers a 5-day course on OLIT, possibly based on his book
on that subject; 408-224-5739.

	SCO (+44 923 816344, scol-info@sco.COM) offers training for its Open 
Desktop (Motif) environment in the UK and Europe.

	Software Pundits (617-270-0639) offers a range of courses.

	Technology Exchange (617-944-3700) offers a 4-day Xlib/Xt/Motif course.

	TeleSoft is now offering a 1-day plus 3-day seminar on X and Motif.
Information: Bruce Sherman (619-457-2700, bds@telesoft.com).

	Unipalm XTech offers OSF's 5-day Motif course and a 1-day overview on 
X.  Information: Unipalm Training at +44 952  211797, xtech@unipalm.co.uk.

	The University of Edinburgh is developing a series of courses on X and
related topics primarily for non-profit-making training in academia but also 
for commercial use. Information: Cliff Booth, Unipalm Ltd, phone +44 223 
420002, fax +44 223 426868.

	Various other vendors are also beginning to offer X training, usually 
specific to a proprietary toolkit or to Xt and a proprietary widget set: DEC 
is offering Xlib courses; Sun offers an XView course.

	Various universities are offering short X courses or overviews: UCLA,
Dartmouth, University of Lowell, University of Canberra (within Australia: 
062-522422) ... 
	UC Berkeley Extension will have a one week X/Motif class for 
programmers in San Francisco starting on July 29.  The class will have a 
hands-on lab. For more information contact UCBX at 415 323 8141.

	Among the best places to find courses are at the various Unix 
conferences -- Uniforum, Usenix, Unix Expo, Xhibition, the MIT X Technical
Conference, the ACM tutorial weeks, &c.

	In addition, the X Consortium posts approximately quarterly a list of
unendorsed speakers and consultants who can provide talks on a variety of X 
topics.

----------------------------------------------------------------------
Subject:   3)! What conferences on X are coming up?

	The Xhibition 93 X trade show and conference, with tutorials, panels, 
presentations, and vendor exhibits, will be held at the San Jose Convention
Center June 7-11, 1993.  Information: +1 617 621 0060, xhibit@ics.com.

	The Tcl/Tk Workshop will be held at UCal Berkeley June 10-11, 1993.
Information: tcl93@cs.berkeley.edu.

	The 1993 Andrew Technical Conference and Consortium Annual Meeting will
be held June 24-25, 1993, in Pittsburgh. Information: 
Wilfred.Hansen@cs.cmu.EDU.

	The European X User Group holds an annual conference which typically 
includes includes paper presentations and a vendor exhibit. EXUG'93, "X in the
Real World and Multimedia" will be held 9/16-9/17 at the Imperial College of
Science and Technology, London. Information: exug@demon.co.uk, niall@uit.co.uk 
or p.whitehead@cc.ic.ac.uk, +44 (0) 223 426534, fax +44 (0) 223 420251.

	The Motif show is held in Washington to coincide with the FedUnix and 
the Federal Open Systems Conference (usually December). Information: 
motif@fedunix.org or paller@fedunix.org, 301-229-1062, fax 301-229-1063.

	The MIT X Technical Conference is typically held in January in Boston.
Registration information is available from registration@expo.lcs.mit.edu.

	The XWorld Conference and Exhibition includes tutorials, panels, 
presentations and vendor exhibits. It is typically held in March in New York 
City.  Information: SIGS Publication Group at 212-274-9135.


	Other trade shows -- UnixExpo, Uniforum, Siggraph -- show an increasing
presence of X, including tutorials and exhibits.

----------------------------------------------------------------------
Subject:   4)  What X-related public mailing lists are available?

	The xpert mailing list is the general, public mailing list on X
maintained by the X Consortium. The mailings are gatewayed, so xpert is almost 
identical to the comp.windows.x Usenet newsgroup. 

	***	If you get comp.windows.x, you don't need to 	***
	***	be added to the xpert mailing list. 		***

	Otherwise, you can join the list to receive X information 
electronically. It is best to find a local distribution; perhaps someone within
your company is already receiving the mailing. As a last resort, send mail to 
xpert-request@expo.lcs.mit.edu with a valid return electronic address. 

	The xannounce mailing list carries major X announcements, such as new
releases (including public patches from MIT), public reviews, adoption of 
standards by the MIT X Consortium, and conference announcements.  It does NOT 
carry advertisements, source code, patches, or questions.  If you already 
receive the Usenet news group comp.windows.x.announce or the xpert mailing 
list, you don't need to be added to the xannounce mailing list.  Otherwise, to 
subscribe, send a request to xannounce-request@expo.lcs.mit.edu. Note: Only 
redistribution addresses will be accepted for this list -- i.e. no personal 
addresses. If you wish to receive xannounce yourself, please contact your mail 
administrator to set up a local redistribution list and to put you on it.  
	comp.windows.x.apps is not gatewayed to a mailing list.

	In addition, the X Consortium sponsors these public lists:
		bug-clx         CLX bug reports and discussions
		x-ada           X and ada
		x11-3d          people interested in X and 3d graphics
		ximage          people interested in image processing and X
		xvideo          discussion of video extensions for X
	To subscribe to one of these lists, assuming no-one in your 
organization already receives it, send mail to <list>-request@expo.lcs.mit.edu
with the Subject line including the name of the LIST in caps and the request
"addition request".  In the body of the message be sure to give an address for 
your local distribution which is accessible from MIT (eddie.mit.edu).

	A mailing list for topics related to OPEN LOOK is sponsored by Greg
Pasquariello of Unify corporation; send to openlook-request@unify.com (or
openlook-request%unify@uunet.uu.net) for information. 
	A mailing list for bugs in the publicly-available version of XView
source, in particular, is sponsored by Sun; send for information to 
xviewbug-trackers-request@sun.com. 
	A mailing list for topics related to Motif is sponsored by Kee Hinckley
of Alfalfa Software, Inc.; send to motif-request@alfalfa.com for information. 
(This group is gatewayed to comp.windows.x.motif.)
	A mailing list for topics related to the XPM pixmap-format is sponsored
by Arnaud Le Hors of Group Bull; send to xpm-talk-request@sa.inria.fr for
information. [1/91]
	A mailing list discussing InterViews can be subscribed to by sending to
interviews-request@interviews.stanford.edu.
	A mailing list (amiga-x11@nic.funet.fi) for topics related to the port 
of X11 to the Amiga can be subscribed by sending to mailserver@nic.funet.fi a 
message containing
		Subject: Adding myself to AMIGA-X11
		SUBS AMIGA-X11 Your Real Name
	A mailing list discussing ParcPlace's (formerly Solbourne's) OI (Object
Interface) toolkit can be subscribed to at oi-users-requests@bbn.com.
	A mailing list discussing multi-threaded Xlib can be subscribed to at
mt-xlib-request@xsoft.xerox.com.

----------------------------------------------------------------------
Subject:   5)  How can I meet other X developers? 

	O'Reilly and Associates sponsors a mailing list for the use of X user 
group organizers; subscribe by sending to listserv@ora.com the message 
"subscribe xgroups your@internet.address".

	Local area X user's groups are listed in Issue 4 of O'Reilly's X 
Resource journal; a list may also be available from xug@ics.com.

	The French X User Group is called AFUX and is based in Sophia Antipolis
by CERICS. Information can be obtained from Miss Vasseur or Miss Forest; BP 
148; 157, rue Albert Einstein; 06561 Valbonne Cedex; Phone: +33 93 95 45 00 / 
45 01; Fax: +33 93 95 48 57.  [10/90]

	The European X User Group was formed in 1989 to represent X users in 
Europe.  It holds technical conferences at regular intervals. The EXUG also 
publishes a regular newsletter which is distributed free of charge to members. 
The EXUG also runs a email mailing list for members which is frequently used to
address issues of European interest in X. The EXUG can be contacted at
P.Whitehead@cc.ic.ac.uk, +44 (071) 225 8754, fax +44 (071) 823 9497.

	GXUGiV is the German X User's Group in Vorbereitung ("in preparation")
being formed for X programmers and users; it is associated with the EXUG. All
interested should contact Olaf Heimburger (+49 30 7 79 54 64; and at
mcvax!unido!tub!olaf).

----------------------------------------------------------------------
Subject:   6)  What related FAQs are available?

	Liam R. E. Quin (lee@sq.sq.com) posts a FAQ on Open Look to 
comp.windows.open-look.  
	Jan Newmarch (jan@pandonia.canberra.edu.au) posts a FAQ on Motif to 
comp.windows.x.motif.
	Peter Ware (ware@cis.ohio-state.edu) posts a FAQ for
comp.windows.x.intrinsics; it is on export in contrib/FAQ-Xt.
	Art Mulder (art@cs.ualberta.ca) posts to comp.windows.x a FAQ on 
maximizing the performance of X.
	Steve Kotsopoulos (steve@ecf.toronto.edu) posts to comp.windows.x a FAQ
about using X on Intel-based Unix systems.
	The FAQ in alt.binaries.pictures contains information on viewing images
with X and on massaging image formats.
	The FAQ in comp.mail.mh (gatewayed to MH-users@ics.uci.edu) includes a 
section on xmh.
	The FAQ in comp.lang.lisp contains information on several interface
tools and toolkits.
	There exists a PEX/PHiGS FAQ.

----------------------------------------------------------------------
Subject:   7)  How do I ask a net-question so as to maximize helpful responses?

	When asking for help on the net or X mailing lists, be sure to include 
all information about your setup and what you are doing.  The more specific you
are, the more likely someone will spot an error in what you are doing.  Without
all the details, people who want to help you often have to guess -- if they are
able to respond at all.

	Always mention what version of X you are using and where you got it 
from. If your server came from a different source as the rest of your X system,
give details of that, too.  Give the machine type, operating system, and O/S 
version for both the client and server machine.  It may also be appropriate to 
mention the window manager, compiler, and display hardware type you are using.

	Then tell exactly what you are doing, exactly what happens, and what
you expected/wanted to happen.  If it is a command that fails, include the 
exact transcript of your session in the message.  If a program you wrote 
doesn't work the way you expect, include as little of the source necessary 
(just a small test case, please!) for readers to reproduce the problem.

----------------------------------------------------------------------
Subject:   8)  What publications discussing X are available?

	The trade magazines (Unix World, Unix Review, Computer Language, etc.)
are publishing more articles on X.  Two X-specific publications include:

	- O'Reilly and Associates publishes "The X Resource: A Practical 
Journal of the X Window System" (103 Morris St. #A, Sebastapol, CA 95472).  
Editorial information: Adrian Nye, adrian@ora.com.

	- The X Journal is started bi-monthly publication September 1991 on a 
variety of X topics. Subscription information: The X Journal, Subscriber 
Services, Dept XXX, P.O. Box 3000, Denville, NJ 07834, USA. Editorial 
information: editors%topgun@uunet.uu.net.

----------------------------------------------------------------------
Subject:   9)  What are these common abbreviations/acronyms?

	Xt: The X Toolkit Intrinsics is a library layered on Xlib which 
provides the functionality from which the widget sets are built. An "Xt-based" 
program is an application which uses one of those widget sets and which uses 
Intrinsics mechanisms to manipulate the widgets.
	Xmu: The Xmu library is a collection of Miscellaneous Utility functions
useful in building various applications and widgets.
	Xaw: The Athena Widget Set is the MIT-implemented sample widget set
distributed with X11 source.
	Xm: The OSF/Motif widget set from the Open Software Foundation; binary
kits are available from many hardware vendors.
	Xhp (Xw): The Hewlett-Packard Widget Set was originally based on R2++, 
but several sets of patches exist which bring it up to R3, as it is distributed
on the X11R4 tapes. Supplemental patches are available to use it with R4/R5.
	CLX: The Common Lisp X Interface is a Common Lisp equivalent to Xlib.
	XDMCP: The X Display Manager Protocol provides a uniform mechanism for 
a display such as an X terminal to request login service from a remote host.
	XLFD: The X Logical Font Description Conventions describes a standard
logical font description and conventions to be used by clients so that they
can query and access those resources.
	RTFM: Common expert-speak meaning "please locate and consult the 
relevant documentation -- Read the Forgotten Manual".
	UTSL: A common expression meaning "take advantage of the fact that you 
aren't limited by a binary license -- Use The Source, Luke".
	API: Application-Programmer Interface. The function calls, etc., in
a programming library.
	BDF: Bitmap Distribution Format; a human-readable format for uncompiled
X fonts.
	GUI: graphical user interface.
	UIL: the User Interface Language, part of OSF/Motif which lets 
programmers specify a widget hierarchy in a simple "outline" form
	WCL: the Widget Creation Language, a package which extends the 
understanding of the Xt resource format such that a widget hierarchy and 
actions on the widgets can be specified through the resources file
	GIL: the file format put out by Sun's OpenWindows Developers Guide 3.0
	UIMS: User Interface Management System

----------------------------------------------------------------------
Subject:  10)  What is the ICCCM? (How do I write X-friendly applications?)

	The Inter-Client Communication Conventions Manual is one of the 
official X Consortium standards documents that define the X environment. It 
describes the conventions that clients must observe to coexist peacefully with 
other clients sharing the same server.  If you are writing X clients, you need 
to read and understand the ICCCM,  in particular the sections discussing the 
selection mechanism and the interaction between your client and the window 
manager.  Get it either:
	- as part of the R4 distribution from MIT
	- in the later editions of the Scheifler/Gettys "X Window System" book
	- as an appendix in the new version of O'Reilly's Volume 0, "X Protocol
Reference Manual." A version in old copies of their Volume 1 is obsolete.
	The version in the Digital Press book is much more readable, thanks to 
the efforts of Digital Press's editors to improve the English and the 
presentation.

[from David Rosenthal, 10/90]

	- the ICCCM was updated for R5; updates are published in O'Reilly's
"Programmer's Supplement for Release 5". The complete document is on the R5
tapes.

	Alternate definition: the ICCCM is generally the M in "RTFM" and is
the most-important of the least-read X documents.

----------------------------------------------------------------------
Subject:  11)  What is the X Consortium, and how do I join?

	The MIT X Consortium was formed in January of 1988 to further the
development of the X Window System and has as its major goal the promotion of 
cooperation within the computer industry in the creation of standard software 
interfaces at all layers in the X Window System environment.
	MIT's role is to provide the vendor-neutral architectural and 
administrative leadership required to make this work. Membership in the 
Consortium open to any organization.  There are two categories of membership, 
Member (for large organizations) and Affiliate (for smaller organizations).
	Most of the Consortium's activities take place via electronic mail, 
with meetings when required.  As designs and specifications take shape,
interest groups are formed from experts in the participating organizations.  
Typically a small multi-organization architecture team leads the design, with 
others acting as close observers and reviewers.  Once a complete specification
is produced, it may be submitted for formal technical review by the Consortium
as a proposed standard.  The standards process typically includes public 
review (outside the Consortium) and a demonstration of proof of concept.
	Your involvement in the public review process or as a Member or 
Affiliate of the Consortium is welcomed.
	Write to: Bob Scheifler, MIT X Consortium, Laboratory for Computer 
Science, 545 Technology Square, Cambridge, MA 02139.

[For complete information see the XCONSORTIUM man page from the X11R4
distribution, from which this information is adapted.] [2/90]

----------------------------------------------------------------------
Subject:  12)  Just what are OPEN LOOK and Motif?

	OPEN LOOK and Motif are two graphical user interfaces (GUIs). OPEN LOOK
was developed by Sun with help from AT&T and many industry reviewers; Motif was
developed by the Open Software Foundation (OSF) with input from many OSF 
members. 

	OPEN LOOK is primarily a user-interface specification and style-guide; 
there are several toolkits which can be used to produce OPEN LOOK applications.
Motif includes an API specification; the only sanctioned Motif toolkit is the 
one from OSF. However, there are other toolkits which can be used to produce 
programs which look and behave like OSF/Motif; one of these, ParcPlace's 
(formerly Solbourne's) OI, is a "virtual toolkit" which provides objects in the
style of OPEN LOOK and Motif, at the user's choice.

	OPEN LOOK GUI is also the name of a product from AT&T, comprising 
their OPEN LOOK Intrinsics Toolkit and a variety of applications.

[Thanks to Ian Darwin, ian@sq.com, 5/91]

----------------------------------------------------------------------
Subject:  13)  Just what is OpenWindows?

	Open Windows (3.0) is a Sun product that encompasses: a window system 
that combines a NeWS and X11-compliant server (X/NeWS); a user-interface 
specification (OPEN LOOK) and a series of toolkits that implement it (including
the SunView-like XView and the Xt-based OLIT); Xlib and Xt implementations; and
a number of utilities (olwm window manager, filemgr, shelltool, etc.).

[thanks to Frank Greco (fgreco@govt.shearson.COM), 8/90; 4/92] 

----------------------------------------------------------------------
Subject:  14)  Just what is DECWindows?

	DECWindows is a DEC product that encompasses: an X11 server; the XUI 
toolkit, including the Dwt widget set and UIL; Xlib and Xt implementations; a 
session manager; and a number of utilities (dxwm window manager, dxcalendar, 
dxpsview, etc.).

(At some point Motif flavors of the toolkit and applications will be shipped.)
[8/90] 

----------------------------------------------------------------------
Subject:  15)  What is PEX?

	PEX is the "PHiGS Extension to X".
	PHiGS stands for "Programmer's Hierarchical Interactive Graphics 
System" and is essentially a library of functions that simplifies the creation 
and manipulation of 3D graphics. Many platforms are capable of performing in 
hardware the computations involved in rendering 3D objects; the extension 
allows the client (PHiGS in this case) to take advantage of the specialized 
hardware for 3D graphics.
	Sun Microsystems is currently contracted to develop a freely 
redistributable (copyright similar to the current X copyright) sample
implementation.  Source and documentation are available in the R5 release.
Several vendors are currently selling independently-developed PEX servers for 
their workstations and X terminals.

[last modified 10/91]

----------------------------------------------------------------------
Subject:  16)  What is "low-bandwidth X" (LBX)? XRemote? PPP? SLIP? CSLIP?

There are several options for using X over serial lines:

SLIP - Serial Line IP; this is both a mechanism and a protocol for sending IP
packets over point-to-point serial links. It has been around for several years,
and implementations are available for many of the major TCP/IP implementations.
Most X Terminal vendors supply this as a checkoff item, although nobody really 
ever uses it since it is horribly slow.  The TCP/IP headers add 40 bytes per 
packet and the TCP/IP encoding of the X protocol is rather verbose (rightfully 
so; it is optimized for packing and unpacking over high-speed links). 

CSLIP - Compressed header SLIP; this is a variant of SLIP that compresses the 
40 bytes of TCP/IP headers down to about 5 or 6 bytes.  It still doesn't do 
anything about reencoding the X protocol.  Modems that do compression can help,
but they increase packet latency (it takes time to dribble the uncompressed 
data through typical serial interfaces, plus the compression assembly time).

PPP - Point-to-Point Protocol; this is an emerging standard for point-to-point
links over serial lines that has a more complete set of option negotiation than
SLIP.  A growing number of people see the combination of PPP for the serial 
line management and CSLIP for the header compression as becoming common for 
running normal TCP/IP protocols over serial lines.  Running raw X over the wire
still needs compression somewhere to make it usable.

XRemote - this is the name of both a protocol and set of products originally
developed by NCD for squeezing the X protocol over serial lines.  In addition 
to using a low level transport mechanism similar to PPP/CSLIP, XRemote removes 
redundancies in the X protocol by sending deltas against previous packets and 
using LZW to compress the entire data stream.  This work is done by either a 
pseudo-X server or "proxy" running on the host or in a terminal server.  There 
are several advantages to doing compression outside the modem:
   (1)	You don't *have* to have compressing modems in there if you wouldn't 
	otherwise be using them (e.g. if you were going to be directly 
	connected), and
   (2)	It reduces the I/O overhead by cutting down on the number of bytes that
	have to cross the serial interface, and
   (3)	In addition to the effects of #2, it reduces the latency in delivering 
	packets by not requiring the modem to buffer up the data waiting for 
	blocks to compress.

LBX - Low Bandwidth X; this is an X Consortium project that is working on a
standard for this area.  It is being chaired by NCD and Xerox and is using 
NCD's XRemote protocol as a stepping stone in developing the new protocol.  LBX
will go beyond XRemote by adding proxy caching of commonly-used information 
(e.g. connection setup data, large window properties, font metrics, keymaps, 
etc.) and a more efficient encoding of the X protocol. The hope is to have a 
Standard ready for public review in the first half of next year and a sample 
implementation available in R6.

Additional technical information about how XRemote works and a few notes on how
LBX might be different are available via anonymous ftp from export.lcs.mit.edu
in contrib/ in the following files:
        XRemote-slides.ps               slides describing XRemote
        XRemote-LBX-diffs.ps            more slides describing some of LBX

[information provided by Jim Fulton, jim@ncd.com; 7/92]

	There is also a set of slides on export from Jim Fulton's talk at
the 7th MIT X Technical Conference.

----------------------------------------------------------------------
Subject:  17)  TOPIC: USING X IN DAY-TO-DAY LIFE
----------------------------------------------------------------------
Subject:  18)! What are all these different window managers?

	The window manager in X is just another client -- it is not part of the
X window system, although it enjoys special privileges -- and so there is
no single window manager; instead, there are many which support different ways 
for the user to interact with windows and different styles of window layout,
decoration, and keyboard and colormap focus. In approximate chronological order
(generally, the more recent ones are more conformant with the ICCCM):

	wm: this simple title-bar window manager was phased out in R2 or R3
	uwm: the Universal Window Manager is still popular for its speed, 
although it is very outdated. Moved to contrib/ on the R4 tape.
	twm (old): Tom's Window Manager was among the first non-MIT window 
managers and offered the user a great deal of customization options in a
re-parenting window manager. 
	awm: the Ardent Window Manager remains a hotbed for hackers and offers
some features (dynamic menus) not found on more current window managers
	cwm: cwm is part of the Andrew system. 
	rtl: Siemen's window manager tiles windows so that they don't overlap
and resizes the window with the focus to its preferred size.
	dxwm: Digital's dxwm is part of the DECwindows offering
	hpwm: HP's window manager offers a 3D look; it is a precursor of mwm
	mwm: the Motif window manager is part of the OSF/Motif toolkit
	tekwm: Tektronix's window manager offering 
	olwm (Sun): olwm implements the OPEN LOOK GUI and some of the Style
Guide functionality
	olwm (AT&T): ditto
	gwm: Bull's Generic Window Manager emulates others with a built-in
Lisp interpreter. Version 1.7h (10/91) is on the R5 contrib tape; 1.7n is on
avahi.inria.fr and export.lcs.mit.edu. [3/93]
	m_swm: the Sigma window manager is on the R4 tape
	pswm: Sun's PostScript-based pswm is part of the OpenWindows release
	swm: Solbourne's swm is based on the OI toolkit and offers multiple
GUI support and also a panned virtual window; configuration information comes
from the resources file
	twm (new): MIT's new Tab Window Manager from the R4 tape is a reworked
twm and is the basis for several derivatives, including the one on the R5 tape
	vtwm: vtwm offers some of the virtual-desktop features of swm, with a
single-root window implementation; it is based on the R4 twm and is available
on archive servers. A new version, vtwm-5.0, is based on R5.9 and is available 
from export. [3/92]
	tvtwm: Tom's Virtual Tab Window Manager is also based on the R4 twm
and provides a virtual desktop modeled on the virtual-root window of swm. It is
available on archive servers
	olvwm: the vtwm-style virtual-desktop added to Sun's olwm. It is 
available on archive servers; version 3.3 [1/93] is on export.
	mvwm: the vtwm-style virtual-desktop added to OSF's mwm. A beta version
is floating around (most recently from suresh@unipalm.co.uk) but requires a 
source license to OSF/Motif 1.1.3 [3/92].
	NCDwm: the window manager local to NCD terminals offers an mwm look 
	XDSwm: the window manager local to Visual Technology's terminals 
	ctwm: Claude Lecommandeur's (lecom@sic.epfl.ch) modification of the R5 
twm offers 32 virtual screens in the fashion of HP vuewm; source is on export.
Version 2.2.2 [2/93] also offers the window overview used in vtwm and tvtwm.
	vuewm: HP's MWM-based window manager offers configurable workspaces.
	4Dwm: SGI's enhanced MWM
	piewm: this version of tvtwm offers pie menus

----------------------------------------------------------------------
Subject:  19)  Why does my X session exit when I kill my window manager (sic)?

	It needn't.  What is probably happening is that you are running your 
window manager as the last job in your .xsession or .xinitrc file; your X 
session runs only as long as the last job is running, and so killing your 
window manager is equivalent to logging out. Instead, run the window manager in
the background, and as the last job instead invoke something safe like:
		exec xterm -name Login -rv -iconic
or any special client of your devising which exits on some user action.
Your X session will continue until you explicitly logout of this window, 
whether or not you kill or restart your window manager.

----------------------------------------------------------------------
Subject:  20)  Can I save the state of my X session, like toolplaces does?

	Although no known window manager directly supports such a feature --
which may be equivalent to writing out a .xinitrc or .xsession file naming the
geometry and WM_COMMAND of each application (but olvwm may have something 
close) -- there is a contributed application which does much of what you are 
looking for, although it is not as complete as the SunView program toolplaces. 
Look for the application "xplaces" on an archive-server near you. There are 
several versions of this program floating around; look for a recent vintage.
[10/90]
	Some new pseudo session-managers such as HP's vuewm provide for the 
saving of sessions including information on the geometry of currently-running
applications and the resource database. 
[Bjxrn Stabell (bjoerns@staff.cs.uit.no); 3/93.]
 
----------------------------------------------------------------------
Subject:  21)  How do I use another window manager with DEC's session manager?

	DEC's session manager will start dxwm up by default. To override this, 
add to your .Xdefaults file something like this line, naming the full pathname:
	sm.windowManagerName:   /wherever/usr/bin/X11/your_favorite_wm

----------------------------------------------------------------------
Subject:  22)  How do I change the keyboard auto-repeat rate?

	You can turn auto-repeat on or off by using "xset r on|off". The X
protocol, however, doesn't provide for varying the auto-repeat rate, which is
a capability not supported by all systems.
	Some servers running on systems that support this, however, may provide
command-line flags to set the rate at start-up time. If you have control over 
server start-up (see the man pages for xinit and xdm), you can invoke the 
server with the chosen settings; for example, you can start the Xsun server 
from MIT with the options "-ar1 350 -ar2 30" to reduce the sensitivity of the 
keyboard.

----------------------------------------------------------------------
Subject:  23)  How do I remap the keys on my keyboard to produce a string?

	There is no method of arranging for a particular string to be
produced when you press a particular key. The xmodmap client, which is useful 
for moving your CTRL and ESC keys to useful places, just rearranges keys and 
does not do "macro expansion."
	Some (few) clients, including xterm and several X-based editors, 
accept a translation resource such as:
	xterm*VT100.Translations: #override \
		<Key>F1: string("setenv DISPLAY unix:0")
which permits the shorthand F1 to be pressed to reset the display locally
within an xterm; it takes effect for new xterm clients. To include control
characters in the string, use \nnn, where nnn is the octal encoding of the
control character you want to include.
	Window managers, which could provide this facility, do not yet; nor
has a special "remapper" client been made available.

----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
document_id: 66430
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 2/5

Archive-name: x-faq/part2
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  24)! How do I make a screendump or print my application?

	The xwd client in the X11 distributions can be used to select a window 
or the background. It produces an XWD-format file of the image of that window. 
The file can be post-processed into something useful or printed with the xpr 
client and your local printing mechanism. You can use this command:
		csh% sleep 10; xwd -root > output.xwd &
and then spend 10 seconds or so setting up your screen; the entire current
display will be saved into the file output.xwd. Note that xwd also has an
undocumented (before R5) -id flag for specifying the window id on the 
command-line. [There are also unofficial patches on export to xwd for 
specifying the delay and the portion of the screen to capture.]

	Two publicly-available programs which allow interactive definition of 
arbitrary portions of the display and built-in delays are asnap and xgrabsc.
There are several versions of xgrabsc; version 2.2, available on export [8/92]
is the most recent.
	xsnap includes some asnap features and supersedes it; it also renders 
XPM output [version unknown]. It is available on export or avahi.inria.fr;
see xsnap-pl2.tar.Z.
	A screen-dump and merge/edit program combining features of xwd and xpr
is available from vernam.cs.uwm.edu as xdump1.0.tar.Z. Information: 
soft-eng@cs.uwm.edu.
	xprint, by Alberto Accomazzi (alberto@cfa.harvard.edu) is available
from cfa0 (128.103.40.1) in xprint.export-2.1.tar.Z.

	To post-process the xwd output of some of these tools, you can use xpr,
which is part of the X11 distribution. Also on several archives are xwd2ps
and XtoPS, which produce Encapsulated PostScript with trimmings suitable for 
use in presentations (see export.lcs.mit.edu:contrib/xwd2ps.tar.Z and
contrib/ImageMagick.tar.Z). Also useful is the PBMPLUS package on many archive
servers; and the Xim package contains Level 2 color PostScript output.

	The XV program can grab a portion of the X display, manipulate it, and
save it in one of the available formats. ImageMagick has similar capabilities.

	Also: 

	Bristol Technology (info@bristol.com, 203-438-6969) offers Xprinter 
2.0, an Xlib API for PostScript and PCL printers; a demo is on ftp.uu.net
in vendor/Bristol/Xprinter.

	ColorSoft 9619-459-8500) offers OPENprint package includes a screen-
capture facility, image-processing, and support for PostScript and 
non-PostScript printers.

	Some vendors' implementations of X (e.g. DECWindows and OpenWindows) 
include session managers or other desktop programs which include "print portion
of screen" or "take a snapshot" options. Some platforms also have tools which 
can be used to grab the frame-buffer directly; the Sun systems, for example, 
have a 'screendump' program which produces a Sun raster file. Some X terminals 
have local screen-dump utilities to write PostScript to a local serial printer.

	Some vendors' implementations of lpr (e.g. Sony) include direct 
support for printing xwd files, but you'll typically need some other package 
to massage the output into a useful format which you can get to the printer.

----------------------------------------------------------------------
Subject:  25)  How do I make a color PostScript screendump of the X display?

	If you need color PostScript in particular, you can 
	- grab the screen-image using a program which can produce color 
PostScript, such as xgrabsc and xv 
	- grab the screen-image using xwd and post-process xwd into color PS.
You can do this using xwd2ps or the XtoPS program from the ImageMagick 
distribution. The PBMPLUS package is also good for this, as is the Xim package.

----------------------------------------------------------------------
Subject:  26)  How do I make a screendump including the X cursor?

	This can't be done unless the X server has been extended. Consider 
instead a system-dependent mechanism for, e.g.,  capturing the frame-buffer.

----------------------------------------------------------------------
Subject:  27)  How do I convert/view Mac/TIFF/GIF/Sun/PICT/img/FAX images in X?

	The likeliest program is an incarnation of Jef Poskanzer's useful++ 
Portable Bitmap Toolkit, which includes a number of programs for converting 
among various image formats. It includes support for many types of bitmaps, 
gray-scale images, and full-color images. PBMPLUS has been updated recently;
the most recent version [12/91] is on export in contrib/pbmplus10dec91.tar.Z.
	Another tool is San Diego Supercomputing Center's IMtools ('imconv' in 
particular), which packages the functionality of PBM into a single binary.
It's available anonymous ftp from sdsc.edu (132.249.20.22).

	Useful for viewing some image-formats is Jim Frost's xloadimage, a
version of which is in the R4 directory contrib/clients/xloadimage; there are 
later versions available, including contrib/xloadimage.3.03.tar.Z on export.  
Graeme Gill's updates to an earlier version of xloadimage are also on export; 
see xli.README and xli.tar.Z.uu; version 1.14 was released 2/93.

	xv (X Image Viewer), written by bradley@cis.upenn.edu (John Bradley), 
can read and display pictures in Sun Raster, PGM, PBM, PPM, X11 bitmap, TIFF, 
GIF and JPEG. It can manipulate on the images: adjust, color, intensity, 
contrast, aspect ratio, crop). It can save images in all of the aforementioned 
formats plus PostScript. It can grab a portion of the X display, manipulate on 
it, and save it in one of the available formats. The program was updated 5/92; 
see the file contrib/xv-2.21.tar.Z on export.lcs.mit.edu.

	The Fuzzy Pixmap Manipulation, by Michael Mauldin <mlm@nl.cs.cmu.edu>.
Conversion and manipulation package, similar to PBMPLUS.  Version 1.0 available
via FTP as nl.cs.cmu.edu:/usr/mlm/ftp/fbm.tar.Z, uunet.uu.net:pub/fbm.tar.Z, 
and ucsd.edu:graphics/fbm.tar.Z.

	The Img Software Set, by Paul Raveling <raveling@venera.isi.edu>, reads
and writes its own image format, displays on an X11 screen, and does some image
manipulations.  Version 1.3 is available via FTP on expo.lcs.mit.edu as
contrib/img_1.3.tar.Z, along with large collection of color images.

	The Utah RLE Toolkit is a conversion and manipulation package similar 
to PBMPLUS.  Available via FTP as cs.utah.edu:pub/urt-*, 
weedeater.math.yale.edu:pub/urt-*, and freebie.engin.umich.edu:pub/urt-*.

	Xim, The X Image Manipulator, by Philip Thompson, does essential 
interactive displaying, editing, filtering, and converting of images. There is 
a version in the X11R4 contrib area; but a more recent version (using R4 and 
Motif 1.1) is available from gis.mit.edu (18.80.1.118). Xim reads/writes gif, 
xwd, xbm, tiff, rle, xim, (writes level 2 eps) and other formats and also has a
library and command-line utilities for building your own applications.

	ImageMagick [2.3; 2/93] by cristy@dupont.com can be retrieved from 
export's contrib area. It is a collection of utilities to transform and display
images on any X server. The tool uses the MIFF format; filters to and from MIFF
from other popular formats (PPM, TIFF, GIF, SUN Raster, etc) are included.

	xtiff is a tool for viewing a TIFF file in an X window.  It was written
to handle as many different kinds of TIFF files as possible while remaining
simple, portable and efficient.  xtiff illustrates some common problems
with building pixmaps and using different visual classes.  It is distributed
as part of Sam Leffler's libtiff package and it is also available on
export.lcs.mit.edu, uunet.uu.net and comp.sources.x. [dbs@decwrl.dec.com,10/90]
xtiff 2.0 was announced in 4/91; it includes Xlib and Xt versions.

	A version of Lee Iverson's (leei@McRCIM.McGill.EDU) image-viewing tool
is available as contrib/vimage-0.9.3.tar.Z on export.lcs.mit.edu.  The package 
also includes an ImageViewPort widget and a FileDialog widget. [12/91;5/92] 

[some material from Larry Carroll (larryc@poe.jpl.nasa.gov), 5/91]

----------------------------------------------------------------------
Subject:  28)  How can I change the titlebar of my xterm window?

	The solution involves sending an escape sequence to xterm which will
cause it to update the property which the window manager relies upon for the
string which appears in the window titlebar.
	A solution is as easy as typing this in an xterm running a shell:
		echo "ESC]2;TEXT^G"
where ESC is the escape key, TEXT is the string you wish to have displayed,
and ^G is a Control-G (the BEL character).

	Here is a more complicated csh alias which changes the titlebar to
the current working directory when you change directories:
		alias newcd 'cd \!*; echo -n ESC]2\;$cwd^G'

	The digit '2' in these strings indicates to xterm that it should 
change only the title of the window; to change both the title and the name 
used in the icon, use the digit '0' instead, and use '1' to change only the 
icon name.

	Note: another way to do this, which prevents an incorrect display of
the local directory if a modified `cd` is used in a subshell, is to wrap the
escape sequences into the PS1 prompt itself.

	Note: on an IBM RS/6000 is may be necessary to begin the sequence with
a ^V.

----------------------------------------------------------------------
Subject:  29)  Where can I find the xterm control sequences?

The best source of such information is in your R5 sources in the file 
ctlseqs.ms; a PostScript version is in mit/hardcopy/clients/ctlseqs.PS.Z.

O'Reilly's Volume 3, the X User's Guide, includes an R5 version of the control 
sequences; the standard volume will be available 3/93, and a Motif version of 
the book is available now. The current (R4) guide includes an outdated version
of the control sequences. [1/93]

Other good sources of information include the R4 version of that document
and also the file in the R4 sources called mit/clients/xterm/ctlseq2.txt, a 
compilation put together by Skip Montanaro (GE CR&D) listing the VT100 
sequences. It dates from R3 but is fairly accurate.  A hardcopy version was 
published in the December 1989 XNextEvent (the XUG newsletter).

In a pinch, a VT100 manual will do.

[last updated 10/91]

----------------------------------------------------------------------
Subject:  30)- Why does the R3 xterm, et al, fail against the R4 server?
----------------------------------------------------------------------
Subject:  31)  How can I use characters above ASCII 127 in xterm ?

	In order to use special characters such as the o-umlaut, you need to 
"stty pass8" but also to use a charcell ISO8859 font, such as 
	XTerm*font: 	-*-*-medium-r-normal-*-*-130-*-*-c-*-iso8859-1
	XTerm*boldfont:	-*-*-bold-r-normal-*-*-130-*-*-c-*-iso8859-1
[The family is intentionally unspecified in this example.]

In addition, you may want to set this in your shell:
	setenv LC_CTYPE iso_8859_1

        For a given character above 127, you can determine the key to use with 
the Alt modifier by finding the equivalent character below 127 (try using
`man ascii`). For example, o-umlaut (v) is Alt-v and the section character (') 
is Alt-'. 

[thanks to Greg Holmberg (greg%thirdi@uunet.uu.net) and Stephen Gildea 
(gildea@expo.lcs.mit.edu); 6/92]

----------------------------------------------------------------------
Subject:  32)  Why are my xterm menus so small?

	You are probably setting the geometry small accidentally. If you give 
a resource specification like this:
		xterm*geometry: 80x24
then you are asking for all widgets under xterm to have their geometry set to
80x24. For the main window, this is OK, as it uses characters for its size. 
But its popup menus don't; they are in pixels and show up small. To set only
the terminal widget to have the specified geometry, name it explicitly:
		xterm*VT100.geometry: 80x24

----------------------------------------------------------------------
Subject:  33)  How can I print the current selection?

	You could paste it into an xterm after executing the lpr command. 
However, a program by Richard Hesketh (rlh2@ukc.ac.uk) specifically for 
manipulating the selection will help; e.g. 
	% xselection PRIMARY | lpr
finds the primary selection and prints it. This command can be placed in a 
window-manager menu or in shell-scripts. xselection also permits the setting of
the selection and other properties. A version is on export.
	Also available is ria.ccs.uwo.ca:pub/xget_selection.tar.Z, which can be
adapted to do this.

----------------------------------------------------------------------
Subject:  34)  How does Xt use environment variables in loading resources?

	You can use several environment variables to control how resources are 
loaded for your Xt-based programs -- XFILESEARCHPATH, XUSERFILESEARCHPATH, and 
XAPPLRESDIR.  These environment variables control where Xt looks for 
application-defaults files as an application is initializing.  Xt loads at most
one app-defaults file from the path defined in XFILESEARCHPATH and another from
the path defined in XUSERFILESEARCHPATH.

	Set XFILESEARCHPATH if software is installed on your system in such a 
way that app-defaults files appear in several different directory hierarchies.
Suppose, for example, that you are running Sun's Open Windows, and you also 
have some R4 X applications installed in /usr/lib/X11/app-defaults. You could 
set a value like this for XFILESEARCHPATH, and it would cause Xt to look up 
app-defaults files in both /usr/lib/X11 and /usr/openwin/lib (or wherever your
OPENWINHOME is located):
	setenv XFILESEARCHPATH /usr/lib/X11/%T/%N:$OPENWINHOME/lib/%T/%N

The value of this environment variable is a colon-separated list of pathnames.  The pathnames contain replacement characters as follows (see 
XtResolvePathname()):

        %N      The value of the filename parameter, or the
                application's class name.
        %T      The value of the file "type".  In this case, the
                literal string "app-defaults"
        %C      customization resource (R5 only)
        %S      Suffix.  None for app-defaults.
        %L      Language, locale, and codeset (e.g. "ja_JP.EUC")
        %l      Language part of %L  (e.g. "ja")
        %t      The territory part of the display's language string
        %c      The codeset part of the display's language string

	Let's take apart the example.  Suppose the application's class name is 
"Myterm". Also, suppose Open Windows is installed in /usr/openwin. (Notice the 
example omits locale-specific lookup.)
	/usr/lib/X11/%T/%N        means /usr/lib/X11/app-defaults/Myterm
	$OPENWINHOME/lib/%T/%N    means /usr/openwin/lib/app-defaults/Myterm

	As the application initializes, Xt tries to open both of the above 
app-defaults files, in the order shown.  As soon as it finds one, it reads it 
and uses it, and stops looking for others.  The effect of this path is to 
search first in /usr/lib/X11, then in /usr/openwin.

	Let's consider another example. This time, let's set 
XUSERFILESEARCHPATH so it looks for the file Myterm.ad in the current working 
directory, then for Myterm in the directory ~/app-defaults.
	setenv XUSERFILESEARCHPATH ./%N.ad:$HOME/app-defaults/%N

	The first path in the list expands to ./Myterm.ad.  The second expands 
to $HOME/app-defaults/Myterm.  This is a convenient setting for debugging 
because it follows the Imake convention of naming the app-defaults file 
Myterm.ad in the application's source directory, so you can run the application
from the directory in which you are working and still have the resources loaded
properly.  NOTE: when looking for app-default files with XUSERFILESEARCHPATH,
for some  bizarre reason, neither the type nor file suffix is defined so %T and
%S are useless.

	With R5, there's another twist.  You may specify a customization 
resource value.  For example, you might run the "myterm" application like this:
	myterm -xrm "*customization: -color"

	If one of your pathname specifications had the value
"/usr/lib/X11/%T/%N%C" then the expanded pathname would be
"/usr/lib/X11/app-defaults/Myterm-color" because the %C substitution character 
takes on the value of the customization resource.

	The default XFILESEARCHPATH, compiled into Xt, is:
		/usr/lib/X11/%L/%T/%N%C:\  (R5)
		/usr/lib/X11/%l/%T/%N%C:\  (R5)
		/usr/lib/X11/%T/%N%C:\     (R5)
		/usr/lib/X11/%L/%T/%N:\
		/usr/lib/X11/%l/%T/%N:\
		/usr/lib/X11/%T/%N

	(Note: some sites replace /usr/lib/X11 with a ProjectRoot in
this batch of default settings.)

	The default XUSERFILESEARCHPATH, also compiled into Xt, is 
		<root>/%L/%N%C:\  (R5)
		<root>/%l/%N%C:\  (R5)
		<root>/%N%C:\     (R5)
		<root>/%L/%N:\
		<root>/%l/%N:\
		<root>/%N:

	<root> is either the value of XAPPLRESDIR or the user's home directory 
if XAPPLRESDIR is not set.  If you set XUSERFILESEARCHPATH to some value other 
than the default, Xt ignores XAPPLRESDIR altogether.

	Notice that the quick and dirty way of making your application find 
your app-defaults file in your current working directory is to set XAPPLRESDIR 
to ".", a single dot.  In R3, all this machinery worked differently; for R3 
compatibilty, many people set their XAPPLRESDIR value to "./", a dot followed 
by a slash.

[Thanks to Oliver Jones (oj@world.std.com); 2/93.]

----------------------------------------------------------------------
Subject:  35)  How to I have the R4 xdm put a picture behind the log-in window?

The answer lies in changing xdm's xrdb resource in the xdm-config file to run a
program to change the background before loading the resources; for example, 
your /usr/lib/X11/xdm/xdm-config file may add the line 
	DisplayManager.0.authorize: false 
to permit unrestricted access to the display before log-in (beware!) and also 
	DisplayManager*xrdb:	/usr/lib/X11/xdm/new.xrdb
where that file does something (for all connections) along the lines of:
	#!/bin/sh
	#comes in with arguments: -display :0 -load /usr/lib/X11/xdm/Xresources
	/usr/bin/X11/xsetroot -display $2 -bitmap /usr/lib/X11/xdm/new.bitmap
	/usr/bin/X11/xrdb $*
Substitute xloadimage or xv for xsetroot, to taste.  Note that this is a 
general hack that can be used to invoke a console window or any other client.

[Thanks to Jay Bourland (jayb@cauchy.stanford.edu), 9/91]

----------------------------------------------------------------------
Subject:  36)  Why isn't my PATH set when xdm runs my .xsession file?

	When xdm runs your .xsession it doesn't source your .cshrc or .login
files. You can set the path explicitly as you normally could for any SH script;
or you can place all environment-setting statements in a separate file and
source it from both the .xsession file and your shell configuration file; or,
if you set your PATH in your .cshrc file, the normal place, you can make your 
.xsession have PATH set simply by making it a csh script, i.e. by starting
your .xsession file off with "#!/bin/csh". 
	If this doesn't work, also try starting off with:
		#!/bin/sh
		# Reset path:
		PATH=`csh -c 'echo $PATH'` ; export PATH

----------------------------------------------------------------------
Subject:  37)  How do I keep my $DISPLAY when I rlogin to another machine?

	There are several ways to avoid having to do a "setenv DISPLAY ..."
whenever you log in to another networked UNIX machine running X.
	One solution is to use the clients/xrsh on the R5 contrib tape.  It 
includes xrsh, a script to start an X application on remote machine, and
xrlogin, a script to start a local xterm running rlogin to a remote machine.
A more recent version is on export in xrsh-5.4.shar.
	One solution is to use the xrlogin program from der Mouse
(mouse@larry.mcrcim.mcgill.edu). You can ftp caveat-emptor versions from
132.206.1.1, in X/xrlogin.c and X/xrlogind.c. The program packages up $TERM and
$DISPLAY into a single string, which is stuffed into $TERM.  rlogin then 
propagates $TERM normally; your .cshrc on the remote machine should contain
		eval `xrlogind`
where xrlogind is a program that checks $TERM and if it is of the special 
format it recognizes, unpacks it and spits out setenv and unsetenv commands to 
recreate the environment variables. [11/90]

	In addition, if all you need to do is start a remote X process on 
another host, and you find
		rsh <HOST> -n /usr/bin/X11/xterm -display $DISPLAY 
too simple (DISPLAY must have your real hostname), then this version of xrsh 
can be used to start up remote X processes. The equivalent usage would be 
		xrsh <HOST> xterm

  #! /bin/sh
  # start an X11 process on another host
  # Date: 8 Dec 88 06:29:34 GMT
  # From: Chris Torek <chris@mimsy.umd.edu>
  # rsh $host -n "setenv DISPLAY $DISPLAY; exec $@ </dev/null >&/dev/null"
  #
  # An improved version:
  # rXcmd (suggested by John Robinson, jr@bbn.com)
  #       (generalized for sh,ksh by Keith Boyer, keith@cis.ohio-state.edu)
  #
  # but they put the rcmd in ()'s which left zombies again.  This
  # script combines the best of both.
  
  case $# in
  [01])  echo "Usage: $0 host x-cmd [args...]";;
  *)
  	case $SHELL in
  	*csh*)  host="$1"; shift
  		xhost "$host" > /dev/null
  		rsh "$host" -n \
  			"setenv TERM xterm; setenv DISPLAY `hostname`:0; \
  			exec $* </dev/null >& /dev/null" &
  		;;
  	*sh)
  		host="$1"; shift
  		xhost "$host" > /dev/null
  		rsh "$host" -n \
  			"TERM=xterm export TERM; \
  			DISPLAY=`hostname`:0 export DISPLAY; \
  			LD_LIBRARY_PATH=/usr/X11/lib export LD_LIBRARY_PATH; \
  			PATH=\$PATH:/usr/X11/bin:/usr/bin/X11:/usr/local/bin; \
			export PATH; \
  			exec $* < /dev/null > /dev/null 2>&1" &
  		;;
  	esac
  	;;
  esac

----------------------------------------------------------------------
Subject:  38)  How can I design my own font?

	One way is to use the "bitmap" client or some other bitmap-editor (e.g.
Sun's icon-editor tool, post-processed with pbmplus) to design the individual 
characters and then to do some large amount of post-processing to concatenate 
them into the BDF format. See Ollie Jones's article in the November 91 X 
Journal for more information.
	The R3 contrib/ area (in fonts/utils/ and in clients/xtroff) contained 
a number of useful utilities, including some to convert between BDF font format
and a simple character format which can be edited with any text editor.
	An easier way is to use the "xfed" client to modify an existing font; a
version is on the R4 or R5 X11R5 contrib tape in contrib/clients/xfed. Xfed is 
available for anonymous ftp on ftp.Informatik.Uni-Dortmund.DE [129.217.64.63], 
possibly as file /pub/windows/X/Diverse-X11-Sourcen/xfed.tar.Z. It can produce
BDF-format fonts which can be compiled for a variety of X servers.
	The xfedor client from Group Bull permits creation of bitmaps, cursors,
XPM1 pixmaps, and fonts. Binaries for common machines are on avahi.inria.fr in
/pub; in addition, the sources (an old Xlib implementation) have been placed 
[5/91] in export:/contrib. 
	If you are a MetaFont user you can use "mftobdf" from the SeeTeX
distribution to convert PK, GF, and PXL fonts to BDF format; the distribution
is on ftp.cs.colorado.edu and on export.lcs.mit.edu.
	The GNU package fontutils-0.4.tar.Z on prep.ai.mit.edu includes xbfe,
a font editor, and a number of utilities for massaging font formats.
	The O'Reilly X Resource issue #2 contains an article on using these
tools to modify a font.
	Fonts can be resized with Hiroto Kagotani's bdfresize; a new version is
in ftp.cs.titech.ac.jp:/X11/contrib.

----------------------------------------------------------------------
Subject:  39)  Why does adding a font to the server not work (sic)?

	After you have built the font using your system's font-compiler, 
installed it in some directory, and run `mkfontdir` or your system's equivalent
(e.g. bldfamily for OpenWindows) in that directory, be sure to use `xset +fp 
$dir` to add that full path-name to the server's font-path, *or* if the 
directory is already in the path, use `xset fp rehash` so that the new fonts in
that directory are actually found; it is this last step that you're probably 
leaving out. (You can also use `xset q` to make sure that that directory is in 
the path.)
	Sometimes your "xset +fp $dir" command fails with a BadValue error:
		X Error of failed request:BadValue
			(integer parameter out of range for operation)
		Major opcode of failed request:  51 (X_SetFontPath)

	This means the X server cannot find or read your font directory, or
that your directory does not look like a font directory to the server.  (The
mention of an "integer parameter" in the message is spurious.)

-- Is the font directory you're specifying readable from the SERVER's file
   system?  Remember, it's the server, not the client, which interprets your
   font directory.  Trouble in this area is especially likely when you issue an
   xset command with shell metacharacters in it (e.g. "xset +fp ~/myfonts") and
   the server is an X terminal or managed by xdm.

-- Is the directory really a font directory?  If you're running an MIT server
   (or most varieties of vendor servers) look in the directory for the file
   "fonts.dir".  If you can't find that file, run mkfontdir(1).  (If you're
   running OpenWindows, look for the file "Families.list".  If you can't find
   it, run bldfamily(1).)

-- If you're in a site where some people run X11Rn servers and others run a
   proprietary server with nonstandard font formats (OpenWindows, for
   example), make sure the font directory is right for the server you're using.
   Hint: if the directory contains .pcf and/or .snf files, it won't work for
   Open Windows.  If the directory contains .ff and/or .fb files, it won't work
   for X11Rn.

[thanks to der Mouse (mouse@larry.mcrcim.mcgill.edu) and to Oliver Jones 
(oj@pictel.com); 7/92 ]

----------------------------------------------------------------------
Subject:  40)  How do I convert a ".snf" font back to ".bdf" font?

	A tool called "snftobdf 1.4" is part of the bdftools package, which is 
available from export.lcs.mit.edu:contrib/bdftools.tar.Z and from 
crl.nmsu.edu:pub/misc/bdftools.tar.Z.  [2/91]

----------------------------------------------------------------------
Subject:  41)  What is a general method of getting a font in usable format?

	der Mouse's getbdf is one solution; it connects to a server and 
produces a .BDF file for any font the server is willing to let it.  It can be 
used as an anything-to-BDF converter, but requires access to a server that can 
understand the font file, thus is both more and less powerful than other tools 
such as snftobdf. getbdf is on 132.206.1.1 in X/getbdf.c or available via mail 
from mouse@larry.McRCIM.McGill.EDU. [5/91]
	In addition, the R5 program "fstobdf" can produce bdf for any font that
the R5 server has access to.

----------------------------------------------------------------------
Subject:  42)  How do I use DECwindows fonts on my non-DECwindows server?

	The DECwindows fonts typically don't exist on a non-DEC installation,
but rewrite rules can be used to alias fonts used by DECwindows applications to
standard MIT fonts of similar characteristics and size. Pick up the file 
contrib/DECwindows_on_X11R4_font.aliases from export.lcs.mit.edu; this file is 
for a standard MIT R4 server.  It can also serve as a starting point for 
creating a similar aliases file for the Open Windows server or other servers 
which do not use the MIT font scheme.

----------------------------------------------------------------------
Subject:  43)  How do I add ".bdf" fonts to my DECwindows server?

	The format of fonts preferred by DEC's X server is the ".pcf" format.
You can produce this compiled format from the .bdf format by using DEC's dxfc
font-compiler. Note that the DEC servers can also use raw .bdf fonts, with a
performance hit.

----------------------------------------------------------------------
Subject:  44)! How can I set backgroundPixmap in a defaults file? (What is XPM?)
I want to be able to do something like this:
	xclock*backgroundPixmap:      /usr/include/X11/bitmaps/rootweave

	You can't do this. The backgroundPixmap resource is a pixmap of the 
same depth as the screen, not a bitmap (which is a pixmap of depth 1). Because 
of this, writing a generic String to Pixmap converter is impossible, since 
there is no accepted convention for a file format for pixmaps. Therefore, 
neither the X Toolkit or the Athena widget set define a String to Pixmap 
converter, because there is no converter you cannot specify this value as a 
resource.  The Athena widget set does define a String to Bitmap converter for 
use in many of its widgets, however.
[courtesy Chris D. Peterson (now kit@ics.com), 4/90]

However:
	A specific converter which encapsulates much of the functionality of 
the xloadimage package by Jim Frost was posted 12/90 by Sebastian Wangnick 
(basti@unido.informatik.uni-dortmund.de); it permits loading of a number of 
image formats as a pixmap.

	The leading general-purpose format for pixmaps is the XPM format used 
by Groupe Bull in several of its programs, including the GWM window manager, by
AT&T in its olpixmap editor, and by ICS in its interface builder. XPM 
distribution, available on export as contrib/xpm.tar.Z, includes read/write 
routines which can easily be adapted to converters by new widgets which want to
allow specification of pixmap resources in the above manner.  See information
on the xpm-talk mailing list above. XPM 3.0f was announced in 3/93 and is
available from export.lcs.mit.edu and avahi.inria.fr; an older version is on 
the R5 contrib tape. [A set of XPM icons collected by Anthony Thyssen 
(anthony@kurango.cit.gu.edu.au) is on export in contrib/AIcons.]

----------------------------------------------------------------------
Subject:  45)  Why can't I override translations? Only the first item works.

	You probably have an extra space after the specification of the first 
item, like this:
	basic*text.translations:  #override \
	Ctrl<Key>a:    beginning-of-line() \n\ 	
	Ctrl<Key>e:    end-of-line()
					      ^ extra space
The newline after that space is ending the translation definition.
[Thanks to Timothy J. Horton, 5/91]

----------------------------------------------------------------------
Subject:  46)  How can I have xclock or oclock show different timezones?

	One solution is xchron, in Volume 6 of comp.sources.x, which can show
the time for timezones other than the local one. 
	Alternatively, you can probably set the timezone in the shell from
which you invoke the xclock or oclock, or use a script similar to this:
	#!/bin/sh
	TZ=PST8PDT xclock -name "San_Luis_Obispo_CA" 2> /dev/null &
	TZ=EST5EDT xclock -name "King_Of_Prussia_PA" 2> /dev/null &

----------------------------------------------------------------------
Subject:  47)  I have xmh, but it doesn't work. Where can I get MH?

	The xmh mail-reader requires the Rand MH mail/message handling system,
which is not part of the UNIX software distribution for many machines. A list 
of various ftp, uucp, e-mail and US-mail sites for both xmh and MH is given in 
the monthly MH FAQ; one source is ics.uci.edu in the file pub/mh/mh-6.7.tar.Z.
If you do not receive the comp.mail.mh newsgroup or the MH-users mailing list, 
you can request a copy of the FAQ, which also includes a section on xmh, 
by sending mail to mail-server@pit-manager.mit.edu containing the request
"send usenet/news.answers/mh-faq".

----------------------------------------------------------------------
Subject:  48)  Why am I suddenly unable to connect to my Sun X server?
After a seemingly random amount of time after the X server has been started, no
other clients are able to connect to it.

	The default cron cleanup jobs supplied by Sun (for 4.0.3, at least)
delete "old" (unreferenced) files from /tmp -- including /tmp/.X11-unix, which 
contains the socket descriptor used by X. The solution is to add "! -type s" to
the find exclusion in the cron job.
[10/90]

----------------------------------------------------------------------
Subject:  49)  Why don't the R5 PEX demos work on my mono screen?

The R5 sample server implementation works only on color screens, sorry.

----------------------------------------------------------------------
Subject:  50)! How do I get my Sun Type-[45] keyboard fully supported by Xsun?
 
Many users wants the Num Lock key to light the Num Lock LED and have the 
appropriate effect on the numeric keypad. The Xsun server as distributed by MIT
doesn't do this but there are two different patches available.
 
The first patch is written by Jonathan Lemon and fixes the Num Lock related 
problems. It is available from export.lcs.mit.edu in the file
contrib/Xsun-R5.numlock_patch.Z .
 
The second is written by Martin Forssen and fixes the Num Lock and Compose keys
and adds support for the different national keyboard layouts for Type-4 and 
Type-5 keyboards. This patch is available from export.lcs.mit.edu in
contrib/sunkbd1216-0314.tar.Z or via email from maf@dtek.chalmers.se.
 
[thanks to Martin Forssen (maf@dtek.chalmers.se or maf@math.chalmers.se), 8/92]

A set of patches by William Bailey (dbgwab@arco.com) was posted to newsgroups
11/92 to provide support for the Type-5 keyboard.

----------------------------------------------------------------------
Subject:  51)  How do I report bugs in X?

	Generally, report bugs you find to the organization that supplied you
with the X Window System. If you received the R5 source distribution directly 
from MIT, please read the file mit/bug-report for instructions. [Look in
mit/doc/bugs/bug-report in R4.]

[Thanks to Stephen Gildea <gildea@expo.lcs.mit.edu>, 5/91; 12/91]

----------------------------------------------------------------------
Subject:  52)  Why do I get "Warning: Widget class version mismatch"?

	This error, which typically goes on to say, "widget 11004 vs. 
intrinsics 11003" indicates that the header files you included when building 
your program didn't match the header files that the Xt library you're linking 
against was built with; check your -I include path and -L link-path to be sure.
	However, the problem also occurs when linking against a version of the 
X11R4 Xt library before patch 10; the version number was wrong. Some Sun OW
systems, in particular, were shipped with the flawed version of the library, 
and applications which link against the library typically give the warnings you
have seen.

----------------------------------------------------------------------
Subject:  53)  Where can I find a dictionary server for xwebster?

	Webster's still owns the copyright to the on-line copies of Webster's
Dictionary which are found at various (university) sites. After it became aware
that these sites were then acting as servers for other sites running xwebster 
and gnuemacs-webster, it asked that server sites close off external access.
	[The NeXT machine apparently is also licensed to have the dictionary. A
Webster daemon for NeXT machines is available from iuvax.cs.indiana.edu 
(129.79.254.192) in "pub/webster/NeXT-2.0".]
	Unless you want to get a legal on-line copy yourself or can find a site
which can grant you access, you are probably out of luck. 

	However, if you are a legitimate site, you'll want to pick up the
latest xwebster, as-is on export:contrib/xwebster.tar.Z [10/91]; the file 
xwebster.README includes discussions of the availability, illegality, and 
non-availability of dictionary servers. 
	
[courtesy steve@UMIACS.UMD.EDU (Steve Miller) and mayer@hplabs.hp.com (Niels 
Mayer) 11/90]

----------------------------------------------------------------------
Subject:  54)  TOPIC: OBTAINING X AND RELATED SOFTWARE AND HARDWARE
----------------------------------------------------------------------
Subject:  55)  Is X public-domain software?

	No. The X software is copyrighted by various institutions and is not 
"public domain", which has a specific legal meaning. However, the X 
distribution is available for free and can be redistributed without fee.
	Contributed software, though, may be placed in the public domain by
individual authors.

----------------------------------------------------------------------
Subject:  56)  How compatible are X11R3, R4, and R5? What changes are there?

The Release Notes for each MIT release of X11 specify the changes from the 
previous release.  The X Consortium tries very hard to maintain compatibility 
across releases.  In the few places where incompatible changes were necessary, 
details are given in the Release Notes.  Each X11 distribution site on the 
network also offers the Release Notes that go with the release they offer; the 
file typically can be found at the top of the distribution tree.

[Stephen Gildea, 1/92]

The comp.windows.x.intrinsics FAQ-Xt lists Xt differences among these versions.

----------------------------------------------------------------------
Subject:  57)! Where can I get X11R5 (source and/or binaries)?

Information about MIT's distribution of the sources on 6250bpi and QIC-24 tape 
and its distribution of hardcopy of the documents is available from 
Software Center, Technology Licensing Office, Massachusetts Institute of 
Technology, 28 Carleton Street, Room E32-300, Cambridge MA 02142-1324,
phone: 617-258-8330.

You will need about 100Mb of disk space to hold all of Core and 140MB to hold
the Contrib software donated by individuals and companies. 

PLEASE use a site that is close to you in the network.

Note that the RELEASE notes are generally available separately in the same
directory; the notes list changes from previous versions of X and offer a
guide to the distribution.

			  North America anonymous FTP:

California	gatekeeper.dec.com		pub/X11/R5
		16.1.0.2
California	soda.berkeley.edu		pub/X11R5
		128.32.131.179
Indiana		mordred.cs.purdue.edu		pub/X11/R5
		128.10.2.2
Maryland	ftp.brl.mil			pub/X11R5
		128.63.16.158
		(good for MILNET sites)
Massachusetts	crl.dec.com			pub/X11/R5
		192.58.206.2
Massachusetts	export.lcs.mit.edu		pub/R5
		18.24.0.12
		(crl.dec.com is better)
Michigan	merit.edu			pub/X11R5
		35.1.1.42
Missouri	wuarchive.wustl.edu		packages/X11R5
		128.252.135.4
Montana		ftp.cs.montana.edu		pub/X.V11R5
		192.31.215.202
New Mexico	pprg.eece.unm.edu		pub/dist/X11R5
		129.24.24.10
New York	azure.acsu.buffalo.edu		pub/X11R5
		128.205.7.6
North Carolina	cs.duke.edu			dist/sources/X11R5
		128.109.140.1
Ohio		ftp.cis.ohio-state.edu		pub/X.V11R5
		128.146.8.52
Ontario		ftp.cs.utoronto.ca		pub/X11R5
		128.100.1.105
Washington DC	x11r5-a.uu.net			X/R5
		192.48.96.12
Washington DC	x11r5-b.uu.net			X/R5
		137.39.1.12

		   Europe/Middle East/Australia anonymous FTP:

Australia	munnari.oz.au			X.V11/R5
		128.250.1.21
Denmark		freja.diku.dk			pub/X11R5
		129.142.96.1
United Kingdom	src.doc.ic.ac.uk		graphics/X.V11R5
		146.169.3.7
		hpb.mcc.ac.uk			pub/X11r5
		130.88.200.7
Finland		nic.funet.fi			pub/X11/R5
		128.214.6.100
France		nuri.inria.fr			X/X11R5
		128.93.1.26
Germany		ftp.germany.eu.net		pub/X11/X11R5
		192.76.144.129
Israel		cs.huji.ac.il			pub/X11R5
		132.65.6.5
Italy		ghost.sm.dsi.unimi.it		pub/X11R5
		149.132.2.1
Netherlands	archive.eu.net			windows/X/R5
		192.16.202.1
Norway		ugle.unit.no			pub/X11R5
		129.241.1.97
Norway		nac.no				pub/X11R5
		129.240.2.40
Switzerland	nic.switch.ch			software/X11R5
		130.59.1.40

			 Japan anonymous FTP:

Kanagawa	sh.wide.ad.jp			X11R5
		133.4.11.11
Kwansai		ftp.ics.osaka-u.ac.jp		X11R5
		133.1.12.30
Kyushu		wnoc-fuk.wide.ad.jp		X11R5
		133.4.14.3
TISN		utsun.s.u-tokyo.ac.jp		X11R5
		133.11.11.11
Tokyo		kerr.iwanami.co.jp		X11R5
		133.235.128.1
Tokyo		scslwide.sony.co.jp		pub/X11R5
		133.138.199.1

				UUCP:

uunet		for UUNET customers		~/X/R5
decwrl		existing neighbors only		~/pub/X11/R5
osu-cis						~/X.V11R5
		(not online until ~ 9 Sept)
utai		existing neighbors only		~/ftp/pub/X11R5
hp4nl		Netherlands only		~uucp/pub/windows/X/R5
		


				 NFS:
Missouri	wuarchive.wustl.edu		/archive/packages/X11R5
		128.252.135.4			mount point: /archive
							
				 AFS:
Pennsylvania	/afs/grand.central.org/pub/X11R5

		     NIFTP (hhcp, cpf, fcp, ...):
United Kingdom	uk.ac.ic.doc.src		<X.V11R5>
		00000510200001
		user "guest"

			      anon FTAM:
United Kingdom	000005102000 (Janet)		X.V11R5
		146.169.3.7 (Internet)
		204334504108 (IXI)

			       ACSNet:
Australia	munnari.oz (fetchfile)		X.V11/R5
		Please fetch only one file
		at a time, after checking
		that a copy is not available
		at a closer site.

[9/2/91; updated for contrib 10/91]

Anyone in Europe can get a copy of the MIT X.V11R5 distribution, including
the core and contributed software and all official patches, free of charge.
The only requirement is to agree to return the tapes, or equivalent new tapes.
Only QIC and TK format cartridges can be provided.  Contact: Jamie Watson,
Adasoft AG, Nesslerenweg 104, 3084 Wabern, Switzerland.
Tel: +41 31 961.35.70 or +41 62 61.41.21; Fax: +41 62 61.41.30; jw@adasoft.ch.

UK sites can obtain X11 through the UKUUG Software Distribution Service, from 
the Department of Computing, Imperial College, London, in several tape formats.
You may also obtain the source via Janet (and therefore PSS) using Niftp (Host:
uk.ac.ic.doc.src Name: guest Password: your_email_address).  Queries should be 
directed to Lee McLoughlin, 071-589-5111#5037, or to info-server@doc.ic.ac.uk 
or ukuug-soft@uk.ac.ic.doc (send a Subject line of "wanted". Also offered are 
copies of comp.sources.x, the export.lcs.mit.edu contrib and doc areas and most
other announced freely distributable packages. 

X11R5 and X11R4 source along with X11R5 contrib code, prebuilt X binaries for
major platforms, and source code examples from O'Reilly's books is available on
an ISO-9660-format CD-ROM from O'Reilly & Associates. [as of 3/92].

X11R5 source is available on ISO-9660-format CD-ROM for members of the Japan
Unix Society from Hiroaki Obata, obata@jrd.dec.com.

X11R5 source along with GNU source, the comp.sources.x archives, and SPARC
binaries is available on an ISO-9660-format CD-ROM from PDQ Software,
510-947-5996 (or Robert A. Bruce, rab@sprite.Berkeley.EDU).

X11R5 source is available from Automata Design Associates, +1 215-646-4894.

Various users' groups (e.g. SUG) offer X sources cheaply, typically on CD-ROM.

Source for the Andrew User Interface System 5.1 and binaries for common systems
are available on CD-ROM. Information: info-andrew-requests@andrew.cmu.edu,
412-268-6710, fax 412-621-8081.

Binaries for X11R5, with shared libX11 and libXmu, for A/UX 2.0.1 are now 
available from wuarchive.wustl.edu:/archive/systems/aux/X11R5.  Patches for 
X11R5 compiled with gcc (but not shared libraries) are also available.
[John L. Coolidge (coolidge@cs.uiuc.edu, 10/91)]

Binaries by Rich Kaul (kaul@ee.eng.ohio-state.edu) for the Sun386i running 
SunOS 4.0.2 are available on dsinc.dsi.com (please only after-hours USA EST).

Binaries for the Sun386i are available from compaq.com (131.168.249.254) in
pub/sun-386i/sources and from vernam.cs.uwm.edu (129.89.9.117).

A binary tree for the Next by Douglas Scott (doug@foxtrot.ccmrc.ucsb.edu) is on
foxtrot.ccmrc.ucsb.edu; it is missing the server, though.

Binaries for the Sun386i are in vernam.cs.uwm.edu:/sun386i.

Binaries for the HP-PA are on hpcvaaz.cv.hp.com (15.255.72.15).

Source and binaries for HP-UX 8.*/9.0(S300/400/700/800) and Domain 10.4 (68K,
DN 10K) are available through the Interworks Users Group; contact Carol Relph
at 508-436-5046, fax 508-256-7169, or relph_c@apollo.hp.com.

Patches to X11R5 for Solaris 2.1 by Casper H.S. Dik (casper@fwi.uva.nl) et al
are on export in contrib/{R5.SunOS5.patch.tar.Z,R5.SunOS5.patch.README}.

Patches to X11R5 for the Sun Type 5 keyboard and the keyboard NumLock are 
available from William Bailey (dbgwab@arco.com).

Also:

Binaries are available from Unipalm (+44 954 211797, xtech@unipalm.co.uk), 
probably for the Sun platforms. 
----------------------------------------------------------------------


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

Newsgroup: comp.windows.x
document_id: 66431
From: duvvuri@flashflood.cs.odu.edu (D.V.Prakash)
Subject: Pointer/Cursor


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 
I am new to Xlib



replies will be greatly appreciated

Thank you

Prakash
< duvvuri@cs.odu.edu >

Newsgroup: comp.windows.x
document_id: 66432
From: karenb@westford.ccur.com (Karen Bircsak)
Subject: lost in (TekHVC color) space

(please respond via email!)

Has anybody actually seen the Tek color space stuff working?  I'm not
having any luck with either the xtici editor from export.lcs.mit.edu or with
O'Reilly's ftp-able example xcms from ftp.uu.net.

The O'Reilly example fails for almost every set of inputs because
XcmsTekHVCQueryMaxV returns a smaller value than XcmsTekHVCQueryMinV does
(which makes no sense to me).

The xtici editor fails in XcmsStoreColors, apparently because the
mathematical manipulations of the color specs results in invalid values.  So
you can't actually edit any colors.

We have X11 R5 patch level 22; 8-bit pseudoColor visual.  I've poked around 
in the xcms code in Xlib, but without some understanding of the theory I have 
no idea what's going wrong.  Can somebody confirm if either of the 
above-mentioned programs work on their systems, or let me know if they fail 
for you too?  Please include what hardware/software/patch levels you have.

Any hints?

Please respond with email as I don't regularly read this group.

Thanks,
Karen

-------------------------------------------------------------------------
Karen Bircsak
Concurrent Computer Corporation

karenb@westford.ccur.com
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 66433
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 3/5

Archive-name: x-faq/part3
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  58)! Where can I get patches to X11R5?

	The release of new public patches by the MIT X Consortium is announced
in the comp.windows.x.announce newsgroup.

	Patches themselves are available via ftp from export and from other
sites from which X11 is available. They are now also distributed through the 
newsgroup comp.sources.x. Some source re-sellers may be including patches in 
their source distributions of X11.

	People without ftp access can use the xstuff mail server. It now has 
23 patches for X11R5 [3/93].  Send to xstuff@expo.lcs.mit.edu the Subject line
		send fixes #
where # is the name of the patch and is usually just the number of the patch.

	Here are a few complications:
	1) fix 5 is in four parts; you need to request "5a", "5b", "5c" and 
"5d" separately
	2) the file sunGX.uu, which was part of an earlier patch, was 
re-released with patch 7 [note: the file doesn't work with Solaris]
	3) fix 8 is in two parts: "8a" and "8b"
	4) fix 13 is in three parts: "13a", "13b", and "13c"
	5) fix 16 is in two parts: "16a" and "16b"
	6) fix 18 replaces the R5fix-test1 for the X Test Suite, which 
previously was optional
	7) fix 19 also needs PEXlib.tar.Z, which you can obtain from xstuff
by asking for "PEXlib.uu.[1234]".
	8) fix 22 is in 9 parts, "22a" through "22i"

----------------------------------------------------------------------
Subject:  59)  What is the xstuff mail-archive?

	The xstuff server is a mail-response program. That means that you mail 
it a request, and it mails back the response.
	Any of the four possible commands must be the first word on a line. The
xstuff server reads your entire message before it does anything, so you can 
have several different commands in a single message (unless you ask for help). 
The xstuff server treats the "Subject:" header line just like any other line 
of the message.
	The archives are organized into a series of directories and 
subdirectories.  Each directory has an index, and each subdirectory has an 
index. The top-level index gives you an overview of what is in the 
subdirectories, and the index for each subdirectory tells you what is in it.

	1) The command "help" or "send help" causes the server to send you a 
more detailed version of this help file.
	2) if your message contains a line whose first word is "index", then 
the server will send you the top-level index of the contents of the archive. If
there are other words on that line that match the name of subdirectories, then 
the indexes for those subdirectories are sent instead of the top-level index. 
For example, you can say "send index fixes" (or "index fixes"). A message that 
requests an index cannot request data.
	3) if your message contains a line whose first word is "send", then the
xstuff server will send you the item(s) named on the rest of the line. To name 
an item, you give its directory and its name. For example
                send fixes 1 4 8a 8b 9
	You may issue multiple send requests. The xstuff server contains many 
safeguards to ensure that it is not monopolized by people asking for large 
amounts of data. The mailer is set up so that it will send no more than a fixed
amount of data each day. If the work queue contains more requests than the 
day's quota, then the unsent files will not be processed until the next day. 
Whenever the mailer is run to send its day's quota, it sends the requests out 
shortest-first.
	4) Some mailers produce mail headers that are unusable for extracting 
return addresses.  If you use such a mailer, you won't get any response.  If 
you happen to know an explicit path, you can include a line like
        path foo%bar.bitnet@mitvma.mit.edu
or
        path bar!foo!frotz
in the body of your message, and the daemon will use it.

	The xstuff server itself can be reached at xstuff@expo.lcs.mit.edu. If 
your mailer deals in "!" notation, try sending to 
{someplace}!mit-eddie!expo.lcs.mit.edu!xstuff.

[based on information from the MIT X Consortium, 8/89, 4/90.]

----------------------------------------------------------------------
Subject:  60)! Where can I get X11R4 (source and binaries)?

	Integrated Computer Solutions, Inc., ships X11R4 on half-inch, 
quarter-inch, and TK50 formats. Call 617-621-0060 for ordering information.

	The Free Software Foundation (617-876-3296) sells X11R4 on half-inch 
tapes and on QIC-24 cartridges.  

	Yaser Doleh (doleh@math-cs.kent.EDU; P.O. Box 1301, Kent, OH 44240) is
making X11R4 available on HP format tapes, 16 track, and Sun cartridges. [2/90]

	European sites can obtain a free X11R4 distribution from Jamie Watson,
who may be reached at chx400!pan!jw or jw@pan.uu.ch. [10/90]

	Non Standard Logics (+33 (1) 43 36 77 50; requests@nsl.fr) makes source
available.

	IXI Limited (+44 223 462 131) is selling X11R4 source on quarter-inch 
cartridge formats and on 5.25" and 3.5" floppy, with other formats available on
request. [IXI, 2/90]

	Virtual Technologies (703-430-9247) provides the entire X11R4 
compressed source release on a single QIC-24 quarter-inch cartridge and also on
1.2meg or 1.44 meg floppies upon request. [Conor Cahill 
(cpcahil@virtech.uu.net) 2/90]

	Young Minds (714-335-1350) makes the R4 and GNU distributions available
on a full-text-indexed CD-ROM.

[Note that some distributions are media-only and do not include docs.]

	X11R4 is ftp-able from export.lcs.mit.edu; these sites are preferable, 
though, and are more direct:

                        Machine                  Internet      FTP
    Location            Name                     Address       Directory
    --------            -------                  --------      -------------
(1) West USA            gatekeeper.dec.com       16.1.0.2      pub/X11/R4
    Central USA         mordred.cs.purdue.edu    128.10.2.2    pub/X11/R4
(2) Central USA         giza.cis.ohio-state.edu  128.146.8.61  pub/X.V11R4
    Southeast USA       uunet.uu.net             192.48.96.2   X/R4
(3) Northeast USA       crl.dec.com              192.58.206.2  pub/X11/R4
(4) UK Janet            src.doc.ic.ac.uk         129.31.81.36  X.V11R4
    UK niftp            uk.ac.ic.doc.src                       <XV11R4>
(5) Australia           munnari.oz.au            128.250.1.21  X.V11/R4

The giza.cis.ohio-state.edu site, in particular, is known to have much of the
contrib stuff that can be found on export. 

The release is available to DEC Easynet sites as CRL::"/pub/X11/R4".

Sites in Australia may contact this address: ftp.Adelaide.EDU.AU [129.127.40.3]
and check the directory pub/X/R4. The machine shadows export and archives
comp.sources.x. (Mark Prior, mrp@ucs.adelaide.edu.au, 5/90)

Note: a much more complete list is distributed as part of the introductory 
postings to comp.sources.x.

A set of X11R4 binaries built by Tom Roell (roell@informatik.tu-muenchen.de) 
for the 386/ix will available from export.lcs.mit.edu in /contrib and in 
/pub/i386/X11R4 from 131.159.8.35 in Europe. Stephen Hite 
(shite@sinkhole.unf.edu) can also distribute to folks without ftp facilities 
via disks sent SASE; contact him for USmail and shipping details. [12/90] In 
addition, the binaries are available via uucp from szebra [1-408-739-1520, TB+ 
(PEP); ogin:nuucp sword:nuucp] in /usr2/xbbs/bbs/x.  In addition, the source is
on zok in /usrX/i386.R4server/. [2/91] In addition, if you are in the US, the 
latest SVR4 binary (April 15), patches, and fonts are available on 
piggy.ucsb.edu (128.111.72.50) in the directory /pub/X386, same filenames as 
above. (Please use after 6pm Pacific, as these are large files.) [5/91]

A set of HP 9000/800 binaries is available on hpcvaaz.cv.hp.com (15.255.72.15)
as ~ftp/pub/MitX11R4/libs.x800.Z. [2/91]

A set of X11R4 binaries for the NeXT 2.x have been made available by Howie Kaye
on cunixf.cc.columbia.edu

A set of binaries by John Coolidge (coolidge@cs.uiuc.edu) for the Mac running 
A/UX 2.0 is available from wuarchive.wustl.edu in the file
(/archive/systems/aux/X11R4/Xupdate2.tar.Z). Also in X11R4/diffs is a set of 
patches for making X11R4 with shared libraries with mkshlib.

A complete distribution of SCO X11R4 binaries by Baruch Cochavy 
(blue@techunix.technion.ac.il) can be found on uunet. The server is Roell's 
X386 1.1b, compiled for ET4000 based SVGA boards.

----------------------------------------------------------------------
Subject:  61)  Where can I get OSF/Motif?
	
	You can obtain either OSF/Motif source or binaries from a number of 
vendors. 
	Motif 1.2.2 source is now available; it is based on X11R5.
	Motif 1.1 is based on the R4.18 Intrinsics and is currently [7/92] at 
1.1.5.
	An OSF/Motif source license must be obtained from OSF before source can
be obtained from the Open Software Foundation or any value-added vendor for
any version. Call the Direct Channels Desk at OSF at 617-621-7300 for ordering 
information.
	Various hardware vendors produce developer's toolkits of binaries, 
header files, and documentation; check your hardware vendor, particularly if
that vendor is an OSF member. 
	In addition, independent binary vendors produce Motif toolkits for
machines for which Motif is not supported by a vendor; the kits include varied 
levels of bug-fixing and support for shared libraries and are based on widely
divergent version of Motif:
	Quest (408-988-8880) sells kits for Suns, as well; 
	IXI (+44 223 462 131) offers kits for Sun3 and Sun4. 
	NSL (+33 (1) 43 36 77 50; requests@nsl.fr) offers kits for the Sun 3 
and Sun 4.
	Bluestone Consulting makes a kit for Sun systems.
	ICS (617-62-0060) makes several binary kits, notably for Sun, DEC.
	HP and DEC have announced support for Motif on Sun systems.
	Unipalm (+44-954-211-797) currently offers for Sun systems a Motif 
Development Kit including X11R4 and based on Motif 1.1.2. The US distributor is
Expert Object Corp (708-926-8500).
	BIM ships Motif 1.1 binaries for Suns. Shared library support is 
included. Contact Alain Vermeiren (av@sunbim.be) or Danny Backx (db@sunbim.be) 
at +32(2)759.59.25 (Fax : +32(2)759.47.95) (Belgium).
	SILOGIC (+33 61.57.95.95) ships Motif 1.2 and Motif 1.1 on Sun 
machines.
	S.I. Systems offers Motif 1.2 for Solaris 2.1; info: 1-800-755-8649 in
USA and Canada.
	Metro Link Inc. (305-970-7353, sales@metrolink.com; in Europe contact
ADNT, (33 1) 3956 5333, UniVision (UK) Ltd. (44) 628 82 22 81) ships an 
implementation of X11R4 and Motif 1.1.2 (including a shared-library 
implementation of libXm.a) for the 386/486 Unix market.  Motif 1.1.2 is 
also available for Sun Sparc based workstations. It has also announced 
Motif 1.2 for Solaris systems.

----------------------------------------------------------------------
Subject:  62)  Does Motif work with X11R4? X11R5?

	Motif 1.2 is based on X11R5.
	Motif 1.1, available in source form from OSF as of August 1990, uses 
the "vanilla" X11R4 Intrinsics, where "vanilla" means "with just a few 
patches"; the file fix-osf which OSF distributes is obsoleted by MIT's patches 
15-17.  The file fix-osf-1.1.1 distributed with the 1.1.1 version or its 
subsequent modification needs to be applied after MIT fix-18, though.

	Motif 1.1.1 to 1.1.3 will work with X11R5 if X11R5 is compiled with
-DMOTIFBC; 1.1.4 and later should work with the vanilla R5, although there are 
some known new geometry-management problems.
	
----------------------------------------------------------------------
Subject:  63)  Where can I get toolkits implementing OPEN LOOK?

	Sun's XView has a SunView-style API. A version is on the X11R4 tape;
the latest [2/92] 3.0 sources are on export in contrib/xview3/.
	XView and X binaries for the Sun 386i ("roadrunner") are available for 
ftp from svin01.win.tue.nl (131.155.70.70), directory pub/X11R4_386i.
	Supported binaries of XView 2.0 or 3.0 include: 

XView for non-Sun Platforms  (domestic and selected international vendors).
Several are also available from Sun; contact your local sales office.

Amiga		GfxBase, Inc.		1881 Ellwell Drive
(AmigaDOS)	(408) 262-1469		Milpitas, CA 95035
		Fax: (408) 262-8276

SGI
Sony (NEWS-OS)
IBM RS/6000
HP 9000
DECstation	UniPress Software	2025 Lincoln Highway
(Ultrix)	(908) 985-8000		Edison, NJ 08817
		Fax: (908) 287-4929

		UniPress Software, Ltd.		PO Box 70
		44-624-661-8850			Viking House
		Fax: 44-624-663-453		Nelson Street
						Douglas, Isle of Man
						United Kingdom

DEC VAXstation	TGV			603 Mission Street
(VMS)		(800) TGV-3440		Santa Cruz, CA 95060
		(408) 427-4366
		Fax: (408) 427-4365

		Unipalm Ltd.			145-147 St. Neots Road
		44-0954-211797			Hardwick
		Fax: 44-0954-211244		Cambridge CB3 7QJ
						England

Intel 386	Quarterdeck Office	150 Pico Boulevard
(DOS)		Systems			Santa Monica, CA 90405
		(213) 392-9851
		Fax: (213) 399-3802

Intel 386	SunSoft Corporation	6601 Center Drive West
(Interactive	310-348-8649		Suite 700
 UNIX and				Los Angeles, CA  90045
 SCO UNIX)	

Stardent	Scripps Institute	Clinic MB-5
(Stellix OS	Fax: (619) 554-4485	10666 N. Torrey Pines Road
 and Titan OS)	Include mailstop MB-5	La Jolla, CA 92057
		By ftp: 192.42.82.8 in pub/binary/{Xview.README,XView.tar.Z}

	AT&T's OPEN LOOK GUI 3.0 Xt-based toolkit is now generally available 
[2/92]; contact 1-800-828-UNIX#544 for information. Binaries are produced
for SPARC systems by International Quest Corporation (408-988-8289). A version
of the toolkit is also produced under the name OLIT by Sun. 
	More recent versions of OLIT have been ported to IBM 6000 and DEC MIPS 
by both UniPress and ICS. OLIT is also available for HP from Melillo Consulting
(908-873-0075). MJM (Somerset, NJ) makes OLIT 4.0 for HP 7xx series running
HPUX 8.0, DECstations, and RS/6000s [thanks to Joanne Newbauer, 
jo@attunix.att.com, 908-522-6677.]

	Sun is shipping OpenWindows 3.0; contact your local sales 
representative for more details; the package includes toolkit binaries and 
header files.

	ParcPlace's (formerly Solbourne's) extensible C++-based Object 
Interface Library, which supports run-time selection between Open Look or 
Motif, is available from 303-678-4626. [5/92]

----------------------------------------------------------------------
Subject:  64)! Where can I get other X sources? (including R5 modifications)

	The MIT Software Center ships the X Test Suite on tape.

	A multi-threaded version of Xlib based on X11R5 patch 12 is now 
available for anonymous FTP from (new version 1/93):
        DEC on gatekeeper.dec.com (16.1.0.2) in /pub/X11/contrib/mt-xlib-1.1
        MIT on export.lcs.mit.edu (18.24.0.12) in /contrib/mt-xlib-1.1

	HP has made available drivers to permit the building of the X11R5
sample server on the HP 9000 Series 700 workstations; the files are on
export.lcs.mit.edu in ~ftp/contrib/R5.HP.SRV. [8/92]

	User-contributed software is distributed through the newsgroup
comp.sources.x, moderated by Chris Olson (chris@imd.sterling.com); also check 
that group for posting information.

	Richard Hesketh (rlh2@ukc.ac.uk) has been creating a list of freely-
available X sources.  The list is stored on export.lcs.mit.edu in contrib as
x-source-list.Z. It lists the main storage locations for the program and 
international sites from which it may be ftp'ed.

	The machine export.lcs.mit.edu has a great deal of user-contributed
software in the contrib/ directory; a good deal of it is present in current or 
earlier versions on the X11R3, X11R4, and X11R5 contrib tapes. There are also
directories for fixes to contrib software.  The file on export in
contrib/00-index.txt is a quick overall index of the software in that area,
provided by Daniel Lewart (d-lewart@uiuc.edu).

	These sites used to and may still mirror export and are of particular 
use for Australasia: Anonymous ftp: ftp.Adelaide.EDU.AU; ACSnet Fetchfile: 
sirius.ua.oz.

	The material on giza.cis.ohio-state.edu, which tends to duplicate 
the export archives, is also available via anonymous UUCP from osu-cis, at TB+ 
and V.32 speeds.  Write to uucp@cis.ohio-state.edu (same as osu-cis!uucp) for 
instructions. [the archive is now maintained by Karl Kleinpaste]

	A new west-coast UUCP X11 Archive is administered by Mark Snitily 
(mark@zok.uucp) and contains the full X11 distribution, the XTEST
distribution, an entire archive of comp.sources.x and other goodies.
	The machine zok has a TB+ modem which will connect to 19.2K, 2400, 
1200 baud (in that order).  The anonymous UUCP account is UXarch with password 
Xgoodies.  The modem's phone number is 408-996-8285.
	A sample Systems (or L.sys) entry might be:
   		zok Any ACU 19200 4089968285 in:--in: UXarch word: Xgoodies
	To get a current listing of the files that are available, download
the file "/usrX/ls-lR.Z".
	A full subject index of the comp.sources.x files is available in the
file "/usrX/comp.sources.x/INDEX".
	The machine has just the one modem, so please do not fetch large 
amounts of data at one sitting.
[courtesy Mark Snitily, 2/90]

In addition, UUNET Source Archives (703-876-5050) tracks comp.sources.x and 
provides 800MB+ of compressed programs on 6250 bpi tapes or 1/4" tapes.  It 
also mirrors export/contrib in its packages/X directory.
	
----------------------------------------------------------------------
Subject:  65)! Where can I get interesting widgets?

	The Free Widget Foundation (FWF) library sponsored by Brian Totty 
(totty@cs.uiuc.edu) is now [2/93] available on a.cs.uiuc.edu (128.174.252.1) 
in pub/fwf-v3.41.shar.Z. The set of widgets there is intended to form the basis
for future contributions. To be added to the discussion list, send to
listserv@cs.uiuc.edu a message saying "subscribe <listname> <your-full-name>"
where <listname> is one of free-widgets-announce, free-widgets-development, or 
free-widgets-bugs.  Version 3.4 is current; look for 4.0 in 4/93.
	The Xew widget set contains widgets for data representation.  Version 
1.2 [4/93] is on export contrib/Xew-1.2.tar.Z.
	Peter Ware's Xo "Open Widget" set, which has Motif-like functionality, 
is on archive.cis.ohio-state.edu as pub/Xo/Xo-2.1.tar.Z [8/92].
	The AthenaTools Plotter Widget Set Version 6-beta [7/92] maintained by
Peter Klingebiel (klin@iat.uni-paderborn.de) includes many graph and plotting 
widgets; a copy is on export in plotter.v6b.tar.Z, plotter.doc.tar.Z,
plotter.afm.tar.Z, and plotter.README. The latest versions may in fact be on
ftp@uni-paderborn.de (131.234.2.32) in /unix/tools.
	An advance version of Marc Quinton's Motif port of the FWF MultiList 
widget is in ftp.stna7.stna.dgac.fr:pub/MultiList.tar.Z [143.196.9.31].
	Additional widgets are available on the contrib/ portion of the X11R4
tapes; these include the Xcu set.
	Paul Johnston's (johnston@spc5.jpl.nasa.gov) X Control Panel widget set
emulates hardware counterparts; sources are on export.lcs.mit.edu in 
Xc-1.3.tar.Z.
	O'Reilly Volume 4, Doug Young's book, the Asente/Swick book, and Jerry 
Smith's "Object-oriented Programming with the X Window System Toolkits" all 
include details on writing widgets and include several useful widgets; sources 
are typically on export and/or UUNET. 
	The Dirt interface builder includes the libXukc widet set which extends
the functionality of Xaw. 
	A graph widget and other 2D-plot and 3D-contour widgets by Sundar 
Narasimhan (sundar@ai.mit.edu) are available from ftp.ai.mit.edu as
/com/ftp/pub/users/sundar/graph.tar.Z. The graph widget has been updated [3/91]
with documentation and histogram capabilities.
	A graph widget is available from ftp.stna7.stna.dgac.fr in
pub/Graph.tar.Z; it uses a segment list for drawing and hence supports a zoom
operation.
	Ken Lee's Xm widget (demo) that uses Display PostScript to draw labels 
at a non-horizontal angle is on export in contrib/dpslabel.tar.Z.
	The Table widget (works like troff TBL tables) is available in several
flavors, one of which is with the Widget Creation Library release.
	Bell Communications Research has developed a Matrix widget for complex
application layouts; it's on export in contrib/Xbae-widgets-3.8.tar.Z [2/93. 
The distribution also includes a "caption" widget to associate labels with 
particular GUI components. (7/92)
	Dan Connolly's (connolly@convex.COM) XcRichText interprets RTF data;
it's on export as contrib/XcRichText-1.1.tar.Z.
	The XmGraph Motif-based graphing widget is on iworks.ecn.uiowa.edu in
/comp.hp/GUI_classic/XmGraph.tar.Z although it may not be stable.
	A TeX-style Layout widget by Keith Packard is described in the 
proceedings of the 7th MIT Technical Conference (O'Reilly X Resource volume 5);
source is available on export contrib/Layout.tar.Z.

	A version of Lee Iverson's (leei@McRCIM.McGill.EDU) image-viewing tool
is available as contrib/vimage-0.9.3.tar.Z on export.lcs.mit.edu.  The package 
also includes an ImageViewPort widget and a FileDialog widget. [12/91;5/92] 
	In addition, the PEXt toolkit by Rich Thomson (rthomson@dsd.es.com) is 
available on export as PEXt.tar.Z; it includes a PEX widget making it easier to
use PEX in Xt-based programs.
	A Motif port of the Xaw clock widget is in ftp.stna7.stna.dgac.fr
in pub/Clock.tar.Z.
	A modification of the Xaw ScrollBar widget which supports the arrowhead
style of other toolkits is on export in contrib/Xaw.Scrollbar.mta.Z.

	A beta 0.3 (11/92) release of the R5 Xaw widgets with a 3D visual 
appearance by Kaleb Keithley (kaleb@thyme.jpl.nasa.gov) is available on export 
in contrib/Xaw3d/R5/Xaw3d-0.3.tar.Z. The library, which is binary-compatible 
with the MIT Xaw, implements a 3D subclass which handles the extra drawing.

Also:
	The Xmt "Motif Tools", Dovetail Systems's shareware library of 9 
widgets and many convenience functions, is available from 
export.lcs.mit.edu:contrib and ftp.ora.com:/pub/xbook/Xmt in xmt-README and 
xmt-1.0.tar.Z.
	The Xtra XWidgets set includes widgets for pie and bar charts, XY 
plots, Help, spreadsheets, data entry forms, and line and bar graphs.  Contact 
Graphical Software Technology at 310-328-9338 (info@gst.com) for information.
	The XRT/graph widget, available for Motif, XView and OLIT, displays
X-Y plots, bar and pie charts, and supports user-feedback, fast updates and
PostScript output. Contact KL Group Inc. at 416-594-1026 (info@klg.com).
	A set of data-entry widgets for Motif is available from Marlan 
Software, 713-467-1458 (gwg@world.std.com).
	A set of graph widgets is available from Expert Database Systems
(212-370-6700).
	A set of OSF/Motif compound widgets and support routines for 2D
visualization is available from Ms Quek Lee Hian, National Computer Board,
Republic of Singapore; Tel : (65)7720435; Fax : (65)7795966; 
leehian@iti.gov.sg, leehian@itivax.bitnet.
	The ICS Widget Databook includes a variety of control widgets and 
special-purpose widgets, available on a variety of platforms.  Information: 
617-621-0060, info@ics.com.
	Information on graphing tools may be obtained from info@TomSawyer.com 
(+1-510-848-0853, fax: +1-510-848-0854).

----------------------------------------------------------------------
Subject:  66)  Where can I get a good file-selector widget?

	The Free Widget Foundation set offers a FileSelector widget, with 
separate directory path and file listing windows, and the FileComplete, which
has emacs-style file completion and ~ expansion. 
	Other available file-requestor widgets include the XiFileSelector from 
Iris Software's book, the xdbx file-selector extracted by David Nedde 
(daven@wpi.wpi.edu), and the FileNominator from the aXe distribution.
	The GhostView, Xfig, and vimage packages also include file-selector 
widgets.

----------------------------------------------------------------------
Subject:  67)  What widget is appropriate to use as a drawing canvas?

	Some widget sets have a widget particularly for this purpose -- a
WorkSpace or DrawingArea which doesn't display anything but lets your Xt 
application know when it has been re-exposed, resized, and when it has received
user key and mouse input. 
	The best thing to do for other widget sets -- including the Athena set 
-- is to create or obtain such a widget; this is preferable to drawing into a 
core widget and grabbing events with XtAddEventHandler(), which loses a number 
of benefits of Xt and encapsulation of the functionality .  
	At least one version has been posted to comp.sources.x (name???). 
	The publicly-available programs xball and xpic include other versions. 
	The Athena Widget manual (mit/doc/Xaw/Template in the R5 distribution) 
includes a tutorial and source code to a simple widget which is suitable for 
use. 
	The Free Widget Foundation set contains a Canvas widget.

----------------------------------------------------------------------
Subject:  68)  What is the current state of the world in X terminals?

Jim Morton (jim@applix.com) posts quarterly to comp.windows.x a list of 
manufacturers and terminals; it includes pricing information. 

Notable buyers-guide surveys include:
	- the September 1991 issue of Systems Integration

----------------------------------------------------------------------
Subject:  69)  Where can I get an X server with a touchscreen or lightpen?

	Labtam (+61 3 587 1444, fax +61 3 580 5581) offers a 19" Surface 
Acoustic Wave touch-screen option on its Xengine terminals.
	Tektronix (1-800-225-5434) provides an X terminal with the Xtouch 
touch-screen. This terminal may also be resold through Trident Systems
(703-273-1012).
	Metro Link (305-970-7353) supports the EloGraphics Serial Touch Screen 
Controllers.

----------------------------------------------------------------------
Subject:  70)  Where can I get an X server on a PC (DOS or Unix)?

	MIT X11R5 already provides a server to many 386/486 *Unixes* with 
support for many of the popular video graphics adapters; and for other 
non-MSDOS PCs you can obtain a server from these sources:

	XFree86 (formerly X386 1.2E) is an enhanced version of X386 1.2, which 
was distributed with X11R5; it includes many bug fixes, speed improvements, and
other enhancements. Source for version 1.2 [2/93] is on export.lcs.mit.edu in 
pub/contrib, ftp.physics.su.oz.au in /X386, and ftp.win.tue.nl in /pub/X386. In
addition, binaries are on ftp.physics.su.oz.au, and ftp.win.tue.nl among other 
systems. Info: x386@physics.su.oz.au.
	Note: this package obsoletes Glenn Lai's Speedup patches for an 
enhanced X11R5 server for 386 UNIXes with ET4000 boards (SpeedUp.tar.Z on 
export).


	Metro Link Inc. (305-970-7353, sales@metrolink.com; in Europe contact
ADNT, (33 1) 3956 5333) ships an implementation of X11R4 for the 386/486 Unix
market.

	SGCS offers X386 Version 1.3, based on Thomas Roell's X11R5 two-headed
server, in binary and source form. Information: 408-255-9665, info@sgcs.com.

	ISC, SCO, UHC, and other well-known operating-system vendors typically
offer X servers.

	For MSDOS PCs:

Daniel J. McCoy (mccoy@gothamcity.jsc.nasa.gov) has started posting monthly a 
list of non-UNIX servers for PCs, Macs, and Amigas; it includes pricing 
information. The current copy is kept on export in contrib as 
XServers-NonUNIX.txt.Z. 

An article on PC X servers appears in the March 2, 1992 Open Systems Today.

	Also of possible use:

	Net-I from Programit (212-809-1707) enables communication among 
DOS, OS/2 and Unix machines and can be used to display PC sessions on your
Unix X display.


----------------------------------------------------------------------
Subject:  71)  Where can I get an X server on a Macintosh running MacOS?

	eXodus from White Pine Software (603-886-9050) runs on any Mac with
at least 1MB of memory and runs the X server within a standard Macintosh 
window.  Version 3.0 [6/91] supports intermixing of X and Mac windows and
the ADSP protocol. The version supports the SHAPE extension and includes
DECwindows support.

	Apple's MacX runs on MacPlus or newer machines with >= 2MB of memory
and system software 6.0.4 or later. Version 1.1 is fully X11R4-based.  It 
supports full ICCCM-compatible cut and paste of text AND graphics between the 
Macintosh and X11 worlds, the SHAPE extension (including SHAPEd windows on the 
Macintosh desktop), an optional built-in ICCCM-compliant window manager, X11R4 
fonts and colors, a built-in BDF font compiler, and built-in standard 
colormaps. Upgrades to MacX are available by ftp from aux.support.apple.com. 
Info: 408-996-1010.  
	[Note: MacX is also the name of a vax-mac xmodem transfer utility.]

	Also: 

	Liken (1-800-245-UNIX or info@qualix.com) software enables monochrome
68000 Mac applications to run on a SPARC system running X. 
	Xport (1-800-245-UNIX (415-572-0200) or xport@qualix.com) enables Mac 
applications to display on an X-based workstation by turning the Mac into an X 
client.
	Intercon has a product called Planet-X which enables Mac applications
to display on an X server.

----------------------------------------------------------------------
Subject:  72)  Where can I get X for the Amiga?

	The new Amiga 3000 machines offer an X server and OPEN LOOK tools and
libraries on a full SVR4 implementation.

        GfxBase, Inc. provides "X11 R4.1" for the AmigaDos computer; it 
contains X11R4 clients, fonts, etc., and a Release 4 color server. An optional 
programmer's toolkit includes the header files, libraries, and sample programs.
Info from GfxBase, 408-262-1469. [Dale Luck 
(uunet!{cbmvax|pyramid}!boing!dale); 2/91]

----------------------------------------------------------------------
Subject:  73)  Where can I get a fast X server for a workstation?

	The R5 server should be among the fastest available for most machines.

	Sun sells a "Direct Xlib" product which improves rendering for 
applications running on the same machine as the X server; the replacement Xlib
library accesses graphics hardware directly using Sun's Direct Graphics Access 
(DGA) technology.

	International Quest Corporation (408-988-8289) has an optimized R4 
server for Sun3/4 under SunOS 4.0.

	Unipalm have R4 Servers for Sun3 and Sparc platforms. These are 
optimised to use graphics hardware and will run with Sunview. Information:
+44 954 211797 or xtech@unipalm.co.uk.

	Xgraph's Xtool (408-492-9031) is an X server implemented in SunView 
which boasts impressive results on Sun 3 and SPARC systems. [6/90]

Several companies are making hardware accellerator boards:

	Dupont Pixel Systems (302-992-6911), for Sun.

	Megatek's (619-455-5590) X-cellerator board for the Sun 3 and Sun 4 is 
based on the TI 34020; the company claims performance improvements of 5x to 
10x over the sample X11R3 server.

----------------------------------------------------------------------
Subject:  74)! Where can I get a server for my high-end Sun graphics board?

        Takahashi Naoto (Electrotechnical Laboratory, ntakahas@etl.go.jp) has 
modified the MIT X11R5 server to support the Sun CG8, CG9, and CG12 boards.  
The files are on export in contrib/Xsun24-3.[01].tar.Z.  Note that both files 
are necessary to build Xsun24-3.1.

	The JPL R5 Xsun Multi-screen server is a general purpose replacement
for the MIT server/ddx/sun layer; it provides for the screen to be split among
several monitors and implements several other features above the MIT 
implementation. Available on export.lcs.mit.edu in the file
contrib/R5.Xsun.multi-screen.tar.Z. [Kaleb Keithley, kaleb@thyme.jpl.nasa.gov,
12/91; the file was updated 24 Mar 1993.]

----------------------------------------------------------------------
Subject:  75)  Where can I get an "X terminal" server for my low-end Sun 3/50?

	Seth Robertson (seth@ctr.columbia.edu) has written Xkernel; the current
version [1.4 as of 8/91, 2.0 expected RSN] is on sol.ctr.columbia.edu 
[128.59.64.40] in /pub/Xkernel.gamma. It turns a Sun 3/50 into a pseudo- X 
terminal; most of the overhead of the operating system is side-stepped, so it 
is fairly fast and needs little disk space.
	A similar approach is to run the regular X server by making /etc/init
a shell script which does the minimal setup and then invokes Xsun, like this
example script from mouse@larry.mcrcim.mcgill.EDU:

#! /bin/sh
exec >/dev/console 2>&1
/etc/fsck -p /dev/nd0
case $? in
 	0)	;;
 	4)	/etc/reboot -q -n
 		;;
 	8)	echo ND fsck failed - get help
 		/etc/halt
 		;;
 	12)	echo Interrupted
 		/etc/reboot
 		;;
 	*)	echo Unknown error in reboot fsck - get help
 		/etc/halt
 		;;
esac
/bin/dd if=/tmp-fs of=/dev/nd2 bs=512 count=128 >/dev/null 2>&1
/etc/mount /dev/nd2 /tmp
/etc/ifconfig le0 netmask 255.255.255.0 broadcast 132.206.41.255
/etc/mount -o ro apollo:/u2/x11/lib /local/lib/X11
/etc/route add default 132.206.41.1 1 >/dev/null
set `/etc/ifconfig le0`
exec /Xsun -once -multidisp -mux -query \
	`(sh -vn </local/lib/X11/xdm-servers/$2 2>&1)`

----------------------------------------------------------------------
Subject:  76)  What terminal emulators other than xterm are available?

	PCS has rewritten xterm from scratch using a multi-widget approach that
can be used by applications. A version is on the R5 contrib tape and on
export in contrib/emu.tar.Z [10/91]. For more information, contact 
me@dude.pcs.com.

	mxterm, a Motif-based xterm is available from the Paderborner 
ftp-Server ftp@uni-paderborn.de (131.234.2.32), file 
/unix/X11/more_contrib/mxterm.tar.Z.

	The Color Terminal Widget provides ANSI-terminal emulation compatible
with the VTx00 series; a version is on export in contrib/CTW-1.1.tar.Z. A
Motif version is on ftp.stna7.stna.dgac.fr in pub/Term-1.0.tar.Z.
	
	kterm 4.1.2 is an X11R4-based vt100/vt102 (and Tektronix 4014) terminal
emulator that supports display of Chinese, Japanese, and Korean text (in VT 
mode).  Also supported are: ANSI color sequences, multi-byte word selection, 
limited Compound Text support, and tab and newline preservation in selections.
kterm 4.1.2 is also available from these anonymous ftp sites:
	clr.nmsu.edu:pub/misc/kterm-4.1.2.tar.Z  [128.123.1.14]
	export.lcs.mit.edu:contrib/kterm-4.1.2.tar.Z  [18.24.0.12]
	kum.kaist.ac.kr:pub/unix/Xstuffs/kterm-4.1.2.tar.Z  [137.68.1.65]
[courtesy of Mark Leisher <mleisher@nmsu.edu> ]

	kterm-5.1.1.tar.Z is now on export [12/92].

	mterm, by mouse@larry.McRCIM.McGill.EDU, is an X terminal emulator
which includes ANSI X3.64 and DEC emulation modes.  mterm can be had by ftp to 
larry.mcrcim.mcgill.edu (132.206.1.1), in X/mterm.src/mterm.ball-o-wax.

	Cxterm is a Chinese xterm, which supports both GB2312-1980 and the 
so-called Big-5 encoding.  Hanzi input conversion mechanism is builtin in 
cxterm.  Most input methods are stored in external files that are loaded at run
time.  Users can redefine any existing input methods or create their own ones.
The X11R5 cxterm is the rewritten of cxterm (version 11.5.1) based on X11R5 
xterm; it is in the R5 contrib software.  [thanks to Zhou Ning 
<zhou@tele.unit.no> and Steinar Bang <uunet!idt.unit.no!steinarb>.]

	XVT is available on export's contrib in xvt-1.0.tar.Z and 
xvt-1.0.README. It is designed to offer xterm's functionality with lower swap 
space and may be of particular use on systems driving many X terminals.

	x3270 is in X11R5 contrib/.

Also:
	IBM sells a 3270 emulator for the RS/6000 (part #5765-011); it's based
on Motif. 
	
	Century Software (801-268-3088) sells a VT220 terminal emulator for X. 
VT102, Wyse 50 and SCO Color Console emulation are also available. 

	Grafpoint's TGRAF-X provides emulation of Tektronix 4107, 4125, and 
42xx graphics terminals; it's available for most major platforms. Information
(inc. free demo copies): 800-426-2230; Fax. 408-446-0666; uunet!grafpnt!sales.

	IXI's X.deskterm, a package for integrating character-based 
applications into an X environment, includes a number of terminal-emulation
modules. Information: +44 (0223) 462131. [5/90]

	Pericom produces Teem-X, a set of several emulation packages for a
number of Tek, DEC, Westward, and Data General terminals. The software runs on
Sun 3, Sun 4, Apollo, DEC, ISC, IBM/AIX. Information: US: 609-895-0404, 
UK: +44 (0908) 560022. [5/90]

	SCO's SCOterm (info@sco.COM), part of its Open Desktop environment, is
a Motif-compliant SCO ANSI color console emulator.

----------------------------------------------------------------------
Subject:  77)! Where can I get an X-based editor or word-processor?

	You can ftp a version of GNU Emacs, the extensible, customizable, 
self-documenting, real-time display editor, including X11 support, from
prep.ai.mit.edu [18.71.0.38]:/pub/gnu/emacs-18.59.tar.Z or
informatik.tu-muenchen.de:/pub/GNU/emacs/emacs-18.59.tar.Z.
	
	Epoch is a modified version of Gnu Emacs (18) with additional 
facilities useful in an X environment. Current sources are on cs.uiuc.edu 
(128.174.252.1) in ~ftp/pub/epoch-files/epoch; the current [3/92] version is 
4.0. [In Europe, try unido.informatik.uni-dortmund.de].  There are two 
subdirectories:  epoch contains the epoch source, and gwm contains the source 
to the programmable window manager GWM, with which epoch works well.] 
You can get on the Epoch mailing list by sending a request to 
epoch-request@cs.uiuc.edu.

	Lucid Emacs is a version of GNU Emacs derived from an early version of
Emacs version 19.  It currently requires X Windows to run;  X support is
greatly enhanced over GNU Emacs version 18, including support for multiple X
windows, input and display of all ISO-8859-1 (Latin1) characters, Zmacs/Lispm
style region highlighting, a customizable Motif-like menubar, more powerful
keymap support, flexible text attributes, support on regional and screen-local
basis through X resources and/or lisp, and support for the X11 selection
mechanism. Lucid Emacs is free; the latest version (2/93) is 19.4, and is
available from labrea.stanford.edu in the pub/gnu/lucid/ directory.

	The Andrew system on the X11 contrib tapes has been described as one of
the best word-processing packages available. It supports word processing with 
multi-media embedded objects: rasters, tables/spread sheets, drawings, style 
editor, application builder, embedded programming language, &c. Release 5.1 
became available 2 June 92.  [Fred Hansen (wjh+@ANDREW.CMU.EDU)]
	You may be able to use the Remote Andrew Demo service to try this 
software; try "finger help@atk.itc.cmu.edu" for help.

	The InterViews C++ toolkit contains a WYSIWIG editor called Doc; it 
saves and loads files in a LaTeX-*like* format (not quite LaTeX).  The package 
can also import idraw-PostScript drawings.

	A simple editor aXe (by J.K.Wight@newcastle.ac.uk) is available on 
export and arjuna.newcastle.ac.uk (128.240.150.1) as aXe-4.1.tar.Z [3/93]. It 
is based around the Xaw Text widget.

	TED is a simple Motif-based text editor; it is a wrapper around the 
Motif text widget which offers search/replace, paragraph formatting, and 
navigation features. TED is available from ftp.eos.ncsu.edu (152.1.9.25) as 
/pub/bill.tar.Z; here are also executables there.

	Point, by crowley@unmvax.cs.unm.edu (Charlie Crowley), is Tcl/Tk-based
and offers dyanimic configuration and programming in the Tcl macro language.
The editor is available from unmvax.cs.unm.edu (129.24.16.1) as
pub/Point/point1.1-tar.Z.

	asedit, by Andrzej Stochniol (astoch@ic.ac.uk) is on export in 
contrib/asedit.tar.Z. It is a simple text editor built around the Motif Text 
widget. Version 1.11 was released 1/93.

Also:

	Elan Computer Group (Mountain View, CA; 415-964-2200) has announced the
Avalon Publisher 2.0, an X11/OPEN LOOK WYSIWYG electronic publishing system.

	FrameMaker and FrameWriter are available as X-based binary products for
several machines. Frame is at 800-843-7263 (CA: 408-433-3311).

	WX2 (formerly InDepthEdit) is available from Non Standard Logics 
(+33 (1) 43 36 77 50; requests@nsl.fr).

	Buzzwords International Inc. has an editor called 'Professional Edit' 
that runs under X/Motif for various platforms.  Info: +1-314-334-6317.

	DECwrite is available from DEC for some DEC hardware and SunWrite is
available from Sun.

	IslandWrite will soon be available from Island Graphics (415-491-1000) 
(info@island.com) for some HP & Apollo platforms.

	Interleaf is currently available from Interleaf (800-241-7700, 
MA: 617-577-9800) on all Sun and DEC platforms; others are under development.

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include a multi-font WYSIWG document composer; for several 
systems.

	ArborText, Inc. provides an X11 version of its Electronic Publishing 
program called "The Publisher". The Publisher is available on Sun, HP and 
Apollo workstations. Contact Arbortext at 313-996-3566. [5/90]

	Iris Computing Laboratories offers the "ie" editor. Info:  
+1-505-988-2670 or info@spectro.com.

	BBN/Slate from BBN Software Products includes a menu-driven word
processor with multiple fonts and style sheets.  It supports X on
multiple platforms. (617-873-5000 or slate-offer@bbn.com) [11/90]

	The powerful "sam" editor by Rob Pike is split into a host portion and 
a front-end graphics portion, which now has an X implementation.  sam is now 
available by anonymous ftp from research.att.com, in dist/sam/bundle.Z.  Watch 
that space for updated versions.  There is a mailing list for sam users; 
requests to <sam-fans-request@hawkwind.utcs.toronto.edu>. A set of extensions
which augment the mouse activity with the keyboard is available from 
uxc.cso.uiuc.edu in pub/sam/samx1.0.shar.

	Innovative Solutions (505-883-4252; or Brian Zimbelman, 
is!brian@bbx.basis.com) publishes the user-configurable Motif-based Xamine 
editor.

	Qualix offers a product. Information: info@qualix.com or 800-245-UNIX 
(415-572-0200).

	Typex is a Motif-based editor available for several systems. 
Information: Amcad Research, 408-867-5705, fax -6209.

	WordPerfect offers an X-based version of WordPerfect 5.1 for several
workstations. Information: 801-222-5300 or 800-451-5151.

----------------------------------------------------------------------
Subject:  78)  Where can I get an X-based mailer?

	xmh, an X interface to mh, is distributed with the X11 release.

	Xmail is an X-based window interface to Berkeley-style mail handlers;
it is styled primarily after the Sunview mailtool application and builds on
most Unix systems. The current release [1/92] is 1.4, available in the MIT 
X11R5 contrib tape and from export and uunet. Info: Jeff Markham,
markham@cadence.com.

	MMH (My Mail Handler), a motif interface to the MH mail handler, is 
available from ftp.eos.ncsu.edu (152.1.9.25) in pub/bill.tar.Z; it is bundled
with the TED editor, which it uses for composing messages. Motif 1.1 is 
required; if you don't have it, look for DEC and SPARC executables in the same 
place.  Information and problems to: Erik Scott, escott@eos.ncsu.edu. [1/92]

	The Andrew Toolkit supports the Andrew Message System; it is available
from export and many other X archives and from emsworth.andrew.cmu.edu 
(128.2.30.62), or send email to susan+@andrew.cmu.edu. Release 5.1 became
available 2 June 92.
	You may be able to use the Remote Andrew Demo service to try this 
software; try "finger help@atk.itc.cmu.edu" for help.

	XMailTool is an Xaw-based interface to a BSD-style mail reader; version
2.0 was released 9/92. Information: Bob Kierski, bobo@cray.com or 612-683-5874.

	Cem is a Motif-based mailer using standard mailbox formats; it is on
nelson.tx.ncsu.edu in pub/Cem. Information: Sam Moore (Sam_Moore@ncsu.edu).

Also:

        Alfalfa Software offers Poste, a UNIX-based mailer that has Motif- and 
command-based interfaces.  It includes support for multimedia enclosures, and 
supports both the Internet and X.400 mail standards.  Information: 
info@alfalfa.com, +1 617-497-2922.

	Z-Code Software offers Z-Mail for most Unix systems; binaries support
both tty and Motif interfaces. The mailer includes a csh-like scripting 
language for customizing and extending mail capabilities.  Information: 
info@z-code.com, +1 415 499-8649.

	Several vendors' systems include X-based mailers. DEC offers dxmail; 
Sun offers an X-based mailtool; SCO (info@sco.com) includes SCOmail in its Open
Desktop product.

Several integrated office-productivity tools include mailers:

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include a mailer.

----------------------------------------------------------------------
Subject:  79)! Where can I get an X-based paint/draw program?

	xpic is an object-oriented drawing program. It supports multiple font 
styles and sizes and variable line widths; there are no rotations or zooms.
xpic is quite suitable as an interactive front-end to pic, though the 
xpic-format produced can be converted into PostScript. (The latest version is 
on the R4 contrib tape in clients/xpic.)

	xfig (by Brian V. Smith (bvsmith@lbl.gov)) is an object-oriented 
drawing program supporting compound objects.  The xfig format can be converted 
to PostScript or other formats. Recent versions are on the R5 contrib tape or 
on export in /contrib/R5fixes (version 2.1.6 [11/92]).

        idraw supports numerous fonts and various line styles and arbitrary 
rotations. It supports zoom and scroll and color draws and fills. The file 
format is a PostScript dialect. It can import TIFF files. Distributed as a part
of the InterViews C++ toolkit (current release 3.1, from 
interviews.stanford.edu) .

	A version of Robert Forsman's (thoth@lightning.cis.ufl.edu) xscribble,
an 8-bit paint program for X, is now on ftp.cis.ufl.edu in pub/thoth/. [2/93]

	xpaint is available from ftp.ee.lbl.gov as xpaint.tar.Z.
	A rewrite, Xpaint 2.0, by David Koblas (koblas@netcom.com) was released
2/93 as xpaint2pl3.tar.Z. xpaint is a bitmap/pixmap editing tool.

	A new OpenWindows PostScript-based graphical editor named 'ice' is now 
[2/91] available for anonymous ftp from Internet host lamont.ldgo.columbia.edu 
(129.236.10.30).  ice (Image Composition Environment) is an imaging tool that
allows raster images to be combined with a wide variety of PostScript 
annotations in WYSIWYG fashion via X11 imaging routines and NeWS PostScript 
rasterizing. (It may require OpenWindows and Sun C++ 2.0.)

	tgif by William Cheng (william@oahu.cs.ucla.edu) is available from most
uucp sites and also from export and from cs.ucla.edu. It is frequently updated;
version 2.12-patch18 was released 3/93.

	The "pixmap" program (info: colas@sa.inria.fr) for creating pixmaps is 
on the R5 contrib tape; it resembles the bitmap client. Version 2.1 is now 
available. [11/92]

	Although MetaCard is not generally classified as a paint program, a 
full 24-bit color image editor is built into the program, which can be used for
light image editing and for producing color icons (info@metacard.com). MetaCard
is available via anonymous FTP from ftp.metacard.com, csn.org, or 
128.138.213.21.
	
	pixt by J. Michael Flanery produces XPM output.

Also:

	dxpaint is a bitmap-oriented drawing program most like MacPaint; it's 
good for use by artists but commonly held to be bad for drawing figures or 
drafting. dxpaint is part of DEC's Ultrix release.

	FrameMaker has some draw capabilities. [4/90]

	BBN/Slate from BBN Software Products includes a full-featured draw and
paint program with object grouping and multiple patterns; multiple X platforms.
(617-873-5000 or slate-offer@bbn.com). [11/90]

	Dux Ta-Dah!, 1-800-543-4999

	IslandGraphics offers IslandDraw, IslandPaint, IslandPresent.
Info: 415-491-1000.

	Corel Draw, 613-728-8200; ported to X by Prior Data Sciences 
800-267-2626

	Arts&Letters Composer, 214-661-8960

	Ficor AutoGraph, 513-771-4466

	OpenWindows includes the olpixmap editor.
	SCO ODT includes the SCOpaint editor.
	HP VUE includes the vueicon editor.

Several integrated office-productivity tools include draw/paint capabilities:

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include draw/paint capabilities.

[thanks in part to Stephen J. Byers (af997@cobcs1.cummins.com) and to 
J. Daniel Smith (dsmith@ann-arbor.applicon.slb.com)]
	
----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
document_id: 66434
From: I.A.Inman@newcastle.ac.uk (I.A. Inman)
Subject: Re: Honors Degrees: Do they mean anything?

tkld@cogsci.ed.ac.uk (Kevin Davidson) writes:


>>   In my opinion, a programming degree is still worth having.

> Yes, but a CS degree is *not* a programming degree. Does anybody know of
>a computing course where *programming* is taught ? Computer Science is
>a branch of maths (or the course I did was).
> I've also done a Software Engineering course - much more practical and likely
>to be the sort of thing an employer really wants, rather than what they think
>they want, but also did not teach programming. The ability to program was
>an entry requirement.

Try the 'M.Sc. Computing Science' course at the REAL Newcastle University.
It's a conversion course, but at least they teach REAL programming.

In the space of 9 months we were taught PASCAL, Simula, Prolog, Miranda.
Also, some basic low level stuff (68000) was covered as well.

They also did concurrent programming and operating systems, some software
engineering, plus quite a few optional units, including database theory,
and some stuff about comms.   

The PASCAL is to be replaced by C/C++ I think next year - I learn't this (and 
X Windows programming as well)
anyway via a good selection of project over the final three months - depending
on your tastes, the selection of skills learn't can be quite wide reaching.

The one critiscism I would level at the course, which I would have thought
invaluable, is the lack of an option to do the project period in industry -
this would probably need a slightly longer project period (say six months), but
would enhance the prestige and usefulness of an already excellent and thorough
course.

Yes, I know this sounds like a plug for the course, why not!

								Mackem Ian.

Newsgroup: comp.windows.x
document_id: 66435
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Cute X clients


Try this:
-------------------------------------------------------------------------------
#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

Display *dpy;
int	screen;
XColor	*xclrs,*xclrp;
XID	cmap;
int	cells,i,j,red,green,blue,got;



main()
{
 dpy = XOpenDisplay(NULL);
 screen = DefaultScreen(dpy);
 cells = DisplayCells(dpy,screen);

 cmap = XCreateColormap(dpy,RootWindow(dpy,screen),DefaultVisual(dpy,screen),1);

 xclrs = (XColor *)malloc(cells * sizeof(*xclrs));


 xclrp = xclrs; 
 for (i=0; i<cells; i++) { xclrp->pixel = i; xclrp->flags = 7; xclrp++; };

 XQueryColors(dpy,DefaultColormap(dpy,screen),xclrs,cells);
 XStoreColors(dpy,cmap,xclrs,cells);
 XInstallColormap(dpy,cmap);
 got = 1;

 while(got) {
  xclrp = xclrs;
  got = 0;
  for(i=0; i<cells; i++)  {
   if(xclrp->red < 65000) {xclrp->red += 256; got = 1;};
   if(xclrp->green < 65000) {xclrp->green +=256; got=1;};
   if(xclrp->blue < 65000) {xclrp->blue +=256; got=1;};
   xclrp ++;
  }
  XStoreColors(dpy,cmap,xclrs,cells);
/*  XInstallColormap(dpy,cmap); */
 }
 got = 1;
 while(got) {
  xclrp = xclrs;
  got = 0;
  for(i=0; i<cells; i++)  {
   if(xclrp->red > 256) {xclrp->red -= 256; got = 1;};
   if(xclrp->green > 256) {xclrp->green -=256; got=1;};
   if(xclrp->blue > 256) {xclrp->blue -=256; got=1;};
   xclrp ++;
  }
  XStoreColors(dpy,cmap,xclrs,cells);
/*  XInstallColormap(dpy,cmap); */
 }
}
--------------------------------------------------------------------------
It will work on any PseudoColor XServer. (hopefully :)

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66436
From: vic@fajita (V. Martinez 6463)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

I was having the same problems compiling X11R5 on a IPC sunos 4.1.3.
If you compile with 'make -k World' it will not stop on the
ld errors. As was stated in another post the clients with the
errors still run correctly.

Victor Martinez
vic@fajita.saic.com

Newsgroup: comp.windows.x
document_id: 66437
From: altmann@PLEURO.SOAR.CS.CMU.EDU (Erik Altmann)
Subject: Fwd: PROGRESSIVES HAPPY HOUR



--------- Forwarding begins here ---------

Date: Wed,  7 Apr 1993 15:39:55 -0400 (EDT)
From: Women's Center <women+@andrew.cmu.edu>
To: +dist+/afs/andrew.cmu.edu/usr0/women/dlists/happyhour-announce.dl@andrew.cmu.edu
Subject: PROGRESSIVES HAPPY HOUR

Enjoy good food and interesting company at the Progressives Happy Hour,
Thursday 8 April, starting at 5:30pm at the Women's Center (located next
to the laundromat in the Margaret Morrison Plaza).  Kosher for Passover
food will be served.  All are welcome.

(Good things to drink will be there, but paper cups won't.  Please  be
progressive and bring a cup or mug with you.)

Co-sponsored by the Student Government President and funded by the
student activites fee.

----------- End of forwarding -----------

Newsgroup: comp.windows.x
document_id: 66438
From: amit@aryeh.uchicago.edu (Yali Amit)
Subject: Problems with Open Windows





 After having OpenWindows 
(Version 3 for SunOS 4.1) or Xwindows
running continuously on my machine for 3-4 days,
the following message appears  when trying to open
a new window, or to run any program that needs to open windows.

XView error: Cannot open connection to window server: :0.0 (Server
package)

I would greatly appreciate any suggestions to solve this problem.

Yali Amit
Department of Statistics
University of Chicago 
Chicago IL 60615




Newsgroup: comp.windows.x
document_id: 66439
From: amit@aryeh.uchicago.edu (Yali Amit)
Subject: Problems with OpenWindows





 After having OpenWindows 
(Version 3 for SunOS 4.1) or Xwindows
running continuously on my machine for 3-4 days,
the following message appears  when trying to open
a new window, or to run any program that needs to open windows.

XView error: Cannot open connection to window server: :0.0 (Server
package)

I would greatly appreciate any suggestions to solve this problem.

Yali Amit
Department of Statistics
University of Chicago 
Chicago IL 60615




Newsgroup: comp.windows.x
document_id: 66440
From: guy@x.co.uk (Guy Singh)
Subject: Re: xv -root with vue? (was Re: xloadimage -onroot ...)

>>>>> On 5 Apr 93 11:31:27 PDT, jan@camhpp12.mdcbbs.com (Jan Vandenbrande) said:
Jan> Nntp-Posting-Host: 134.244.49.156

Jan> On a related note, how can I use xv to display colored GIFs on my
Jan> root display with HP Vue?

Jan> All I can do with Vue is display xbm's through their
Jan> Backdrop Style Manager.

Jan> xv does not seem to be able to override whatever Vue
Jan> puts there.

I suspect this is because VUE creates a window (probably OverrideRedirect)
that is the size of (or larger than) the Root Window. Because the window
manager does not know about this, you cannot move, resize etc. it. xv in the
mean time is busy changing your root window to whatever you have requested
but you never get to see it because VUE's window is overlaid on top of the root
window. 

Contact HP support and see whether VUE can support coloured bitmap format
such as xpm, if they cant then they probably create all their coloured
backdrops inside the code.
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
document_id: 66441
From: mmc@cs.rit.edu (Mahendra M Chheda)
Subject: How can I rotate text ?

Hi,

I am programming in XView, SunOS 4.1.2 & OpenWindows 3.0. I would like
to rotate some text and display it. I did read the FAQ in comp.windows.x
but am not sure how do I translate it to XView. I would appreciate if
someone can give me tips on how to do it. Thanx.

	- Mahendra.

PS : As I am not a frequent news group reader, I would appreciate if
     answers/replies would be mailed to me. I will post a follow-up.

-- 

***************************************************************************
	Mahendra Chheda			#
	mmc@cs.rit.edu			#
	mmc7274@ritvax.isc.rit.edu	#
					#
	Office :			#	Residence :
	Dept. of Computer Science	#	440 Kimball Drive
	Rochester Institute of Tech.	#	Rochester, NY 14623
	Tel. 716-475-2079		#	Tel. 716-292-5726
***************************************************************************

Newsgroup: comp.windows.x
document_id: 66442
From: troll@sug.org (A. Newman)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

In article <1993Apr6.081605.12977@fwi.uva.nl> casper@fwi.uva.nl (Casper H.S. Dik) writes:
>epstein@trwacs.fp.trw.com (Jeremy Epstein) writes:
>
>>dmm@head-cfa.harvard.edu (David Meleedy) writes:
>>There's a bug in SunOS 4.1.3, which is alluded to in the FAQ (although
>>there it's talking about X11R4 as being affected).  You need to force
>>libXmu to be linked statically, rather than dynamically, which works
>>around the linker error.  The simplest thing to do is edit each of
>>the Makefiles where there's a failure and change the line which reads:
>>	XMULIB = -L$(XMUSRC) -lXmu
>>to:
>>	XMULIB = -L$(XMUSRC) -Bstatic -lXmu -Bdynamic
>
>No. This is only relevant for OpenWindows 3.x as shipped with SunOS.
>It is not relevant for MIT R5. MIT R5 should compile without problems.
>
>Casper

I don't know how many hours you've spent on this, but the Sun User
Group makes X11R5 available on CD-ROM to its members. The 1992.1 disk
has both sources and binaries and it sells for $50.  I've tagged a
table of contents and an orderform on below if anyone's interested.

Alex Newman

----------------------------------------------------------------------------
Alex Newman	(617) 232-0514 voice	My life may be stressful,
troll@sug.org	(617) 232-1347 fax	but at least it's not boring
Sun User Group * 1330 Beacon St., #315 * Brookline, MA 02146
----------------------------------------------------------------------------




SUG CD 1992.1 is X11R5 and GNU on a CDROM, priced at $50 to SUG
members, including a caddy!

SUG's emphasis has always been on supplying the greatest possible
service and value-added to our members.  Last year, the SUG 1991 disk
contained plug-and-play X11R4, 20MB of additional essential binaries,
almost 200MB of Sun patches, fully-indexed archives of Sun-related net
postings, priced at only $250.

Our aim this year has been to reduce the price for disks which can be
produced inexpensively, but to continue to supply as much value-added
as possible.  To accomplish this, we will be putting out a two disk
set, the first containing what's ready and needed now, the second
available later in '92, containing more SPARC binaries and other
useful material not found on previous disks.

The SUG 1992.1 disk, which was assembled by Robert A. Bruce, contains
a lot of essential source code, and we decided it would be a great
service to make it available right away to our members (and this
pricing makes this a good opportunity to become a member!) for $50 per
disk (including one of those hard-to-find caddies!).  If you are not a
SUG member, you can become one for an additional $40 if you live
within the US or $55 outside.

The SUG 1992.1 CDROM is an ISO 9660 disk (which means it can be used
by PC, Macintosh, and other workstations as well), and contains a
total of 543MB of material, including:

X11R5 SOURCES AND CORE BINARIES (for SPARC) as of several weeks after
the initial distribution, thus, four fixes and the the MIT contrib-0
distribution are included (109MB of material).  Binaries for: X Xsun
XsunMono appres atobm auto_box bdftopcf beach_ball bitmap bmtoa
constype editres fs fsinfo fslsfonts fstobdf ico imake kbd_mode
listres lndir makedepend maze mkdirhier mkfontdir oclock plbpex puzzle
resize showfont showrgb startx twm viewres x11perf x11perfcomp xauth
xbiff xcalc xclipboard xclock xcmsdb xcmstest xconsole xcutsel
xditview xdm xdpr xdpyinfo xedit xev xeyes xfd xfontsel xgas xgc xhost
xinit xkill xload xlogo xlsatoms xlsclients xlsfonts xmag xman xmh
xmkmf xmodmap xon xpr xprop xrdb xrefresh xset xsetroot xstdcmap xterm
xwd xwininfo xwud

COPIES OF CONTRIBUTED X SOURCES (from export.lcs.mit.edu/contrib),
which were then uncompressed/untarred into source directories (212MB).
These are sources only, and some of them were (after the date of
production of this disk) included in the MIT contrib-2 and contrib-3
distributions.

GNU SOURCES WHICH WERE uncompressed/untarred into source directories
(88MB).

SPARC BINARIES (and needed libraries) for these GNU programs: a2p ar
as basename bash bison cat cc1 cc1plus chgrp chmod chown ci cmp co
comm compress cp cpio cpp ctags cut cvs date dd df diff diff3 dir
dirname du egrep elvis emacs env etags expand expr fgrep find
find2perl flex fold g++ g++dep g++filt gawk gcc gdb ginstall gnuchess
gnuchessn gnuchessr gnugo gnuplot gnuplot_x11 gprof grep h2ph head id
ident indent ispell ld ld++ less ln locate logname ls m4 make merge
mkdir mkfifo mkmodules mknod mt mv nice nm oleo paste pathchk perl pr
printenv printf ranlib rcs rcsdiff rcsinfo rcsmerge rcstest ref refont
rlog rm rmdir rmt s2p screen sed size sleep split strip stty sum tac
tail taintperl tar tee test time touch tput tty uname unexpand uniq
vdir virec whoami xargs xchess yes zmore

AN ARCHIVE OF COMP.SOURCE.X postings, volume 0 through volume14
(58MB).  Parts are supplied just as posted.  You get to put together
the pieces, compile, install, etc.

Cost: SUG members: $50; Non-members: additional $40 within the US, $55
	elsewhere 
Shipping & Handling: $10 inside the USA; $25 elsewhere

Mail to: Sun User Group, Inc.
	 Suite 315
	 1330 Beacon Street
	 Brookline, MA  02146
	 USA

	(617) 232-0514	voice
	(617) 232-1347	fax


The Sun User Group also accepts Visa and MasterCard via telephone or
electronically.


--------------------- cut here and return completed form ---------------------

                                 The SUGCD 1992.1
                                     ORDER FORM

The price of the CD is $50.

Shipping and handling: Add $10 (USA) or $25 (Intl.)

If you are not a member of the Sun User Group, add $40 (USA) or $55
(International) to the above sums for membership.  You must be a SUG
member to purchase the CD-ROM.  I enclose a US $ check for:

                    __$ 60 (SUG member in the USA)
                    __$ 75 (SUG member outside the USA)
                    __$100 (Includes membership inside the USA)
                    __$130 (Includes international membership)


 Name__________________________________ Signature___________________________

 Company Name_______________________________________________________________

 SUG Membership #(if known)_________________________________________________

 Electronic Mail Address____________________________________________________

 Telephone Number___________________________________________________________

 Check Enclosed_____             Mastercard_____  Visa_____

 Credit Card #__________________________________  Exp. date.________________

 Card Holder:__________________________ Signature:__________________________

 Ship to:                                Bill to:

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

-------------------------------------------------------------------------

[   ]  I hereby authorize the Sun User Group to renew my membership
        and charge my credit card automatically on an annual basis.

[   ]  I do not wish my name to be included in non-Sun User
        Group mailings.

[   ]  I do not wish my name to be published in the Sun User
        Group member directory.

[   ]  I wish to be added to the Sun User Group electronic
	mailing-list (members only)


                  OUTSIDE THE U.S. ONLY:

Individuals outside of the USA may find using their credit cards easier
than purchasing US$ checks as this eliminates bank charges.

-------------------------------------------------------------------------
                   Sun User Group
                   1330 Beacon Street, Suite 315
                   Brookline, MA  02146

		   Voice: +1 617 232-0514
		   Fax:   +1 617 232-1347
		   Email: office@sug.org

Newsgroup: comp.windows.x
document_id: 66443
From: ndd@sunbar.mc.duke.edu (Ned Danieley)
Subject: problem with Tek xterminal


We have recently purchased a Tektronix xterminal, and I'm having
a problem with it. We have a graphics widget that we wrote to
display waveforms, and it doesn't work on the xterminal. the buttons,
etc, all show up, and it seems to take the 'right' amount of time to
draw, but nothing is visible in the graphics window. I
have no clue as to where to start looking: the program works fine
on all our suns (3s and 4s, color and B&W). could anyone suggest a
line of attack for this problem?

TekXpress XP380 color xterminal running 6.0.0. host is a Sun IPX
running SunOS 4.1.3 and X11R5, PL17.

-- 
Ned Danieley (ndd@sunbar.mc.duke.edu)
Basic Arrhythmia Laboratory
Box 3140, Duke University Medical Center
Durham, NC  27710   (919) 660-5111 or 660-5100

Newsgroup: comp.windows.x
document_id: 66444
From: rogerskm@eplrx7.es.duPont.com (Karen Rogers)
Subject: Remapping <return> key in a dialog

I am new to X programming, so please bear with me....

I am trying to have a dialog box that returns it's value upon the
user entering a new value and hitting the <return> key. (don't want
to have a "done" button).  The piece of code below will work if
I exclude the XtNvalue argument but will not work as is. Can someone
shed some light on this or suggest a better way?  Ultimately I will
have several areas active at the same time to allow a user to modify
parameters in the program.  


Thanks for your help,

Karen Rogers
Dupont
rogerskm@pluto.es.dupont.com

######### Code starts here ################
void doit()
{
printf("Entered the doit function\n");
exit();
}

main(argc, argv)
int argc;
char **argv;
{
Widget toplevel;
Widget outer;
XtAppContext app_con;
Widget samples;
Arg args[3];
static XtActionsRec key_actions[]= 
    {
    {"doit", doit},
    };

toplevel = XtVaAppInitialize(&app_con, "TEST", NULL, 0,
	                       &argc, argv, NULL, NULL);

outer = XtCreateManagedWidget( "paned", panedWidgetClass, toplevel,
					NULL, ZERO);

XtAppAddActions(app_con, key_actions, XtNumber(key_actions));

XtSetArg(args[0], XtNlabel, "Enter value");
XtSetArg(args[1], XtNvalue, "0");

samples = XtCreateManagedWidget("samples", dialogWidgetClass,outer,args,2);

XtOverrideTranslations(samples, 
	  XtParseTranslationTable("<Key>Return: doit()"));
   
XtRealizeWidget(toplevel);
XtAppMainLoop(app_con);
}


Newsgroup: comp.windows.x
document_id: 66445
From: brian@mdavcr.mda.ca (Brian Lemire)
Subject: Joining the X Consortium ????

Hi,

	Does anyone have any information on joining the X Consortium ? What
are the costs, what are the benefits, who should I contact ? Thanks



Newsgroup: comp.windows.x
document_id: 66446
From: glang@slee01.srl.ford.com (Gordon Lang)
Subject: Re: Honors Degrees: Do they mean anything?

Justin Kibell (jck@catt.citri.edu.au) wrote:
: What has this got to do with comp.windows.x?
: 

I agree that this is a side track, but it is funny that I skip so many
other articles (threads) but I couldn't resist reading this one.

My beliefs, opinions, and expressions are strictly my own and do not
represent or reflect any official or unofficial policies or attitudes
of any other person or organization....
 
but.  I have heard that Ford Motor Company has (had) a recruiting bias
toward engineers and away from computer science graduates.  The reasoning
is supposedly to better meet long range personnel requirements.  This is
evidenced by the large number of CS people who are employed via contracts
and are not brought on board except in special circumstances.  This is
a generalization which obviously doesn't always hold true, but there are
statistics.  Furthermore, most "software engineering" at Ford gets done
by electrical engineers.  I know of 2 univerities that have merged the
computer science department and the electrical engineering so that you
can get a computer degree which qualifies you for much more than programming.

But since my beliefs and opinions are merely figments of my distorted
imagination I suppose I should keep it to myself.




Newsgroup: comp.windows.x
document_id: 66447
From: cr097@cleveland.Freenet.Edu (David Matusow)
Subject: Large Color Monitors


Does anyone have any information/advice on large color monitors
(17"-21") to use with a 486 system running X server software?
I maining looking for quality information and price, but all
information is welcomed.  

Thanks,
David
-- 
"It's all ball bearings!"
  -- Fletch

Newsgroup: comp.windows.x
document_id: 66448
From: mbheprg@PROBLEM_WITH_INEWS_GATEWAY_FILE (Raju Gurung)
Subject: Re: Converting contents of X-window to color postscript

Jeff Haferman (haferman@icaen.uiowa.edu) wrote:
> Can somebody point me to source code for dumping the contents of
> an X-window into a color postscript file?  I have written
> an app which brings up an X-window, and I want (at the click
> of the mouse) to dump the window into a postscript file.


> Thanks.


> Jeff Haferman                            internet: haferman@icaen.uiowa.edu
> Department of Mechanical Engineering     DoD 0186  BMWMOA 44469  AMA 460140
> The University of Iowa
> Iowa City, IA  52242                                 '76 R90S

I use xwd and xwd2ps. To do it from within a program I use
xwd -id xxxxx where xxxxx is the window id obtained from XtWindow(widget).
--
-----------------------------------------------------------------------
| Raju Gurung, I.T. 109, I.T. Building, Dept. of Electrical Eng.,     | 
| University of Manchester, Oxford Rd, Manchester, U.K.               |
-----------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 66449
From: lemons@cadsys.enet.dec.com
Subject: Xremote into X11R6?


Hi!

I remember reading (or hallucinating) that NCD's PC-Xremote functionality had 
been given, by NCD, to MIT for inclusion in X11R6.  Is this true?  If so,
(set mode/cheap) can I just wait for X11R6 to get compressed serial line
X server support?

Thanks!

Terry Lemons
Digital Equipment Corporation

Newsgroup: comp.windows.x
document_id: 66450
From: matt@centerline.com (Matt Landau)
Subject: Any recent information on Frescoe?

Does anyone know of any recent information on the Frescoe work being
done by the Consortium?  I've seen the short description that was 
published in The X Resource, but am looking for something with a bit
more depth to it.

Newsgroup: comp.windows.x
document_id: 66451
From: duvvuri@flashflood.cs.odu.edu (D.V.Prakash)
Subject: Pointer..Xlib


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 
I am new to Xlib



replies will be greatly appreciated

Thank you

Prakash
< duvvuri@cs.odu.edu >


Newsgroup: comp.windows.x
document_id: 66452
From: carlj@mugwump (Carl Johnson)
Subject: xterm and default text cursor color

What I want to be able to do is to set the cursor
color to the same as the forground color that is set
for that xterm.

From the man page.....

-cr color
 This option specifies the color to use for text cur-
 sor.   The  default  is  to  use the same foreground  <---
 color that is used for text.  <---

However this doesnt seem to be the case, it appears to default to black
or to whatever XTerm*cursorColor is set to.

Feel free to point me at the relevant FM or whatever,
Cheers,
C

Newsgroup: comp.windows.x
document_id: 66453
From: rik@csc.liv.ac.uk (Rik Turnbull)
Subject: String to Widget Resource Converter

Can anybody tell me how to use the Xmu function "XmuCvtStringToWidget". I
want to specify a widget name in a resource file so that I can connect
two widgets together on an XmForm. ie.

MyProggy*MyListSW.topWidget:               MainTextSW

However, when I run the program, I get the message:

Warning: No type converter registered for 'String' to 'Window' conversion.

(Just like the manual sez).

I have managed to find this bit of code which seems to be the correct way
to go about this:

    static XtConvertArgRec parentCvtArgs[] = {
        {
            XtWidgetBaseOffset,
            (XtPointer)XtOffsetOf( CoreRec, core.parent ),
            sizeof(CoreWidget)
        }
    };

    XtSetTypeConverter( XtRString, XtRWidget, XmuCvtStringToWidget,
                            parentCvtArgs, XtNumber(parentCvtArgs), XtCacheAll,                                NULL );


However, I haven't got a clue where to put it! The example code I have seems
to suggest I can only do this if I am creating my own widget; but elsewhere it
says that I can add it to a widget's "class_intialize" function. HOW? What's
one of those? :-(

If anybody has any code to do this, please let me know the trick - I'm sure
this is a FAQ.

Thanks in advance,

Rik.

PS: What are the header files "CoreP.h" and "IntrinsicsP.h" - should I use
    these or "Core.h" and "Intrinsics.h" (OK I know RTFM:-)

.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=.
|                               |                                       |
| Richard Turnbull              |                                       |
|                               |       Dept. Computer Science          |
| E-mail:                       |       University of Liverpool         |
| rik@compsci.liverpool.ac.uk   |       Liverpool L69 3BX               |
|                               |       England                         |
| Phone: (051) 794 3704         |                                       |
|                               |                                       |
.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=.

Newsgroup: comp.windows.x
document_id: 66454
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Q: How to avoid XOpenDisplay hang?

  Don't know how to avoid the XOpenDisplay hang... but perhaps you could
use something else (such as zephyr, perhaps)?

  )Rob

Newsgroup: comp.windows.x
document_id: 66455
From: johnc@crsa.bu.edu (John Collins)
Subject: Problem with MIT-SHM

I am trying to write an image display program that uses
the MIT shared memory extension.  The shared memory segment
gets allocated and attached to the process with no problem.
But the program crashes at the first call to XShmPutImage,
with the following message:

X Error of failed request:  BadShmSeg (invalid shared segment parameter)
  Major opcode of failed request:  133 (MIT-SHM)
  Minor opcode of failed request:  3 (X_ShmPutImage)
  Segment id in failed request 0x0
  Serial number of failed request:  741
  Current serial number in output stream:  742

Like I said, I did error checking on all the calls to shmget
and shmat that are necessary to create the shared memory
segment, as well as checking XShmAttach.  There are no
problems.

If anybody has had the same problem or has used MIT-SHM without
having the same problem, please let me know.

By the way, I am running OpenWindows 3.0 on a Sun Sparc2.

Thanks in advance--
John C.



Newsgroup: comp.windows.x
document_id: 66456
From: oj@world.std.com (Oliver Jones)
Subject: Re: Q: How to avoid XOpenDisplay hang?

In article <C512xr.3oy@skates.gsfc.nasa.gov> andy@ice.stx.com writes:
>I'm writing 'xwall', a simple X version of 'wall', and I want it to
>put a message up on each of a default list of displays.  The problem
>is that XOpenDisplay hangs if one of the displays is currently
>controlled by xdm (login screen). 

xdm does XGrabServer when it's running in secure mode (so do some
screen-locks).  There's really no simple way to tell this is the case.

You can take xdm out of secure mode;  probably not too cool.

You can wrap your call to XOpenDisplay in some code which solicts
a future SIGALRM and longjmps past the XOpenDisplay from the signal
handler.  An example of this can be seen in the xdm sources.

Note that longjmping out of XOpenDisplay probably causes a memory
leak;  any program functioning this way probably needs to exit() 
regularly.

Newsgroup: comp.windows.x
document_id: 66457
From: brent@vpnet.chi.il.us (Brent Hansen)
Subject: Re: GUI Study

In article <1993Apr2.203400.15357@kocrsv01.delcoelect.com> c2xjfa@kocrsv01.delcoelect.com (James F Allman III) writes:
>
>> 
>> > I'm doing a study on what the following type of users would like to
>> > have on a Unix Manager.  Basically I'm looking for the Unix commands
>> > and features on Motif window interface which will help the different
>> > type of users make use of Unix.
>> ...


>> Personally, I can't stand Motif.  I also can't stand GUI      Command Line!
>> interfaces for things like access to the commands I know      Command Line!
>> and love.  I think you'll find that experience [sic] users    Command Line!
>> 
>> 					der Mouse
>> ...


>A year and a half ago I felt the same way.  The I started using
>gooyies.  Give me the command line when something out of the ordinary
>needs done, and the gooy when I am doing normal or repative work. 
>Note that most operations are repetative.  Hackers love CLs because
>  ...

What I like about GUI's:

	- The ability to view and manipulate a group of objects, files,
	  text, directories, etc. and and manipulate them in some way
	  such as delete, copy, paste, rename ...

	- The ability to have several applications / screens visible
	  and accessable at the same time.

	- Being able to do a standard set of functions easily and
	  quickly on an unfamiliar operating system. I am familiar with
	  the command lines of several operating systems but occasionally
	  I will have to some work on a system that I almost never use.
	  If it has a GUI, I can usually accomplish what I want to do
	  fairly easily, the command line on the other hand often is
	  a long and painful experience.


What I hate about GUI's:

	- Having to switch between the mouse and the keyboard. I guess
	  I have a strong one-handed preference. I like to use a
	  computer with one hand and use the other for holding something
	  like a piece of paper of a mug of tea. I have configured my
	  favorite editor so that most of the editing functions can be
	  done with one hand such as navigating, cutting, pasting,
	  searching, opening and saving files, etc. The main thing I
	  need to use both hands for is entering text.

	I guess I need to get one of those mice with, like, 20 buttons
	or something and then I will have the best of both worlds.

						Brent


Newsgroup: comp.windows.x
document_id: 66458
From: urathi@net4.ICS.UCI.EDU (Unmesh Rathi)
Subject: Motif++ and Interviews

Hi,
	I am in the process of making the decision whether I should
write c++ wrappers for motif myself or use Motif++ or Interviews.
Though I have downloaded the tar files, I fail to see any
documentation. I have two questions:
	1) If you have used these or similar c++sy toolkits what has been
your experience?
	2) Where do I find reference books /documentation for them?

any and all input will be greatly appreciated.

/unmesh

Newsgroup: comp.windows.x
document_id: 66459
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: lost in (TekHVC color) space


Hi,

xtici worked for my system.
I'm using X11R5 pl 17 clientside only on a DEC 5000/240 on Ultrix 4.3
May be you have a serious floatingpoint compilation problem ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66460
From: swick@news.Colorado.EDU (Ross Swick)
Subject: Books on I.C.C other than I.C.C.M.

Can anyone recomend a good book or article on inter-client communications
BESIDES I.C.C.M.?

I've looked everywhere I can and it seems everyone tells you how to do it
but nobody SHOWS you how.  O'Reilly has no examples, ICCM has no examples,
Asente & Swick give no examples - in fact most of the books I've looked at,
if they discuss ICC at all, simply give a condensed version of the ICCM and
then refer you to the ICCM.  I did find one example of how to use Atoms and 
Properties in Young's book and five hours after I bought Young's book I had
my applications talking to each other.

I am not sure, however, if thats the best way.  I'd like to stay independent 
of Unix so pipes and/or sockets probably aren't the way to go.  But within X
one can also use messages, the clipboard, and perhaps window groups.

I need a text that discusses the various methods, discusses which method is best
for which purpose, and gives examples.  Without examples it's all just words.

Thanks in advance

Ross

Newsgroup: comp.windows.x
document_id: 66461
From: ngai@nova.bellcore.com (John Ngai)
Subject: How to disable reverse video on xterm/man

Well I am not sure if this is the right newsgroup to ask, but let me try anyway.
I am running xterm and like all UNIX users, I run man <something>. Recently,
I switched to Solaris 2.1, and their man pages are littered with ".I" directives
that are somehow translated into reverse video when displayed by man under xterm.
The resulting output (admittedly a personal taste) is very ANNOYING to look at.
Back when I was using SunOS 4.1.2, I remember their man pages have some keywords
displayed with underlining....

So my question is how do I change the xterm's behaviour under ".I" directives 
for nroff man pages, to perhaps underlining, or at least disabling it. (".B" 
directives are fine, I like them. And of course, I don't want to go in and edit
the man pages inputs...) Somehow, xterm allows one to specify both a normal font
and a bold font, but not an italic font??

Any pointers, suggestions are greatly appreciated.
Thanks -- John

P.S. Running xterm -rv won't work, I tried...





Newsgroup: comp.windows.x
document_id: 66462
From: tne@world.std.com (Thomas N Erickson)
Subject: Re: TeleUse, UIM/X, and C++

hubec@ctp.com (Hubert Chou) writes:

>Does anyone have any good ideas on how to integrate C++ code elegantly
>with TeleUse, UIM/X / Interface Architect generated code?

>Source would be great, but any suggestions are welcome.


Alsys has produced a paper outlining how to use C++ with TeleUSE.  You can
get a copy from your local sales rep or call us at (619)457-2700.

As mentioned, it is very straight forward using the Dialog language
(similar to Visual Basic).


-- 
---------------------------------------------------------------------------
Tom Erickson					Alsys
tne@world.std.com				67 South Bedford Street
						Burlington, MA 01803

Newsgroup: comp.windows.x
document_id: 66463
From: dbryant@leconte.Eng.Sun.COM (David Bryant)
Subject: Re: GUI toolkit for the Sun Sparc.

In article C4M@cuug.ab.ca, winsorr@sun (Robin Winsor 233-4670) writes:

>You are right to be going Motif rather than OpenLook.  Sun has just recently
>seen the light and dumped their commitment to OpenLook.  In the announcement
>they stated they have no future plans for DevGuide.

This is incorrect.  Sun has made no such claim regarding Devguide, and as 
manager of the Devguide engineering group I can state with authority that
work on Devguide is continuing apace.  We had quite a strong show of interest
from the Devguide user community at last week's Solaris Developer's Conference.
Devguide is being advocated not only as a valuable future builder tool, but
as an important bit of transition technology that will help sustain current
customers and facilitate their migration to the COSE Desktop Environment.

If you have specific questions about Devguide availability, etc., you can 
contact Tali Aben, our Devguide Product Marketing person, at (415) 336-3536.

	David Bryant
	Devguide Manager
	SunSoft
 

Newsgroup: comp.windows.x
document_id: 66464
From: ai900@yfn.ysu.edu (Joshua P. Weage)
Subject: X for PC


For those of you who couldn't find X-Appeal, it is availible at
the following sitex:

	ascwide.ascii.co.jp in the /pub/MSDOS/xappeal dir
	wuarchive.wustl.edu in the /mirrors4/garbo.uwasa.fi/demo
	directory

	The three files are xap13exe.aip, xap10fon.zip and
   drivers.zip.

Josh
-- 
+  Joshua Weage : U.S. Snail - 277 Spring Rd, Baroda, MI  49101 +
+  E-Mail: cs890@freenet-in-a.cwru.edu |  ai900@yfn.ysu.edu     +
+   Fidonet:  Joshua Weage @ 1:2340/130                         +
+  All ideas are my own and no one elses!!                      +

Newsgroup: comp.windows.x
document_id: 66465
From: adrian@ora.COM (Adrian Nye)
Subject: widgets vs. gadgets



> I've been using the XmGraph widget that's been floating around and I
> noticed the performance is significantly better using Gadgets, perhaps
> even 100% faster.  I had heard in an old programming course that gadgets
> were no longer any benefit to performance, and that it's just as well
> to use widgets everywhere. 

Interesting, I'd like to know why.

But try it again on a single ethernet with 100 X terminals on it,
and I think you'll find it much slower.

Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
document_id: 66466
From: chatterj@haji.lcs.mit.EDU (Shash Chatterjee)
Subject: Help: SunView on olwm/xview3/X11R5


Hi,

I just compiled the X11R5 distribution for a Sun3/SunOS4.1.1.  I also
compiled the public domain xview3 (with olwm) distribution.  I have some
old 3rd-party application binaries that are SunView programs.  How do I
get them to work under xview3 and olwm?  (I tried using the OpenWindows
version 2 "svenv" program, but it did not work.)

I do not have news access....that's why I am mailing this directly.  Also,
is there an email alias where my questions can get to comp.windows.x or
comp.windows.open-look?  PLEASE RESPOND TO fwr8bv@fin.af.mil

Thanks,
Shash

+-----------------------------------------------------------------------------+
+ Shash Chatterjee                               EMAIL:  fwr8bv@fin.af.mil    +
+ EC Software                                   PHONE:  (817) 763-1495        +
+ Lockheed Fort Worth Company                  FAX:    (817) 777-2115         +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+

Newsgroup: comp.windows.x
document_id: 66467
From: envbvs@epb11.lbl.gov (Brian V. Smith)
Subject: Re: I need source for splines

In article <1ppvhtINN814@fmsrl7.srl.ford.com>, glang@slee01.srl.ford.com (Gordon Lang) writes:
|> In the Xlib Programming Manual (O'Rielly Associates) it is pointed out
|> that routines for drawing splines is not included in Xlib, but extensions
|> are publicly available.  I need spline routines which work within the X
|> environment.
|> 
|> I have previously posted a similar request and got two responses, both
|> directing me to the Interviews package at interviews.stanford.edu.  I
|> got it, but it is too much.  It looks like too much work to try to
|> identify, extract and modify relevant components.  I am looking for
|> code that is not encumbered by a complex and extensive framework which
|> is beyond our needs.  We just need the spline "extensions" to the Xlib.

Look in xfig.  It has two types of spline algorithms and is relatively simple.
Xfig is available from export.lcs.mit.edu in
/contrib/R5fixes/xfig-patches/xfig.2.1.6.tar.Z

-- 
Brian V. Smith    (bvsmith@lbl.gov)
Lawrence Berkeley Laboratory
I don't speak for LBL; they don't pay me enough for that.

Newsgroup: comp.windows.x
document_id: 66468
From: lungtt@gus.ecn.purdue.edu (Terence T. Lung)
Subject: Re: Honors Degrees: Do they mean anything?

I hear George Bush (remember him?) will receive an honors degree from
some Kuwaiti University for contributing to certain Kuwaiti interests
not too long ago.  Do you think it would add much to his resume? ;-)




Newsgroup: comp.windows.x
document_id: 66867
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Converting contents of X-window to color postscript


In article <1993Apr8.200441.9423@jwminhh.hanse.de>, wieck@jwminhh.hanse.de (Jan Wieck) writes:
|> mbheprg@PROBLEM_WITH_INEWS_GATEWAY_FILE (Raju Gurung) writes:
|> : Jeff Haferman (haferman@icaen.uiowa.edu) wrote:
|> : > Can somebody point me to source code for dumping the contents of
|> : > an X-window into a color postscript file?  I have written
|> : > an app which brings up an X-window, and I want (at the click
|> : > of the mouse) to dump the window into a postscript file.
|> :
|> :
|> :
|> : I use xwd and xwd2ps. To do it from within a program I use
|> : xwd -id xxxxx where xxxxx is the window id obtained from XtWindow(widget).
|> 
|>     He asked for sources.
|> 
|>     The   portable    bitmap    tools    from    Jef    Poskanzer
|>     <jef@well.sf.ca.us>  include  filters  to  do  that (and much
|>     more).
|> 

BTW, the X11 tools come as sources. The sillyness of most vendors lets you
stuck with binaries.

Anyway, have a look onto xgrab/xgrabsc. It does the IMHO best job for
this, including compression.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66868
From: art@cs.UAlberta.CA (Art Mulder)
Subject: comp.windows.x: Getting more performance out of X.  FAQ

Archive-name: x-faq/speedups
Last-modified: 1993/4/15

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	HOW TO MAXIMIZE THE PERFORMANCE OF X -- monthly posting
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	    Compiled by Art Mulder (art@cs.ualberta.ca)

  More RAM, Faster CPU's, More disk space, Faster Ethernet...  These
  are the standard responses you hear when you ask how to improve the
  performance of your workstation.

  Well, more hardware isn't always an option, and I wonder if more
  hardware is always even a necessity.

  This "FAQ" list is a collection of suggestions and ideas from different
  people on the net on how you can the best possible performance from X
  Windows on your workstation, WITHOUT PURCHASING MORE HARDWARE.

  Performance is a highly subjective issue.  The individual user must
  balance `speed' versus `features' in order to come to a personal
  decision.  Therefore this document can be be expected to contain many
  subjective opinions in and amongst the objective facts.

  This document is specifically concerned with X.  There are of course
  many other factors that can affect the performance of a workstation.
  However, they are outside the scope of this document.

    [ People seriously interested in the whole area of system
    performance, might want to look at the O'Reilly Nutshell Handbook
    "System Performance Tuning" by Mike Loukides.  I'm about 25% of the
    way through reading it, and it looks like a well-written
    comprehensive treatment of system performance.  I'm unaware of any
    other similar books.  --ed.]

-----------------
Table of Contents
-----------------
  0. Introduction & Administrivia
  1. What about the "Other X FAQ"?
  2. Window Managers
  3. The X Server
       Which Server?
       Locking the Server into RAM?
       Starting your Server
       Fonts
       About the Resources File
!      Define Your Display Properly
  4. Clients
       A Better Clock for X
       A Better Terminal Emulator for X
       Tuning your client
  5. Miscellaneous Suggestions
       Pretty Pictures
       A Quicker Mouse
       Programming Thoughts
       Say What!?
  6. Other Sources of Information
  7. Author & Notes
  
! = changed since last issue.
* = new since last issue.

-----------------------------
Introduction & Administrivia
-----------------------------

  This document is posted each month, on or around the 15th, to the
  Usenet news groups comp.windows.x, news.answers, and comp.answers.
  If you are reading a copy of this FAQ which is more than a few
  months old (see the "Last-modified" date above) you should probably
  locate the latest edition, since the information may be outdated.

  If you do not know how to get those newsgroups and/or your site does
  not receive them and/or this article has already expired, you can
  retrieve this FAQ from an archive site.

  There exist several usenet FAQ archive sites.  To find out more about
  them and how to access them, please see the "Introduction to the
  news.answers newsgroup" posting in news.answers.

  The main FAQ archive is at rtfm.mit.edu [18.172.1.27].  This document
  can be found there in /pub/usenet/news.answers/x-faq/speedups.  If
  you do not have access to anonymous ftp, you can retrieve it by
  sending a mail message to mail-server@pit-manager.mit.edu with the
  command "send usenet/news.answers/x-faq/speedups" in the message body.

-----------------------------
What about the "Other X FAQ"?
-----------------------------

  David B. Lewis (faq%craft@uunet.uu.net) maintains the informative and
  well written "comp.windows.x Frequently Asked Questions" document.
  Its focus is on general X information, while this FAQ concentrates
  on performance.

  The comp.windows.x FAQ does address the issue of speed, but only with
  regards to the X server.  The gist of that topic seems to be:
	"Use X11R5, it is faster than R4".
  (Please see the X FAQ for complete details).

---------------
Window Managers
---------------

  There are a lot of window managers out there, with lots of different
  features and abilities.  The choice of which to use is by necessity a
  balancing act between performance and useful features.  At this
  point, most respondents have agreed upon "twm" as the best candidate
  for a speedy window manager. 

  A couple of generic tricks you can try to soup up your window manger,
  is turning off unnecessary things like "zooming" and "opaque move".
  Also, if you lay out your windows in a tiled manner, you reduce the
  amount of cpu power spent in raising and lowering overlapping
  windows.                           Joe English (joe@trystero.art.com)

  I've found that a good font for tiling is 7x13 (aka:
  -misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1 ). It is
  the biggest font I know of that I can use on my Sun (1152x900 screen)
  and still get two 80 column terminal windows side-by-side on the
  display with no overlap.  Other font suggestions will be accepted.

------------
The X Server
------------

Which Server?
- - - - - - -
  Make sure that your server is a proper match for your hardware.
  If you have a monochrome monitor, use a monochrome X11 server.

  On my Monochrome Sun, I haven't noticed much difference between
  the Xsun (colour) server and XsunMono, however it was pointed out to
  me that XsunMono is about 800k smaller and therefore should contribute
  to less paging.  
         [ thanks to: Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk),
                        Michael Salmon (Michael.Salmon@eos.ericsson.se) ]

  How your server was compiled can also make a difference.  Jeff Law
  (law@schirf.cs.utah.edu) advises us that on a Sun system, X should be
  compiled with gcc (version 2.*) or with the unbundled Sun compiler.
  You can expect to get "*very* large speedups in the server" by not
  using the bundled SunOS compiler.  I assume that similar results
  would occur if you used one of the other high-quality commercial
  compilers on the market.

Locking the Server into RAM?
- - - - - - - - - - - - - - -
  Has anyone tried hacking the X server so that it is locked into RAM and
  does not get paged?  eg: via a call to plock().  Does this help
  performance at all?  I've had one inquiry on this topic, and a few
  pointers to the plock() function call, but no hard evidence from someone
  who's tried it.  I am not in a position to give it a try.  
			  [thanks to: Eric C Claeys (ecc@eperm.att.com),
				      Danny Backx (db@sunbim.be),
				      Juan D. Martin (juando@cnm.us.es) ]
Starting your Server
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    If you start up a lot of clients in your .xsession or whatever, sleep
    for a second or two after launching each one.  After I changed my
    .xclients script to do this, logging in actually took *less* time...
    we have a heavily loaded system without much core, though.

  This sounds crazy, but I have confirmed that it works!  

  Warner Losh (imp@Solbourne.COM) provided me with a good explanation of
  why this works, which I have summarized here:

    When you start up an X server it takes a huge amount of time to
    start accepting connections.  A lot of initialization is done by
    the server when it starts.  This process touches a large number of
    pages.  Any other process running at the same time would fight the
    server for use of the CPU, and more importantly, memory.  If you
    put a sleep in there, you give the Server a chance to get itself
    sorted out before the clients start up.

    Similarly, there is also a lot of initialization whenever an X
    client program starts: toolkits registering widgets, resources
    being fetched, programs initializing state and "databases" and so
    forth.  All this activity is typically memory intensive.  Once this
    initialization is done ("The process has reached a steady state"),
    the memory usage typically settles down to using only a few pages.
    By using sleeps to stagger the launching of your clients in your
    .Xinitrc , you avoid them fighting each other for your
    workstation's limited resources

  This is most definitely a "Your Mileage May Vary" situation, as there
  are so many variables to be considered: available RAM, local swap
  space, load average, number of users on your system, which clients
  you are starting, etc.

  Currently in my .xinitrc I have a situation like:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

  I've experimented with:
	(sleep 1; exec xclock ) &
	(sleep 2; exec xbiff ) &
	(sleep 3; exec xterm ) &
	(sleep 4; exec xterm ) &

  I've even tried:
	(sleep 2; exec start_X_clients_script ) &
  and then in start_X_clients_script I had:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

    [ The idea with this last one was to make sure that xinit had
    completely finished processing my .xinitrc, and had settled down
    into a "steady state" before the sleep expired and all my clients
    were launched. ]

  All of these yielded fairly comparable results, and so I just stuck with
  my current setup, for its simplicity.  You will probably have to
  experiment a bit to find a setup which suits you.

Fonts
- - -
  Loading fonts takes time and RAM.  If you minimize the number of fonts
  your applications use, you'll get speed increases in load-up time.

  One simple strategy is to choose a small number of fonts (one small, one
  large, one roman, whatever suits you) and configure all your clients -- or
  at least all your heavily used clients -- to use only those few fonts.
  Client programs should start up quicker if their font is already loaded
  into the server.  This will also conserve server resources, since fewer
  fonts will be loaded by the server.
			      [ Farrell McKay (fbm@ptcburp.ptcbu.oz.au),
			        Joe English (joe@trystero.art.com) ]

  eg: My main xterm font is 7x13, so I also have twm set up to use 7x13
  in all it's menus and icons etc.  Twm's default font is 8x13.  Since
  I don't normally use 8x13, I've eliminated one font from my server.

  Oliver Jones (oj@roadrunner.pictel.com):
    Keep fonts local to the workstation, rather than loading them over nfs.
    If you will make extensive use of R5 scalable fonts, use a font server.

About the Resources File
- - - - - - - - - - - - -

    Keep your .Xresources / .Xdefaults file small.  Saves RAM and saves
    on server startup time.          Joe English (joe@trystero.art.com)

  One suggestion:

    In your .Xdefaults (.Xresources) file, try putting only the minimum
    number of resources that you want to have available to all of your
    applications.  For example:  *reverseVideo: true

    Then, separate your resources into individual client-specific
    resource files.  For example: $HOME/lib/app-defaults.  In your
    .login file set the environment variable XUSERFILESEARCHPATH:

	setenv XUSERFILESEARCHPATH $HOME/lib/app-defaults/%N

    [ The "comp.windows.x Frequently Asked Questions" FAQ contains
    an excellent explanation of how these environment variables work.
    --ed.]

    So, when xterm launches, it loads its resources from
    .../app-defaults/XTerm.  Xdvi finds them in .../app-defaults/XDvi,
    and so on and so forth.  Note that not all clients follow the same
    XXxxx resource-file naming pattern.  You can check in your system
    app-defaults directory (often: /usr/X11R5/lib/X11/app-defaults/) to
    find the proper name, and then name your personal resource files
    with the same name.

    This is all documented in the Xt Specification (pg 125 & 666).
		    [Thanks to: Kevin Samborn (samborn@mtkgc.com),
		         Michael Urban (urban@cobra.jpl.nasa.gov),
		             and Mike Long (mikel@ee.cornell.edu).
	     Kevin is willing mail his setup files to inquirers.]

  This method of organizing your personal resources has the following
  benefits:

    - Easier to maintain / more usable.

    - Fewer resources are stored in the X server in the RESOURCE_MANAGER
      property.  As a side benefit your server may start fractionally
      quicker, since it doesn`t have to load all your resources.

    - Applications only process their own resources, never have to sort 
      through all of your resources to find the ones that affect them.

  It also has drawbacks:

    - the application that you are interested in has to load an
      additional file every time it starts up.  This doesn't seem to
      make that much of a performance difference, and you might
      consider this a huge boon to usability.  If you are modifying an
      application's resource database, you just need to re-run the
      application without having to "xrdb" again.

    - xrdb will by default run your .Xdefaults file through cpp.  When
      your resources are split out into multiple resource files and
      then loaded by the individual client programs, they will not.
      WATCH OUT FOR THIS!!

      I had C style comments in my .Xdefaults file, which cpp stripped
      out.  When I switched to this method of distributed resource
      files I spent several frustrating days trying to figure out why
      my clients were not finding their resources.  Xt did *NOT*
      provide any error message when it encountered the C style
      comments in the resource files, it simply, silently, aborted
      processing the resource file.

      The loss of preprocessing (which can be very handy, e.g. ``#ifdef
      COLOR'' ...) is enough to cause some people to dismiss this
      method of resource management.

    - You may also run into some clients which break the rules.  For
      example, neither Emacs (18.58.3) nor Xvt (1.0) will find their
      resources if they are anywhere other than in .Xdefaults.

    - when starting up a client on a machine that does not share files
      with the machine where your resources are stored, your client
      will not find its resources.  Loading all your resources into the
      server will guarantee that all of your clients will always find
      their resources.            Casey Leedom (casey@gauss.llnl.gov)

  A possible compromise suggestion that I have (and am planning on trying)
  is to put resources for all my heavily used clients (eg: xterm) into my
  .Xdefaults file, and to use the "separate resources files" method for
  clients that I seldom use.

Define Your Display Properly
- - - - - - - - - - - - - - -

  Client programs are often executed on the same machine as the server.  In
  that situation, rather than setting your DISPLAY environment variable to 
  "<hostname>:0.0", where <hostname> is the name of your workstation, you
  should set your DISPLAY variable to "unix:0.0" or ":0.0".  By doing this
  you access optimized routines that know that the server is on the same
  machine and use a shared memory method of transferring requests.
			[thanks to Patrick J Horgan (pjh70@ras.amdahl.com)]

  See the _DISPLAY NAMES_ section of the X(1) man page for further
  explanation of how to properly set your display name.

  "I don't think it's stock MIT, but (at least) Data General and HP have
  libraries that are smart enough to use local communication even when
  the DISPLAY isn't set specially."
			      Rob Sartin (88opensi!sartin@uunet.UU.NET)

  [Jody Goldberg (jody@algorithmics.com) sent me an Xlib patch to change
  stock R5 to use local communication even if DISPLAY is not properly set.
  I don't want to get in the business of distributing or trying to juggle
  non-MIT patches and so have elected not to include it here.  Hopefully MIT
  will apply this minor (~8 lines) patch themselves.  In the meantime, if
  you want to try it yourself, email Jody.  --ed.]

-------
Clients
-------

  If you only have a few megabytes of Ram then you should think
  carefully about the number of programs you are running.  Think also
  about the _kind_ of programs you are running.  For example:  Is there
  a smaller clock program than xclock?

  Unfortunately, I haven't really noticed that programs advertise how large
  they are, so the onus is on us to do the research and spread the word.

  [ Suggestions on better alternatives to the some of the standard clients
  (eg: Xclock, Xterm, Xbiff) are welcome.  --ed.]

  I've received some contradictory advice from people, on the subject
  of X client programs.  Some advocate the use of programs that are
  strictly Xlib based, since Xt, Xaw and other toolkits are rather
  large.  Others warn us that other applications which you are using
  may have already loaded up one or more of these shared libraries.  In
  this case, using a non-Xt (for example) client program may actually
  _increase_ the amount of RAM consumed.

  The upshot of all this seems to be: Don't mix toolkits.  That is, try
  and use just Athena clients, or just Xview clients (or just Motif
  clients, etc).  If you use more than one, then you're dragging in
  more than one toolkit library.

  Know your environment, and think carefully about which client
  programs would work best together in that environment.

		  [Thanks to: Rob Sartin (88opensi!sartin@uunet.UU.NET),
      Duncan Sinclair (sinclair@dcs.gla.ac.uk | sinclair@uk.ac.gla.dcs) ]

A Better Clock for X
- - - - - - - - - - -

1) xcuckoo
   suggested by: Duncan Sinclair (sinclair@dcs.gla.ac.uk)
   available: on export.lcs.mit.edu

   Xcuckoo displays a clock in the title bar of *another* program.
   Saves screen real estate.

2) mclock
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in /X/mclock.shar

   Non Xt-based.  Extensively configurable.  it can be made to look
   very much like MIT oclock, or mostly like xclock purely by changing
   resources.

  Of course, the ultimate clock --- one that consumes no resources, and 
  takes up no screen real estate --- is the one that hangs on your wall.
  :-) 

A Better Terminal Emulator for X
- - - - - - - - - - - - - - - - -

  From the README file distributed with xterm:

  +-----
  |		 Abandon All Hope, Ye Who Enter Here
  |
  | This is undoubtedly the most ugly program in the distribution.
  | ...
  +-----

  Ugly maybe, but at my site it's still the most used.  I suspect that
  xterm is one of the most used clients at many, if not most sites.
  Laziness?  Isn't there a better terminal emulator available?  See below.

  If you must use xterm, you can try reducing the number of saveLines
  to reduce memory usage.  [ Oliver Jones (oj@roadrunner.pictel.com),
		   Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk) ]

1) Xvt
   suggested by: Richard Hesketh (rlh2@ukc.ac.uk) :
   available: export.lcs.mit.edu in /contrib/xvt-1.0.tar.Z

   "...if you don't need all the esoteric features of xterm, then get
   hold of xvt ...  it was written here just to save swap space as
   xterm is rather a hog! "

   This was written as a partial 'clone' of xterm.  You don't have to
   rename your resources, as xvt pretends to be XTerm.  In it's current
   version, you cannot bind keys as you can in xterm.  I've heard that
   there are versions of xvt with this feature, but I've not found any
   yet.

   UPDATE (March 1993):  I recently had a few email conversations with
   Brian Warkentin (brian.warkentine@eng.sun.com) regarding xvt.  He
   questions whether xvt really is at all faster than xterm.  For
   instance, xvt may initialize slightly faster, but compare scrolling
   speed (try this quickie benchmark: /bin/time dd if=/etc/termcap
   bs=40) and see which program can scroll faster.  Also, while xterm
   may be slightly larger in RAM requirements (We don't have any hard
   numbers here, does anyone else?) shared libraries and shared text
   segments mean that xterm's paging requirements are not that major.

   As an experiment, he ripped out all the tek stuff from xterm, but it
   made little difference, since if you never use it, it never gets
   brought into memory.

   So here we stand with some conflicting reports on the validity of
   xvt over xterm.  In summary?  Caveat Emptor, your mileage may vary.
   If you can provide some hard data, I'd like to see it.
   Specifically: How much RAM each occupies, how much swap each needs,
   relative speed of each

2) mterm
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in
     /X/mterm.src/mterm.ball-o-wax.

   "I also have my own terminal emulator.  Its major lack is
   scrollback, but some people like it anyway."


Tuning your client
- - - - - - - - - -

  Suggestions on how you can tune your client programs to work faster.

  From Scott Barman (scott@asd.com) comes a suggestion regarding Motif
  Text Field Widgets:

    I noticed that during data entry into Motif text field widgets, I
    was getting a slight lag in response to some keystrokes,
    particularly the initial one in the field.  Examining the what was
    going on with xscope I found it.  It seems that when the resource
    XmNblinkRate is non-zero and the focus is on a text field widget
    (or even just a text widget) the I-beam cursor will blink.
    Every time the cursor appears or disappears in those widgets, the
    widget code is making a request to the server (CopyArea).  The user
    can stop this by setting the resource XmNblinkRate to 0.  It is not
    noticeable on a 40MHz SPARC, but it does make a little difference
    on a [slower system].

  This specific suggestion can probably be applied in general to lots
  of areas.  Consider your heavily used clients, are there any minor
  embellishments that can be turned off and thereby save on Server
  requests?

-------------------------
Miscellaneous Suggestions
-------------------------

Pretty Pictures
- - - - - - - -
  Don't use large bitmaps (GIF's, etc) as root window backgrounds.

  - The more complicated your root window bitmap, the slower the server
    is at redrawing your screen when you reposition windows (or redraw, etc)

  - These take up RAM, and CPU power.  I work on a Sun SPARC and I'm
    conscious of performance issues, I can't comprehend it when I see
    people with a 4mb Sun 3/60 running xphoon as their root window.

    I'll let someone else figure out how much RAM would be occupied by
    having a full screen root image on a colour workstation.

  - If you're anything like me, you need all the screen real estate
    that you can get for clients, and so rarely see the root window anyway.

		      [ Thanks to Qiang Alex Zhao (azhao@cs.arizona.edu) 
			for reminding me of this one. --ed.]

A Quicker Mouse
- - - - - - - -
  Using xset, you can adjust how fast your pointer moves on the screen
  when you move your mouse.  I use "xset m 3 10" in my .xinitrc file,
  which lets me send my pointer across the screen with just a flick of
  the wrist.  See the xset man page for further ideas and information.

  Hint: sometimes you may want to *slow down* your mouse tracking for
  fine work.  To cover my options, I have placed a number of different
  mouse setting commands into a menu in my window manager.  

  e.g. (for twm) :
      menu "mouse settings" {
        "Mouse Settings:"			f.title
	"  Very Fast"				! "xset m 7 10 &"
	"  Normal (Fast)"			! "xset m 3 10 &"
	"  System Default (Un-Accelerated)"	! "xset m default &"
	"  Glacial"				! "xset m 0 10 &"
      }

Programming Thoughts
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    To speed up applications that you're developing, there are tons of
    things you can do.  Some that stick out:

    - For Motif programs, don't set XmFontList resources for individual
      buttons, labels, lists, et. al.; use the defaultFontList or
      labelFontList or whatever resource of the highest-level manager
      widget.  Again, stick to as few fonts as possible.

    - Better yet, don't use Motif at all.  It's an absolute pig.

    - Don't create and destroy widgets on the fly.  Try to reuse them.
      (This will avoid many problems with buggy toolkits, too.)

    - Use a line width of 0 in GCs.  On some servers this makes a HUGE
      difference.

    - Compress and collapse multiple Expose events.  This can make the
      difference between a fast application and a completely unusable
      one.

  Francois Staes (frans@kiwi.uia.ac.be) :
    Just a small remark: I once heard that using a better malloc
    function would greatly increase performance of Xt based
    applications since they use malloc heavily. They suggested trying
    out the GNUY malloc, but I didn't find the time yet. I did some
    tests on small programs just doing malloc and free, and the
    differences were indeed very noticeable ( somewhat 5 times faster)

  [ Any confirmation on this from anyone?  --ed.]

  Andre' Beck (Andre_Beck@IRS.Inf.TU-Dresden.de) :

  - Unnecessary NoExpose Events.

    Most people use XCopyArea/XCopyPlane as fastest blit routines, but
    they forget to reset graphics_exposures in the GC used for the
    blits. This will cause a NoExpose Event every blit, that, in most
    cases, only puts load onto the connection and forces the client to
    run through it's event-loop again and again.

  - Thousands of XChangeGC requests.

    This "Gfx Context Switching" is also seen in most handcoded X-Apps,
    where only one or few GCs are created and then heavily changed
    again and again.  Xt uses a definitely better mechanism, by caching
    and sharing a lot of GCs with all needed parameters. This will
    remove the load of subsequent XChangeGC requests from the
    connection (by moving it toward the client startup phase).

Say What!?
- - - - - - 
  Some contributors proposed ideas that seem right off the wall at first:

  David B. Lewis (by day: dbl@osf.org, by night: david%craft@uunet.uu.net) :
    How about this: swap displays with someone else. Run all your programs
    on the other machine and display locally; the other user runs off your
    machine onto the other display. Goal: reduce context switches in the
    same operation between client and server.

  I'm not in a situation where I can easily try this, but I have received
  the following confirmation...

  Michael Salmon (Michael.Salmon@eos.ericsson.se):
    I regularly run programs on other machines and I notice a big
    difference. I try to run on a machine where I will reduce net usage
    and usually with nice to reduce the impact of my intrusion. This
    helps a lot on my poor little SS1+ with only 16 MB, it was
    essential when I only had 8 MB.

  Casey Leedom (casey@gauss.llnl.gov) :
    [The X11 Server and the client are] competing for the same CPU as
    your server when you run it on the same machine.  Not really a
    major problem, except that the X11 client and the server are in
    absolute synchronicity and are context thrashing.

  Timothy H Panton (thp@westhawk.uucp) :
    Firstly it relies on the fact that most CPU's are mostly idle, X's
    cpu usage is bursty.  so the chances of you and your teammate
    doing something cpu-intensive at the same time is small. If they
    are not then you get twice the cpu+memory available for your
    action.

    The second factor is that context switches are expensive, using 2
    cpu's halves them, you pay a price due to the overhead of going
    over the network, but this is offset in most cases by the improved
    buffering of a network (typically 20k vs 4k for a pipe), allowing
    even fewer context switches.

----------------------------
Other Sources of Information
----------------------------

  Volume 8 in O'Reilly's X Window System Series, ``X Window System
  Administrator's Guide'' is a book all X administrator's should read.

  Adrian Nye (adrian@ora.com):
    A lot more tips on performance are in the paper "Improving X
    Application Performance" by Chris D. Peterson and Sharon Chang, in
    Issue 3 of The X Resource.

    An earlier version of this paper appeared in the Xhibition 1992
    conference proceedings.

    This paper is absolutely essential reading for X programmers.

--------------
Author & Notes
--------------
  This list is currently maintained by Art Mulder (art@cs.ualberta.ca)

  Suggestions, corrections, or submission for inclusion in this list
  are gladly accepted.  Layout suggestions and comments (spelling
  mistak's too! :-) are also welcome.

  Currently I have listed all contributors of the various comments and
  suggestions.  If you do not want to be credited, please tell me.

  speedup-x-faq is copyright (c) 1993 by Arthur E. Mulder

  You may copy this document in whole or in part as long as you don't
  try to make money off it, or pretend that you wrote it.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
 ...art mulder ( art@cs.ualberta.ca )    | "Do not be conformed to this world,
 Department of Computing Science         |  but be transformed by the renewal
 University of Alberta, Edmonton, Canada |  of your mind, ..."  Romans 12:2

Newsgroup: comp.windows.x
document_id: 66869
From: drisko@ics.com (Jason Drisko)
Subject: Re: app-defaults files

Hello,

   When starting bx if you recieve an error message saying
"cannot load app-defaults file..." check your XAPPLRESDIR
environment variable and then put the file BuilderXcessory 
( this is the app-defaults file for BX ) in the directory
specified by the XUSERFILESEARCHPATH environment variable.

   If you don't have an XUSERFILESEARCHPATH environment variable
then set XUSERFILESEARCHPATH to be the directory where the
BuilderXcessory file is. You can do this using the setenv
command under csh. Note that the name ends in .ad so you will
have to set XUSERFILESEARCHPATH to {BX}/%N.ad to get the
app-defaults to load correctly.

   To make sure the the app-defaults file can be read by all
the users, make sure that a copy of or a link to the app-defaults
file exists in /usr/lib/X11/app-defaults or 
/usr/openwin/lib/app-defaults, depending on how your system is
set up.

   Once you have taken care of this set the *systemDirectory
resource to be the directory in which you have installed BX. 
For example let's say I've installed BX in /t then my system
directory resource should be set like this :

*systemDirectory: /t/builderXcessory

    Thanks,
      ICS Tech Support

Newsgroup: comp.windows.x
document_id: 66870
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

> 
> I am trying to use XCopyPlane to copy a single plane 
> from a depth-8 pixmap to a depth-1 pixmap.  Everytime I
> try this, I see absolutely nothing displayed.  I know there
> is data in the depth-8 pixmap becuase I have checked by doing
> an XCopyArea to the screen.
> 
> I have been successful getting XCopyPlane to work if I use
> two pixmaps of depth-8.  Is there a problem with what I am
> trying to do??
> 
> Could someone please scan my code segment and let me know
> where I am going wrong...
> 
> I have created a XmDrawingArea widget called canvas. 
>  
>     w_id = XtWindow(canvas);
>     display = XtDisplay(canvas);
>     screen = DefaultScreen (display);
>     pixmap8 = XCreatePixmap (display, RootWindow (display, screen),
>                     w_width, w_height, DefaultDepth (display, screen));
>     pixmap1 = XCreatePixmap (display, RootWindow (display, screen),
>                     w_width, w_height, 1);
> 
>     w_gc8 = XCreateGC (display, w_id, 0, NULL);
>     w_gc1 = XCreateGC (display, pixmap1, 0, NULL);
> 
> --> Code to read xwd image into pixmap8 is omitted <----
> 

Have you set the foreground and background colors in w_gc1 to 
something other than 0 and 1?  The WhitePixel and BlackPixel macros
on your server may not return values suitable for depth 1 drawables.


>     /* Copy one plane into the depth-1 pixmap */
>     XCopyPlane (display, pixmap8, pixmap1,
>                 w_gc1, 0, 0, w_width, w_height, 0, 0, 16);
> 

Are you sure that the fifth plane of the data isn't all the same?  You could
have different pixel values in the image, but the fifth plane (0x10 == 16)
might all be the same value?


>     /* Using the depth-1 pixmap as the clipmask, copy it to the screen */
>     values.foreground = fg_color;
>     values.clip_x_origin = 0;
>     values.clip_y_origin = 0;
>     values.clip_mask = pixmap1;
>     mask = GCForeground | GCClipMask;
>     XChangeGC (display, w_gc8, mask, &values);
> 
>     XFillRectangle (display, w_id, w_gc8, 0, 0, w_width, w_height);
> 


If you just want to see the plane of data and want better performance,
don't use ClipMasks, just use pixmap1 as the stipple in a stippled
rectangle fill.  Many servers are very stupid about handling complex
clip lists, and turn a bitmap clip region into hundreds and hundreds of
little clipping rectangles, and clips every drawing primitive against every
one of these little triangles.


Actually, I must also ask the FAQ's #1 most popular reason why graphics
don't show up: do you wait for an expose event before drawing your
rectangle?



> Other Info:  X11R5 Patchlevel 10
>              Motif 1.2.1
>              Sun Sparc2 running SunOS 4.1.1
>              
> 
> Thanks in Advance!
> 
>  ----------------------------------------------------------------
>  Nancie P. Marin      NET:  nancie@neko.css.gov
>  ENSCO Inc.           MAIL: 445 Pineda Ct.  Melbourne, Fl.  32940
>  (407)254-4122        FAX:  (407)254-3293
>  ----------------------------------------------------------------
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
document_id: 66871
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: MS Windows VS Motif (GUI design differences), was Re: Future of Unix


In article <IK.93Apr9075401@sneaker.ctt.bellcore.com>, ik@sneaker.ctt.bellcore.com (Ik Su Yoo ) writes:
|> >>>>> "aab" == Andy Burgess <aab@cichlid.com> writes:
|> 
|>   aab> In <1993Apr7.200950.16856@texhrc.uucp> pyeatt@Texaco.com (Larry D. Pyeatt) writes:
|> 
|>   aab> <some deleted>
|> 
|>     >If you
|>     >look closely at Motif, you will see that it is just MS-Windows
|>     >with more eye-pleasing color and texture.  The only real difference
|>     >is that an MS application window can "contain" other toplevel children, 
|>     >while a Motif application window "launches" its children out onto the
|>     >desktop.
|> 
|>   aab> To those of you familiar with both GUIs, is this correct? My experience
|>   aab> with X makes me think that this MSW behavior is easily duplicated
|>   aab> with X11. But I don't know MSW...
|> 
|> Another important difference is that MSW doesn't have any window that
|> handle sophisticated geometry management (like XmForm). Also, I believe
|> that in Windows 3.x you're limited to 64K of resources (windows, menus,
|> icons, etc.).

IMHO this whole discussion named "Motif looks like MS-Windogs" is totally
stupid. The only thing remotely influenced here can be the Motif Window
Manager, that features an arrangement of buttons and menus somewhat
similiar to this of the MS-W windowmanaging agent, however its name is.
But MWM is only a SMALL part of Motif, in fact, MWM and Motif can work
without each other, and if one doesn't like MWMs outfit for some reason,
he switches to another windowmanager. All this doesn't influence Motif,
which is a toolkit of widgets to write applications, and this toolkit
is IMHO uncomparable to MS-W, because it is much more wellorganized and
features alot of goodies more than the MS-W interface.

You cannot say "A Porsche looks like a VW Kfer" ONLY because they have the
wheel and the gear at the same position. Motif and MS-W are complete
different worlds, only one element of the Motif world has some gear and wheel
at the same position as MS-W.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66872
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: X version of whois??

Has an X version of whois been written out there?  If so, where can I ftp it
from?  Thanks.

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
document_id: 66873
From: kk@unisql.UUCP (Kerry Kimbrough)
Subject: GUI Study -- do users want to build solutions?



   ...let me point out that both GUI-based word-processors and text-based
   formatters both have a language; one happens to be mouse- and
   action-based, and the other symbol-based.

True, but that's beside the point. This is a fact about an abstract model
of what the GUI users are doing, not about what they actually *are* doing.
This abstract model is only apparent from the perpective of a *programmer*
of the system. (NB: some users may see it, too, but only when they put
aside the work at hand and start thinking like a programmer.)

I'm not saying that the programmer's perspective is evil or stunted. After
all, that's what I do, too! I am saying that UI designers must carefully
distinguish between the user/programmer conceptual models, and they must
ultimately serve the user of the system, not the builder of the system. 


   I don't recall the actual stats, but something like 1 in 5 people can be
   categorized as a "symbol manipulator".

It would be interesting to know more about the meaning and basis for this
claim. At any rate, I don't think this is evidence that 20% of users think
like programmers. Bankers, financial analysts, structural engineers ---
these are all people whose work you could characterize as primarily symbol
manipulation. But what they do is not programming, and programming is not
required to do what they do. 

To restate my previous point: yes, users want to build their own solutions;
no, they do not want to do programming to accomplish this.

Newsgroup: comp.windows.x
document_id: 66874
From: eanders@cthulhu.sura.net (Eric Anderson)
Subject: Re: Is Xlib thread safe?

In article <9304132134.AA24803@alex.lcs.mit.edu> gildea@expo.lcs.mit.EDU (Stephen Gildea) writes:
>No, the R5 Xlib is not thread-safe.  But we are working on it.
>See my article in The X Resource, issue 5.  Consortium members
>will have a multi-threaded version soon, and it will be part
>of R6.
There is a multi threaded xlib version written.
Do an archie search for mt-xlib:
Host export.lcs.mit.edu

    Location: /contrib
      DIRECTORY drwxr-xr-x        512  Jul 30 1992  mt-xlib
    Location: /contrib/mt-xlib-1.1
           FILE -rw-r--r--     106235  Jan 21 14:02  mt-xlib-xhib92.ps.Z
           FILE -rw-r--r--    1658123  Jan 21 14:03  mt-xlib.tar.Z
    Location: /contrib/mt-xlib
           FILE -rw-r--r--     106235  Jul 30 1992  mt-xlib-xhib92.ps.Z
           FILE -rw-r--r--    1925529  Jul 30 1992  mt-xlib.tar.Z

et.al.
          -Eric 
*********************************************************
"Overhead, without any fuss, the stars were going out."
           -The Nine Billion Names of God
"Yes, you're very smart.  Shut up."
           -In "The Princess Bride"
*********************************************************

Newsgroup: comp.windows.x
document_id: 66875
From: lusardi@cs.buffalo.edu (Christopher Lusardi)
Subject: System file in /tmp

What is the directory .X11-unix for in /tmp? When I start
x, it is created by the system. This directory wasn't created 
by root, and it contains an empty file (X0) that is owned by me. 

						
-- 
|  .-,                ###|For a lot of .au music: ftp sounds.sdsu.edu
| /   /   __  ,  _    ###|then cat file.au > /dev/audio
| \_>/ >_/ (_/\_/<>_     |UB library catalog:telnet bison.acsu.buffalo.edu
|_                14261 _|(When in doubt ask: xarchie, xgopher, or xwais.)

Newsgroup: comp.windows.x
document_id: 66876
From: dsc3jfs@imc10 (John F Skoda)
Subject: How do I change the Text cursor in xterm


 I have just finished building X11R5 on a 386 running Interactive Unix (SysVR3)
and I am having a problem with xterm.  On any font larger that 5x7 it messes up
characters that are types, the cursor seems to be "too" large, or splits into
a 1/2 reverse video, 1/2 outline block (which changes when the pointer is moved
into the window).  I am trying to use monospaced fonts (not -p- fonts).  Is
there any way of changing the appearence of the block cursor is an Xterm?

 Thanks
    

--
------------------------------------------------------------------------------
-- John F Skoda                            | Windows NT, OS/2 for the 90's. 
-- electronic learning facilitators, inc.  | C++, Cobol for the 21st century.
-- Bethesda, MD                            | Use Ada, Unix, and other socially
-- dsc3jfs@imc10.med.navy.mil		   | unacceptable systems. 
-- dsc3jfs@imc30.med.navy.mil              | (and before you flame, I'm an
-------------------------------------------| Expos fan... ...need I say more?)
with DISCLAIMER_PACKAGE;

Newsgroup: comp.windows.x
document_id: 66877
From: kobet@xsun2a.ct.picker.com (Harry J Kobetitsch)
Subject: xwd

I am trying to run xwd on a Sun SPARCstation IPX
with SunOS 4.1.2 and Openwindows 3.0. I am using
the Motif window manager. I have been unsuccessful
in using xwd under Motif. I get the following when
doing xwd -out xwd.dmp

X Error of failed request:  BadDrawable (invalid Pixmap or Window parameter)
  Major opcode of failed request:  73 (X_GetImage)
  Resource id in failed request:  0x500043
  Serial number of failed request:  213
  Current serial number in output stream:  213

Does anyone have any insight to this ?

Newsgroup: comp.windows.x
document_id: 66878
From: coe@leopard.cs.uidaho.edu (Mike Coe)
Subject: window manager




I currently use a window manager called ctwm which
is very similar to hp's vuewm. (i.e. 
it has multiple workspaces).  Is there a 
motif based window manager that has this 
same feature and is not a memory pig like vue?



mike

--
Michael L Coe                 |  "A mind is a terrible thing."
Laboratory of Applied Logic   | 
University of Idaho           | 
coe@leopard.cs.uidaho.edu     | 
coe861@snake.cs.uidaho.edu                      

Newsgroup: comp.windows.x
document_id: 66879
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: X11R5 and Open Look

In article <1993Apr12.155820.82@aedc-vax.af.mil>, bonds@aedc-vax.af.mil writes:
> I am reposting this because I am not sure my first post ever made it out.
> I have built and installed X11R5 on my SPARCstation 2.  My aim is to run
> the MIT X server but retain the OpenLook Window Manager.  I am sure this
> is not uncommon, but I just want to make sure that I change and/or delete
> everything that I need to.  For instance, I can start xdm in rc.local, but
> how do I get rid of Xnews?
> 

  The OpenLook window manager source is available on the MIT contrib tapes
  or from  export.lcs.mit.edu  .I would suggest building this too, rather than
  using the version from OpenWindows. It is  olwm  v3.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
document_id: 66880
From: donaldlf@k9.Rose-Hulman.Edu (Leslie F. Donaldson)
Subject: Problems using Graphic Context with Athena widgets

I am creating a graphics program using the Athena widgets. I use
Xlib routines to install a custom Graphics Contex by obtaining the display,
and window variables with the XtWindowOfObject() and XtDisplayOfObject().
The object was one of the sub widgets.  
  The problem occurs that whenever a button is pressed or a menu is selected
the graphic contex reverts to the orginal one. I tried moving the allocation
of the graphic context before the allocation of the buttons but nothing
changed. I am preforming all of this manipulation before calling 
XtAppMainLoop().

Thank you for any help.
Leslie Donaldson

donaldlf@cs.rose-hulman.edu
donaldlf@nextwork.rose-hulman.edu

Newsgroup: comp.windows.x
document_id: 66881
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: C++ toolkit "directions" ?

In article <533@imp.HellNet.org> devil@loki.HellNet.org (Gil Tene) writes:
>I am trying to figure out the current C++ toolkit "directions".
>More simply, I'd like to know which C++ toolkit to "bet on" 
>for use in a new long term project.

I have the same problem.  I have looked at Motif++, WWL, InterViews, GINA++,
and a few variations on the above.  I've also done a cursory examination
of Rogue Wave's View.h++.  I like View.h++'s abstractions best of all of the
toolkits I mentioned, but the resulting code looks little like Motif, and I
have little confidence that this software will catch on or otherwise result
in significant longevity for my code.  GINA++ allows you to write code which
looks a great deal like Motif and also makes interesting use of inheritance,
but the resulting code is almost too Motif-like, and is certainly not
significantly less verbose than equivalent C code.  InterViews looks
promising, but I haven't found a free version with Motif support, and I'm
not confident how widely InterViews with Motif support will be adopted,
and what (if any) specific Motif support will be available over time.  The
other libraries produce code which is less Motif-like, but which does not make
sufficient use of the features of C++ to simplify my coding task.

At this point, my inclination is to write my Motif manipulation routines in
C, and invoke those routines from my C++ code using simple abstractions suited
to my specific task.  Later, if OSF or some credible standards-setting body
comes up with a C++ interface to Motif, I will change to that.  It does me
no goo to write in C++ if my choice of interfaces leaves me with code which
leaves me tied to an abstraction which is not consistent with the industry
directions.  It's better to take a standard if inferior solution for now
than to go with a slgihtly superior approach which will leave me with both
useless code and useless skills a few years from now.  Views.h++ is the only
library I'd consider right now, but in our environment, we'd end up spending
nearly $5000 to use it, and I can't justify it when it's likely to cause
short-term productivity decreases as we learn the new abstraction, and is
unlikely to be a sufficiently long-lived solution for us to reap the benefits
at the high end of the J curve.

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
document_id: 66882
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Fresco status?

I've been hearing rumblings about Fresco, and it sounds like it may be
what I'm looking for, but how far is it from release, or at least some kind
of availability?  How similar is it to InterViews?  If I code to InterViews,
will my code work with Fresco?  How about Motif?  I've heard some mention
of versions of InterViews which support Motif.  Will it be feasible to use
Motif with Fresco?

Any information would be much appreciated.

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
document_id: 66883
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: iconize a running application?

In article <C5IFJ0.F2u@csn.org> doomer@teal.csn.org (John Dumais) writes:
>I've been trying to figure a way to programmatically iconize 
>an application running under a Motif window manager.  I have tried
>several approaches includeing sending events to the application's
>border window, but to no avail?  Anyone done this before?

I tend to use XIconifyWindow to achieve this effect...  Have you tried that?

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
document_id: 66884
From: jbore@cosmos.shearson.com (Joe Bore)
Subject: Re: iconize a running application?

it doesnt matter what window mgr you running under, you can use the X
routine:
	XIconfiyWindow(display, w, screen_number)
		Display *display;
		Window w;
		int screen_number;

as in

	XiconifyWindow( XtDisplay(w), XtWindow(w), 0);

does that perform what you want??


In article <C5IFJ0.F2u@csn.org> doomer@teal.csn.org (John Dumais) writes:

   Newsgroups: comp.windows.x
   Path: shearson.com!uupsi!psinntp!uunet!haven.umd.edu!darwin.sura.net!wupost!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!teal.csn.org!doomer
   From: doomer@teal.csn.org (John Dumais)
   Sender: news@csn.org (news)
   Nntp-Posting-Host: teal.csn.org
   Organization: Colorado SuperNet, Inc.
   X-Newsreader: Tin 1.1 PL4
   Date: Thu, 15 Apr 1993 05:35:22 GMT
   Lines: 8

   I've been trying to figure a way to programmatically iconize 
   an application running under a Motif window manager.  I have tried
   several approaches includeing sending events to the application's
   border window, but to no avail?  Anyone done this before?

   Thanks,

   doomer '85
--
-------------------------------------------------------------------------------
Joe Bore					 | "Life is Short...Code Hard"
jbore@Shearson.COM | ...!uunet!shearson.com!jbore| 
(212)464-3431, Beeper:  (212)396-4248		 |

Newsgroup: comp.windows.x
document_id: 66885
From: ndd@sunbar.mc.duke.edu (Ned Danieley)
Subject: compiling clients on a Sun IPX

I'm trying to set up an IPX for another group. I copied all the
X stuff that I compiled on my 4/280 (which runs SunOS 4.1.1) using
gcc 2.1, and most things run just fine. however, I did find a
couple of bugs, and when I try to recompile those clients on the IPX
(which runs 4.1.3), I get

ld: Undefined symbol
   _XShapeQueryExtension
   _XShapeCombineMask

I know that I can include libXext and get rid of those messages,
but I can't figure out why I get them on the IPX and not on the
4/280. any ideas?

-- 
Ned Danieley (ndd@sunbar.mc.duke.edu)
Basic Arrhythmia Laboratory
Box 3140, Duke University Medical Center
Durham, NC  27710   (919) 660-5111 or 660-5100

Newsgroup: comp.windows.x
document_id: 66886
From: bambi@kirk.bu.oz.au (David J. Hughes)
Subject: Re: Motif vs. [Athena, etc.]

berry@durian.citr.uq.oz.au (Andrew Berry) writes:

>My impression is that most people use Motif because their OS vendor
>supplies it with X (SunOS users excluded), and because it is similar in
>"look and feel" to MS-Windows and OS/2 PM.  Personally, I also prefer
>the "look and feel" of Motif (no flames please -- just an opinion).

Seeing as Motif has been adopted by Sun, IBM, HP +++ (can't remeber the
other members in the recent announcement), I'm sure you'll see it on
virtually every workstation (ie. Sun, IBM, HP and DEC must make up the
**VAST** majority of all hardware).


>I am also concerned by this prevalence of Motif, particularly from the
>point of view of writing and obtaining free software.  As the Linux and
>386BSD communities grow, however, I think that Motif will lose some of
>its grip, at least in the non-commercial marketplace.  


Ports of Motif to both 386BSD and Linux are available for a fee of about
$100.  This is cost recovery for the person who bought the rights to
redistribute.  The activity in both the BSD and Linux news groups
pertaining to Motif has been high.


>I just wonder if this will also cause a divergence between commercial
>and non-commercial software (ie. you will only get free software using
>Athena or OpenLook widget sets, and only get commercial software using
>the Motif widget sets).  


I can't see why.  If just about every workstation will come with Motif
by default and you can buy it for under $100 for the "free" UNIX
platforms, I can't see this causing major problems.


Side Note :
---------
All the X based code I am writing (and will distribute freely when
completed) is based on Motif because from a programmatic and also "look
and feel" point of view I like it the best (no flames on this one
please).



bambi

   ___                                 David J. Hughes     bambi@bu.oz.au
  /   \                /  /    /        
 /  __/ __   __   ____/  /    / __          Senior Network Programmer
/    \ /  \ /  \ /   /  /    / /  \  /    Comms Development & Operation
\____/ \__//   / \__/   \___/ /   / /       AUSTRALIA  (+61 75 951450)

Newsgroup: comp.windows.x
document_id: 66887
From: alex@vuse.vanderbilt.edu (Alexander P. Zijdenbos)
Subject: Sunview -> X

No doubt this is an old question, but I didn't find the answer in the
FAQs I could find, so - here goes:

I have a Sunview application that I want to convert to X (OpenLook,
Motiv, whatever). I remember hearing quite some time ago that there
are tools to accomplish this task.

	a) is that so?
	b) are they public domain?
	c) any good, i.e.
	d) advantages over reimplementing the interface myself?

Thanks,

-- Alex


Newsgroup: comp.windows.x
document_id: 66890
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: mouseless operation in ol{v}wm

Mouseless operation is documented in the man pages for olwm and olvwm...
However, I can't get it to work in either.
I have this line in my .Xdefaults:
OpenWindows.KeyboardCommands:           Full

That should do it...
I haven't rebound the keys.
Am I missing something?

-D


Newsgroup: comp.windows.x
document_id: 66891
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-server multi screen

Hi Xperts, some simple questions for you:

I've seen a lot of different terms, which seem to mean the same thing.
Who can give an exact definition what these terms mean:

	-) multi-screen
	-) multi-headed
	-) multi-display
	-) X-Server zaphod mode

Is there a limit how many screens/displays a single server can handle
(in an articel a read something about an upper limit of 12) ?

How is the capability called, if I want to move the cursor from one
screen/display to another.

Any hints welcome.

Thanks, rainer.
-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 66892
From: rvloon@cv.ruu.nl (Ronald van Loon)
Subject: Motif++ mailing list - is there any interest ?

Hello Motif World,

a few days ago I posted my announcement for an update of Motif++. I got
several requests to send the bindings per e-mail, and I know of several people
who have been using Motif++, and there are probably a number of people I am
not aware of who are also using Motif++.

My question is:

How many people 'out there' would be interested to join a mailing-list, where
people can ask questions about Motif++, swap stories, and give new ideas about
new directions and improvements for the bindings. This would benefit the
user-community, as well as give me more insight in what people would like to
see added to Motif++. Motif++ is still very much a voluntary project, and this
way I can make a list of priorities, in what order things should be added, or
changed.

If you're interested in joining such a mailing-list, please take the time to
reply to this message, and tell me so. When there is sufficient interest, say
about 20 people or more, a mailing-list will be set up at my site, and I will
post the announcement of the newly-created list to this and other newsgroups.
-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

Newsgroup: comp.windows.x
document_id: 66893
From: stolk@fwi.uva.nl (Bram)
Subject: Creating 8 bit windows on 24 bit display.. How?

Greetings,


I am using an X server that provides 3 visuals:
PseudoColor 8 bit, Truecolor 24 bit and DirectColor 24 bit.

A problem occurs when I try to create a window with a visual that is different
from the visual of the parent (which uses the default visual which is TC24).

In the Xlib reference guide from 'O reilly one can read in the
section about XCteateWindow, something like:
"In the current implementation of X11: When using a visual other than the
parent's, be sure to create or find a suitable colourmap which is to be used 
in the window attributes when creating, or else a BadMatch occurs."

This warning, strangely enough, is only mentioned in the newer editions
of the X11R5 guides.

However, even if I pass along a suitable colourmap, I still get a BadMatch
when I create a window with a non-default visual.
The code looks like this:

------------------ cut here and you'll destroy your CRT ----------------

Window create_8bit_window_on_truecolour_display(dpy,width,height)
Display *dpy;
int width, height;
{
  Window win;
  XVisualInfo vinfo;
  XSetWindowAttributes attr;

  fprintf(stderr,"Opening 8 bit window...\n");
  if (!XMatchVisualInfo(dpy,DefaultScreen(dpy),8,PseudoColor,&vinfo)) {
    fprintf(stderr,"Your display can't handle 8 bit PseudoColor.\n");
    exit(1);
  }
  fprintf(stderr,"Using visual: %x\n",vinfo.visual->visualid);
  cmap = XCreateColormap(
           dpy,
           DefaultRootWindow(dpy),
           vinfo.visual,
           AllocNone
         );
  XSync(dpy,False);
  XInstallColormap(dpy,cmap);	/* ommision of this line gives same result */
  attr.colormap = cmap;
  win = XCreateWindow(
          dpy,
          DefaultRootWindow(dpy),
          10,10,
          width,height,
          CopyFromParent,       /* border width */
          8,                    /* depth */
          InputOutput,          /* class */
          vinfo.visual,         /* visual */
          CWColormap,
          &attr
        );
  return win;
}

--- cut here and you'll destroy your CRT -----

Executing this piece of code results in a BadMatch error.
Anybody who knows why?
If so, please drop me a line.



	Take care,


		Bram Stolk
		stolk@fwi.uva.nl

Newsgroup: comp.windows.x
document_id: 66894
From: bm155@cleveland.freenet.edu (csthomas@gizmonic.UUCP)
Subject: xwd->gif conversions

Hello,

Anyone know of any source code I can get to either create window 
dumps in GIF format, or convert an XWD (x window dump) file 
into a GIF? Really could be any format I can manipulate in DOS, 
i.e. PCX, BMP, etc.

later,

shane

---
bm155@cleveland.freenet.edu {uucp:rutgers!devon!gizmonic!csthomas}
"God bless those Pagans..." - H. Simpson

Newsgroup: comp.windows.x
document_id: 66895
From: claes@polaris (Heinz-Josef Claes)
Subject: german keyboard, X11R5 and Sparc

I have a Sparc[12] with a german type 4 keyboard.
Has anybody a Patch for X11R5?

Thanks in advance

Heinz-Josef Claes
email: claes@tigger.turbo.uni-essen.de


Newsgroup: comp.windows.x
document_id: 66896
From: brown@ftms.UUCP (Vidiot)
Subject: Re: Printing ASCII 128 and above

In article <C5G1CE.8Is@noose.ecn.purdue.edu> achar@ecn.purdue.edu (Lakshminarayana Achar) writes:
<Could some tell me how to print characters over ASCII 127 on a laser
<printer? After being thrilled on being able to create them on my
<screen, my enthusiasm has somewhat died down due to this setback.

Well, more information is required...

1) What computer are you using?
2) What operating system are you using?
3) What kind of printer are you using?
	a) PostScript?
	b) HP-PCL?

etc.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 66897
From: hess@swt1.informatik.uni-hamburg.de (Hauke Hess)
Subject: XWindows always opaque

Hi,

I wonder if it is possible for a parent window to paint over the area of
its childs. If it is not, then how could it be possible to implement a 
rubberband across multiple xwindows to select the objects that are
displayed one in each window?

Hauke


Newsgroup: comp.windows.x
document_id: 66898
From: pfuetz@igd.fhg.de (Matthias Pfuetzner)
Subject: Available memory to the Xserver. How to get the actual size?

Hello Everybody!

I have a little question:

Due to more features (PEX, Drag&Drop) many applications when linked with for
example Motif 1.2 instead Motif 1.1 need more memory in the Xserver.
X-terminals only have limited memory (normally no swapping possible). So my
question:

Is there a possibility to determine via X protocol calls the size of free
memory available to the Xserver?

So one can determine for example whether to start a PEX application with the
CSS on client side or on server side (when there is enough memory).

Please reply via e-mail, I'll summarize!

Sincerly,
        Matthias

-- 
    Matthias Pfuetzner  |  @work:  +49 6151 155-150  | @home: +49 6151 75717
    6100 Darmstadt, FRG | ZGDV, Wilhelminenstrasse 7 | Lichtenbergstrasse 73
      pfuetzner@igd.fhg.de, pfuetzner@zgdvda.UUCP    |  Keith Packard said:
      R5 is different from R4. That's why we changed the release number :-)

Newsgroup: comp.windows.x
document_id: 66899
From: kssingvo@immd4.informatik.uni-erlangen.de (Klaus Singvogel)
Subject: xswarm enhancement?

Has anybody the xswarm enhacemened to use it with more than one wasp?

Please E-Mail me, because I don't read this group any longer.

Thanks in advance,
	Klaus.
---
Klaus Singvogel   ---   E-Mail: kssingvo@immd4.informatik.uni-erlangen.de

Newsgroup: comp.windows.x
document_id: 66900
From: clark@thinker.csee.usf.edu (Matthew Clark)
Subject: Changing OLWM icons

I was wondering if it's possible to change the window icons OLWM
uses for things like xterm.  Most of the defaults are pretty lame.

Any answer (or where I can find one) would be most appreciated.

Thanks

Matt Clark

Newsgroup: comp.windows.x
document_id: 66901
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Fresco status?


Issue 5 of the X Resource (the published proceedings of the 7th Annual X
Technical Conference) has an paper by Mark Linton and Chuck Price
titled "Building Distributed interfaces with Fresco".

The summary describes Fresco (formerly known as XC++) as an X consortium effort.
Without doing a complete review of the paper, I'll just mention the goals
as stated in one section of the article.  the effort has the goal of providing
the next generation toolkit with functionality beyond the Xt toolkit or Xlib.
Features they want in FRESCO include:

lightweight Objects, such as Interviews Glyphs
Structured Graphics
Resolution independence
Natural C++ programming interface
edit-in-place embedding
distributed user interface components
Multithreading

This by no means captures the complete content of the paper. The Conclusions
sections mentions that a rough draft specification should be available in
early 93, with no schedule (paper presented in Jan 93) for a complete sample
implementation.

I am not affiliated with any of the people or places mentioned above.

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 66902
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: XWindows always opaque



In article <hess.734959172@swt1>, hess@swt1.informatik.uni-hamburg.de (Hauke Hess) writes:
|> Hi,
|> 
|> I wonder if it is possible for a parent window to paint over the area of
|> its childs. If it is not, then how could it be possible to implement a 
|> rubberband across multiple xwindows to select the objects that are
|> displayed one in each window?
|> 
|> Hauke
|> 

If you specify the rootwindow when you are creating your GC. You may 
use Xlib to draw over multiple windows. 
I have an application that does something similar for rubber banding.

 curs_move = XCreateFontCursor (disp_data, XC_crosshair);

 geom_vals.foreground     = blck_pixl ^ grey_dark;
 geom_vals.plane_mask     = AllPlanes;
 geom_vals.line_width     = 0;
 geom_vals.function       = GXxor;
 geom_vals.subwindow_mode = IncludeInferiors;
 evnt_mask= GCForeground | GCPlaneMask | GCLineWidth | GCFunction
                                                     | GCSubwindowMode;
 geom_gcon= XCreateGC (disp_data, root_iden, evnt_mask, &geom_vals);



later I can move the rubber band or bands using the following logic

/**********************************************************************/
 void Tselect::move_bands (int delt_xloc, int delt_yloc)          /****/
stuff deleted ...
            XDrawRectangle (disp_data,   root_iden,  geom_gcon,
                            sele_pntr->rootx, sele_pntr->rooty,
                            sele_pntr->xlnth, sele_pntr->ylnth); undraw old one
            sele_pntr->papax+= delt_xloc;
            sele_pntr->papay+= delt_yloc;
            sele_pntr->rootx+= delt_xloc;
            sele_pntr->rooty+= delt_yloc;
            XDrawRectangle (disp_data,   root_iden,  geom_gcon, 
                            sele_pntr->rootx, sele_pntr->rooty,
                            sele_pntr->xlnth, sele_pntr->ylnth); draw new one
more stuff deleted
  hope this helps


-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 66903
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Motif vs. [Athena, etc.]

In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:
> 
> >I am also concerned by this prevalence of Motif, particularly from the
> >point of view of writing and obtaining free software.  As the Linux and
> >386BSD communities grow, however, I think that Motif will lose some of
> >its grip, at least in the non-commercial marketplace.  
> 
> Ports of Motif to both 386BSD and Linux are available for a fee of about
> $100.  This is cost recovery for the person who bought the rights to
> redistribute.  The activity in both the BSD and Linux news groups
> pertaining to Motif has been high.
> 
> >I just wonder if this will also cause a divergence between commercial
> >and non-commercial software (ie. you will only get free software using
> >Athena or OpenLook widget sets, and only get commercial software using
> >the Motif widget sets).  
> 
> I can't see why.  If just about every workstation will come with Motif
> by default and you can buy it for under $100 for the "free" UNIX
> platforms, I can't see this causing major problems.
> 

  I think you will find that the active Linux and 386BSD communities are
  populated by enthusiasts who would object to paying *any* money for software.
  Otherwise, they would probably have gone for a commercial Unix.
  An important factor in the Linux community is that source code is always
  available (this is probably similar in the 386BSD community, however, I'm not
  really involved there). Many people using Linux like to stay at the cutting
  (bleeding) edge: ie. when kernel patches, C library or compiler patches come
  out, people like to rebuild their entire systems. The prime requirement for
  all Linux software is that it is available under a GNU style public license.
  Hence, Linux software uses either the Athena widgets or XView.
  Individuals may write software requiring Motif, but I doubt it is widely
  adopted.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
document_id: 66904
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Re: Expose Events

Please excuse my previous posting. It was appended to this thread by 
accident.


--> Robert

Newsgroup: comp.windows.x
document_id: 66905
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Re: Expose Events

I posted about this a while ago but without code excerpts noone was 
able to help me.

The problem is that main_win.win is doing fine, but when I create 
detail_win.win, it does not receive it's initial expose events until 
main_win.win receives an event. Here are the relevent calls:

main_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                main_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, main_win.text,
                main_win.text, None, argv, argc, &myhint);
main_win.gc = XCreateGC (mydisplay, main_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
XMapSubwindows (mydisplay, main_win.win);
The event mask for main_win is:
	PPosition | PSize | StructureNotifyMask | ExposureMask| KeyPressMask | 
	EnterWindowMask | LeaveWindowMask;
The flags are
	PPosition | PSize

I then create detail_win.win with the following calls (hints has new values):
detail_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                detail_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, detail_win.text,
                detail_win.text, None, argv, argc, &myhint);
detail_win.gc = XCreateGC (mydisplay, detail_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
Event Mask and flags are identical to main_win's flags and event mask.


If anybody has any idea why the initial expose events of detail_win.win 
are not received until main_win.win receives an event I'd love to hear 
from them. Other that that everything works great so there must be some 
detail I'm overseeing.

Thanks for any tips
---> Robert
rgasch@nl.oracle.com

Newsgroup: comp.windows.x
document_id: 66906
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Delayed Expose Events


I posted about this a while ago but without code excerpts noone was
able to help me.

The problem is that main_win.win is doing fine, but when I create
detail_win.win, it does not receive it's initial expose events until
main_win.win receives an event. Here are the relevent calls:

main_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                main_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, main_win.text,
                main_win.text, None, argv, argc, &myhint);
main_win.gc = XCreateGC (mydisplay, main_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
XMapSubwindows (mydisplay, main_win.win);
The event mask for main_win is:
        PPosition | PSize | StructureNotifyMask | ExposureMask| KeyPressMask |
        EnterWindowMask | LeaveWindowMask;
The flags are
        PPosition | PSize

I then create detail_win.win with the following calls (hints has new values):
detail_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                detail_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, detail_win.text,
                detail_win.text, None, argv, argc, &myhint);
detail_win.gc = XCreateGC (mydisplay, detail_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
Event Mask and flags are identical to main_win's flags and event mask.
 
If anybody has any idea why the initial expose events of detail_win.win
are not received until main_win.win receives an event I'd love to hear
from them. Other that that everything works great so there must be some
detail I'm overseeing.

Thanks for any tips
---> Robert
rgasch@nl.oracle.com

PS: The same message was accidentally appended to the "Expose Events"
thread. Sorry for any confusion caused.


Newsgroup: comp.windows.x
document_id: 66907
From: christy@cs.concordia.ca (Christy)
Subject: X11R5 and Gateway2000

Hi,
     I just got myself a Gateway 4DX-33V and trying to configure
X11R5 for it.  Has anyone done this before ?  More specifically,
I need a correct Xconfig file entry that is set up for my 
graphics card and monitor.  I have a 15" Color CrystalScan 1572FS monitor
and a VESA LOCAL BUS ATI Ultra Pro with 1MB VRAM video card.

Any help will be extremely appreciated.

Thanks in advance.

Please send replies to christy@alex.qc.ca


Christy

Newsgroup: comp.windows.x
document_id: 66908
From: mbell@csc.liv.ac.uk (Mike Bell)
Subject: **** CURSOR SIZE PROBLEMS ****

/* Apologies for those who have read this before but no-one has solved this */
/* one yet so I'm posting again! Sorry :-)                                  */

I'm having problems creating a cursor bigger than 64x64, I'm using Motif 1.1
X11R4 running HP-UX 8.07 - all the functions return valid results but no
cursor appears when the bitmap is bigger than the aforementioned size. I tried

using the following code:

unsigned int w,h;
XQueryBestCursor(XtDisplay(programArea), XtWindow(programArea), 72, 71, &w,
&h);

to return the nearest size to what I require however it returns 72 and 71 as
the width and height respectively. What am I doing wrong? and if not how can I
get round the problem!!

Thanks in advance
Mike

Newsgroup: comp.windows.x
document_id: 66909
From: mark@ardnt1.res.utc.COM (MARK STUCKY)
Subject: Re: Need PD X-Y Plot Package



 "Steve" == Steve Frysinger of Blue Feather Farm <spf@cbnewsl.cb.att.COM> writes:

 Steve> Folks,

 Steve> I'm looking for a Public Domain X-Y plotting package for X.
 Steve> I need basic capabilities (axes, labels, log and linear, &c).
 Steve> It's hard to imagine that someone has not put such a thing
 Steve> together, so I'm hoping to avoid reinventing the wheel.

 Steve> Thanks for any leads!

 Steve> Steve Frysinger

Your might take a look a PLPLOT.  Version 4.99c (actually beta v5.0)
can be found anonymous ftp from hagar.ph.utexas.edu, in the pub/plplot 
directory.  

--Mark

------------------------------------------------------------------------------
| Mark Stucky                         | Email:                               |
| United Technologies Research Center |     mark@ardnt1.res.utc.com          |
| East Hartford, CT.                  |or   mbs@rcinet.res.utc.com           |
| 06108                               |or   mbs@utrc.res.utc.com             |
------------------------------------------------------------------------------


 From the README file of version 4.99c:

 This is the PLPLOT distribution.  PLPLOT is a scientific plotting package for
 many systems, small (micro) and large (super) alike.  Despite its small size
 and quickness, it has enough power to satisfy most users, including: standard
 x-y plots, semilog plots, log-log plots, contour plots, 3D plots, mesh plots,
 bar charts and pie charts.  Multiple graphs (of the same or different sizes)
 may be placed on a single page with multiple lines in each graph.  Different
 line styles, widths and colors are supported.  A virtually infinite number of
 distinct area fill patterns may be used.  There are almost 1000 characters in
 the extended character set.  This includes four different fonts, the Greek
 alphabet and a host of mathematical, musical, and other symbols.  The fonts
 can be scaled to any size for various effects.  Many different output device
 drivers are available (system dependent), including a portable metafile
 format and renderer.

 The PLPLOT package is freely distributable, but NOT in the public domain.
 The PLPLOT source code, except header files and those files explicitly
 granting permission, may not be used in a commercial software package without
 consent of the authors.  You are allowed and encouraged to include the PLPLOT
 object library and header files in a commercial package provided that: (1) it
 is explicitly and prominently stated that the PLPLOT library is freely
 available, and (2) the full copyrights on the PLPLOT package be displayed
 somewhere in the documentation for the package.

 We welcome suggestions on how to improve this code, especially in the form of
 user-contributed enhancements or bug fixes.  If PLPLOT is used in any
 published papers, please include an acknowledgment or citation of our work,
 which will help us to continue improving PLPLOT.  Also, please remember that
 as PLPLOT is not a commercial product, we cannot be expected to offer the
 kind of support that a commercial product may.  There is great interest
 in extending PLPLOT and fixing bugs, but the principal authors can only
 afford to work on it part time.  Improvements will necessarily focus on
 those which help us get our work done.

 PLPLOT is written in C, enabling it to run on many platforms practically
 without modification.  Fortran programs may use it transparently; stub
 routines are provided to handle the C<->Fortran interface without any
 modification of the user program.  C programs are required to include the
 header file "plplot.h"; see the documentation for more details.

 The main documentation for PLPLOT is in the doc/ directory in the form of
 several TeX files; please consult this for additional information ('latex
 plotdoc').  Unfortunately documentation tends to lag actual improvements to
 the code, so don't be surprised if some known features are not explained
 there.  Consult 'Changes.log' to see a list of recent changes.  

 At present, PLPLOT is known to work on the following systems:

	 Unix:	SunOS
		 A/IX 
		 HP-UX
		 Unicos
		 DG/UX
		 Ultrix
		 SysV
		 Linux

	 Amiga/Exec
	 MS-DOS
	 OS/2
	 NeXT

 For more information on how to get or use PLPLOT on your system, see:
  - appendices to the PLPLOT manual
  - system-specific documentation in the appropriate sys/<system> directory.

 To become a subscriber to the PLPLOT mailing list, send a request to
 plplot-request@dino.ph.utexas.edu.

 CREDITS
 -------

 PLPLOT is the result of the effort of many people, so it is impractical to
 list all the contributors.   Those currently supporting and otherwise
 responsible for the package in its present form include:

 Maurice LeBrun
 Please send all comments, flames, patches, etc, to me.  I am responsible for
 all the PLPLOT kernel development as well as most of the work on the
 metafile, xwindow, xterm, postscript, tektronix, and Amiga drivers.

 EMAIL	mjl@fusion.ph.utexas.edu 
 USMAIL	Dr. Maurice LeBrun
	 Institute for Fusion Studies
	 University of Texas
	Austin, TX  78712


Geoff Furnish
Please send questions regarding the MS-DOS and OS/2 drivers to Geoff.

EMAIL	furnish@fusion.ph.utexas.edu
USMAIL	Geoff Furnish
	Institute for Fusion Studies
	University of Texas
	Austin, TX  78712


Tony Richardson
Creator of PLPLOT 2.6b, 3.0
Please send questions regarding installation of PLPLOT on the NeXT to Tony.

EMAIL   amr@egr.duke.edu

USMAIL  Tony Richardson              Tony Richardson
        184 Electrical Engineering   2920 Chapel Hill Road Apt. 41-D
        Duke University              Durham, NC 27707
        Durham, NC 27706
        ph 919-684-5274              ph 919-493-1609

Newsgroup: comp.windows.x
document_id: 66910
From: kerr@ux1.cso.uiuc.edu (Stan Kerr)
Subject: MacX 1.2 color problem

I have a peculiar color problem with MacX, Apple's Macintosh X server.
I'd like to know if others have seen the same problem. It's happened
with the current version (1.2), and with version 1.1.7.
When some types of client windows are displayed, parts of the windows
are in the wrong color; if the window is moved slightly, forcing the server
to repaint it, it is repainted in the correct colors. It doesn't happen
for xterm windows, but has happened for graphic windows and with some
Motif clients.
-- 

Stan Kerr    
Computing & Communications Services Office, U of Illinois/Urbana
Phone: 217-333-5217  Email: stankerr@uiuc.edu   

Newsgroup: comp.windows.x
document_id: 66911
From: jlu@cs.umr.edu (Eric Jui-Lin Lu)
Subject: info wanted: X security holes

Hi *,

Has anyone out there compile a list of X security holes??  If
yes, will you please send me a copy of this??  If this is a
wrong group, please point me to a right one.  Thanks!!

BTW, the list doesn't have to contain the info "How to use
the holes?".  Instead, I need the info of how to detect
the holes, how to seal the holes, and how to monitor the 
activities if possible.

Any info is welcomed.  Thanks!!


  --Eric


-- 
***************************************---       Grad. student          ---*
* Obviousness is always the enemy of  *   \     Jui-Lin Lu (Eric)      /   *
* correctness.  -- Bertrand Russell   *   /      jlu@cs.umr.edu        \   *
***************************************---   Univ. of Missouri-Rolla    ---*

Newsgroup: comp.windows.x
document_id: 66912
From: straw@cam.nist.gov (Mike_Strawbridge_x3852)
Subject: need help with Athena Text Widget

I want to create a single-line Text widget for entering a small amount of text.

I want it to be of fixed width, but have a horizontal scrollbar that scrolls
automatically when the user types in order to keep the insertion point
visible.

In trying to do this I have two problems:

 - The addition of the horizontal scrollbar does not make the text widget
   taller, but instead it seems to cover part of the text.

 - The scrollbar does not scroll automatically as the user types in text
   in order to keep the insertion point visible.

Any help is appreciated.

Mike

-----------------------------------------------------------------------
NAME:   Michael Strawbridge             	TELE: (301) 975-3852
USMAIL: National Institute of Standards 	ARPA: straw@cam.nist.gov
		and Technology            	UUCP: uunet!cme-durer!straw
        Rm. B-146, Bldg. 225
        Gaithersburg, MD  20899

Newsgroup: comp.windows.x
document_id: 66913
From: rim@bme.ri.ccf.org (Robert M. Cothren)
Subject: widget for displaying images

Before I try to teach myself how to write a widget and (perhaps)
re-invent the wheel...

Is there a PD widget that displays (for example) an 8-bit grey-level
image in the same fashion that the Athena Plotter Widget can be used
to display a plot?

--
----Robert M. Cothren, PhD--------------------------rim@bme.ri.ccf.org----
    Department of Biomedical Engineering
    The Cleveland Clinic Foundation                voice: 216 445-9305
----Cleveland, Ohio----------------------------------fax: 216 444-9198----

Newsgroup: comp.windows.x
document_id: 66914
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: DEC pixmap size


In article <1964@igd.fhg.de>, haase@igd.fhg.de (Helmut Haase (Goebel)) writes:

|> I've got a problem concerning the maximum size of X pixmaps in DECwindows.
|> 
|> I am using a DECstation 5000/200 running ULTRIX V4.2 (Rev. 96) System #2
|> and UWS V4.2 (Rev. 272) (DECwindows). Our color display has 1280x1024
|> pixels.
|> 
|> 
|> On other hardware (HP, SGI) I am able to allocate much larger pixmaps.
|> 
|> Did anyone have similar problems before or does onyone know how I can
|> configre my system to allow for larger pixmaps?
|> 
|> Any suggestins are welcome. Please send mail to " haase@igd.fhg.de ".
|> 

DEC does this only for their PX and PXG servers, known as 3D accelerators.
This boards have local offscreen memory which is limited and slow to
handle, thus they set this limit.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 66915
From: dev@hollywood.acsc.com ()
Subject: Circular Motif Widgets


Will there be any support for round or circular widgets in Motif's next
release?. I'd love to have a circular knob widget which could be used
instead of a slider.

Cheers!
DM

Newsgroup: comp.windows.x
document_id: 66916
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: X11R5 and Gateway2000

In article <5914@daily-planet.concordia.ca> christy@cs.concordia.ca (Christy) writes:
>
>Hi,
>     I just got myself a Gateway 4DX-33V and trying to configure
>X11R5 for it.  Has anyone done this before ?  More specifically,
>I need a correct Xconfig file entry that is set up for my 
>graphics card and monitor.  I have a 15" Color CrystalScan 1572FS monitor
>and a VESA LOCAL BUS ATI Ultra Pro with 1MB VRAM video card.
>Thanks in advance.

Didn't your operating system come with X?  SysV usually does as far
as I know.  You'd do best to contact the people from whom you bought
ths OS.  If you're running Linux or something similar, good luck. :)
>
>Please send replies to christy@alex.qc.ca
>
>
>Christy


-- 
                A voice of reason in the midst of LiberalNet.
    Mike Chapman, a higher lifeform trapped in a human body. AKA FourDee.
       Political Correctness is the tool of the mentally disadvantaged. 
           "I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 66917
From: gringort@tantalus.pa.dec.com (Joel Gringorten)
Subject: Re: **** CURSOR SIZE PROBLEMS ****

In article <C5Ky44.L2K@compsci.liverpool.ac.uk>, mbell@csc.liv.ac.uk
(Mike Bell) writes:
> /* Apologies for those who have read this before but no-one has solved
this */
> /* one yet so I'm posting again! Sorry :-)                            
     */
> 
> I'm having problems creating a cursor bigger than 64x64, I'm using Motif 1.1
> X11R4 running HP-UX 8.07 - all the functions return valid results but no
> cursor appears when the bitmap is bigger than the aforementioned size.
I tried
> 
> using the following code:
> 
> unsigned int w,h;
> XQueryBestCursor(XtDisplay(programArea), XtWindow(programArea), 72, 71, &w,
> &h);
> 
> to return the nearest size to what I require however it returns 72 and 71 as
> the width and height respectively. What am I doing wrong? and if not
how can I
> get round the problem!!

Does the workstation you're using have hardware cursor support?  Or does
the server generate a software cursor.  You can generally tell the difference
just by using it.  If the cursor blinks a lot when there's screen activity,
it's probably a software cursor.  If it has a hardware cursor, I think you're
probably battling a bug in HP's X server.  I'm not familiar with any hardware
cursor chips that display cursors greater than 64x64.  It's quite possible
that the server is just echoing your preferred cursor size without actually
checking it.  I vaguely recall that very old MIT server revisions did just 
that.

In reality you're probably stuck with a 64x64 maximum size cursor regardless
of what the server returns.

-joel

Newsgroup: comp.windows.x
document_id: 66918
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: virtual mouse in open look under X11?

Is the virtual mouse simulation in ol{v}wm 3.x available under X11R5?
I've been told I'm setting the right resource, yet it continues not to
work. I'm running olvwm3.3 (or olwm 3) on a Sun 3, X11R5 pl 22.

-D


Newsgroup: comp.windows.x
document_id: 66919
From: jlong@brtph368.BNR.CA (John Long P205)
Subject: Need xman source

   Where can I get xman source?  I would rather get 
xman for an HP 9000/700, but source will do.


Newsgroup: comp.windows.x
document_id: 66920
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Why do I need "xrdb -m" when .Xdefaults unchanged?

I'm having an X resource problem using Brian Wilson's wscrawl 2.0
(a wonderful interactive conferencing program, by the way).  I'm 
running OpenWindows 3.0 on a SPARC 1+ under OS 4.1.3.  I have
the following defaults in my .Xdefaults file (among many others):
  wscrawl.telePointerName:	Kevin
  wscrawl.syncScrollbars:		True
  wscrawl.continuousTelePointer:	True
  wscrawl.showPointerCoordinates:	False
  wscrawl*background:		LightBlue
  wscrawl*swindow*foreground:	yellow
  wscrawl*draw_area_frame*foreground:	Blue
  wscrawl*keyboardFocusPolicy:	pointer

Naturally, I exited the server and restarted it after adding
those lines to .Xdefaults .

If I run the following from a cmdtool (pwd = my home dir.):
  xrdb -m .Xdefaults
and then start up wscrawl, then all those defaults are used
properly.  Wonderful, yes?  Except that I can't get them to be
operative except by *manually* invoking the afore-mentioned
xrdb command.  If I try:
  xrdb .Xdefaults
the defaults "won't take."

So, I tried to change the xrdb call in my .xinitrc file from:
  xrdb  $HOME/.Xdefaults
to:
  xrdb -m $HOME/.Xdefaults

No go.  So I tried adding in:
  xrdb -m /home/kbw/.Xdefaults
at the beginning or end of my .openwin-init file.  Still no go.

Any notions what gives?  Thanks for the help.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
document_id: 66921
From: ajaffe@oddjob.uchicago.edu (Andrew Jaffe)
Subject: Key definitions in Emacs + X

Hi.

I use Emacs and I want to customize my keyboard better.
When I set up stuff in my .emacs with a keymap and define-keys,
I can only access certain of the keys on my X-Terminal's
keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
seem to have either the same or no keycode. I have a feeling
this can't be fixed in emacs itself, but that I need to do some
xmodmap stuff. Can someone help me?

By the way, I've checked the X-FAQ and posted a similar message
to gnu.emacs.help to no response.

Currently I have the following in my .emacs file (inside a 'cond'):

 ((string-match "^xterm" (getenv "TERM"))
;; done by aj 8/92. I don't know what most of this does...
   (defvar xterm-map (make-sparse-keymap) "Keymap for xterm special keys")
   (define-key esc-map "[" 'xterm-prefix)
   (fset 'xterm-prefix xterm-map)
  ;;Keys F1 to F12
   (define-key xterm-map "224z" 'goto-line)        ;F1
   (define-key xterm-map "225z" 'what-line)        ;F2
   (define-key xterm-map "226z" 'rmail)            ;F3
   (define-key xterm-map "227z" 'replace-string)   ;F4
   (define-key xterm-map "228z" 'end-of-line)      ;F5
   (define-key xterm-map "229z" 'kill-line)        ;F6
   (define-key xterm-map "230z" 'yank)             ;F7
   (define-key xterm-map "231z" 'beginning-of-line);F8
   (define-key xterm-map "232z" 'end-of-line)      ;F9
   (define-key xterm-map "192z" 'scroll-down)      ;F11
   (define-key xterm-map "193z" 'scroll-up)        ;F12
 ;;Keys F10, up, down, etc. ??????? can't get the keys 
   (define-key xterm-map "-1z" 'set-mark-command))
)


-- 
Andrew Jaffe                                     ajaffe@oddjob.uchicago.edu
Dep't of Astronomy and Astrophysics, U. Chicago
5640 S. Ellis Ave                                (312) 702-6041
Chicago, IL 60637-1433                           (312) 702-8212 FAX

Newsgroup: comp.windows.x
document_id: 66922
From: klee@synoptics.com (Ken Lee)
Subject: Re: Property problems

In article ( ), wsmart@tay.mcs.dundee.ac.uk (Bill Smart) writes:
> To get the number back, the other client does:
>
>  AppAtom = XInternAtom(display,"ApplicationWindow",True);
>  XGetWindowProperty(display,DefaultRootWindow(display),AppAtom,0,8192,
>                     False,XA_WINDOW,&return_type,&return_format,
>                     &nitems_return,&bar,&return_place);
>
> and appears to get back something valid (just not the right number).
> It always seems to return the same number, regardless of the window
> number stored in the property.

"return_place" is probably incorrect.  It should be a pointer, not an
integer.  XGetWindowProperty() allocates memory, copies the data there,
and returns a pointer to the memory.  You should free the memory when
you're done.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 66923
From: viola@asterix.uni-muenster.de (Jrg Viola)
Subject: Looking for Xt and Xaw

I want to compile Xdvi and later perhaps Emacs 19 on a DEC Ultrix machine with
X installed. Unfortunately, Xt and Xaw libs and headers are missing. How can I
get them without having to compile the whole MIT distribution ? 

Pleasy reply by email to: viola@yukawa.uni-muenster.de

Thanks in advance.
   

Newsgroup: comp.windows.x
document_id: 66924
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Problem with libXmu on SUNOS5.1 and gcc

I am using X11R5patch23 with the R5-SUNOS5 patch posted on export.
I did optionally apply the patch.olit.

libXmu compiles fine .. when I try to use it with clients (i.e. bmtoa and
twm), I get errors ... I can not figure out what is wrong:

gcc -fpcc-struct-return -o twm gram.o lex.o deftwmrc.o add_window.o gc.o list.o twm.o  parse.o menus.o events.o resize.o util.o version.o iconmgr.o  cursor.o icons.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xmu -lXmu -L../.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L../.././extensions/lib -lXext -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl
ld: warning: file ../.././extensions/lib/libXext.so: attempted multiple inclusion of file libXext.so
Undefined                       first referenced
 symbol                             in file
XtAppSetWarningMsgHandler           ../.././lib/Xmu/libXmu.so
XtScreenDatabase                    ../.././lib/Xmu/libXmu.so
XtDisplayStringConversionWarning    ../.././lib/Xmu/libXmu.so
XtErrorMsg                          ../.././lib/Xmu/libXmu.so
XtRealloc                           ../.././lib/Xmu/libXmu.so
XtIsManaged                         ../.././lib/Xmu/libXmu.so
XtMalloc                            ../.././lib/Xmu/libXmu.so
XtGetApplicationResources           ../.././lib/Xmu/libXmu.so
XtOwnSelection                      ../.././lib/Xmu/libXmu.so
XtGetConstraintResourceList         ../.././lib/Xmu/libXmu.so
XtCalloc                            ../.././lib/Xmu/libXmu.so
XtName                              ../.././lib/Xmu/libXmu.so
XtStringConversionWarning           ../.././lib/Xmu/libXmu.so
XtAppSetTypeConverter               ../.././lib/Xmu/libXmu.so
XtDisplayToApplicationContext       ../.././lib/Xmu/libXmu.so
XtGetResourceList                   ../.././lib/Xmu/libXmu.so
XtFree                              ../.././lib/Xmu/libXmu.so
XtDestroyWidget                     ../.././lib/Xmu/libXmu.so
XtGetValues                         ../.././lib/Xmu/libXmu.so
XtWarningMsg                        ../.././lib/Xmu/libXmu.so
XtTranslateCoords                   ../.././lib/Xmu/libXmu.so
XtCvtStringToFont                   ../.././lib/Xmu/libXmu.so
XtWidgetToApplicationContext        ../.././lib/Xmu/libXmu.so
XtWarning                           ../.././lib/Xmu/libXmu.so
XtCreateWidget                      ../.././lib/Xmu/libXmu.so
XtWindowOfObject                    ../.././lib/Xmu/libXmu.so
XtVaSetValues                       ../.././lib/Xmu/libXmu.so
XtAppWarningMsg                     ../.././lib/Xmu/libXmu.so
XtGetSelectionValue                 ../.././lib/Xmu/libXmu.so
XtResolvePathname                   ../.././lib/Xmu/libXmu.so
ld: fatal: Symbol referencing errors. No output written to twm
*** Error code 1



--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 66925
From: m91nen@tdb.uu.se (Nils Engstrom)
Subject: Help: Event propagation


The following problem is really bugging me,
and I would appreciate any help.

I create two windows:

w1 (child to root) with event_mask = ButtonPressMask|KeyPressMask;
w2 (child to w1) with do_not_propagate_mask = ButtonPressMask|KeyPressMask;


Keypress events in w2 are discarded, but ButtonPress events fall through
to w1, with subwindow set to w2.

FYI, I'm using xnews/olvwm.

Am I doing something fundamentally wrong here?

				n


Newsgroup: comp.windows.x
document_id: 66926
From: mjo@iao.ford.com (Mike O'Connor)
Subject: Re: Motif vs. [Athena, etc.]

In article <1993Apr16.133856.21829@nrao.edu> rgooch@rp.CSIRO.AU
(Richard Gooch) writes:

:  really involved there). Many people using Linux like to stay at the cutting
:  (bleeding) edge: ie. when kernel patches, C library or compiler patches come
:  out, people like to rebuild their entire systems. The prime requirement for
:  all Linux software is that it is available under a GNU style public license.
:  Hence, Linux software uses either the Athena widgets or XView.
:  Individuals may write software requiring Motif, but I doubt it is widely
:  adopted.

Shameless plug -- the Xaw3d widgets make Athena a much nicer
alternative than the stock MIT Athena code.

						...Mike

-- 
 Michael J. O'Connor           |  Internet:  mjo@fmsrl7.srl.ford.com
 Ford Motor Company, OPEO      |  UUCP:      ...!fmsrl7!opeo!mjo
 20000 Rotunda, Bldg. 1-3001   |  Phone:     +1 (313) 248-1260
 Dearborn, MI  48121           |  Fax:       +1 (313) 323-6277

Newsgroup: comp.windows.x
document_id: 66927
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Sunview -> X

#
#No doubt this is an old question, but I didn't find the answer in the
#FAQs I could find, so - here goes:
#
#I have a Sunview application that I want to convert to X (OpenLook,
#Motiv, whatever). I remember hearing quite some time ago that there
#are tools to accomplish this task.
#
#	a) is that so?
#	b) are they public domain?
#	c) any good, i.e.
#	d) advantages over reimplementing the interface myself?
#

The simple answer is for you to obtain use XView to do this.  XView is a
one to one replacement for Sunview.  It should already be provided with
you Sun running OpenWindows.   It is also free available as part of the
contrib side of the MIT X11R5 release.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 66928
From: tmcconne@sedona.intel.com (Tom McConnell~)
Subject: Re: Motif vs. [Athena, etc.]


In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:
> berry@durian.citr.uq.oz.au (Andrew Berry) writes:
>
> Ports of Motif to both 386BSD and Linux are available for a fee of about
> $100.  This is cost recovery for the person who bought the rights to
> redistribute.  The activity in both the BSD and Linux news groups
> pertaining to Motif has been high.
> 
> 
> >I just wonder if this will also cause a divergence between commercial
> >and non-commercial software (ie. you will only get free software using
> >Athena or OpenLook widget sets, and only get commercial software using
> >the Motif widget sets).  
> 
> 
> I can't see why.  If just about every workstation will come with Motif
> by default and you can buy it for under $100 for the "free" UNIX
> platforms, I can't see this causing major problems.

  Let me add another of my concerns: Yes, I can buy a port of Motif for "cheap",
but I cannot get the source for "cheap", hence I am limited to using whatever X
libraries the Motif port was compiled against (at least with older versions of
Motif. I have been told that Motif 1.2 can be used with any X, but I have not
seen it myself).

  Currently, I have X11R5 running on eight different unix platforms, of which
only three came with Motif. On those three, I am unable to use the X11R5
libraries to build Motif clients, because I get link errors between the
vendor-supplied port of Motif and my X11R5. I anticipate having this same
problem when X11R6 becomes available.

  The result is that I cannot build Motif clients that rely on X11R5, since I do
not have Motif compiled under X11R5. True, I could buy another port of Motif,
but that sort of ruins the whole idea of "free", doesn't it?

    Cheers,

    Tom McConnell
-- 
 Tom McConnell          |     Internet: tmcconne@sedona.intel.com
 Intel, Corp. C3-91     |     Phone: (602)-554-8229
 5000 W. Chandler Blvd. | The opinions expressed are my own. No one in 
 Chandler, AZ  85226    | their right mind would claim them.

Newsgroup: comp.windows.x
document_id: 66929
From: mishra@cs.sunysb.edu (Prateek Mishra)
Subject: ..Image processing Packages under X..


I am looking for a package that implements standard
image processing functions (reading/writing from
standard formats), clipping, zoom, etc. implemented
under X. Both public domain and private packages
are of interest. The particular application area I
have in mind is medical imaging, but a package meant
for a more general context would be acceptable.

Please reply to me; I will summarize on the net if
there is general interest.

- prateek mishra
mishra@sbcs.sunysb.edu

Newsgroup: comp.windows.x
document_id: 66930
From: klee@synoptics.com (Ken Lee)
Subject: Re: XCopyPlane Question

In article AA04287@neko.CSS.GOV, nancie@neko.CSS.GOV (Nancie P. Marin) writes:
>I am trying to use XCopyPlane to copy a single plane 
>from a depth-8 pixmap to a depth-1 pixmap.  Everytime I
>try this, I see absolutely nothing displayed.  I know there
>is data in the depth-8 pixmap becuase I have checked by doing
>an XCopyArea to the screen.

The code fragment looks reasonable, but is your logic valid?
Just because something appears in an 8 bit deep pixmap doesn't
mean every bit plane contains data.  Did you try each plane?

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 66931
From: hsteve@carina.unm.edu ()
Subject: Re: Changing dpy->max_request_size ?

In article <C55zLo.7wA@world.std.com> oj@world.std.com (Oliver Jones) writes:
<In article <118590@netnews.upenn.edu> mcclenne@dingdong.cis.upenn.edu (nennelccM nodroG) writes:
<>
<>Does anyone out there know how to change the maximum request size for
<>a server 
<
<It is ordinarily set to the highest value the underlying OS can

Yes, and you don't want to change this value if you're running Image type
applications.  


-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
document_id: 66932
From: hsteve@carina.unm.edu ()
Subject: Re: interface to access separate appl.

In article <9304121644.AA27256@expo.lcs.mit.edu> DBOHDAL@JAGUAR.ESS.HARRIS.COM writes:
<Dear Xperts:
<
<   Here's my problem:  I am designing several related X 
<applications (each one is a separate executable) and  I'd like 
<to build a single control window that would allow the user to 
<access each application (instead of having to locate the correct
<icon). The Control Window would contain a button for each 
<application and by pressing it, the application's main window
<would appear.  I would also like to use the application's button
<as a color status indicator.  Has anyone done this or have any
<good ideas??  Because these are all separate executables this
<seems like a communications nightmare to me, but maybe I'm
<wrong.  I'd appreciate any ideas! I'm using X11R5 and Motif 1.2.1.
<
<Thanks,
<dbohdal@jaguar.ess.harris.com

I can think of two different methods that you could try. 1) use fork and 
execv 2) use the "system" called in your program.  I'm assuming that you're
running under the Unix OS of course.

-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
document_id: 66933
From: pmg@mdavcr.mda.ca (Phil Gray)
Subject: Opinions on Galaxy ?

We are currently evaluating GUI builders, initially for Motif but with
a wish to be flexible & portable.  We have been through the popular
names (UIMX, TeleUSE, XVT etc) and have been very impressed with what
we have seen of Galaxy from Visix.  I have spoken to current users
from a list supplied by Visix (happy users as you would expect), and
seen favourable comments on the net.  However, since it is fairly
expensive to get an evaluation license from Visix, I would like to
query the net for any negative experiences with Galaxy.  Did anybody
evaluate them and prefer another tool or use Galaxy and regret it or
find any mis-features ?

advTHANKSance,

Phil

-- 
--------------------------------------------------------------------------
Phil M Gray                       Voice: (604) 278-3411
MacDonald Dettwiler               Fax:   (604) 278-2117
13800 Commerce Parkway
Richmond, BC, Canada  V6V 2J3     {pmg@mda.ca | ..!uunet!van-bc!mdavcr!pmg}

Newsgroup: comp.windows.x
document_id: 66934
From: dev@hollywood.acsc.com ()
Subject: Keyboard Focussing

I have two Motif Widgets. I would like to control one of them via the
keyboard and the other with the mouse. I set the keyboard focus on the first
widget, but as soon as I click the mouse on the second one, I lose the
keyboard focus on the first one. 

Could some kind soul show me how to do this?

Thanks

DM
dev@hollywood.acsc.com

Newsgroup: comp.windows.x
document_id: 66935
From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Subject: Re: Key definitions in Emacs + X

In article <1993Apr16.183525.25197@midway.uchicago.edu> ajaffe@oddjob.uchicago.edu (Andrew Jaffe) writes:
>I use Emacs and I want to customize my keyboard better.
>When I set up stuff in my .emacs with a keymap and define-keys,
>I can only access certain of the keys on my X-Terminal's
>keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
>seem to have either the same or no keycode. I have a feeling
>this can't be fixed in emacs itself, but that I need to do some
>xmodmap stuff. Can someone help me?

It is actually worse than you think.  I have the same problem, and have
given up.  Emacs has an internal table (somewhere!) which defines what
keys it will accept, and this table is system-dependent.  I use a Sun
from my HP, and cannot get 'shift PageUp' to work - xmodmap is not
sufficient, or at least I haven't worked out how to make it work.
However, I CAN get ordinary 'PageUp' and 'shift CursorRight' to work,
and I do some customised things with them.

Note that the Emacs on my HP has no problem, and I am using exactly
the same xmodmap and Emacs configuration.


Nick Maclaren
University of Cambridge Computer Laboratory,
New Museums Site, Pembroke Street,
Cambridge CB2 3QG, England.
Email:  nmm1@cus.cam.ac.uk
Tel.:   +44 223 334761
Fax:    +44 223 334679

Newsgroup: comp.windows.x
document_id: 66936
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: Problem with libXmu on SUNOS5.1 and gcc

In article <1qmt3i$66io@ep130.wg2.waii.com>, dla@se05.wg2.waii.com (Doug Acker) writes:
|> I am using X11R5patch23 with the R5-SUNOS5 patch posted on export.
|> I did optionally apply the patch.olit.
|>
|> libXmu compiles fine .. when I try to use it with clients (i.e. bmtoa and
|> twm), I get errors ... I can not figure out what is wrong:
|>
|> gcc -fpcc-struct-return -o twm gram.o lex.o deftwmrc.o add_window.o gc.o list.o twm.o  parse.o menus.o events.o resize.o util.o version.o iconmgr.o  cursor.o icons.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xmu -lXmu -L.|> ./.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L../.././extensions/lib -lXext -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl
|> ld: warning: file ../.././extensions/lib/libXext.so: attempted multiple inclusion of file libXext.so
|> Undefined                       first referenced
|>  symbol                             in file
|> XtWindowOfObject                    ../.././lib/Xmu/libXmu.so
|> ld: fatal: Symbol referencing errors. No output written to twm
|> *** Error code 1

The problem was that SunPost411Ld was not defined.

Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 66937
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: xterm build problem in Solaris2.1

..continuing on my build problems, I got stuck here build xterm...

gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw -lXaw -L../.././lib/Xmu -lXmu -L../.././lib/Xt -lXt -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl -ltermcap
Undefined                       first referenced
 symbol                             in file
index                               /usr/ucblib/libtermcap.a(termcap.o)
rindex                              /usr/ucblib/libtermcap.a(termcap.o)
ld: fatal: Symbol referencing errors. No output written to xterm
*** Error code 1
make: Fatal error: Command failed for target `xterm'

Any clues for help?

--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 66938
From: wsanders@spectrum.xerox.com (bob hosid r382-423)
Subject: Dynamic changing of the title bar

I am looking for a program I can insert into some code that will allow the title bar to be changed on a window dynamicly.  If one already is out there, I would appreciate a location so I don't have to create this from scratch.

Thanks in advance.
Bob Hosid:dloslv300:xerox

Newsgroup: comp.windows.x
document_id: 66939
Subject: MIT R5 on Sun with Rasterops TC Colorboard
From: mark@comp.vuw.ac.nz (Mark Davies)


Is it possible to run an MIT R5 based Xserver on a Sun with a Rasterops TC
Colorboard (24bit board)?  I have the Xsun24 patches for supporting sun's
24bit frame buffers but does the rasterops appear as if its a cgtwelve or
something else?  I know nothing about the rasterops other than we might be
buying one to put in an IPX.

cheers
mark

Newsgroup: comp.windows.x
document_id: 66940
From: henne@math.ias.EDU (Leslie R. Henne)
Subject: Re: SVR4.x binary dists (was Re: RFD: to create comp.unix.sys5.univel)


In article <1993Apr15.160635.28022@thunder.mcrcim.mcgill.edu>, der Mouse wrote:

> You seem to be a little confused.  The socialistic hackers who yell
> about proprietary software are hardly enamored of Motif, which is just
> as objectionable to that mindset as NeWS is. 

> If I might wear my socialistic hacker hat for a moment, I tar NeWS and
> Motif with the same brush, and that brush is not technical. 

Begging everyone's pardon, I was not slamming Motif, nor was I necessarily 
plugging/flaming the two.  I was responding to the sweet blithe statement in:
 <rick.734610425@digibd> from rick@digibd.digibd.com (Rick Richardson)

rick> This is one area where Microsoft NT has a big advantage.  Since
rick> they control the whole show, there are no issues like this where
rick> licensees create incompatible defacto standards.

This happy statement shows a mindset that inventors and companies have when
they are pleased with something that works, and they believe that others will
also be happy to use it.  I remember when _SunView_ was hot stuff (and am not,
by that statement, endorsing Sun and its products, this is just my experience),
and when OpenWindows became hot stuff, that was when I started hearing, as
mentioned before, the "socialistic masses" that were bent on destroying 
_anything_ that was deemed proprietary, including OpenWindows.  I mentioned
Motif in the same breath, because that is what Sun has decided to turn its
attention to, not because I hate it.  Mr. Richardson's position, I believe, is
a healthy one, and I am sure that the seething hackers will soon try to
flame and destroy NT, if it ever shows up, wanting instead everything to be
free, and then complaining when there is no organized structure and there are 
no de facto standards.

It was just a vent for frustration brought on by prevailing winds.

Mrs. Henne


Newsgroup: comp.windows.x
document_id: 66941
From: nenad%saturn@sdsu.EDU (Nenad Marovac)
Subject: C++ and C for OS/2


Hi folks,
]
Does anybody know for a good 32-bit C++/C compiler for OS/2 that supports
OS/2 API and Microsoft windows (maybe Windows NT)?

thanx

N. Marovac, SDSU

Newsgroup: comp.windows.x
document_id: 66942
From: fwr8bv@fin.af.MIL (Shash Chatterjee)
Subject: xrolo/SPACRC/SunOS4.1.1/audio

Could some one please send me (or tell me where to ftp from) the patches required
 for xrolo so that  I can compile-in the SPARCStation phone-dialing feature?

I am using SunOS  4.1.1, and therefore don't have "multimedia/libaudio.h" or 
"multimedia/audio_device.h" and associated functions.

Just in case, our mail gateway only accepts msgs < 45Kb.

Thanks in advance,
Shash.


+-----------------------------------------------------------------------------+
+ Shash Chatterjee                           EMAIL:  fwr8bv@fin.af.mil        +
+ EC Software                                PHONE:  (817) 763-1495           +
+ Lockheed Fort Worth Company                FAX:    (817) 777-2115           +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+



Newsgroup: comp.windows.x
document_id: 66943
From: adrian@ora.COM (Adrian Nye)
Subject: imake book review


Thanks for the many offers to review this book.

If you received a review copy, please return it
as soon as possible.  I had a system crash and
lost the list of people I sent it to!

Thanks

Adrian Nye
O'Reilly and Associates
adrian@ora.com

Newsgroup: comp.windows.x
document_id: 66944
From: d3e758@bucky.pnl.gov (JE Pelkey)
Subject: Multi-screen apps and window managers



I am working on a project to provide an emergency management
information system.  In keeping with more classic command and
control type systems, we are considering developing a dual screen monitor
system in order to provide a status board on it's own monitor.  
I have a number of X level questions regarding this:

(We are devloping on Unix systems using X/Motif. Platform will be 
predominantly Sun's, probably with ports to RS/6000 as well).

I am assuming the standard dual monitor systems are configured
such that we are talking about one X display and multiple screens,
and not multiple X displays.   Given this:

	- Is changing input focus from one screen to the other as simple
	as tracking your mouse from one screen to the other?  There's
	nothing special that needs to be done to shift focus between
	screens?

	- Do I have to run separate window managers on the separate
	screens or are there multiscreen window managers out there?
	What are they; who sells them...

	- Is a multi-screen window manager the only way I can grab a
	window frame and move a window from one screen to the next?

	- Is there any way for the application to transparently see
	multiple screens as one logical x-y plane, or does the hardware
	only provide for each screen to start at 0,0?

	- Any thoughts on the difficulties involved with designing a
	system capable of using either multiple screens or a single
	screen (perhaps running a virtual window manager to simulate
	multiple screens instead)?  
	I am assuming that this is not a major issue - that I can rely
	on providing config files which will specify for each
	configuration the screen placement of each window in the
	application.  Any thoughts or suggestions from past experience
	are more than welcome.


========================================================================
Jo Pelkey                                   Phone: (509)375-6947
Battelle Pacific Northwest Labs             Fax:   (509)375-3641
Mail Stop K7-22                             Email: je_pelkey@pnl.gov
P.O. Box 999
Richland, WA  99352
========================================================================


Newsgroup: comp.windows.x
document_id: 66945
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Ideal Operating System (Was: DEATH BLOW TO UNIX)

G'Day

Windows NT is a step forward, but not by much. I guess for DOS users who
think multi-tasking is really _neat_ (add puke here) and are overjoyed to 
be able to use more than 64K of memory, its a major improvement. For Windows
users its more like an upgrade with facilities most Unix users take for 
granted. Most of  Windows users only use PCs for text processing or running 
3rd-party applications anyway so the operating system features are not even 
a real issue. My ideal operating system:

	Binary compatible across all plaforms. It should recognize
	binaries and configure on the fly, so I don't have to have
	bin/Mac bin/DOS bin/Dec bin/Sun bin/HP etc...

	Multi-CPU. So I can use the CPUs on my PC and W/S and Mac 
	and Transputers and DSPs. I don't know a single site which 
	has gone for a single vendor. I am not going to trade-in 
	80Mflops per H1 transputer or ultra-fast FFT on DSP chips.
	Note NT runs on Symmetric multi-CPU systems.

	Built-in portable GUI/Graphics tools. You can call DrawButton 
	or DrawLine and it does the same thing no matter what platform 
	or display. It should also translate graphics commands on-the-fly.
	so I can use PC graphics S/W on my workstation and X software on 
 	my PC. I think GUIs are not just nice to have but essential.

	Configurable front-end. So you can make it look like Unix or DOS
	or NT or OS/2, and run shell scripts or command/BAT files.

	Object oriented. So I can program easily under it and not have
	to re-invent the wheel if the networking is not up to scratch
	or my application needs to access source/object code on the fly.

In other words it should have some AI capability. That and a tight, clean
kernel so you can actually understand it. Anyone know of something like this ?

	adios
	     Ata <(|)>.
-- 
| Mail          Dr Ata Etemadi, Blackett Laboratory,                          |
|               Space and Atmospheric Physics Group,                          |
|               Imperial College of Science, Technology, and Medicine,        |
| Internet/Arpanet/Earn/Bitnet atae@spva.ph.ic.ac.uk or ata@c.mssl.ucl.ac.uk  |
| Span                              SPVA::atae       or     MSSLC:atae        |


Newsgroup: comp.windows.x
document_id: 66946
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Please Ignore [Ideal Operating System (Was: DEATH BLOW TO UNIX)]

Whoops!! Wrong group. Soooooooooooooooorry folks..

Newsgroup: comp.windows.x
document_id: 66947
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3
From: nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros)

In article <1993Apr2.212405.5213@head-cfa.harvard.edu> dmm@head-cfa.harvard.edu (David Meleedy) writes:

>   	   I've been trying to compile X11R5 patchlevel 23 on a Sun Sparc
>      IPX using SunOS_4.1.3, and gcc 2.3.3.
>   
>   	   The problem occurs during the initial "make World".  When
>      it gets up to compiling the standard X clients, it can't seem to find
>      some of the libraries.  Right now we highly suspect the program "ld"
>      which was updated for 4_1_3.
>   

    Yip, we had the same problem; the only fix we found was to link static
some of the clients, ( btw, we used cc). :-(.

--
/+=========================================++================================+\
||Francisco J. Ballesteros [a.k.a. Nemo]   ||  email: nemo@clip.dia.fi.upm.es||
||org:  Computer Science, CLIP lab.        ||  phone: +34 1 336-7448         ||
||      Campus Montegancedo s.n. U.P.M.    ||  ___         ___               ||
||      Boadilla del Monte, Madrid, Spain. ||  \\   \\   o \\_)  \   _ \__   ||
\+=========================================++== \\__ \\__\\ \\ == \_(_\_\_) =+/

Newsgroup: comp.windows.x
document_id: 66948
From: ten0772@eafs000.ca.boeing.com (Timothy E. Neto)
Subject: Re: X-server multi screen

rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:

>Hi Xperts, some simple questions for you:

>I've seen a lot of different terms, which seem to mean the same thing.
>Who can give an exact definition what these terms mean:

>	-) multi-screen
>	-) multi-headed
>	-) multi-display
>	-) X-Server zaphod mode

>Is there a limit how many screens/displays a single server can handle
>(in an articel a read something about an upper limit of 12) ?

>How is the capability called, if I want to move the cursor from one
>screen/display to another.

>Any hints welcome.

>Thanks, rainer.
>-- 
>Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
>ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
>Penzingerstr. 76                 |
>A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

As to how many clients may be display on a server, I believe the limit
would be how much memory is available to your server or allocated by the
server.


-- 
Indecision is the key to | Timothy E. Neto  (206) 655-5190              1   000
flexibility, & you can't | Of B & T's Gadget & Widget Works             1  0. .0
E-Mail God.              | Flight Systems Lab, Boeing Comm. Aircraft    1  0 _ 0
My ideas not Boeing's    | Internet: ten0772@aw401.fsl.ca.boeing.com    1   000

Newsgroup: comp.windows.x
document_id: 66949
From: joel@zodiac.z-code.COM (Joel Reymont)
Subject: Motif maling list

Hi, all!

Anyone knows of a Motif mailing list? I don't have access to network news
and there is no longer a motif list at alfalfa.com.

Thanks, Joel.

-- 
-----------------------------------------------------------------------------
Joel Reymont    !   Z-Code Software Corporation    ! e-mail: joel@z-code.com 
-----------------------------------------------------------------------------
4340 Redwood Hwy, Suit B.50, San Rafael, CA 94903
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 66950
From: Markku.Savela@tel.vtt.fi (Markku Savela)
Subject: Raster and Text Widgets (View only!), Xew-1.3 version


Version 1.3 of Xew widgets is available at

	export.lcs.mit.edu: contrib/Xew-1.3.tar.Z
	export.lcs.mit.edu: contrib/Xew-1.3.README

For better details, check the README. (For extensive details, you have
to with Xew-1.1.ps.Z, still haven't had time to update this one).

No new functionality has been added since 1.2 version. Raster widget
handles now expose events slightly more intelligently than before
(really had to do this when I added a simple program that uses X11R5
Athena Porthole and Panner widgets). The program demo/viewer.c is
very simple demonstration of panner/porthole usage (copied
from'editres' actually :-)
--
Markku Savela (savela@tel.vtt.fi), Technical Research Centre of Finland
Telecommunications Laboratory, Otakaari 7 B, SF-02150 ESPOO, Finland

Newsgroup: comp.windows.x
document_id: 66951
From: fkk@stasys.sta.sub.org (Frank Kaefer)
Subject: Re: xterm build problem in Solaris2.1

dla@se05.wg2.waii.com (Doug Acker) writes:

|..continuing on my build problems, I got stuck here build xterm...

|gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw

Newsgroup: comp.windows.x
document_id: 66952
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: a question on window ids

In article <wnk.734824081@aquifer.geology.uiuc.edu>, wnk@aquifer.geology.uiuc.edu (Walter Kreiling) writes:

> Given a program running on a workstation with an X based window
> system, how can one pop the window in which it is running to the top.
> By window I mean the terminal window from which it was invoked.

One can't.  The application may not have been started from a terminal
emulator; if it was, the terminal emulator may not still exist, and if
it does it may be in no condition to be "pop[ped] to the top" (eg, it
may be iconified).  And even if you can, it may not do what you want -
consider a virtual-root window manager like tvtwm, with the relevant
window in a portion of the virtual desktop that's outside the real
desktop.

Some (but not all) X terminal emulators provide environment variables
giving a window ID.  Even if such a thing is present in the
environment, it may not be what you want; it may correspond to a window
on a different server, for example.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
document_id: 66953
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: X-server multi screen

In article <1qlop6$sgp@sun3.eeam.elin.co.at>, rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:

> I've seen a lot of different terms, which seem to mean the same
> thing.  Who can give an exact definition what these terms mean:

> 	-) multi-screen
> 	-) multi-headed
> 	-) multi-display
> 	-) X-Server zaphod mode

As applied to servers, the first three are fuzzy terms.  "multi-headed"
tends to be used for any system with multiple monitors, sometimes even
multiple screens even if they're multiplexed onto the same monitor (eg,
a Sun with a cg4 display).  "multi-screen" and "multi-display" would,
if taken strictly, mean different things, but since the strict meaning
of "multi-display" would refer to a system with multiple keyboards and
pointers, when it's used it probably refers to the same thing
"multi-screen" would: a system that provides multiple Screens.

"zaphod" is a term applied to the way the MIT server switches the
pointer from one screen to another by sliding it off the side of the
screen.

> Is there a limit how many screens/displays a single server can handle
> (in an articel a read something about an upper limit of 12) ?

There is a protocol limitation that restricts a given Display to at
most 255 Screens.  I know of no server that handles multiple Displays
on a single invocation, unless possibly my kludges to the R4 server can
be looked upon as such; on a TCP-based system there is necessarily a
limit of 65535 Displays per machine, but this is not a limitation
inherent to X.

What you read was most likely talking about a limit in some particular
implementation (probably the MIT one).  If it claimed there was a limit
of 12 inherent to X, the author of the article had no business writing
about X.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
document_id: 66954
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: Creating 8 bit windows on 24 bit display.. How?

In article <1993Apr16.093209.25719@fwi.uva.nl>, stolk@fwi.uva.nl (Bram) writes:

> I am using an X server that provides 3 visuals: PseudoColor 8 bit,
> Truecolor 24 bit and DirectColor 24 bit.

Lucky dog... :-)

> A problem occurs when I try to create a window with a visual that is
> different from the visual of the parent (which uses the default
> visual which is TC24).

> In the Xlib reference guide from 'O reilly one can read in the
> section about XCteateWindow, something like:
>     In the current implementation of X11: When using a visual other
>     than the parent's, be sure to create or find a suitable colourmap
>     which is to be used in the window attributes when creating, or
>     else a BadMatch occurs.

> This warning, strangely enough, is only mentioned in the newer
> editions of the X11R5 guides.

It applies with equal force to earlier versions.  Presumably only
recently did the author(s) decide it was important enough to mention.
The necessity it refers to has always been there, but it's been
implicit in the way CreateWindow requests default some attributes of
the new window.

> However, even if I pass along a suitable colourmap, I still get a
> BadMatch when I create a window with a non-default visual.

>   attr.colormap = cmap;
>   win = XCreateWindow(
[...]
>           CopyFromParent,       /* border width */
>           8,                    /* depth */
>           InputOutput,          /* class */
>           vinfo.visual,         /* visual */
>           CWColormap,
>           &attr
>         );

This is because the warning you read is incomplete.  You have to
provide not only a colormap but also a border.  The default border is
CopyFromParent, which is not valid when the window's depth doesn't
match its parent's.  Specify a border-pixmap of the correct depth, or a
border-pixel, and the problem should go away.

There is another problem: I can't find anything to indicate that
CopyFromParent makes any sense as the border_width parameter to
XCreateWindow.  Your Xlib implementation probably defines
CopyFromParent as zero, to simplify the conversion to wire format, so
you are unwittingly asking for a border width of zero, due to the Xlib
implementation not providing stricter type-checking.  (To be fair, I'm
not entirely certain it's possible for Xlib to catch this.)

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
document_id: 66955
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: Available memory to the Xserver. How to get the actual size?

In article <1965@igd.fhg.de>, pfuetz@igd.fhg.de (Matthias Pfuetzner) writes:

> Is there a possibility to determine via X protocol calls the size of
> free memory available to the Xserver?

No.  Even if you could, the answer could be out of date even before you
get it (even if you grab the server, it could be taken up by buffering
user actions).  You should just try to do whatever you want; a BadAlloc
error is your indication that insufficient server memory is available.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
document_id: 66956
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: XWindows always opaque

> Distribution: comp

Please don't misuse newsgroup hierarchy names as distributions.

In article <hess.734959172@swt1>, hess@swt1.informatik.uni-hamburg.de (Hauke Hess) writes:

> I wonder if it is possible for a parent window to paint over the area
> of its childs.

Yes, but it's not an attribute of the window; it's an attribute of the
GC used to do the drawing.  Set the subwindow-mode to IncludeInferiors
rather than the default ClipByChildren.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
document_id: 66957
From: maf@dtek.chalmers.se (Martin Forssen)
Subject: Re: german keyboard, X11R5 and Sparc

claes@polaris (Heinz-Josef Claes) writes:
>I have a Sparc[12] with a german type 4 keyboard.
>Has anybody a Patch for X11R5?

 export.lcs.mit.edu:/pub/sunkbd..930314.tar.Z

	/MaF

--
Martin Forssen: maf@dtek.chalmers.se or maf@math.chalmers.se
System administrator at math and dtek at Chalmers univ. of technology 

Newsgroup: comp.windows.x
document_id: 66958
From: A.F.Savage@bradford.ac.uk (Adrian Savage)
Subject: Searching for xgolf

I recently found the file xgolf on a German ftp site
(reseq.regent.e-technik.tu-muenchen.de) but unfortunately the shar file
was incomplete and the author's email address given in the readme file
(markh@saturn.ee.du.edu) does not work.

Can anyone assist by giving the location of a full version of this (or
any other golf game for X) game, or a way of contacting the author?

Please reply by email if you can help

Ade
--
Adrian Savage, University of Bradford, UK. Email: a.f.savage@bradford.ac.uk

Newsgroup: comp.windows.x
document_id: 66959
From: shite@sinkhole.unf.edu (Stephen Hite)
Subject: Re: Searching for xgolf

   The xgolf program was an April Fool's joke <sigh>.

Steve Hite
shite@sinkhole.unf.edu

Newsgroup: comp.windows.x
document_id: 66960
From: wolfson@ll.mit.edu (Harry Wolfson)
Subject: Re: MacX 1.2 color problem

Stan Kerr writes:
 >When some types of client windows are displayed, parts of the windows
 >are in the wrong color; if the window is moved slightly, forcing the server
 >to repaint it, it is repainted in the correct colors. It doesn't happen

I have the exact same problem when running Hewlett Packard's Microwave Design
System (MDS) from an HP 380 unix box and running MacX 1.2, Sys 7.0.1*.
Normally, MDS draws a window with a deep blue backround, but occasionally
it becomes a light blue and all the text, etc, inside the window become
"washed out" (nearly invisible). I thought that it was just something
brain dead that I was doing or a subtle conflict with another app or INIT.

By slightly moving the window, and forcing a re-draw, the colors get corrected.

Harry Wolfson
wolfson@ll.mit.edu

Newsgroup: comp.windows.x
document_id: 66961
From: bash@tware.com (Paul Bash)
Subject: Re: X11R5 and Open Look

In article <1993Apr12.220600.10691@nrao.edu> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>In article <1993Apr12.155820.82@aedc-vax.af.mil>, bonds@aedc-vax.af.mil writes:
>> I am reposting this because I am not sure my first post ever made it out.
>> I have built and installed X11R5 on my SPARCstation 2.  My aim is to run
>> the MIT X server but retain the OpenLook Window Manager.  I am sure this
>> is not uncommon, but I just want to make sure that I change and/or delete
>> everything that I need to.  For instance, I can start xdm in rc.local, but
>> how do I get rid of Xnews?
>> 
>
>  The OpenLook window manager source is available on the MIT contrib tapes
>  or from  export.lcs.mit.edu  .I would suggest building this too, rather than
>  using the version from OpenWindows. It is  olwm  v3.
>

I would suggest skipping olwm and getting olvwm instead. This version of the
olwm window manager implements a virtual desktop that I find really handy even
on large monitors. 

This version is also available at export.lcs.mit.edu:/contrib/olvwm3.tar.Z.
The README file also suggest getting the files in /contrib/xview3.

In my case, I built the X Server first, Xview second, then olvwm. All of these
were installed into /usr/X5. Once I verified the server worked correctly,
I happily issued "rm -rf /usr/openwin/*".

Using gcc 2.3.3 to build all of the above resulted in a windowing system that 
is, for all intents and purposes, identical to OpenWindows 3.0 and that is     
incredibly faster. There is a bit of tweaking you will have to do if you want
things to work _exactly_ like OpenWindows, but not much. 

-- 
Paul Bash                                                   Techware Design 
bash@tware.com                                              Boulder, CO  U.S.A.

Newsgroup: comp.windows.x
document_id: 66962
From: srivasta@pilgrim.umass.edu (Manoj Srivastava)
Subject: [REQUEST] Need tvtwm sources with mods from R. J. Caley


Hello, 

	way back in the mists of time, I had a set of patches written
by Richard Caley (I believe to the standars distribution, patch level
6) which added regular expressions in the .tvtwmrc file, multiple icon
regions, squeezable icons, and f.deleteordestroy function. I still
have the patches, however, I can no longer find the sources to which
they applied ;-). 

	I'd appreciate if some kind soul could send me a pointer to
where I could find the sources. Has anyone updated the patches for R5?
(Richard? are you out there? pretty please?)

	Thanks in advance.

		manoj

Newsgroup: comp.windows.x
document_id: 66963
From: dick@ahold.nl (Dick Heijne)
Subject: Is TEK quitting Xterm activities ???

I caught up a mailmessage from an NCD guy, who stated that Tek
might be quitting it's X terminal activities and would be looking
for an interested buyer.
Since the source of this message is NCD, THIS MIGHT ONLY BE NASTY
GOSSIP !!!
Can anyone say more about this??

Dick.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
document_id: 66964
From: dick@ahold.nl (Dick Heijne)
Subject: Re: xdm and Solaris2.1

The XDM on Solaris 2.1 *WAS* broke. Since two weeks, Sun distributes
a patched release, which works fine (supports /etc/shadow and all).
We have it up and running ever since and have not experienced any
problems. Call your local Sun rep.

Dick.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
document_id: 66965
From: dick@ahold.nl (Dick Heijne)
Subject: Re: xterm build problem in Solaris2.1

dla@se05.wg2.waii.com (Doug Acker) writes:
: ..continuing on my build problems, I got stuck here build xterm...
: 
: gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw -lXaw -L../.././lib/Xmu -lXmu -L../.././lib/Xt -lXt -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl -ltermcap
: Undefined                       first referenced
:  symbol                             in file
: index                               /usr/ucblib/libtermcap.a(termcap.o)
: rindex                              /usr/ucblib/libtermcap.a(termcap.o)
: ld: fatal: Symbol referencing errors. No output written to xterm
: *** Error code 1
: make: Fatal error: Command failed for target `xterm'
: 
: Any clues for help?

Either:
	* Add -lucb -lelf to the list
    or
	* #define index() and rindex() to strchr() and strrchr() respectively.
	  Both use same args. Former are bsd, latter are SysV.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
document_id: 66966
From: Wilson Swee <ws8n+@andrew.cmu.edu>
Subject: compiling on sun4_411

Hi,
    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
undefined ld errors:
_sin
_cos
_pow
_floor
_get_wmShellWidgetClass
_get_applicationShellWidgetClass

The following libraries that I linked it to are:
-lXaw -lXmu -lXt -lXext -lX11

The makefile is generated off an imake template.
Can anyone give me pointers as to what I'm missing out to compile on
a sun4_411?

Thanx
Wilson



Newsgroup: comp.windows.x
document_id: 66967
From: slg3x@cc.usu.edu
Subject: X Color bitmap editor needed

Hi Folks,

Does anybody know where I can find the "Color" bitmap editor
around the public sites? Any information I do appreciate that.


C.Chang

Newsgroup: comp.windows.x
document_id: 66968
From: grp@Unify.com (Greg Pasquariello)
Subject: Re: Anyone have experience with Visix' Galaxy?

In article <C56M19.17r@world.std.com>, grier@world.std.com (The Political Crony) writes:
> 
> The title line says it. The Galaxy package was just recently announced, and
> includes a GUI-builder and portable toolkit. I'm interested in any
> feedback from those who may have used it thus far.

We've been using it for a year on Unix (Sun and HP) and Windows platforms.  In my
opinion, it is the best toolkit on the market.  It supports a rich API to a high
level IPC mechanism, file system abstraction, memory management, command driven
application development, drawing, geometry management, and, oh yeah, Open Look,
Motif, MS-Windows and Mac (at the flip of a switch).

> 
> Thanks
> Jim Grier
> grier@world.std.com
> 

-- 

--
Greg Pasquariello   	grp@unify.com 	        Hobnobbing with the ancients
Unify Corporation	   or		       
(916) 928-6258	    ...!uunet!unify!grp

Newsgroup: comp.windows.x
document_id: 66969
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Is it just me, or is this newsgroup dead?

I've gotten very few posts on this group in the last couple days.  (I
recently added it to my feed list.)  Is it just me, or is this group
near death?
--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
document_id: 66970
From: schneck@Physik.TU-Muenchen.DE (Bernhard Schneck)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros) writes:

>>   	   The problem occurs during the initial "make World".  When
>>      it gets up to compiling the standard X clients, it can't seem to find
>>      some of the libraries.  Right now we highly suspect the program "ld"
>>      which was updated for 4_1_3.
>>   

>    Yip, we had the same problem; the only fix we found was to link static
>some of the clients, ( btw, we used cc). :-(.

Or use a SunOS 4.1.1 ld.

\Bernhard.

Newsgroup: comp.windows.x
document_id: 66971
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: xterm build problem in Solaris2.1

>>>>> On 16 Apr 1993 23:58:27 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com

	Doug> ..continuing on my build problems, I got stuck here build xterm...


	Doug> Undefined                       first referenced
	Doug>  symbol                             in file
	Doug> index                               /usr/ucblib/libtermcap.a(termcap.o)
	Doug> rindex                              /usr/ucblib/libtermcap.a(termcap.o)
	Doug> ld: fatal: Symbol referencing errors. No output written to xterm


Actually .. the problem is that you have to build with LD_LIBRARY_PATH
unset as well as LD_RUN_PATH.
--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 66972
From: welch@xcf.Berkeley.EDU (Sean N. Welch)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

In article <schneck.735153129@Physik.TU-Muenchen.DE> schneck@Physik.TU-Muenchen.DE (Bernhard Schneck) writes:
>nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros) writes:
>
>>>   	   The problem occurs during the initial "make World".  When
>>>      it gets up to compiling the standard X clients, it can't seem to find
>>>      some of the libraries.  Right now we highly suspect the program "ld"
>>>      which was updated for 4_1_3.
>>>   
>
>>    Yip, we had the same problem; the only fix we found was to link static
>>some of the clients, ( btw, we used cc). :-(.
>
>Or use a SunOS 4.1.1 ld.

Or read fixes 9, 10, and 11 to the MIT distribution.  This is a known 
problem - just apply those fixes and set SunPost411FCSLd to YES and 
OSTeenyVersion in mit/config/sun.cf to 3.

In fix-09:
|If you are running SunOS 4.1.1 and you apply Sun's ld patch 100170-6,
|then you will need to edit your site.def and add this line to the
|AfterVendorCF section:
|
|#define SunPost411FCSLd   YES

In fix-10:
|If you are running SunOS 4.1.2, change OSTeenyVersion in mit/config/sun.cf to
|have a value of 2.

In fix-11:
|Brief notes on what this patch fixes:
|
|config: make on SunOS 4.1.2 fails unless tree previously built in

Sean Welch

Newsgroup: comp.windows.x
document_id: 66973
From: thomas@aeon.in-berlin.de (Thomas Wolfram)
Subject: Re: Title for XTerm

In <1993Apr17.170907.25718@samba.oit.unc.edu> naoumov@physics.unc.edu (Sergei Naoumov) writes:

>Hey guys!
>I work on many stations and would like this name and current logname
>to be in a title of Xterm when it's open and a machine name only
>when it's closed. In other words, I want $HOST and $LOGNAME to appear
>as a title of opened XTerm and $HOST when XTerm is closed.
>How can I do it?

>Thnsks in advance,
>	Serge
>	serge@gluttony.astro.unc.edu

Almost all window managers (twm, mwm, olwm and their derivates) support
escape sequences for it. For your purpose put following into your
.login (if you're using csh or tcsh), for sh you have to modify it.

if ( "$term" == "xterm" ) then
	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
endif

Note, ^[ stands for <Esc>, in vi you can enter it by pressing
Ctrl-V and the <Esc>. Same for ^G, it means Ctrl-G. In vi:
press Ctrl-V and then Ctrl-G.
The first sequence puts the string into the title bar the second
in the icon.

BTW, you can also put the current working directory in the
title bar if you make an alias for cd:

alias cd 'cd \!* ; echo "^[]2;${LOGNAME}@${HOST}: ${cwd}^G"'

greetings,
Thomas
-- 
Thomas Wolfram, thomas@aeon.in-berlin.de
EANTC, TU Berlin, wolf@prz.tu-berlin.de, +49 030 31421294

Newsgroup: comp.windows.x
document_id: 66974
From: duvvuri@gudbransdal.cs.odu.edu (D.V.Prakash)
Subject: Pointer Feature


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 


replies will be greatly appreciated

Thank you
Prakash
< duvvuri@cs.odu.edu >


Newsgroup: comp.windows.x
document_id: 66975
From: rgs@megatek.com (Rusty Sanders)
Subject: Re: X-server multi screen

From article <1993Apr17.010256.14372@eafs000.ca.boeing.com>, by ten0772@eafs000.ca.boeing.com (Timothy E. Neto):
> rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:
>>
>>I've seen a lot of different terms, which seem to mean the same thing.
>>Who can give an exact definition what these terms mean:
>>
>>	-) multi-screen
>>	-) multi-headed
>>	-) multi-display
>>	-) X-Server zaphod mode
>>
>>Is there a limit how many screens/displays a single server can handle
>>(in an articel a read something about an upper limit of 12) ?
>>
>>How is the capability called, if I want to move the cursor from one
>>screen/display to another.
> 
> As to how many clients may be display on a server, I believe the limit
> would be how much memory is available to your server or allocated by the
> server.
> 

This all sounds suspiciously like my company might have something to
do with this.

Background first: Megatek has a series of framebuffers designed as
X accelerators. For the most part these are designed for Sun SBUS
and Sun (and other vendor's) VME systems.

That said, Megatek products support multi-screen and/or multi-display
on a sigle workstation. Most of our cards have a keyboard/mouse port
which can be used to provide additional displays. For example, say
you hade a Sparcstation with an Sbus expansion chassis. You could
put in six frambuffers, allowing a total of six screens in the system.
You could then attach from 1 to 6 keyboard/mice, allowing you to
mix and match any combination of screens and displays. You could
have 1 6-screen display, 3 2-screen displays, 6 1-screen displays,
or 1 2-screen display and 1 4-screen display. Basically any
combination.

Because of this, we at Megatek try to be very careful about the use
of the words multi-screen and multi-display. They are quite different
in meaning, and (at least in X) have exact definitions.

The reason I ramble like this is the mention of an upper limit if 12
screens in a display. As it so happens, there's a define in the server
that determines the most screens supported (server/include/misc.h,
MAXSCREENS). As released my MIT, this is 3. As released by Megatek,
this is 12.

As such, the most screens supported by a single Megatek display (i.e.
X server) is 12. If someone construed this to be a limitation of X
I'm sorry, but clearly (as pointed out so well by Mr. Neto) this is
not the case.

We just did it here because nobody has ever asked us for more. Of
course, I could say "Buy all you want, we'll support more."
-- 
----
Rusty Sanders, Megatek Corp. --> rgs@megatek.com or...
         ...ucsd!    ...hplabs!hp-sdd!    ...ames!scubed!   ...uunet!

Newsgroup: comp.windows.x
document_id: 66976
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: Creating application contexts multiple times???

The subject does not describe the problem I am having very well.  Please read
on...

I am trying to write a function which creates an XtAppContext and a Widget,
displays the widget for a while, then destroys everything and returns.  The
problem is that multiple calls to this function cause a variety of problems
including (depending on which calls I make to get rid of things):

- Core Dump
- BadPixmap X Error
- Widget not unmapped


Here is a simple (C++) program I wrote to show the problem:

#include <X11/Xlib.h>
#include <Xm/Xm.h>
#include <Xm/PushB.h>

void bla()
{
        XtAppContext app;
        Display *dis = XOpenDisplay("");
        int junk = 0;

        Widget top=XtAppInitialize (&app, "test", NULL, 0, &junk, NULL,
                NULL, NULL, 0);

        Widget box = XtVaCreateManagedWidget("blaaa", xmPushButtonWidgetClass,
                        top,
                        XmNheight, 50,
                        XmNwidth, 50,
                        NULL);

        XtRealizeWidget(top);
        //Same as XtAppMainLoop but with only 10 XEvents
        for (int i=0;i<=10;i++)
        {
                XEvent event;
                XtAppNextEvent(app, &event);
                XtDispatchEvent(&event);
        }

// WHAT SHOULD I PUT HERE???
        XtUnrealizeWidget(top);
        XtDestroyWidget(top);
        XtDestroyApplicationContext(app);
        XCloseDisplay(dis);
// ???
}

main()
{
        for (int i=0;i<=20;i++)
                bla();
}

Note that I rewrote XtAppMainLoop so that at a given time (in this example,
after 10 XEvents) the function will exit and return to the main program.
With this example, I get the following error on about (this is NOT consistent)
the 5th call to bla():

X Error of failed request:  BadPixmap (invalid Pixmap parameter)
  Major opcode of failed request:  55 (X_CreateGC)
  Resource id in failed request:  0xe0000d
  Serial number of failed request:  71
  Current serial number in output stream:  86

If I take out the XtUnrealizeWidget(top); line, it just dumps core on the
seconds call.

Furthermore, every time I call XtAppInitialize() (other than the 1st time), I
get:

Warning: Initializing Resource Lists twice
Warning: Initializing Translation manager twice.


So finally, my question is this:

What needs to be done in order to be able to call a function which creates
an XtAppContext and widgets multiple times?

Any help would be greatly appreciated.

PLEASE respond via email as I dont usually have time to read this group.

Thanks very much.

-davewood
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 66977
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Compiling help

I'd like to compile X11r5 on a Sony NWS-1750 running NEWS 4.1c.  The
X distribution has support for this config, and the release notes say
it has been tested on the machine.  BUT, also in the release notes,
nothing from Sony is listed under the supported servers.  What am I
supposed to use for my r5 X server then?  How can the OS be supported,
but not the hardware? Is there something in the r4 binaries that can
be used as the r5 server? These may seem like silly questions, but
I'm *really* confused.
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 66978
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Compiling help

Here's what I (think) have figured out.  All I need to do is install
the R5 disitribution without the Xserver like the sony.cf file defines,
and all the new libraries, utils, etc., will be installed and my old
server from r4 will still work.  This will allow me to run Xview 3.0,
and have X11r5 up and running.  Does the server interface remain the
same with all changes made only to the libs?

Another question: Is it likely that since Sun is dropping OW support
that the desktop utils (like the file manager) will be made public?
It would be nice if companies would make old code public for the
benefit of those of us with smaller budgets. :)
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 66979
From: stevew@chineham.euro.csg.mot.com (Steve Weet)
Subject: Xterm Cursor



Forgive me if this is a FAQ (I have checked the list but I cant find it).

I have a problem with the cursor within Xterm on MONO (not grayscale monitors)
The problem is that when I have an character application that displays input
fields in reverse video the Xterm text cursor gets lost on the edge of the
input field.

The solution would appear to be to set the xterm cursor to a line rather
than a block, but how do you do this. I can't find any means although
various sources seem to indicate it can be done.

When the xterm loses the input focus the cursor becomes an outlined block.
This would also be preferable but I can't seem to force this to be the
default either.

Configuration is  : Motorola 88K X11R4

Please reply by email if poss.

Thank you



--
-----------------------------------------------------------------------------
Steve Weet - European Mis - Motorola Cellular Subscriber Group
Beechgreen Court, Chineham, Basingstoke, HANTS England.
Phone : +44 (0)256 790154  E-Mail  stevew@chineham.euro.csg.mot.com
Fax   : +44 (0)256 817481  Mobile  : +44 (0)850 335105  Post : w10075




-- 
-----------------------------------------------------------------------------
Steve Weet - European Mis - Motorola Cellular Subscriber Group
Beechgreen Court, Chineham, Basingstoke, HANTS England.
Phone : +44 (0)256 790154  E-Mail  stevew@chineham.euro.csg.mot.com  
Fax   : +44 (0)256 817481  Mobile  : +44 (0)850 335105  Post : w10075


Newsgroup: comp.windows.x
document_id: 66980
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: Now available: xvertext.4.0

Now available: xvertext 4.0 
--------------

Summary                                  
-------
xvertext provides you with four functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). Rotation  
is still achieved using XImages, but the notion of rotating a whole font
first has been dropped.

What's new?
-----------
I've added a cache which keeps a copy of previously rotated strings - thus
speeding up redraws.

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.4.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
document_id: 66981
From: huub@cwi.nl (Huub Bakker)
Subject: waiting for a specific event/callback

Hello world,

I want to write my Xt-application code like this:

{
    do_some_work();
    /* now I need some user input */
    XmCreateDialog();
    wait_for_user_input(input);
    if (input == "OK") {
       more_work();
    } else {
       other_work();
    }
}

So "more_work() and other_work()" are not in callback functions but the
application simply waits for the user to answer the question.

How can I code this in my Xt/Motif-application?

Thanks very much in advance.

Greetings, Huub.

-- 
CWI, P.O. Box 4079 			Huub Bakker (huub@cwi.nl)
1009 AB Amsterdam
The Netherlands
Tel. 31 20 5924080

Newsgroup: comp.windows.x
document_id: 66982
From: gpatapis@boyd.tansu.com.au (George Patapis)
Subject: Re: DESQview/X on a PC?

In article 14595639@wl.aecl.ca, harrisp@wl.aecl.ca () writes:
>I use DESQview/X and I think it is great. Where it really shines (IMHO) is
>to let unix users log into a pc and run dos and windows applications with
>the display going to their screens.
>You'll need to get:
>DESQview/X v 1.1
>DESQview/X v 1.1                           $275 suggested retail
>DESQview/X to Other X Systems v 1.1        $200 suggested retail
>
>You also must be running a supported network (FTP softwares PCTCP,
>Novell Lan workplace for dos, Sun Microsystems PC-NFS, Beame and WHiteside,
>Wollongong pathway TCPIp or HP Microsoft Lan Manager)
>
>if you don't have any of this network stuff, Quarterdeck will give you a
>copy of Novell TCPIP transprot for dos with the Network manager.
>
>You can get more info by sending email to (appropriately) info@qdeck.com.
>
>In my opinion, if you want to have other people logging in and running
>applications at your pc, you'll want to have a 486 33 with 16 Megs of RAM.
>Also, the Xwindows software in DESQviewX really seems to like an ET 4000
>(TSENG Labs chipset) based graphics card. Personally, I found that things
>ran better with a SCSI drive in the pc than with ESDI drives, but that is
>my experience only
>
>                                Good Luck and Best Wishes
>                                                Phil

What sort of traffic is generated with the X-calls?  I am curious to find
out the required bandwidth that a link must have  if one machine running
DV/X is supporting multiple users (clients) and we require adequate response
time.  Anyone have any ideas ??  



---
__/ __/ George Patapis ---------------------PAN METRON ARISTON---------- __/ __/
__/ __/ C.S.S.C Lane Cove-----------email:gpatapis@cssc-syd.tansu.com.au __/ __/
__/ __/ P.O.Box A792 Sydney South --fax  :(02) 911 3 199---------------- __/ __/
__/ __/ NSW, 2000, Australia.-------voice:(02) 911 3 121---------------- __/ __/



Newsgroup: comp.windows.x
document_id: 66984
From: win@athen.sto.mchp.sni.de (Andrea Winkler)
Subject: X and Security / X Technical Conference


I had no possibility to join the

               7th annual X Technical Conference 
               January 18-20 1993
               Boston, MA

Nevertheless, I'm interested in information about the tutorials,
exspecially about 

               Tutorial ID:  A-SECURITY
               Title: A Survey of X and Security

               Tutorial ID:  F-ADMIN
               Title: X and the Administrator

Does anybody know, where I can get information (paper/mail) about these ?

Has anybody information about  Kerberos  (escpecially in connection with 
X Display Manager xdm)?

Thanks,

Andrea Winkler     (Siemens Nixdorf Muenchen, Germany)


------------------------------------------------------------------------------  
S I E M E N S  Andrea Winkler        Internet: Andrea.Winkler@sto.mchp.sni.de
-------------  SNI STO XS 322        Otto-Hahn-Ring 6    D-8000 Munich 83     
N I X D O R F  Phone:(089)636-41449  FAX: (089)636-42833
------------------------------------------------------------------------------  

Newsgroup: comp.windows.x
document_id: 66985
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Is it just me, or is this newsgroup dead?

#
# I've gotten very few posts on this group in the last couple days.  (I
# recently added it to my feed list.)  Is it just me, or is this group
# near death?
#

Seen from the mailing list side, I'm getting about the right amount of
traffic.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 66986
From: cudep@csv.warwick.ac.uk (Ian Dickinson)
Subject: Re: SVR4.x binary dists (was Re: RFD: to create comp.unix.sys5.univel)

In article <rick.734610425@digibd> rick@digibd.digibd.com (Rick Richardson) writes:
>The other scary thing is that I ship libxcl.so with the 6 functions
>in it;  how many other libxcl.so type libraries will be shipped by
>other vendors?  Should I trademark the name libxcl.a? What if
>some clown uses that name and only puts 4 of the troublesome
>functions in it?

Does USL SVR4 support LD_RUN_PATH a la Solaris 2?
Or an equivalent?

If so, you can put the library in a package specific lib directory,
compile the app with LD_RUN_PATH defined, and all should work.

Besides, I'd say name it libPACKAGExcl.a if possible.

Cheers,
-- 
\/ato - Ian Dickinson - NIC handle: ID17          This article is dedicated to
vato@csv.warwick.ac.uk  ...!uknet!warwick!vato        those who disapprove but
/I=I/S=Dickinson/OU=CSV/O=Warwick/PRMD=UK.AC/ADMD= /C=GB/          continue to
@c=GB@o=University of Warwick@ou=Computing Services@cn=Ian Dickinson      read

Newsgroup: comp.windows.x
document_id: 66987
From: s_ledoux@csc32.enet.dec.com (Scott LeDoux)
Subject: Icon Animation 


Hi Folks.

As part of my self-introduction to X I've been trying to do some simple
icon animation (sort of like icondoit from mswindows).  Changing your
own applications icon is fairly simple:  If you have a widget ID you can
just XtSetValues on XtNiconifyPixmap (or whatever) and you're done. Alternately
you can set window manager hints.  These methods don't seem to work with
icons which your application doesn't specifically own.

In my situation I have to change the icon of random windows sitting there in 
my icon box so my question is:  Given a window-id, how do you change the
icon pixure ?  A working example would be very much appreciated.  If it makes
any difference, I'm using motif 1.1 on VMS T6.0-5KE.

Thanks -
Scott :)

Newsgroup: comp.windows.x
document_id: 66988
From: kaiser@informatik.uni-koblenz.de (Siegfried Kaiser)
Subject: R5 table widget causing trouble with XtQueryGeometry

Contents:Problems with table widgets in R5

	The following part of a program (an user interface for a simulation
	system) did work in R4, but refused to in R5. Of cause, the R4-version
	did not know about the xpTableWidgetClass (we used tableWidgetClass 			instead - caught from the net in times of R3) and XpTableChildPosition 			(formerly XtTblPosition).
	Since compiling with R5, the program causes a zero width or height error
	(on sparc-stations). The trouble-shooter is the (re)computation of the
	model_init_table - table widget: though its childs (label and asciiText 
	widgets) exist, XtQueryGeometry returns a prefered width and height of 			zero. 
	Thus the following asignment cannot perform anything else but set the 			width and height of the newly created widget to zero. No wonder XtPopup 		or XtManage- Child create zero width or height errors (dependent on 			whether width and height of the shell widget are set in the resource 			file or not).
	
	Question: Does anyone know, why XtQueryGeometry returns so low prefered
			values when working on table widgets or perhaps what
			to do about?

	I'll be happy, if someone is able to help me. 
	Germans are requested to answer in german.
	
	Siegfried Kaiser
	email: kaiser@uniko.uni-koblenz.de

	
	The part of interest:


	/* Graphischer Neuaufbau des Model-Init-Formulars */
		/* Storing the old width and height of the viewport-	*/
		/* widget, which is the parent of the troubling table	*/
		/* widget, before the viewport widget is destroyed	*/
		/* The destroying of widgets before resizing them is a	*/
		/* relict from R3-age					*/
	
	if (model_init_popped_up) 
		XtUnmapWidget(model_init_form_view);
	XtDestroyWidget(model_init_form_view);
	
		/* Creating the subtree within the shell, of which the	*/
		/* root is the viewport widget				*/
	
	n = 0;
	XtSetArg(args[n],XtNfromVert,model_init_title); n++;
	XtSetArg(args[n],XtNfromHoriz,model_init_button_view); n++;
	XtSetArg(args[n],XtNallowVert,True); n++;
	XtSetArg(args[n],XtNforceBars,True); n++;
	model_init_form_view = XtCreateWidget("form_view",viewportWidgetClass,
					      model_init_form,args,n);

	n = 0;
	model_init_table = XtCreateWidget("table",xpTableWidgetClass,
					  model_init_form_view,args,n);

		/* create_form_widget does create and position table	*/
		/* widget's childs. To position them it uses XpTable-	*/
		/* ChildPosition in R5 and XtTblPosition in R4		*/
					 
	create_form_widget(ptr_model_init_obj,model_init_table);

		/* 							*/
		/* The crucial function call:				*/
		/* intended to return the maximum height possible: if	*/
		/* there isn't sufficient space to show the whole table	*/
		/* widget, then the viewport shall grow as large as 	*/
		/* possible, but not beyond the border of screen.	*/
		/* If there is enough space, the window is intended to	*/
		/* shrienk to the smallest possible height.		*/
		/*							*/

	XtQueryGeometry(model_init_table,NULL,&pref);

		/* According to the algorithms idea, the new value of	*/
		/* viewport widget's height is selected. Unfortunately	*/
		/* pref.height = 0 leads to new_height = 0.		*/
		
	if (form_view_height > pref.height) new_height = pref.height;
	else new_height = form_view_height;

		/* Setting the new values to viewport widgets ancestors	*/

	w = XtNameToWidget(model_init_form,"form_view");
	XtResizeWidget(w,width,new_height,pref.border_width);
	XtResizeWidget(model_init_form_view,width,new_height,
		       pref.border_width);

	if (model_init_popped_up)
	{
		/* In case the shell, which contains model_init_form_-	*/
		/* view and model_init_table, allready exists, is has	*/
		/* to be resized, too.					*/
		
	 n = 0;
	 XtSetArg(args[n],XtNwidth,&shell_width); n++;
	 XtSetArg(args[n],XtNheight,&shell_height); n++;
	 XtSetArg(args[n],XtNborderWidth,&shell_bw); n++;
	 XtGetValues(model_init_shell,args,n);
	 XtResizeWidget(model_init_shell,shell_width,
			shell_height - height + new_height,shell_bw);
	}; /* end of if */

	n = 0;
	XtSetArg(args[n],XtNwidth,&width); n++;
	XtSetArg(args[n],XtNborderWidth,&bw); n++;
	XtGetValues(model_init_button_view,args,n);
	XtResizeWidget(model_init_button_view,width,new_height,bw);

	XtResizeWidget(vert_bar,sbar_width,1,sbar_bw);
	
	resize_inits();

		/* If there is the shell's height set within the 	*/
		/* resource file, the program terminates within the	*/
		/* first XtManageChild on its second pass through the	*/
		/* observed function. The first pass succeeds.		*/

	XtManageChild(model_init_form_view);
	XtManageChild(model_init_table);


	if (!model_init_popped_up)
	{
		/* In case the shell isn't popped up it has to be done.	*/
		/* If there is no value set to the shell's height within*/
		/* the resource file, the program terminates here.	*/
		
	 XtPopup(model_init_shell,XtGrabNone);
	 model_init_pop_flag = True;
	 set_model_init_attributes();
	}; /* end of if */

	get_actual_init(&ptr_actual);
	load_form(ptr_actual);
	
	
	
	/*								*/
	/* If someone suspects the creation of table widget's contents	*/
	/* causes all the trouble, there are the sources of create_form */
	/*								*/
	
		
	create_form_widget(ptr,table)
	t_obj              *ptr;
	Widget             table;
		
		/* ptr is a linear list containing attributes and para-	*/
		/* meters of the model and additionally the correspon-	*/
		/* ding widgets						*/
		
	{
	 Arg               args[10];
	 int               n,
			   row,
			   col;
	 t_obj             *ptr_obj;
	 t_ident           *ptr_ident;

		/* Initialization of the local variables		*/
		
	 ptr_obj = ptr;
	 col = 0;
	 row = 0;
 
	 /* Schleife ueber die Objekte bzw. das Pseudo-Objekt (fuer die 				Parameter) */
		/* loop through the list of objects and pseudo-objects:	*/
		/* every object occuring in the model has zero or more	*/
		/* attributes and some parameters, which can be shared	*/
		/* by several objects. 					*/
		/* Because of locality the attributes of one object are	*/
		/* listed in a second linear list (of type t_ident),	*/
		/* whereas the parameters, which can belong to any ob-	*/
		/* ject are put together in a pseudo-object 		*/
		/* Thus the program loops through the list of objects	*/
		/* and pseudo-objects and for each object through the	*/
		/* list of its attributes resp. parameters.		*/
		
	 while (ptr_obj != (t_obj*)NULL)
	 {
	 	/* Each object and pseudo-object is represented in a	*/
	 	/* label widget						*/
	  
	  n = 0;
	  XtSetArg(args[n],XtNlabel,ptr_obj->name); n++;
	  ptr_obj->label_w = XtCreateManagedWidget("object",labelWidgetClass,
					   table,args,n);
	  XpTableChildPosition(ptr_obj->label_w,col,row);
	  col++;
	  row++;
	  ptr_ident = ptr_obj->ident;

	  /* Schleife ueber die Objekt-Attribute bzw. Parameter */
	  while (ptr_ident != (t_ident*)NULL)
	  {
	  	/* Each attribute and parameter is represented in a	*/
	  	/* label and has a corresponding asciiText widget, in 	*/
	  	/* which it is to be initialized.			*/
	  	
	   n = 0;
	   XtSetArg(args[n],XtNlabel,ptr_ident->name); n++;
	   ptr_ident->label_w = XtCreateManagedWidget("ident",labelWidgetClass,
					      table,args,n);
	   XpTableChildPosition(ptr_ident->label_w,col,row);
	   col++;
    
	   n = 0;
	   XtSetArg(args[n],XtNlength,ROW_LENGTH); n++;
	   XtSetArg(args[n],XtNstring,ptr_ident->text); n++;
	   XtSetArg(args[n],XtNeditType,XawtextEdit); n++;
	   XtSetArg(args[n],XtNwrap,XawtextWrapWord); n++;
	   XtSetArg(args[n],XtNresize,XawtextResizeHeight); n++;
	   XtSetArg(args[n],XtNuseStringInPlace,True); n++;
	   ptr_ident->text_w = XtCreateManagedWidget("text",
					asciiTextWidgetClass,
					     table,args,n);
	   XpTableChildPosition(ptr_ident->text_w,col,row);
	   col--;
	   row++;
	   get_next_ident(&ptr_ident);
	  }; /* end of while */
	  col--;
	  get_next_obj(&ptr_obj);
	 }; /* end of while */
	} /* end of create_form_widget */


	

So far the problem in detail.


Newsgroup: comp.windows.x
document_id: 66989
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Motif maling list


The motif mailing list will now be located at
lobo.gsfc.nasa.gov

If you would like to be added (or deleted) from this list, please
send mail to motif-request@lobo.gsfc.nasa.gov
to mail to the list, send mail to motif@lobo.gsfc.nasa.gov


Brian
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 66990
From: buzz@bear.com (Buzz Moschetti)
Subject: Re: XCopyPlane Question

In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
>   don't show up: do you wait for an expose event before drawing your
>   rectangle?

Suppose you have an idle app with a realized and mapped Window that contains
Xlib graphics.  A button widget, when pressed, will cause a new item
to be drawn in the Window.  This action clearly should not call XCopyArea() 
(or equiv) directly; instead, it should register the existence of the new
item in a memory structure and let the expose event handler take care
of rendering the image because at that time it is guaranteed that the
Window is mapped.

The problem, of course, is that no expose event is generated if the window
is visible and mapped.  Do you know the best way to "tickle" a window so
that the expose event handler will be invoked to draw this new item?

Newsgroup: comp.windows.x
document_id: 66991
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: XWindows always opaque


hess@swt1.informatik.uni-hamburg.de writes:

>> I wonder if it is possible for a parent window to paint over the area of
>> its childs. If it is not, then how could it be possible to implement a 
>> rubberband across multiple xwindows to select the objects that are
>> displayed one in each window?

Use a GC with the subwindow_mode attribute set to IncludeInferiors. The
default is ClipByChildren. However, beware if any of the children are of
a different depth to the parent; the semantics of this are undefined by the
protocol.

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.
 

Newsgroup: comp.windows.x
document_id: 66992
From: marc@ccvi.ccv.FR (Marc Bassini)
Subject: [jb@sgihbtn.sierra.com: Re: Xlib for MS/WINDOWS not an XSERVER!!!]

>I think you may find that either Quarterdeck (Deskview/X) or
>Hummingbird (eXceed) provide an Xlib for DOS.  Perhaps they also have
>an Xlib for MS-Windows?  It's a possibility.
>
 Yes, eXceed has windows version. Have ported some games like tetris, 
works fine.

Si c'est vrai, ce serait bien de se le procurer car a ce moment la, le
portage Xt... Suis-je en train de perdre mon temps avec la toolkit c++
?

		Marc Bassini (marc@ccv.fr, marc@cnam.cnam.fr)
			Computers, Communications & Visions (C2V)
			82 bd Haussmann, 75008 Paris FRANCE
			Phone 40.08.07.07, Fax 43.87.35.99


Newsgroup: comp.windows.x
document_id: 66993
From: glb6j@smarine.UUCP (Guy Babineau)
Subject: How do you find a window id given its name


I want to do the equivalent of an "xwininfo -name" via a call or set of calls
in Xlib.  I need to map a windows name to its id.
It's probably easy, but I've only been programming in X for a little while.
I've looked in the O'reilly books and didn't find it and I also checked the
FAQ and couldn't find it.

Email to one of the following addresses and I'll post a response if it
seems reasonable to do so.


Guy
-- 
Guy L. Babineau                         virginia.edu!smarine.uucp!glb6j
Sperry Marine Inc.			72147.2474@compuserve.com

Newsgroup: comp.windows.x
document_id: 66994
From: billh@greed.sbil.co.uk (Bill Hodgson)
Subject: Re: waiting for a specific event/callback

In article 9610@charon.cwi.nl, huub@cwi.nl (Huub Bakker) writes:
..deleted...

In plain Motify using a dialog 'in-line' like this simply isn't done. You need
to set callbacks from the buttons/widgets in your dialog and let the callback routines
do the work. In the callbacks you can then carry on the flow of logic. 

XView from Sun actually supports this very neatly with a 'Notify' box, which can
return a status in-line, it does actualy ease coding but goes against the event
driven style of an application.

Summary: Redesign required.


---
    _/       _/  _/ _/     "Delta hedging a long option position also
   _/           _/ _/	    generates a short gamma exposure and any return
  _/_/_/_/ _/  _/ _/	    generated from delta hedging options can be thought
 _/    _/ _/  _/ _/	    of as compensation for assuming gamma risk"
_/_/_/_/ _/  _/ _/	    -- Radioactive investment management... whew!

Newsgroup: comp.windows.x
document_id: 66995
From: montnaro@spyder.crd.ge.com (Skip Montanaro)
Subject: Re: Circular Motif Widgets


If you're willing to do a little work, you can make DrawnButtons do what you
want, more-or-less. One of my colleagues here at GE CRD has done just that
in our internal LYMB system.

We have a matrix transform class that makes it easy to compute a series of
dial positions from a single set of vectors. Each set of vectors is then
drawn into a pixmap. Clicking the button advances the knob's state and
changes to the next pixmap in the sequence.

Using DrawnButtons obviously still constrains you to taking up a rectangular
portion of the parent widget, but that's normally not a big shortcoming. You
can make things look circular enough.

--
Skip (montanaro@crd.ge.com)
"Why can't X be this easy?" -- me, after learning about dlopen()

Newsgroup: comp.windows.x
document_id: 66996
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Creating 8 bit windows on 24 bit display.. How?


stolk@fwi.uva.nl writes:

>> 
>> A problem occurs when I try to create a window with a visual that is different
>> from the visual of the parent (which uses the default visual which is TC24).
>> 

You've got to set border_pixel in your window attributes. The default
is CopyFromParent which gives the BadMatch. Do this:

   ...
   unsigned long valuemask;
   ...
   /*
    * if border_width is non-zero you'd better alloc a colour from cmap
    * rather than use any old pixel value. Also, use valuemask, it makes
    * the code more obvious.
    */
   attr.colormap = cmap;
   attr.border_pixel = 0;
   valuemask = CWColormap | CWBorderPixel;
   win = XCreateWindow(
           dpy,
           DefaultRootWindow(dpy),
           10,10,
           width,height,
           0,		         /* border width. see comment below */
           8,                    /* depth */
           InputOutput,          /* class */
           vinfo.visual,         /* visual */
           valuemask,
           &attr
         );

A note on border_width: your code looked like this:

>>   win = XCreateWindow(
>>           dpy,
>>           DefaultRootWindow(dpy),
>>           10,10,
>>           width,height,
>>           CopyFromParent,       /* border width */
>>           8,                    /* depth */
>>           InputOutput,          /* class */
>>           vinfo.visual,         /* visual */
>>           CWColormap,
>>           &attr
>>         );

border_width set to CopyFromParent works but doesn't make sense.
border_width should be an unsigned int. You get away with it because
CopyFromParent is #define'ed to be zero in X.h. If it happened to be
defined as -1 you'd get a very interesting looking window!

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.
 

Newsgroup: comp.windows.x
document_id: 66997
From: smikes@topgun (Steven Mikes)
Subject: Re: XVideo Information

The product you mention is XVideo from Parallax Graphics in Santa Clara, 
California, US. You can read our product review in the Jan/Feb '93 issue
of The X Journal. That issues focuses on Multimedia and X, in which there
are also a number of other useful items, including an article on Video in
an X Window. Fax our New York office at 212.274.0646 for information on 
obtaining back issues.

Steve
-- 
      Steven Mikes - Editor - The X Journal
        1097 Eastbrook Rd., Martinsville, NJ 08836
         OFFICE: 908.563.9033 - FAX: 908.560.8635
          "Serving The X Window System Community"

Newsgroup: comp.windows.x
document_id: 66998
From: smikes@topgun (Steven Mikes)
Subject: Re: Xlib for MS/WINDOWS not an XSERVER!!!

Another company, Congruent Corporation of New York City, has also ported Xlib
Xt and Motif 1.1 over to MS Windows NT, which provides full client development
for X applications in an NT environment.

If you are porting InterViews over to MS Windows, I thought InterViews was
a C++ toolkit with C++ classes. If that is so, how can it be built on Xlib,
unless the classes are calling Xlib functions?

Steve

-- 
      Steven Mikes - Editor - The X Journal
        1097 Eastbrook Rd., Martinsville, NJ 08836
         OFFICE: 908.563.9033 - FAX: 908.560.8635
          "Serving The X Window System Community"

Newsgroup: comp.windows.x
document_id: 66999
From: howardy@freud.nia.nih.gov (Howard Wai-Chun Yeung)
Subject: need shading program example in X

Do anyone know about any shading program based on Xlib in the public domain?
I need an example about how to allocate correct colormaps for the program.

Appreciate the help.

Howard.


Newsgroup: comp.windows.x
document_id: 67000
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: System file in /tmp


In article <C5JJIG.Doy@acsu.buffalo.edu>, lusardi@cs.buffalo.edu (Christopher Lusardi) writes:
|> 
|> What is the directory .X11-unix for in /tmp? When I start
|> x, it is created by the system. This directory wasn't created 
|> by root, and it contains an empty file (X0) that is owned by me. 
|> 

It's the Unix Domain Socket (local connection) to your XServer.
Try to rm it :)

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67001
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Title for XTerm


In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|> >Hey guys!
|> >I work on many stations and would like this name and current logname
|> >to be in a title of Xterm when it's open and a machine name only
|> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|> >as a title of opened XTerm and $HOST when XTerm is closed.
|> >How can I do it?
|> 
|> Almost all window managers (twm, mwm, olwm and their derivates) support
|> escape sequences for it. For your purpose put following into your
|> .login (if you're using csh or tcsh), for sh you have to modify it.
|> 
|> if ( "$term" == "xterm" ) then
|> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|> endif
|> 

1) This is NOT a feature of the Window Manager but of xterm.
2) This sequences are NOT ANSI compatible, are they ?
   Does anyone know IF there are compatible sequences for this and what they
   are ? I would think they are DCS (device control sequence) introduced,
   but may be a CSI sequence exists, too ?
   This MUST work on a dxterm (VT and ANSI compatible), it may not work
   on xterms.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67002
From: christy@cs.concordia.ca (Christy)
Subject: X386 server problems

Hello,

I'm trying to get X11R5 running on my PC and ran into the 
following error message when trying to start the Xserver.

------
Setting TCP SO_DONTLINGER: Option not supported by protocol

X386 Version 1.2 / X Windows System
(protocol Version 11, revision 0, vendor release 5000)

Fatal server error
no screens found
giving up

xinit: software cased connection abort (errno 130): unable to connect
       to X xserver.

------


does anyone know what this error means ?
has anyone experienced this problem ?

help will be much appreciated

thanks in advance.


please send replies to <christy@alex.qc.ca>

Christy

Newsgroup: comp.windows.x
document_id: 67003
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Solution: Why do I need "xrdb -m" when .Xdefaults unchanged?

The short answer seems to be: "I don't".
The particular package (wscrawl) seems to reset *all* its defaults
if *any* of them are missing from the .Xdefaults file.  Once I added
the missing ones to the .Xdefaults file, the problem goes away.

-Kevin
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
document_id: 67005
From: DBOHDAL@JAGUAR.ESS.HARRIS.COM
Subject: Icon Box

Dear Xperts:

  I want to place a specific group of icons in an icon box and
have my other icons appear outside of the box.  Does anyone
know if there's a way I can do this??  I'm using X11R5 and
Motif 1.2.1.

Thanks!
dbohdal@jaguar.ess.harris.com

Newsgroup: comp.windows.x
document_id: 67006
From: gregg@netcom.com (gregg weber)
Subject: What inexpensive monochrome X station can you recommend?

Can someone recommend an inexpensive 19" monochrome X station, that
is not PC software emulation based? Please tell me manufacturer,
model, price and any other significant specs. Thanks.

-- 
================================================================
Gregg Weber		Let it be, open and bright like the sky,
gregg@netcom.com	Without taking sides, with no clouds of concepts.
(510) 283-6264		- kun-mkhyen klong-chen-pa
================================================================

Newsgroup: comp.windows.x
document_id: 67007
From: hsteve@carina.unm.edu ()
Subject: XTranslateCoord. Problem

It seems like XTranslateCoord. doesn't work the way I expecting it.  Right
after performs a XMoveWindow, I want to know the absolute window position
with respect to the root window.  To get this info. I do a XTranslateCoordinates
but the abs_x, and abs_y aren't right?  Does anybody know of a way to find 
out this information?

Thanks, please e-mail to hsteve@carina.unm.edu if it's possible

-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
document_id: 67008
From: klee@synoptics.com (Ken Lee)
Subject: Re: DEC pixmap size

In article 1964@igd.fhg.de, haase@igd.fhg.de (Helmut Haase (Goebel)) writes:
>If I try to create a pixmap larger than the size of my screen the program
>will terminate displaying the message:
>
>X Error:  BadAlloc - insufficient resources

Many X servers supporting graphics accelerators do not allow the creation
of pixmaps exeeding the size of the screen.  One workaround is to create
several smaller pixmaps and add the results.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 67009
From: klee@synoptics.com (Ken Lee)
Subject: Re: Circular Motif Widgets

In article bjg@acsc.com, dev@hollywood.acsc.com () writes:
>
>Will there be any support for round or circular widgets in Motif's next
>release?. I'd love to have a circular knob widget which could be used
>instead of a slider.

How much support do you need?  I don't think there's anything
that prohibits you from implementing such a widget, though you
will have to write your own versions of the functions that draw
the 3D shadow and traversal highlighting.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 67010
From: support@qdeck.com (Technical Support)
Subject: Re: DESQview/X on a PC?

In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>In article 14595639@wl.aecl.ca, harrisp@wl.aecl.ca () writes:
>>I use DESQview/X and I think it is great. Where it really shines (IMHO) is
>>to let unix users log into a pc and run dos and windows applications with
>>the display going to their screens.
>>You'll need to get:
>>DESQview/X v 1.1
>>DESQview/X v 1.1                           $275 suggested retail
>>DESQview/X to Other X Systems v 1.1        $200 suggested retail
>>
>>You also must be running a supported network (FTP softwares PCTCP,
>>Novell Lan workplace for dos, Sun Microsystems PC-NFS, Beame and WHiteside,
>>Wollongong pathway TCPIp or HP Microsoft Lan Manager)
>>
>>if you don't have any of this network stuff, Quarterdeck will give you a
>>copy of Novell TCPIP transprot for dos with the Network manager.
>>
>>You can get more info by sending email to (appropriately) info@qdeck.com.

Actually, info@qdeck.com is our customer service department. If you have
technical questions, you can write to support@qdeck.com.

>>In my opinion, if you want to have other people logging in and running
>>applications at your pc, you'll want to have a 486 33 with 16 Megs of RAM.
>>Also, the Xwindows software in DESQviewX really seems to like an ET 4000
>>(TSENG Labs chipset) based graphics card. Personally, I found that things
>>ran better with a SCSI drive in the pc than with ESDI drives, but that is
>>my experience only
>
>What sort of traffic is generated with the X-calls?  I am curious to find
>out the required bandwidth that a link must have  if one machine running
>DV/X is supporting multiple users (clients) and we require adequate response
>time.  Anyone have any ideas ??  

I expect the limiting factor will be your server machine, not the network
itself. To give you a real-world example, here at Quarterdeck we have
roughly 100 people using DVX to talk to a bunch of unix boxes, novell
file servers, and each other. It's not _too_ much of a load on our
Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
segment). If you had a badly loaded net, or the apps you wanted to run
were very network intensive, you could run into some slowdowns.

But the biggest problem would be the machine itself. Say you have a 486
33 with plenty of ram and a fast hard disk and network card. If you have
10 people running programs off it, you're going to see some slowdowns
because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
attempt to see if tasks are idle and make sure they give up their time
slice, but if you have 10 working programs running, you'll know it.

Having said that, if you can tweak the programs being run (by adding
in calls to give up time slices when idle and that sort of
thing), you could probably run 15-20 people on a given machine before
you started seeing slowdowns again (this time from network bandwidth).
It all really depends on what the programs are doing (ie. you're going
to see a slowdown from X-bandwidth a lot sooner if your apps are all
doing network things also...)
-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
   Q/Fax: (310) 314-3214 from touch-tone phone for Technotes On Demand!

Newsgroup: comp.windows.x
document_id: 67011
From: yuri@physics.heriot-watt.ac.UK (Yuri Rzhanov)
Subject: XView slider

Hi netters,

I'm using sliders in my XView apps, usually with editable numeric
field. But I seem to have no control over the length of this field.
In some apps it appears long enough to keep several characters,
in some - it cannot keep even the maximum value set by 
PANEL_MAX_VALUE! 

As I understand, PANEL_VALUE_DISPLAY_LENGTH, which controls
number of characters to be displayed in text items, doesn't
work in the case of slider, despite the fact that <panel.h>
contains the following bit:

	/* Panel_multiline_text_item, Panel_numeric_text_item,
	 * Panel_slider_item and Panel_text_item attributes
	 */
	PANEL_NOTIFY_LEVEL	= PANEL_ATTR(ATTR_ENUM,			 152),
	PANEL_VALUE_DISPLAY_LENGTH	= PANEL_ATTR(ATTR_INT,		 182),

which gives a hint that this attribute can be used for sliders.
But 1) setting this attribute gives nothing, and 2) xv_get'ting
this attribute gives warning: Bad attribute, and return value 0.

Can someone share his experience in managing sliders in XView with me,
and clear this problem?

Any help is very much appreciated.

Yuri

yuri@uk.ac.hw.phy

Newsgroup: comp.windows.x
document_id: 67012
From: defaria@cup.hp.com (Andy DeFaria)
Subject: Mysterious beeping

[ Article crossposted from hp.windows ]
[ Author was Andy DeFaria ]
[ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]

For some reason the following code causes my X application to beep whenever I
intercept a keystroke and change it's meaning.  The intent of this code it to
allow "date" fields the following special keys:

	[Tt]:	Insert today's date
	[+=]:	Bump day up by one
	[-_]:	Bump day down by one

I hardcoded some dates for this example.  Perhaps I shouldn't be using an
XmText field for this.

////////////////////////////////////////////////////////////////////////////// 
// 
// For some reason the following code beeps whenever any of the special keys
// of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
// keys having the special meaning implied by the code.  I would like to get
// rid of the beeping but, as far as I can tell, I'm not doing the beep and 
// am at a lose as to understanding who and why the beeping is occuring.
// 
////////////////////////////////////////////////////////////////////////////// 
#include <X11/Intrinsic.h>
#include <Xm/Xm.h>
#include <Xm/RowColumn.h>
#include <Xm/MainW.h>
#include <Xm/Text.h>

Widget		toplevel;
Widget		mainWindow;
Widget		mainPane;
Widget		dateField;
XtAppContext	application; 

void markToday (Widget date) {
   char *todaysDate = "04/19/93";
   XtVaSetValues (date, XmNvalue, todaysDate, NULL);
} // markToday

void markTomorrow (Widget date) {
   char *tomorrowsDate = "04/20/93";
   XtVaSetValues (date, XmNvalue, tomorrowsDate, NULL);
} // markTomorrow

void markYesterday (Widget date) {
   char *yesterdaysDate = "04/18/93";
   XtVaSetValues (date, XmNvalue, yesterdaysDate, NULL);
} // markYesterday

void datekeys (Widget          /* callingWidget */,
	       Widget          date,
	       XmTextVerifyPtr callbackData) {
   // Capture the keys [Tt-_+=] can change their behaviour.  If found
   // set "doit" to false so X won't interpret the keystroke. 
   switch (callbackData->text->ptr [0]) {
      case 't': case 'T': 
	 markToday (date);
	 callbackData->doit = FALSE;
	 return;
      case '-': case '_':
	 markYesterday (date);
	 callbackData->doit = FALSE;
	 return;
      case '+': case '=':
	 markTomorrow (date);
	 callbackData->doit = FALSE;
	 return;
      default:
	 return;
   } // switch
} // datekeys

void main (Cardinal argc, char *argv []) { 
   // Initialize Xt 
   toplevel = XtVaAppInitialize (&application, "Application", NULL, 0, 
				 &argc, argv, NULL, NULL); 

   // Create the toolface
   mainWindow = XtVaCreateManagedWidget 
      ("mainWindow", xmMainWindowWidgetClass, toplevel, NULL);

   // Create a mainWindow
   mainPane = XtVaCreateManagedWidget
      ("mainPane", xmRowColumnWidgetClass, mainWindow, NULL);

   // Create a small text area
   dateField = XtVaCreateManagedWidget
      ("dateField", xmTextWidgetClass, mainPane,
       XmNtopAttachment,	XmATTACH_FORM,
       XmNrightAttachment,	XmATTACH_FORM,
       XmNcolumns,		8,
       NULL);

   // Set modifyVerifyCallback to the datekeys callback   
   XtAddCallback (dateField, XmNmodifyVerifyCallback,
		  (XtCallbackProc) datekeys, (XtPointer) dateField);

   // Realize the toplevel 
   XtRealizeWidget (toplevel);

   // Go into the XtMainLoop
   XtAppMainLoop (application); 
} // main 

_______________________________________________________________________________
I swear by my life and the love of it that I will    | Andrew DeFaria
never live for the sake of another man nor ask       | Hewlett Packard
another man to live for mine.                        | California Language Labs
                    John Galt                        | defaria@cup.hp.com
_______________________________________________________________________________


--
_______________________________________________________________________________
I swear by my life and the love of it that I will    | Andrew DeFaria
never live for the sake of another man nor ask       | Hewlett Packard
another man to live for mine.                        | California Language Labs
                    John Galt                        | defaria@cup.hp.com
_______________________________________________________________________________

Newsgroup: comp.windows.x
document_id: 67013
From: david@swat (David E. Smyth)
Subject: Re: MS Windows VS Motif (GUI design differences), was Re: Future of Unix

Ik Su Yoo <ik@mobydick.leis.bellcore.com> writes:
>
>Another important difference is that MSW doesn't have any window that
>handle sophisticated geometry management (like XmForm).

Is this an advantage to MS Windows or to Xt?  I used to think it
was a big advantage for Xt, but I am not at all sure anymore...

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6463 (temp! do NOT use v-mail)
X and Object Guru.			tempory office: 525/B70
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
 What's the earliest possible date you can't prove it won't be done by?
					- Tom DeMarco
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67014
From: david@swat (David E. Smyth)
Subject: Re: Looking For David E. Smyth

zvi@nynexst.com (Zvi Guter) writes:
>The author of Wcl (or the current care taker). His is the only name I found
>in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
>but the mail bounced back.

Here I am!!

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6463 (temp! do NOT use v-mail)
X and Object Guru.			tempory office: 525/B70
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
 What's the earliest possible date you can't prove it won't be done by?
					- Tom DeMarco
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67015
From: dyoung@media.mit.edu (David Young)
Subject:  Macro Recorder/Player for X?



Is there aything available for X similar to QuicKeys for the Macintosh --
something that will allow me to store and playback sequences of keystrokes,
menu selections, and mouse actions - directing them towards another
application?

If so, could someone send me information on its availability -- and if not,
how hard do we think it might be to send input to other X applications and,
hopefully, deal with their responses appropriately?  (If an application is
going to take a few seconds to process I probably have to wait  for it to
complete before sending another command.)

thanks,

david,



Newsgroup: comp.windows.x
document_id: 67016
From: buzz@bear.com (Buzz Moschetti)
Subject: Monthly Question about XCopyArea() and Expose Events

(2nd posting of the question that just doesn't seem to get answered)

Suppose you have an idle app with a realized and mapped Window that contains
Xlib graphics.  A button widget, when pressed, will cause a new item
to be drawn in the Window.  This action clearly should not call XCopyArea() 
(or equiv) directly; instead, it should register the existence of the new
item in a memory structure and let the same expose event handler that handles
"regular" expose events (e.g. window manager-driven exposures) take care
of rendering the new image.  Using an expose event handler is a "proper" way
to do this because at the time the handler is called, the Xlib Window is
guaranteed to be mapped.

The problem, of course, is that no expose event is generated if the window
is already visible and mapped.  What we need to do is somehow "tickle" the
Window so that the expose handler is hit with arguments that will enable
it to render *just* the part of the window that contains the new item.

What is the best way to tickle a window to produce this behavior?

Newsgroup: comp.windows.x
document_id: 67018
From: aff209@tijc02.uucp (Ann Freeman    )
Subject: Seeking user experience with X-based test tools

Does anyone have any experience using XRunner, CAPBAK/X, or PreVueX
as an automated test tool for X?  Please email me directly with
opinions (both positive and negative).

Ann Freeman
Siemens Industrial Automation, Inc.
Johnson City, TN

aff209%tijc02@uunet.uu.net


Newsgroup: comp.windows.x
document_id: 67019
From: dyoung@media.mit.edu (David Young)
Subject: Drawing Lines (inverse/xor)

I'm trying to write some code that lets me draw lines and do rubber-band
boxes in Motif/X.  I'm running on an 8-bit display for which I've created a
colormap and am using almost all of the colors.  I want to draw the lines
in a drawing area widget -- a widget in which I'm displaying a bitmap using
XPutImage().  If doesn't matter if the lines I draw interactively stay
around when the window is refreshed.

Currently, to draw interactively, I begin with:

   /* drawIndex is an colortable index I reserve for the Foreground */
   /* my_default_bg_color is the color index for the background of my image */
   palette_colors[drawIndex].red =   palette_colors[my_default_bg_color].red;
   palette_colors[drawIndex].green = palette_colors[my_default_bg_color].green;
   palette_colors[drawIndex].blue =  palette_colors[my_default_bg_color].blue;
   XStoreColors( myDisplay, my_cmap, &palette_colors[DrawIndex], 1);
   XFlush( myDisplay);

   XSetFunction( myDisplay, gc, GXxor);
   XSetForeground( myDisplay, gc, drawIndex);

Then to draw I do:

   XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
   XFlush( myDisplay);

And when I'm all done, to return things to normal I do:

   XSetFunction( myDisplay, gc, GXcopy);


What I'd like to happen is for the lines I draw to be the inverse of
whatever I'm drawing over.  Instead what happens is I get white lines.  If
the lines are over a white background - nothing shows up.  If the lines are
over a black area - nothing shows up!  It's very strange.  But the GXxor
function seems right - since if I do a rubber-banding box, it erases and
redraws itself correctly (ie. not disturbing the underlying image).

Any suggestions what I'm doing wrong?

david

Newsgroup: comp.windows.x
document_id: 67020
From: mikey@eukanuba.wpd.sgi.com (Mike Yang)
Subject: Re: Monthly Question about XCopyArea() and Expose Events

In article <BUZZ.93Apr19125438@lion.bear.com>, buzz@bear.com (Buzz Moschetti) writes:
|> (2nd posting of the question that just doesn't seem to get answered)

How can we resist a questions that says something like this?

|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

If your Expose event handler is truly intelligent about exposed
rectangle information, then you can use XClearArea to generate an
Expose event (assuming that your background pixel is not None) for the
enclosing rectangle of your new item.

This is still not great, since any other items contained within that
rectangle will still be unnecessarily redrawn.

If your Expose event handler simply redraws everything, you'll be
doing much more work than just drawing the new item "on top" of the
existing scene.

-----------------------------------------------------------------------
                 Mike Yang        Silicon Graphics, Inc.
               mikey@sgi.com           415/390-1786

Newsgroup: comp.windows.x
document_id: 67021
From: nchan@nova.ctr.columbia.edu (Nui Chan)
Subject: how to put RPC in HP X/motif environment?


Hi, 

has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
is a notify_enable_rpc_svc() call that automatically executes the rpc processes
when it detects an incoming request. I wonder if there is a similar function in
HP X/motif that perform the same function.

any help is appreciated.

nui chan
nchan@ctr.columbia.edu

Newsgroup: comp.windows.x
document_id: 67022
From: graham@sparc1.ottawa.jade.COM (Jay Graham)
Subject: Mix GL with X (Xlib,Xt,mwm)


I am developing an X (Xt,Xm) application that will include a graphics window
of some sort with moving symbols among other things.  A pure X application
could be implemented with Motif widgets, one of which would be an 
XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).

Is it possible to mix X and GL in one application program?
Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
with XOpenWindow?

I have never used GL before, but the doc on GL winopen() says that the first
time winopen() is called it opens a connection to the server.   Also, most of
the GL calls do not require a Display or GC, unlike most X calls.  From this
initial information it appears that X and GL cannot be mixed easily.   Is this
true?

Does PEX (graPHIGS?) have the same functionality of GL?


Environment:
     AIXwindows X11R4
     Motif 1.1
     GL is available
     AIX Sys V 3.2
     IBM RS/6000 360


Thanks in advance.

Jay Graham
Jade Simulations International Corp.
14 Colonnade Road, Suite 150
Nepean, Ontario, Canada
613-225-5900 x226

graham@ottawa.jade.com


Newsgroup: comp.windows.x
document_id: 67023
From: dan@tremor.think.com (Dan Aronson)
Subject: drawing an abstract graph


I am looking for software to draw a graph.  I want to just give it a list
of nodes and edges between the nodes and have the program come up with some
reasonable positioning of it.  

Thanks in advance.

--Dan Aronson	dan@think.com
Thinking Machines Corporation

Newsgroup: comp.windows.x
document_id: 67024
From: Robert Andrew Ryan <rr2b+@andrew.cmu.edu>
Subject: Re: Monthly Question about XCopyArea() and Expose Events

Excerpts from netnews.comp.windows.x: 19-Apr-93 Monthly Question about
XCop.. Buzz Moschetti@bear.com (1055) 

> A button widget, when pressed, will cause a new item to be drawn in the
> Window.  This action clearly should not call XCopyArea() 
> (or equiv) directly; instead, it should register the existence of the
> new item in a memory structure and let the same expose event handler
> that handles "regular" expose events (e.g. window manager-driven
> exposures) take care of rendering the new image. 

Hmmm.... Clearly?  Depends on your programming model.  It is not at all
forbidden to draw outside the context of an expose event.  Certainly any
internal data structures should be maintained such that the visual
appearance would be maintained properly whenever an expose event happens
to be generated.  This doesn't preclude drawing immediately after
updating the datastructures though... 

-Rob 
 

Newsgroup: comp.windows.x
document_id: 67025
From: maher@kong.gsfc.nasa.gov (552)
Subject: Wanted: critiques on multi-windowing system toolkits

Any pointers to articles, or personal opinions, critiquing user
interface toolkits that operate across many windowing systems (e.g., X,
MS Windows, Macintosh) - you know, Open Interface, XVT, Aspect ...

If you reply with your opinion, please BRIEFLY state your choice and a
short discussion why.

Steve Maher

maher@outland.gsfc.nasa.gov
-- 
-----------------------------------------------------------------
Steve Maher                              (301) 286-5666 (voice)
Flight Dynamics Division                 maher@kong.gsfc.nasa.gov
NASA/Goddard Space Flight Center 

Newsgroup: comp.windows.x
document_id: 67026
From: ianhogg@milli.cs.umn.edu (Ian J. Hogg)
Subject: Re: how to put RPC in HP X/motif environment?

In article <1993Apr19.200740.17615@sol.ctr.columbia.edu> nchan@nova.ctr.columbia.edu (Nui Chan) writes:
>
>has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
>is a notify_enable_rpc_svc() call that automatically executes the rpc processes
>when it detects an incoming request. I wonder if there is a similar function in
>HP X/motif that perform the same function.
>

I've been using the xrpc package for about a year now.  I believe I got it from
export.  

--
===============================================================================
Ian Hogg						ianhogg@cs.umn.edu
                                                        (612) 424-6332

Newsgroup: comp.windows.x
document_id: 67027
From: yang@cs.umass.edu (Hong Yang)
Subject: colormap question

Hi, Experts, 

I'm kind of new to X. The following question is strange to me. I am
trying to modify the contents of the colormap but failed without
reason (to me). I am using the following piece of code:


  toplevel = XtInitialize(argv[0], "Testcolor", NULL, 0,
			  &argc, argv);
  dpy = XtDisplay(toplevel);
  scr = DefaultScreen(dpy);
  def_colormap = DefaultColormap(dpy,scr);

  if(XAllocColorCells(dpy, def_colormap, True, NULL, 0, cells, 5)) {
    color.pixel = cells[0];
    color.red = 250;
    color.green = 125;
    color.blue = 0;
    color.flags = DoRed | DoGreen | DoBlue;
    XStoreColor(dpy, def_colormap, &color);
    printf("\n Try to allocate, the color %d as (%d,%d,%d)",
	   color.pixel, color.red, color.green, color.blue); 

    XQueryColor(dpy, def_colormap, &color);
    printf("\n After  allocate, the color %d is (%d,%d,%d)",
	   color.pixel, color.red, color.green, color.blue); 
  }
  else
    printf("\n Error: couldn't allocate color cells");


Running output:

     Try to allocate, the color 7 as (250,125,0)
     After  allocate, the color 7 is (0,0,0)

After XStoreColor(), XQueryColor() just returned the original value. 
No failure/error displayed but the contents of colormap are obvious
unchanged. (I also tried to draw a line using the colors but it 
turned out to be the unmodified colors.)

So what is my problem? How to modify the contents of the colormap?

Any help/information will be appreciated. Please send mail to
"yang@cs.umass.edu".

--------------------------
William 
email: "yang@cs.umass.edu"
--------------------------


By the way, the following is the environment I am using (output of
"xdpyinfo"). It shows the default visual is PseudoColor.

version number:    11.0
vendor string:    DECWINDOWS DigitalEquipmentCorporation UWS4.2
vendor release number:    1
maximum request size:  16384 longwords (65536 bytes)
motion buffer size:  100
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    2
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
keycode range:    minimum 86, maximum 251
number of extensions:    8
    Adobe-DPS-Extension
    DPSExtension
    SHAPE
    MIT-SHM
    Multi-Buffering
    XInputExtension
    MIT-SUNDRY-NONSTANDARD
    DEC-XTRAP
default screen number:    0
number of screens:    1

screen #0:
  dimensions:    1024x864 pixels (333x281 millimeters)
  resolution:    78x78 dots per inch
  depths (2):    1, 8
  root window id:    0x29
  depth of root window:    8 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x27
  default number of colormap cells:    256
  preallocated pixels:    black 1, white 0
  options:    backing-store YES, save-unders YES
  current input event mask:    0xd0001d
    KeyPressMask             ButtonPressMask          ButtonReleaseMask        
    EnterWindowMask          SubstructureRedirectMask PropertyChangeMask       
    ColormapChangeMask       
  number of visuals:    5
  default visual id:  0x21
  visual:
    visual id:    0x21
    class:    PseudoColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x22
    class:    GrayScale
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x23
    class:    StaticGray
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x24
    class:    StaticColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x7, 0x38, 0xc0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x25
    class:    TrueColor
    depth:    8 planes
    size of colormap:    8 entries
    red, green, blue masks:    0x7, 0x38, 0xc0
    significant bits in color specification:    8 bits
  number of mono multibuffer types:    5
    visual id, max buffers, depth:    0x21, 0, 8
    visual id, max buffers, depth:    0x22, 0, 8
    visual id, max buffers, depth:    0x23, 0, 8
    visual id, max buffers, depth:    0x24, 0, 8
    visual id, max buffers, depth:    0x25, 0, 8
  number of stereo multibuffer types:    0


Newsgroup: comp.windows.x
document_id: 67028
From: dshaker@qualix.com (Doug Shaker)
Subject: Re: MacX 1.2 color problem

In article KuL@ux1.cso.uiuc.edu, kerr@ux1.cso.uiuc.edu (Stan Kerr) writes:
>I have a peculiar color problem with MacX, Apple's Macintosh X server.
>I'd like to know if others have seen the same problem. It's happened
>with the current version (1.2), and with version 1.1.7.
>When some types of client windows are displayed, parts of the windows
>are in the wrong color; if the window is moved slightly, forcing the server
>to repaint it, it is repainted in the correct colors. It doesn't happen
>for xterm windows, but has happened for graphic windows and with some
>Motif clients.

I expect what is going on here is that your colormap is full and, when the new application starts up, it cannot add the colors that it needs to the colormap.
It therefore has to pick and choose from the existing colors.  This makes it look
ugly until it's window gets priority.  Then Macx changes the colormap so that
the selected app is getting the exact colors it wanted, but now other applications
are having to make do with it's colormap.

This is a problem with all color X servers (or at least all color Xservers I have
seen) when the demands of the applications exceed the size of the colormap.
My solution is usually to (1) avoid colormap-greedy apps and (2) display
applications where color is just icing on the cake in monochrome mode rather
than in color (if this is an option for the application).

 - Doug Shaker
	voice:	415/572-0200
	fax:	415/572-1300
	email:	dshaker@qualix.com
	mail:	Qualix Group
		1900 S. Norfolk St., #224
		San Mateo, CA 94403

Qualix maintains a mailserver with information files and demo
versions of products.  If you would like more information on
the mailserver, send an email to qfacts@qualix.com (or 
uunet!qualix!qfacts).  The email should take the following
form:
	BEGIN
	send help
	send index
	END
	Name
	Address
	Phone


Newsgroup: comp.windows.x
document_id: 67029
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Forcing a window manager to accept specific coordinates for a window


	Hi. I'm trying to figure out how to make a window manager
place the window where the create window command tells it,
regardless of what it may think is right. (my application has
reason to know better)

	I don't want to set the override-redirect because I do
want all the embellishments that the window manager gives, I just
want the wm to accept my choice of location.

	I've tried twm, tvtwm and mwm and they are all
uncooperative.

	Thanks,
	-- Ethan



Newsgroup: comp.windows.x
document_id: 67030
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: Mysterious beeping

In article <C5qtKK.wp@cup.hp.com>, defaria@cup.hp.com (Andy DeFaria) writes:
|> [ Article crossposted from hp.windows ]
|> [ Author was Andy DeFaria ]
|> [ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]
|> 
|> For some reason the following code causes my X application to beep whenever I
|> intercept a keystroke and change it's meaning.  The intent of this code it to
|> allow "date" fields the following special keys:
|> 
|> 	[Tt]:	Insert today's date
|> 	[+=]:	Bump day up by one
|> 	[-_]:	Bump day down by one
|> 
|> I hardcoded some dates for this example.  Perhaps I shouldn't be using an
|> XmText field for this.
|> 
|> ////////////////////////////////////////////////////////////////////////////// 
|> // 
|> // For some reason the following code beeps whenever any of the special keys
|> // of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
|> // keys having the special meaning implied by the code.  I would like to get
|> // rid of the beeping but, as far as I can tell, I'm not doing the beep and 
|> // am at a lose as to understanding who and why the beeping is occuring.
|> // 
|> ////////////////////////////////////////////////////////////////////////////// 

code deleted...

From the XmTextField man page (during discussion of resources):

   XmNverifyBell

      Specifies whether a bell will sound when an action is reversed
      during a verification callback.

You are setting doit to false in the callback, and Text[Field] is beeping
as it should.  To turn off this behavior, set this boolean resource to false.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
document_id: 67031
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Monthly Question about XCopyArea() and Expose Events


|> (2nd posting of the question that just doesn't seem to get answered)
|> 
|> Suppose you have an idle app with a realized and mapped Window that contains
|> Xlib graphics.  A button widget, when pressed, will cause a new item
|> to be drawn in the Window.  This action clearly should not call XCopyArea() 
|> (or equiv) directly; instead, it should register the existence of the new
|> item in a memory structure and let the same expose event handler that handles
|> "regular" expose events (e.g. window manager-driven exposures) take care
|> of rendering the new image.  Using an expose event handler is a "proper" way
|> to do this because at the time the handler is called, the Xlib Window is
|> guaranteed to be mapped.
|> 
|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

If I understand your problem correctly, you want to have a way to send
exposures to your manager widget when your app-specific code draws xlib
graphics on the window.

It sounds like you might want to send an exposure using
XSendEvent and specifying a region. If you know the region you need to
send the exposure, generally you have the bounding rectangle of the objects,
you can use XCreateRegion to create a region, XUnionRectWithRegion to add the
new object polygons to the region, and then either use the region
to clip your GC for the redraw or use XRectInRegion to test which of your
other objects need to be redrawn. Keeping in mind that the stacking order
of overlapping objects affects how they look.

Hope it helps

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 67032
From: yue1016@cs.uh.edu (Yue Huang)
Subject: Ask the ftp address of "Kerberos Version 5 draft RFC"



Newsgroup: comp.windows.x
document_id: 67033
From: masc0442@ucsnews.sdsu.edu (Todd Greene)
Subject: How do I find my AppContext?



Is there an Xt call to give me my application context?
I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
whose first argument is the app_context.  What call can I use
to give me this value?


Thanks,
    Todd Greene
    masc0442@ucssun1.sdsu.edu

~


Newsgroup: comp.windows.x
document_id: 67034
From: nancie@neko.CSS.GOV (Nancie P. Marin)
Subject: Re: XCopyPlane Question

In article <BUZZ.93Apr19101538@lion.bear.com> buzz@bear.com (Buzz Moschetti) write
>In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
>>   don't show up: do you wait for an expose event before drawing your
>>   rectangle?
>
>Suppose you have an idle app with a realized and mapped Window that contains
>Xlib graphics.  A button widget, when pressed, will cause a new item
>to be drawn in the Window.  This action clearly should not call XCopyArea() 
>(or equiv) directly; instead, it should register the existence of the new
>item in a memory structure and let the expose event handler take care
>of rendering the image because at that time it is guaranteed that the
>Window is mapped.
>
>The problem, of course, is that no expose event is generated if the window
>is visible and mapped.  Do you know the best way to "tickle" a window so
>that the expose event handler will be invoked to draw this new item?
>

What does this have to do with my original question???  I previously
stated that I did an XCopyArea of the depth-8 pixmap to the screen
just to make sure that my image had data, and it did.  This is NOT
a problem with expose events, it has to do with XCopyPlane not
working!!!

Does anyone have a code fragment they could send demonstrating that
XCopyPlane works???  This would be very helpful!

Thanks!

 ----------------------------------------------------------------
 Nancie P. Marin      NET:  nancie@neko.css.gov
 ENSCO Inc.           MAIL: 445 Pineda Ct.  Melbourne, Fl.  32940
 (407)254-4122        FAX:  (407)254-3293
 ----------------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67035
From: tom@DONT_USE.NETcom.COM (Thomas Tulinsky)
Subject: Wcl for Solaris 2?

Is there a version of Wcl that has been ported to Solaris 2, including
ANSI C? I had numerous problems trying to compile Wcl under Solaris, 
and the functions do not have prototypes.  

I have Wcl 2.01 from the Sun User Group's 1992 CDs.

Please email answers as I am not on this list.


----------------------------------------------------------------------------
Tom Tulinsky		Capital Management Sciences	    West Los Angeles
			        310 479 9715
MANUALLY ADDRESS answers to:
	zuma!tom@netcomsv.netcom.com


Newsgroup: comp.windows.x
document_id: 67036
From: adrian@ora.COM (Adrian Nye)
Subject: Re:  xwininfo



> I want to do the equivalent of an "xwininfo -name" via a call or set of calls
> in Xlib.  I need to map a windows name to its id.
> It's probably easy, but I've only been programming in X for a little while.

Do you have the X source code?  Simply look in mit/clients/xwininfo/xwininfo.c and you
will find out exactly how to do it.  :-)

Adrian Nye
O'Reilly and Associates.

Newsgroup: comp.windows.x
document_id: 67037
From: vgalvez@itesocci.gdl.ITeso.MX (Virginia Galvez)
Subject: (none)

I am working on a problem of scheduling classroom, and I will like to know if
you have some software, papers or articles about it. If you have something
relate it,  please let me know.

		thanks

		Lorenza Illanes

Newsgroup: comp.windows.x
document_id: 67038
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

> 
> In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
> >   Actually, I must also ask the FAQ's #1 most popular reason why graphics
> >   don't show up: do you wait for an expose event before drawing your
> >   rectangle?
> 
> Suppose you have an idle app with a realized and mapped Window that contains
> Xlib graphics.  A button widget, when pressed, will cause a new item
> to be drawn in the Window.  This action clearly should not call XCopyArea() 
> (or equiv) directly; instead, it should register the existence of the new
> item in a memory structure and let the expose event handler take care
> of rendering the image because at that time it is guaranteed that the
> Window is mapped.
> 
> The problem, of course, is that no expose event is generated if the window
> is visible and mapped.  Do you know the best way to "tickle" a window so
> that the expose event handler will be invoked to draw this new item?

I specifically made the above comment assuming that perhaps the code fragment
came from a simple "open-draw-quit" client.  

As per your question: why not have the button handler add the object, and
then call the "window_redraw()" (or whatever) directly?  Although, depending
on how the overall application is structured, there may be no problem with
rendering the object directly in response to the button press.

	Ken

--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
document_id: 67039
From: ramakris@csgrad.cs.vt.edu (S.Ramakrishnan)
Subject: Mwm title-drag crashes X server (SIGPIPE)


   Environment:
      mach/arch : sparc/sun4  (IPX)
      OS	: SunOS 4.1.3
      X11	: X11R5 (patchlevel 22)
      Motif	: 1.2.2

I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
to X server lost):

   1. xinit -- Xsun
   2. start mwm
   3. start a client with a 100dpi/75dpi font.
   4. move the window by dragging the title bar.

The server dumps core due to SIGPIPE. One of the two messages is printed:

  "Connection to X server lost"

or
  
  "Connection broken (errno=32)"

(I believe the first is reported by a client and the second by the server itself).

Next, I ran xdm in debug level = 5. After the same set of actions, xdm reports:

  select returns -1
  Server for :0 terminated unexpectedly: status 2560


Note:
 * The problem doesn't occur with other window managers (twm or olwm). 
 * I have not set LD_LIBRARY_PATH. 
 * I am not running font server. 
 * If I start the client with fixed width font, I do not see this problem.
 * My font path:
     /usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/Speedo/,/usr/lib/X11/fonts/75dpi/,/usr/lib/X11/fonts/100dpi

   (I did mkfontdir in /usr/lib/X11/fonts/100dpi, /usr/lib/X11/fonts/75dpi,
   /usr/lib/X11/fonts/PEX, /usr/lib/X11/fonts/Speedo,
   and in /usr/lib/X11/fonts/misc).

 * This problem seems to occur only on IPX machines. I do not see this 
   problem on IPC workstations.

Questions:
 * What the hell is goin on ? :-)
 * What does "status 2560" mean (of the server).

I'd greatly appreciate any hints as to the cause of the problem.

---
S Ramakrishnan, CS Dept, McBryde Hall, VaTech

Newsgroup: comp.windows.x
document_id: 67040
From: dale@wente.llnl.gov (Dale M. Slone)
Subject: xlock

I found an oddity with our SGI Indigo (MIPS R3000 chip).
When xlock +nolock is running, and I am working remotely
or in batch (at) mode, the runtime of my programs (as timed
by using clock() in the code itself) is ~25% slower than if
xlock is NOT running.  No other processes seem to affect my
runtimes, yet this is very consistent!

Any explanations, real or imagined :)

thanx
dale@frostedflakes.llnl.gov

Newsgroup: comp.windows.x
document_id: 67041
From: cjhs@minster.york.ac.uk
Subject: Xt intrinsics: slow popups

Help: I am running some sample problems from O'Reilly volume 4,
Xt Intrisics Programming Manual, chapter 3. popup
dialog boxes and so on.

In example 3.5, page 76 : "Creating a pop-up dialog box"

The application creates window with a button "Quit" and "Press me".
The button "Press me" pops up a dialog box. The strange feature of
this program is that it always pops up the dialog box much faster the
first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
it is *much* slower.

Has anyone any experience with these sample programs, or why I get
this behaviour - fast response time for the first time but slow response
time from 2nd time onwards ?
Anyone can give me some ideas on how to program popups so that each time
they popup in reasonable fast response time ?

Thankyou - Shirley

Newsgroup: comp.windows.x
document_id: 67042
From: janzen@lichen.mpr.ca (Martin Janzen)
Subject: Re: how to put RPC in HP X/motif environment?

In article <C5r03J.Gu3@news2.cis.umn.edu>, ianhogg@milli.cs.umn.edu (Ian J. Hogg) writes:
>In article <1993Apr19.200740.17615@sol.ctr.columbia.edu> nchan@nova.ctr.columbia.edu (Nui Chan) writes:
>>has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
>>is a notify_enable_rpc_svc() call that automatically executes the rpc processes
>>when it detects an incoming request. I wonder if there is a similar function in
>>HP X/motif that perform the same function.
>
>I've been using the xrpc package for about a year now.  I believe I got it from
>export.  

Glad to hear that it's working for you!

I couldn't find it on "export".  However, Simon Leinen
<simon@liasun6.epfl.ch> has added an Imakefile and an Athena
version, and made it available for FTP in the file
liasun3.epfl.ch:/pub/X/contrib/xrpc.tar.z.  (Note the ".z"
suffix; you'll need GNU gzip -- also on liasun3 in /pub/gnu --
to uncompress it.)  

If this doesn't work, send me a note and I'd be happy to mail you
a copy; but you probably won't get it until the start of May --
I'm on holidays as of tomorrow! :-)

-- 
Martin Janzen  janzen@mprgate.mpr.ca (134.87.131.13)
MPR Teltech Ltd.  8999 Nelson Way  Burnaby, BC, CANADA  V5A 4B5


P.S. Are there any Dublin X folks that want to go for a pint of
Guinness at, say, Mulligan's...?

Newsgroup: comp.windows.x
document_id: 67043
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Drawing Lines (inverse/xor)

#
#I'm trying to write some code that lets me draw lines and do rubber-band
#boxes in Motif/X.  I'm running on an 8-bit display for which I've created a
#colormap and am using almost all of the colors.  I want to draw the lines
#in a drawing area widget -- a widget in which I'm displaying a bitmap using
#XPutImage().  If doesn't matter if the lines I draw interactively stay
#around when the window is refreshed.
#
#Currently, to draw interactively, I begin with:
#
#   /* drawIndex is an colortable index I reserve for the Foreground */
#   /* my_default_bg_color is the color index for the background of my image */
#   palette_colors[drawIndex].red =   palette_colors[my_default_bg_color].red;
#   palette_colors[drawIndex].green = palette_colors[my_default_bg_color].green;
#   palette_colors[drawIndex].blue =  palette_colors[my_default_bg_color].blue;
#   XStoreColors( myDisplay, my_cmap, &palette_colors[DrawIndex], 1);
#   XFlush( myDisplay);
#
#   XSetFunction( myDisplay, gc, GXxor);
#   XSetForeground( myDisplay, gc, drawIndex);
#
#Then to draw I do:
#
#   XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
#   XFlush( myDisplay);
#
#And when I'm all done, to return things to normal I do:
#
#   XSetFunction( myDisplay, gc, GXcopy);
#
#
#What I'd like to happen is for the lines I draw to be the inverse of
#whatever I'm drawing over.  Instead what happens is I get white lines.  If
#the lines are over a white background - nothing shows up.  If the lines are
#over a black area - nothing shows up!  It's very strange.  But the GXxor
#function seems right - since if I do a rubber-banding box, it erases and
#redraws itself correctly (ie. not disturbing the underlying image).
#
#Any suggestions what I'm doing wrong?
#

I believe for this to work on a color display you must set the foreground of
the GC to be (foreground^background).

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67044
From: baileyc@ucsu.Colorado.EDU (Christopher R. Bailey)
Subject: How do I cause a timeout?


I have a problem where an Athena strip chart widget is not calling it's
get value function.  I am pretty sure this is happening because I am
not using XtAppMainLoop, but am dealing with events via sockets.  (ya ya).

Anyway, I want to cause a timeout so that the strip chart widget(s) will
call their get value callback.  Or if someone knows another FAST way around
this (or any way for that matter) let me know.  I cannot (or I don't think)
call the XtNgetValue callback myself because I don't have the value for
the third parameter of the get value proc (XtPointer call_data).  

In other words, I want to force a strip chart widget to update itself.

Any ideas anyone?  

-- 
Christopher R. Bailey            |Internet: baileyc@dendrite.cs.colorado.edu
University of Colorado at Boulder|CompuServe: 70403,1522
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
Ride Fast, Take Chances!

Newsgroup: comp.windows.x
document_id: 67045
From: cerna@ntep.tmg.nec.co.JP (Alexander Cerna (SV))
Subject: transparent widgets--how?

I need to write an application which does annotation notes
on existing documents.  The annotation could be done several
times by different people.  The idea is something like having
several acetate transparencies stacked on top of each other
so that the user can see through all of them.  I've seen
something like this being done by the oclock client.
Could someone please tell me how to do it in Xt?
Thank you very much.

Newsgroup: comp.windows.x
document_id: 67046
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: Re: Multi-screen apps and window managers

: ========================================================================
: Jo Pelkey                                   Phone: (509)375-6947
: Battelle Pacific Northwest Labs             Fax:   (509)375-3641
: Mail Stop K7-22                             Email: je_pelkey@pnl.gov
: P.O. Box 999
: Richland, WA  99352
: ========================================================================

Hi Jo,

I'm also interested in your questions, so if you get any
answers via email and not via repost please let me know.

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 67047
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: How do I find by AppContext

# 
# 
# Is there an Xt call to give me my application context?
# I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
# whose first argument is the app_context.  What call can I use
# to give me this value?
# 

Use XtDisplayToApplicationContext() to retreive the application context.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long
Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67048
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: X Device Driver for Bird

Has anyone written a device driver to use the Ascension bird with XWindows ? 


      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_


***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************

Newsgroup: comp.windows.x
document_id: 67049
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: Re: Forcing a window manager to accept specific coordinates for a window


In article <C5r25y.HFz@cs.columbia.edu> Ethan Solomita writes:
> 
> 	Hi. I'm trying to figure out how to make a window manager
> place the window where the create window command tells it,
> regardless of what it may think is right. (my application has
> reason to know better)
> 
> 	I don't want to set the override-redirect because I do
> want all the embellishments that the window manager gives, I just
> want the wm to accept my choice of location.

	window = XCreateWindow(...);
	XSetTransientForHint(display, window, window);
	XMapWindow(...);

This is probably cheating, and some window managers might STILL refuse to 
give it a border and all that other stuff, but it usually works.

Newsgroup: comp.windows.x
document_id: 67050
From: root@netdev.comsys.com (Operator)
Subject: DevGuide with Motif - Solaris 2.2 to ease Motif burden ..


 We've developed a number of applications using DevGuide and found it to 
be a very useful tool. I've been impressed with the level of integration it
affords using the connection editor. I love the general ease of use.
 
 I talked with Tali Aben at Sun today about DevGuide + Motif. She was very
helpful. We provided some input as to what we'd like to see in the next
version of DevGuide. Tali was very enthusiatic about our comments. I mentioned
I was going to post this email message and she offered to receive additional
comments from the net on what DevGuide should evolve into. 
 
 Send your comments/wish-list, raving, et. al. about DevGuide to:

  Tali.Aben@Sun.COM


 Pretty cool example of a company that cares what we want.... More of this
and computers may have a future.

 Frankly, I like the idea that it will offer some migration capability
to DOE/DOMF through an integrated ToolTalk capability, pointed out in March's 
SunExpert magazine. 

 Technology works, we can crankout the interfaces with DevGuide. Price is 
outstanding. 

Newsgroup: comp.windows.x
document_id: 67051
From: alf@st.nepean.uws.edu.au (Andrew Leahy)
Subject: Running dxterm's onto Apollo from DEC 5000/240


Help!

I'm trying to run dxterm's (DECs' xterm) on a DECstation 5000/240
(Ultrix 4.3, X11R4, Motif 1.1.3) with the DISPLAY variable set to an
Apollo DN2500 (Domain/OS 10.3, X11R4, Motif ?.?).

I get these errors appearing on the DECstation:

> dxterm
X Toolkit Warning: Cannot convert string "<Key>apCharDel        " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apCopy   " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apCut    " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apPaste  " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apUpBox  " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apDownBox        " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apRightBar       " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apLeftBar        " to type VirtualBinding
Segmentation fault
>

Any ideas? Is it a Motif problem...are the DEC and Apollo versions of Motif
incompatible? Or something to do with XKeysymDB?

(xterms run fine on DEC displaying on Apollo..arggh)

I need to run dxterm because the package we are using on the DEC's, Oracle Case,
uses dxterm by default, and we have a lab of Apollo workstations we would like
to run Oracle from.

Andrew "Alf" Leahy, alf@st.nepean.uws.edu.au
--
__________________________________________________________________________
Andrew "Alf" Leahy                  phone: (047) 360771 (W) irc: pepsi-alf
Uni. Western Sydney, Nepean.        Remote-email: alf@st.nepean.uws.edu.au
Sydney, Australia.                  Local-email: alf

Newsgroup: comp.windows.x
document_id: 67052
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: XAllocColor fails to return nearest match

[posted for a friend]

Okay, I looked through the FAQs and didn't see this, but I know its
come up before...

XAllocColor is supposed to do the following in order:
    Try to find an exact match read-only color cell. (within hardware limits)
    Try to allocate a read-only colorcell and set it to match.
	and when all else fails, 
    Return the colorcell with the best match from the read-only colors 
    already allocated in the colormap.

This sounds good in theory.  It doesn't seem to work this way
though.  If there is no exact match already in the colormap, and 
no unallocated cells, then XAllocColor fails, even when it has 
already allocated several other cells already, and there are dozens 
of read-only cells already in the colormap.

Is this a bug?  A feature?  A misunderstanding on my part?

Any help appreciated,

Noel (ngorelic@speclab.cr.usgs.gov)

Newsgroup: comp.windows.x
document_id: 67053
From: snail@lsl.co.uk
Subject: Re: Xlib for MS/WINDOWS not an XSERVER!!!

In article <1993Apr7.044749.11770@topgun>, smikes@topgun (Steven Mikes) writes:
> Another company, Congruent Corporation of New York City, has also ported Xlib
> Xt and Motif 1.1 over to MS Windows NT, which provides full client development
> for X applications in an NT environment.

Could someone please send me the postal and email address of
Congruent Corporation (and any competitors they may have).

Thank you.
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
document_id: 67054
From: buzz@bear.com (Buzz Moschetti)
Subject: Re: XCopyPlane Question

In article <WHALEY.93Apr19171228@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>   As per your question: why not have the button handler add the object, and
>   then call the "window_redraw()" (or whatever) directly?  Although, depending

This design will work but I don't think it can take easily take advantage
of expose event redraw optimization; that is, the whole window will be
redrawn, not just the area with the new item.

P.S.  I'm replying here because my/your mailer didn't agree with the
      return address whaley@sigma.kpc.com.

Newsgroup: comp.windows.x
document_id: 67055
From: gvanvugh@cs.uct.ac.za (Gerhard van Vught)
Subject: Problem with libararies (?)

I have been trying to compile some source code for a mpeg animation viewer for
X Windows. I got the code from a ftp site. I have modified the Makefile as
they instructed, no errors there. What happens is that I get the following
message when everything is going to be linked:


	cc  util.o video.o parseblock.o motionvector.o decoders.o  fs2.o fs2fast.o fs4.o hybrid.o hybriderr.o 2x2.o  gdith.o gray.o mono.o main.o jrevdct.o 24bit.o util32.o ordered.o  ordered2.o mb_ordered.o /lib/libX11.so /lib/libXext.so -lm -o mpeg_play
Undefined			first referenced
 symbol  			    in file
getnetpath                          /lib/libX11.so
t_alloc                             /lib/libX11.so
t_unbind                            /lib/libX11.so
t_open                              /lib/libX11.so
t_rcvdis                            /lib/libX11.so
netdir_free                         /lib/libX11.so
t_error                             /lib/libX11.so
netdir_getbyname                    /lib/libX11.so
getnetconfigent                     /lib/libX11.so
t_look                              /lib/libX11.so
t_errno                             /lib/libX11.so
t_close                             /lib/libX11.so
netdir_getbyaddr                    /lib/libX11.so
t_listen                            /lib/libX11.so
t_rcv                               /lib/libX11.so
setnetpath                          /lib/libX11.so
t_bind                              /lib/libX11.so
t_connect                           /lib/libX11.so
t_accept                            /lib/libX11.so
nc_perror                           /lib/libX11.so
inet_addr                           /lib/libX11.so
ld: mpeg_play: fatal error: Symbol referencing errors. No output written to mpeg_play
*** Error code 1 (bu21)

make: fatal error.

Does anyone know where these missing functions are located? If you do can you
help me with it?

I posted before to one of the other Unix groups, I tried their suggestions but
always get this error.

If you have to know: I am using Unix system V. The machines here are 486's. The
terminals I want to use are separate and just called X-terminals and they seem
dedicated to that. I'm not sure as to what they really are, since it is one of
my first times out with this X-windows gidget! That is, first time programming
for it, so to speak. I use them alot just for the graphics things.

If you can help, mail me soon.

Gerard.

Newsgroup: comp.windows.x
document_id: 67056
From: leon@dimatrix.DK (Leon Thrane)
Subject: X Intrinsic mailing list

As we don't get a newsfeed I was wondering whether there was such a
thing as a Xt mailing list (other than xpert@expo.lcs.mit.edu).  I
would appreciate any info on this, (or X related mailing lists.)

        Thanks in advance,

        Leon

+-------------------------------+---------------------------------+
| Leon Thrane                   | Telephone:    +45 - 45 93 51 00 |
| DimatriX ApS                  | FAX:          +45 - 45 93 51 11 |
| Lyngby Hovedgade 15D          | E-mail:       leon@dimatrix.dk  |
| DK-2800 Lyngby, Denmark       | or   ...!uunet!dimatrix.dk!leon |
+-------------------------------+---------------------------------+

Newsgroup: comp.windows.x
document_id: 67057
From: bryan@alex.com (Bryan Boreham)
Subject: Re: Xt intrinsics: slow popups

In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> The application creates window with a button "Quit" and "Press me".
> The button "Press me" pops up a dialog box. The strange feature of
> this program is that it always pops up the dialog box much faster the
> first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
> it is *much* slower.

The shell is waiting for the window-manager to respond to its
positioning request.  The window-manager is not responding because
it thinks the window is already in the right place.

Exactly *why* the two components get into this sulk is unclear to
me; all information greatly received.

Bryan.

Newsgroup: comp.windows.x
document_id: 67058
From: btaylor@mcl.bdm.com (Brent Taylor)
Subject: XDM & DECnet ?

Does XDM work with DECnet? I have an Ultrix machine running both TCP/IP
and DECnet. I have a number of X-terminals hanging off the Ultrix host also
running TCP/IP and DECnet. Presently I am using XDM for the login procedure
on the X-terminals using TCP/IP. Since XDM is basically just an X-windows
client, shouldn't I be able to run XDM on the DECnet protocol tower as well?

My first inclination is that XDM is not your typical X client. It is making
TCP/IP specific socket calls. In this case the answer would be no; you can
not run XDM over DECnet. Is this right or not? Any feedback is appreciated.
Thanks.

Newsgroup: comp.windows.x
document_id: 67059
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: compiling on sun4_411

In article qfe00WB2QzZ7EZ@andrew.cmu.edu, Wilson Swee <ws8n+@andrew.cmu.edu> () writes:
|>    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
|>well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
|>undefined ld errors:
|>_sin
|>_cos
|>_pow
|>_floor
|>_get_wmShellWidgetClass
|>_get_applicationShellWidgetClass
|>
|>The following libraries that I linked it to are:
|>-lXaw -lXmu -lXt -lXext -lX11
|>
|>The makefile is generated off an imake template.
|>Can anyone give me pointers as to what I'm missing out to compile on
|>a sun4_411?

Well, the first 2 are easy.  You need the math library.  Try adding -lm after
-lX11.  Don't know if that's the whole problem but it's a start.

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
document_id: 67061
From: N.R.Ellis@newcastle.ac.uk (Nigel R. Ellis)
Subject: Keyboard map for UK type 5 keyboard under X11/R5?

Hi,

does anyone have a keyboard map for a Sun UK type 5 keyboard for use under
X11/R5 ?

Thanks,

Nigel.

--
============================================================================
| Nigel R Ellis, Artificial Intelligence Group, | N.R.Ellis@durham.ac.uk   |
| Computer Science, University of Durham,       | Phne: +44.91.374.2549    |
| Durham. England DH1 3LE                       | Fax : +44.91.374.3741    |
============================================================================


Newsgroup: comp.windows.x
document_id: 67062
From: aruit@idca.tds.philips.nl (Anton de Ruiter)
Subject: ??? TOP-30 MOTIF Applications ???

Hello everybody,

I am searching for (business) information of Motif applications, to create a
TOP-30 of most used WordProcessors, Spreadsheets, Drawing programs, Schedulers
and Fax programs, etc..

Please mail me all your information or references.  I will summaries the
results on this media.


Thank you in advance,

Anton de Ruiter.

+----------------------------------------------------------------------------+
|  _                       __            |Digital Equipment Corporation      |
| /_| __ /_ _  __  __/_   /__)   ./_ _  _|WorkGroup Products (WGP)           |
|/  |/ /(_ (_)/ / (_/(-' / \ (_//(_ (-'/ |OBjectWorks (OBW)                  |
|                                        |Ing. Anton de Ruiter MBA           |
|                                        |Software Product Manager           |
|                     __                 |Post Office Box 245                |
|       |   /_  _ /_ / _'_ _     _       |7300 AE  Apeldoorn, The Netherlands|
|       |/|/(_)/ /\ (__// (_)(_//_)      |Oude Apeldoornseweg 41-45          |
|                              /         |7333 NR  Apeldoorn, The Netherlands|
|          __                            |-----------------------------------|
|         /__)_ _  __/   _  /_  _        |Mail    : HLDE01::RUITER_A         |
|        /   / (_)(_/(_/(_ (_ _\         |DTN     : 829-4359                 |
|                                        |Location: APD/F1-A22               |
|                                        |-----------------------------------|
|     __  _                              |Internet: aruit@idca.tds.philips.nl|
|    /  )/_) ._  _  /_ |   /_  _ /_  _   |UUCP    : ..!mcsun!philapd!aruit   |
|   (__//__)/(-'(_ (_  |/|/(_)/ /\ _\    |Phone   : 31 55   434359 (Business)|
|         _/                             |Phone   : 31 5486 18199  (Private) |
|                                        |Fax     : 31 55   432199           |
+----------------------------------------------------------------------------+

Newsgroup: comp.windows.x
document_id: 67063
From: wpwood@darkwing.austin.ibm.com
Subject: GCC and Building the HP Widget Set on Linux


I am currently attempting to get a copy of the HP Widget set compiled
under Linux (SLS Release with kernel 99.6) and am running into some
problems.  Actually, it seems that this is more of a GCC question,
because I got it to compile without trouble using cc on an RS/6000.
	Basically, there are a number of functions with prototypes
set up in, let's say, CompositeP.h, for instance, the composite
widget's insert_child procedure is set up with the type :

	typedef void (*XtWidgetProc) (Widget)

but in several places in the HP source code, they reference the
insert_child procedure and pass it multiple arguments instead of just
one, as the prototype suggests.  For example:

	(*superclass->composite_class.insert_child)(w, args, p_num_args)

Now, GCC chokes on this, giving an error message that too many arguments
are passed to the function.  So, does anyone have any suggestions as to
how to turn off this checking in GCC, or how I can go about changing the
code to accomodate this call without changing /usr/include/X11/CompositeP.h,
or has anyone successfully built the HP widget set and have any suggestions.
	Many thanks in advance for any help.

--
<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Bill Woodward        | wpwood@austin.ibm.com   <-- Try this first
AIX Software Support | billw@aixwiz.austin.ibm.com  
Graphics Group       | 512-838-2834
I am the terror that flaps in the night.

Newsgroup: comp.windows.x
document_id: 67064
From: weisberg@ee.rochester.edu (Jeff Weisberg)
Subject: Problem: R5 server hangs on Sun3


I recently compiled the X11R5pl22 sources using gcc-2.3.3 on
a Sun3/80. Everything seems to work fine. Usually. But at
seemingly random times the server will just hang. I will
click the mouse somewhere (never happens while my back is turned),
and without warning, it will freeze there, requiring the server
to be killed. Sometimes it will run fine for weeks, sometimes
only for minutes.

(Os: 4.1.1; frame buffer: bw2).

Has anyone seen this before, any ideas? (anything at all?)

thanks,
	--jeff

---
Jeff Weisberg  |  weisberg@ee.rochester.edu   |    Real Cherries,
               |  ur-valhalla!weisberg        |        Watch for pits!

Newsgroup: comp.windows.x
document_id: 67065
From: pannon@bcsfse.ca.boeing.com (Joe Pannon)
Subject: Re: Motif vs. [Athena, etc.]

In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:

|> Ports of Motif to both 386BSD and Linux are available for a fee of about
|> $100.  This is cost recovery for the person who bought the rights to
|> redistribute.  The activity in both the BSD and Linux news groups
|> pertaining to Motif has been high.

???
I've heard about that Italian guy distributing Motif binaries for 386BSD,
but I haven't heard of anybody doing the same thing for Linux.  ... and
I do follow the Linux news group pretty closely.  So, have I missed something?  I'd LOVE to get hold of Motif libs for Linux for $100!

Regards,
Joe Pannon

Newsgroup: comp.windows.x
document_id: 67066
From: dnh@mfltd.co.uk (Des Herriott)
Subject: XDM/xsession woes


I've just managed to get xdm running from an NCR 3000 (an SVR4 486 box
running XFree86 1.2) to my NCD XDisplay.  It's pretty much working, but
I'm encountering a weird error.  I'm attempting to start an xterm from
my .xsession file, but nothing happens.  Redirecting stderr to a file
using 'exec 2>$HOME/.xerrors' in .xsession reveals the error message:

  "xterm: Error 14, errno 1: Not owner"

Now, if I start xterm from the window manager, or from the command line,
it works fine.  And starting other clients, like the window manager (mwm),
and a clock, from my .xsession also works.

Anyone encountered this?  Suggestions?

aTdHvAaNnKcSe
-- 
Des Herriott,           /   As a wise man once said,
Micro Focus, Newbury.  /
+44 (0635) 565354     /  "It takes a lot of brains to be smart, 
dnh@mfltd.co.uk      /    but it takes some neck to be a giraffe."


Newsgroup: comp.windows.x
document_id: 67067
From: boote@eureka.scd.ucar.edu (Jeff W. Boote)
Subject: Re: Mwm title-drag crashes X server (SIGPIPE)

In article <4378@creatures.cs.vt.edu>, ramakris@csgrad.cs.vt.edu (S.Ramakrishnan) writes:
> 
>    Environment:
>       mach/arch : sparc/sun4  (IPX)
>       OS	: SunOS 4.1.3
>       X11	: X11R5 (patchlevel 22)
>       Motif	: 1.2.2
> 
> I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
> of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
> to X server lost):

I had this problem as well - It had to do with the CG6 graphics card that
comes with the IPX.  What fixed the problem for me was to apply the "sunGX.uu"
that was part of Patch #7.  Patch #1 also used this file so perhaps you
didn't apply the one that came with Patch #7.

jeff
-
Jeff W. Boote  <boote@ncar.ucar.edu>      *********************************
Scientific Computing Division             * There is nothing good or bad  *
National Center for Atmospheric Research  * but thinking makes it so.     *
Boulder                                   *                   Hamlet      *
                                          *********************************

Newsgroup: comp.windows.x
document_id: 67068
From: ianhogg@milli.cs.umn.edu (Ian J. Hogg)
Subject: Re: How do I find my AppContext?

In article <1qvatv$9ic@pandora.sdsu.edu> masc0442@ucsnews.sdsu.edu (Todd Greene) writes:
>
>
>Is there an Xt call to give me my application context?
>I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
>whose first argument is the app_context.  What call can I use
>to give me this value?
>

    You can get the ApplicationContext associated with a widget by calling
    XtWidgetToApplicationContext.

--
===============================================================================
Ian Hogg						ianhogg@cs.umn.edu
                                                        (612) 424-6332

Newsgroup: comp.windows.x
document_id: 67069
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: Mysterious beeping

In article <C5qtKK.wp@cup.hp.com>, defaria@cup.hp.com (Andy DeFaria) writes:
|> [ Article crossposted from hp.windows ]
|> [ Author was Andy DeFaria ]
|> [ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]
|> 
|> For some reason the following code causes my X application to beep whenever I
|> intercept a keystroke and change it's meaning.  The intent of this code it to
|> allow "date" fields the following special keys:
|> 
|> 	[Tt]:	Insert today's date
|> 	[+=]:	Bump day up by one
|> 	[-_]:	Bump day down by one
|> 
|> I hardcoded some dates for this example.  Perhaps I shouldn't be using an
|> XmText field for this.
|> 
|> ////////////////////////////////////////////////////////////////////////////// 
|> // 
|> // For some reason the following code beeps whenever any of the special keys
|> // of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
|> // keys having the special meaning implied by the code.  I would like to get
|> // rid of the beeping but, as far as I can tell, I'm not doing the beep and 
|> // am at a lose as to understanding who and why the beeping is occuring.
|> // 
|> ////////////////////////////////////////////////////////////////////////////// 


code deleted...

>From the XmTextField man page (during discussion of resources):

   XmNverifyBell

      Specifies whether a bell will sound when an action is reversed
      during a verification callback.

You are setting doit to false in the callback, and Text[Field] is beeping
as it should.  To turn off this behavior, set this boolean resource to false.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
document_id: 67070
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: How 2 Get Fontname from Fonstruct ???


Anyone know how an application can retrieve the name of the font from
an application given an XFontStruct *? 
Would XGetFontProperty work if I passed XA_FONT_NAME? 
anyone know details of this?  Thanks in advance.
Brian

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 67071
From: scotth@oniboshi.corp.sgi.com (Scott Henry)
Subject: Re: xlock


>>>>> In article <1qvir1$idi@lll-winken.llnl.gov>, dale@wente.llnl.gov (Dale M. Slone) writes:

dale> I found an oddity with our SGI Indigo (MIPS R3000 chip).
dale> When xlock +nolock is running, and I am working remotely
dale> or in batch (at) mode, the runtime of my programs (as timed
dale> by using clock() in the code itself) is ~25% slower than if
dale> xlock is NOT running.  No other processes seem to affect my
dale> runtimes, yet this is very consistent!

Unless you run `xlock -mode blank`, xlock consumes CPU time generating
the nice animated display. The code you are running is competing with
xlock for the CPU. If you run top (via a remote login), you can really
see what is going on.

=-=-=

--
 Scott Henry <scotth@sgi.com> / Help! My disclaimer is missing!
 Networking Services,        / GIGO *really* means: Garbage in, Gospel Out
 Silicon Graphics, Inc      / 

Newsgroup: comp.windows.x
document_id: 67072
From: jmg@dxcoms.cern.ch (J.M. Gerard)
Subject: Re: Xterm w. ansi color/mouse support

brown@ftms.UUCP (Vidiot) writes:

>In article <1993Apr4.183419.584@vms.huji.ac.il> klony@vms.huji.ac.il writes:
><I've had several requests to post any information I've gathered regarding my
><search for ansi mouse/color xterm source.
><
><My only response was from Larry W. Virden who writes:
><
><> the mit x11 r4 and r5 both provide mouse escape sequences now.  There
><> are several color xterm enhancements on export.lcs.mit.edu:/contrib .
><
><Indeed I found color_xterm.tar.Z in that directory along with lots of other
><FUN stuff for X. Thanks Larry.

>I also found it on uunet in /pub/window-sys/X/contrib, for those that can
>only do anonuucp (like me).  But I noticed that the thing is dated 9/12/90,
>making it over two years old.  Is this really the latest version?

Are we talking about an xterm which would accept the same escape sequences
as that for VT340 (or colour decterm/dxterm)? I thought that was called
colxterm (and my testing of it shows some oddities that might be bugs or
might be my program going wrong).

I'm also unsure of what is meant by "ansi mouse xterm"!

Newsgroup: comp.windows.x
document_id: 67073
From: kavitsky@hsi.com (Jim Kavitsky)
Subject: comp.windows.x.intrinsics

I am having a problem with the high order bit of a character being 
clipped when entered in an xterm window under motif. I have reprogrammed
the F1 key to transmit a <ff> <be> character sequence by using the
following line in .Xdefaults:

~Ctrl ~Shift ~Alt <Key> F1 : string(0xff) string(0xbe) \n\

I merge in this line with xrdb -merge and then create the new xterm
which has the remapped F1 key. The problem that arises is that the 
application which is recieving input at the time only sees a <7f> <3e>
sequence, which is <ff> <be> with the high order bit of each
character being filtered or ignored.

When I run xev and press the F1 key, I get the correct value showing 
up in the following two key events:

  KeyPress event, serial 14, synthetic NO, window 0x2800001,
  root 0x28, subw 0x0, time 2067815294, (67,80), root:(74,104),
  state 0x0, keycode 16 (keysym 0xffbe, F1), same_screen YES,
  XLookupString gives 0 characters:  ""

  KeyRelease event, serial 16, synthetic NO, window 0x2800001,
  root 0x28, subw 0x0, time 2067815406, (67,80), root:(74,104),
  state 0x0, keycode 16 (keysym 0xffbe, F1), same_screen YES,
  XLookupString gives 0 characters:  ""

Notice that the keysym being transmitted is correct; 0xffbe.
But when I use the F1 key while in vi or in a program I wrote to 
spit back the hex values of keyboard input, I only get <7f> <3e>.

Does anyone know why the high order bit is being filtered and what
I can do to make sure that the entire 8bits make it through to
the final application? Any help is greatly appreciated.

Please *email* any responses.

Jim Kavitsky
kavitsky@hsi.com

Newsgroup: comp.windows.x
document_id: 67074
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

  Yes, it's possible... in fact, there's some gl widget code in
/usr/lpp/GL somewhere... (it's named Glib.c; my IBM's down right now
though, so I can't find the exact location :)

  WARNING: this code feels quite bogus. It does things like calling
noport() before winopen(), and then extracting an X window id from it
anyway. It worked just fine under aix 3.1; I spent last weekend trying
to port it to 3.2 (gl under 3.2 doesn't seem to like it), and it's
turning into a Hard Job.

  Check out your "info" pages; it has some pretty good documentation on
whan you can and can't do when mixing gl and X, and how to go about
doing so.

  )Rob

Newsgroup: comp.windows.x
document_id: 67075
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: FAQ for this group

Could some kind soul point me in the right direction for the
FAQ list for this group.

Thanks.

--------------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com


Newsgroup: comp.windows.x
document_id: 67076
From: klee@synoptics.com (Ken Lee)
Subject: Re: XAllocColor fails to return nearest match

In article 54297@slate.mines.colorado.edu, agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J ) writes:
>[posted for a friend]
>
>Okay, I looked through the FAQs and didn't see this, but I know its
>come up before...
>
>XAllocColor is supposed to do the following in order:
>    Try to find an exact match read-only color cell. (within hardware limits)
>    Try to allocate a read-only colorcell and set it to match.
>	and when all else fails, 
>    Return the colorcell with the best match from the read-only colors 
>    already allocated in the colormap.

Where did you hear this?  If it is printed in a book somewhere,
throw away the book.  According to the MIT specs, only the first
2 are true.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 67077
From: carl@teal.csn.org (Carl Podlogar)
Subject: need font family, weight and slant from instance of a widget

How can I get the font family, weight and slant from an
instance of a widget? Using initFontContext(), getNextFont()
and freeFontContext() I can get the size of the font (and a
bunch of other stuff concerning the font) but nowhere have
I found family, weight and slant. Assume that I do not have
access to the source where family, weight and slant were
orginaly used when creating a fontlist.
Thanks a bunch and have a great day,
Carl
carl@softsolut.com 

Newsgroup: comp.windows.x
document_id: 67078
From: klee@synoptics.com (Ken Lee)
Subject: Re: transparent widgets--how?

In article AA16720@ntep2.ntep.tmg.nec.co.jp, cerna@ntep.tmg.nec.co.JP (Alexander Cerna (SV)) writes:
>I need to write an application which does annotation notes
>on existing documents.  The annotation could be done several
>times by different people.  The idea is something like having
>several acetate transparencies stacked on top of each other
>so that the user can see through all of them.  I've seen
>something like this being done by the oclock client.
>Could someone please tell me how to do it in Xt?
>Thank you very much.

The oclock widget was written using the SHAPE extension.
You can do the same in your widgets.  Few current widgets
support SHAPE, so you'll have to subclass them to add that
functionality.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
document_id: 67079
From: pyeatt@Texaco.com (Larry D. Pyeatt)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

In article <9304191540.AA09727@sparc1.jade.com>, graham@sparc1.ottawa.jade.COM (Jay Graham) writes:
|> 
|> I am developing an X (Xt,Xm) application that will include a graphics window
|> of some sort with moving symbols among other things.  A pure X application
|> could be implemented with Motif widgets, one of which would be an 
|> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
|> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).
|> 
|> Is it possible to mix X and GL in one application program?
|> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
|> with XOpenWindow?

There is a widget already defined for GL.  It is the GlxMDraw (motif) or
GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
allows you to use GL calls to render into the window.  Look at glxlink,
glxunlink, glxgetconfig, and glxwinset in the man pages.

|> I have never used GL before, but the doc on GL winopen() says that the first
|> time winopen() is called it opens a connection to the server.   Also, most of
|> the GL calls do not require a Display or GC, unlike most X calls.  From this
|> initial information it appears that X and GL cannot be mixed easily.   Is this
|> true?

The GlxMDraw widget works pretty well.  OpenGL will be an improvement.

|> Does PEX (graPHIGS?) have the same functionality of GL?

I think GL is a little easier to use and a little more powerful, but
that's just an opinion.  Mileage may vary.


-- 
Larry D. Pyeatt                 The views expressed here are not
Internet : pyeatt@texaco.com    those of my employer or of anyone
Voice    : (713) 975-4056       that I know of with the possible
                                exception of myself.

Newsgroup: comp.windows.x
document_id: 67080
From: prunet@zephir.inria.fr (Vincent Prunet)
Subject: Re: Monthly Question about XCopyArea() and Expose Events

In article <BUZZ.93Apr19125438@lion.bear.com>, buzz@bear.com (Buzz Moschetti)
writes:
|> (2nd posting of the question that just doesn't seem to get answered)
|> 
|> Suppose you have an idle app with a realized and mapped Window that
|> contains
|> Xlib graphics.  A button widget, when pressed, will cause a new item
|> to be drawn in the Window.  This action clearly should not call XCopyArea()
|> |> (or equiv) directly; instead, it should register the existence of the
|> new
|> item in a memory structure and let the same expose event handler that
|> handles
|> "regular" expose events (e.g. window manager-driven exposures) take care
|> of rendering the new image.  Using an expose event handler is a "proper"
|> way
|> to do this because at the time the handler is called, the Xlib Window is
|> guaranteed to be mapped.
|> 
|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

To incrementally update the contents of windows, I use the following trick:

	1. Set the window background to None,
	2. Call XClearArea(display, window, 0, 0, 0, 0, True),
	3. Restore the window background to its correct value.

The call to XClearArea does not repaint the window background, but still
generates exposure events for visible parts of the window.

In order to let my application know that these expose events must be handled
incrementally (something is already displayed on the screen and may need to
be erased), I encapsulate the 3 operations with 2 self addressed client
messages, which preserve asynchronicity between the client and the server.

XGrabServer(display)
client message (start-incremental)
 	background None
	XClearArea
	Restore background 
client message (end-incremental)
XUngrabServer(display)

The GrabServer prevents other events to be inserted by the server in the
critical section.

---
Vincent Prunet, Sema Group Sophia Antipolis
INRIA       BP 93    06902 SOPHIA ANTIPOLIS Cedex  FRANCE
prunet@sophia.inria.fr, (33) 93 65 78 42, Fax:(33) 93 65 77 66


Newsgroup: comp.windows.x
document_id: 67081
From: bentz@blustone.uucp (Ray Bentz)
Subject: SPARC IPC Sprite goes off screen

Environment:
	X11R4
	Motif 1.1.4
	Sun IPC 4.1.3

Problem:
	When mouse is moved across screen horizontally, the sprite goes off
	of the edge of the screen and reappears at the *other* edge.
	It appears that the server thinks we are running in multi-screen
	mode; the cursor seems to "wrap" from one side of the screen to
	the other.
	As far as we can tell, we are not running the server in multi-screen
	mode.

Please reply via E-mail.

-- 
Ray Bentz                            Phone: (609)727-4600
Bluestone Consulting, Inc.             Fax: (609)778-8125
1200 Church Street                   uunet: uunet!blustone!bentz
Mount Laurel, NJ 08054            Internet: blustone!bentz@uunet.uu.net

Newsgroup: comp.windows.x
document_id: 67082
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

| 
| In article <BUZZ.93Apr19101538@lion.bear.com> buzz@bear.com (Buzz Moschetti) write
| >In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
| >>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
| >>   don't show up: do you wait for an expose event before drawing your
| >>   rectangle?
| >
| >Suppose you have an idle app with a realized and mapped Window that contains
| >Xlib graphics.  A button widget, when pressed, will cause a new item
| >to be drawn in the Window.  This action clearly should not call XCopyArea() 
| >(or equiv) directly; instead, it should register the existence of the new
| >item in a memory structure and let the expose event handler take care
| >of rendering the image because at that time it is guaranteed that the
| >Window is mapped.
| >
| >The problem, of course, is that no expose event is generated if the window
| >is visible and mapped.  Do you know the best way to "tickle" a window so
| >that the expose event handler will be invoked to draw this new item?
| >
| 
| What does this have to do with my original question???  I previously
| stated that I did an XCopyArea of the depth-8 pixmap to the screen
| just to make sure that my image had data, and it did.  This is NOT
| a problem with expose events, it has to do with XCopyPlane not
| working!!!
| 
| Does anyone have a code fragment they could send demonstrating that
| XCopyPlane works???  This would be very helpful!
| 
| Thanks!

What it has to do with your original question is this: many times 
beginning X users (heck, experienced X users too!) write small test
programs.  Many times they forget to draw only in response to expose
events, and thus see unpreditable results whereby sometimes the application's
graphics show up, and sometimes they don't.  We're just trying to
eliminate all the "easy" explanations  for why you're not seeing your
graphics. 

That being said, why don't you try copying different planes to your
window other than 16 (== 1 << 4).  Try 1, 1<<1, 1<<2, ..., 1<<7
to see it you get any output.  Since you're dipslaying only a single 
plane of your data, it's possible that all the pixel values in your
pixmap have the same value for that color plane.

	Ken

--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
document_id: 67083
From: victor@hpfrcu03.FRance.hp.COM (Victor GATTEGNO FRENCH CRC)
Subject: Re: Running dxterm's onto Apollo from DEC 5000/240


> Apollo DN2500 (Domain/OS 10.3, X11R4, Motif ?.?).

I think you are running Xapollo , it's a X11R3 server ...

If you want a X11R4 server you should install PSKQ3 (10.3.5) or 10.4
  so you can run Xdomain . 

> 
> I get these errors appearing on the DECstation:
> 
> > dxterm
> X Toolkit Warning: Cannot convert string "<Key>apCharDel        " to type VirtualBinding
> ...
> Segmentation fault
> 
> Any ideas? Is it a Motif problem...are the DEC and Apollo versions of Motif
> incompatible? Or something to do with XKeysymDB?

In XKeysymDB you could add : 
!		Apollo specific keysyms
!
apLineDel            : 1000FF00
apCharDel            : 1000FF01
apCopy               : 1000FF02
apCut                : 1000FF03
apPaste              : 1000FF04
apMove               : 1000FF05
apGrow               : 1000FF06
apCmd                : 1000FF07
apShell              : 1000FF08
apLeftBar            : 1000FF09
apRightBar           : 1000FF0A
apLeftBox            : 1000FF0B
apRightBox           : 1000FF0C
apUpBox              : 1000FF0D
apDownBox            : 1000FF0E
apPop                : 1000FF0F
apRead               : 1000FF10
apEdit               : 1000FF11
apSave               : 1000FF12
apExit               : 1000FF13
apRepeat             : 1000FF14
apKP_parenleft       : 1000FFA8
apKP_parenright      : 1000FFA9


--
Victor .

                                            \     /
                                              ^ ^  
______victor@hpfrcu03.france.hp.com_______oOOo_o_oOOo_________________

Victor GATTEGNO 

                   "Be Yourself and not what people expect you to be ."
______________________________________________________________________
                                              (( 
                                               )) 


Newsgroup: comp.windows.x
document_id: 67085
From: D.Haywood@sheffield-hallam.ac.UK (Dave Haywood)
Subject: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

Hi,

  Please reply to me direct as I am not a member of this list.

  I am new to X, so please excuse my lax (read: "probably incorrect")
terminology!

  Environment: Sun Sparc 10, SunOs 4.1.3.  X11R5 path level 23.  My X process
is started by xdm.

  i) I want to setup the backgroud (root window?) of the tvtwm display to
     display the escherknot etc (grey is a very boring colour to work on)!

     The setup is as follows:

        lib/X11/xdm/Xsetup_0    -   xsetroot -bitmap ... etc
        ~user/.xsession         -   xsetroot .... etc
                                    tvtwm

     There are also .tvtwmrc and .Xdefaults files in the (~user) home
     directory.

     The xsetroot in Xsetup_0 displays the appropriate bitmap in the xdm
     login window as expected - very nice!

     Unfortunately, when the users session is started, the background of the
     tvtwm window reverts to grey.  If I manually type xsetroot... in an
     xterm window when the session has started, the background is changed as
     expected.

     The question is: How do I retain the background from the login window
     and/or specify a new background on a per-user basis as part of the
     the users session startup?

 ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
     and some keys on the keyboard are not sending the correct characters.

     ie: real key       key shown on screen
         ------------   -------------------
         hash           back slash
         tilde          pipe
         double quote   at symbol
         pound          hash
         cursor key     not recognised

     This is very annoying!  Is X at fault here or the machine setup?  I have
     installed the xterm drivers that came with X11R5 in both terminfo and
     termcap as they seemed more uptodate.

     Typing set in an xterm window shows a terminal type of xterm - as
     expected!

  Any help on how to correct either of these problems much appreciated!

  Thanks,

Dave.
--------------------------------------------------------------------------
JANET   : D.Haywood@uk.ac.sheffield-hallam      | Dave Haywood.
  or      D.Haywood@uk.ac.shu                   | Computer Services,
INTERNET: D.Haywood@shu.ac.uk                   | Sheffield Hallam University
Telex   : 54680 SHPOLY G                        | Pond Street,
Tel     : +44 742-533-828                       | Sheffield. S1 1WB. ENGLAND.
FAX     : +44 742-533-840                       |
X.400:/I=D/S=Haywood/O=Sheffield-Hallam/PRMD=UK.AC/ADMD= /C=GB
X.500:@c=GB@o=Sheffield Hallam University@ou=Computer Services@cn=Dave Haywood

Newsgroup: comp.windows.x
document_id: 67086
From: barr@pop.psu.edu (David Barr)
Subject: Re: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

In article <MAILQUEUE-101.930420145015.384@oak.shu.ac.uk> D.Haywood@sheffield-hallam.ac.uk writes:
>Hi,
>  Environment: Sun Sparc 10, SunOs 4.1.3.  X11R5 path level 23.  My X process
>is started by xdm.

Okay, that's good.  I'm typing this from exactly the same setup.
(US-UNIX layout keyboard)  I did install the sunkbd patch, though.

>  i) I want to setup the backgroud (root window?) of the tvtwm display to
>     display the escherknot etc (grey is a very boring colour to work on)!

Make sure you're using "ssetroot", which comes with tvtwm.  When tvtwm
starts up, it nukes the existing root window.  Use an "ssetroot" after
tvtwm starts up.   (You could spawn off a "(sleep 10; ssetroot ...)&")
You can also use "VirtualDesktopBackgroundPixmap filename" or just
VirtualDesktopBackground if you just want another color besides grey.

> ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
>     and some keys on the keyboard are not sending the correct characters.

Did you install the sunkbd patch?  It's in the contrib directory on export.
All the keys on my keyboard send events properly, except the following:
The End, PageUp, PageDown on the 6-key cluster aren't recognized.
Even the compose key works.  (Though I can't seem to get the composed
characters in an xterm to get passed.)

Anyone have a fix for the last two?

--Dave
-- 
System Administrator, Penn State Population Research Institute
* Dog Dianetics ("Woof woof woof?  Page 725.") - Kibo

Newsgroup: comp.windows.x
document_id: 67087
From: paul@def.bae.co.uk (Paul Byrne)
Subject: imake - help needed

Hi

Can someone please give me some pointers to setting up imake in a SUN OPENWINDOWS
enviornment ? I've checked through all the documentation but can not find any clues.

Please respons via e-mail.....

Thanks

Paul


---------------------------------------------------------------------
Paul Byrne				British Aerospace Defence Ltd
					Dynamics Division
email Paul.Byrne@def.bae.co.uk		FPC 450
					P.O.Box 5, Filton
Phone 0272 316086			Bristol, BS12 7QW


Newsgroup: comp.windows.x
document_id: 67088
From: leec@cb-iris.Stanford.EDU (Christopher Lee)
Subject: HELP! Setting Colormaps on multi-top-level APP


Dear SGI and netter GL-X Mixed-Model experts,
I am writing a mixed model application that creates a couple different
color maps for different windows, and I've been having trouble getting
the window manager to reliably honor my requests.  In some environments
(entry level R3000 Indigo w/ 4.0.5) all windows are getting properly
connected to their designated color maps, but on others (an IRIS 4D 240/GTX;
also a different entry level Indigo) the color mapping is unreliable
and changes behavior when I compile at different times.  The most common
problem is that all non-top-level windows fail to be displayed according
to their colormap.  My application starts out by creating three top-level
windows; in some cases all but the first of these also fail to be
displayed by their colormap.  This is spectacularly aggravating.

I would dearly appreciate
  1. an explanation of the standard, RIGHT, CORRECT way to give a window
  a colormap such that the Window Manager will Honor and Obey it;

  2. any advice about problems that could cause my failure to get my
  desired colormaps.

By now I have exhausted my own attempts on this, having tried everything
reasonable or imaginable.

Below is example code giving the schematic for how I have been *TRYING*
to do this.  Please, please, please SOMEBODY tell me what I am doing
wrong/how to do it right!!!


Yours,

Chris Lee

/***********************************************************************/
Display* dpy;  /* DECLARE SOME DATA... */
Colormap popup_cmap;
XColor mycolor;
Window win;
XSetWindowAttributes cwa;
int nwlist;
Window *wlist;

/* NB: FOR BREVITY, NOT SHOWING ALL CODE LINES--JUST A SCHEMATIC */

popup_cmap=XCreateColormap(dpy,DefaultRootWindow(dpy),vis->visual,AllocAll);

/* HERE WE STORE A BUNCH OF COLORS USING
   XStoreColor(dpy,popup_cmap,&mycolor); ... */

cwa.colormap = popup_cmap;
win = XCreateWindow(dpy, parent, x, y, w, h,
                    borderWidth, vis->depth, InputOutput, vis->visual,
                    CWColormap|CWBorderPixel, &cwa);


/* LIST ALL SUB WINDOWS OF my_topwin, PARENT OF win, INTO wlist;
   nwlist IS COUNTER OF ENTRIES IN wlist.

   NB: wlist is static storage that can be relied on not to go away
       or be corrupted.  I thought of that!  Does anyone know if
       setting WM properties is by data copy, or by reference pointer?

       ie. is it acceptable to pass data for a Property, then free
       the data?   */
XSetWMColormapWindows(dpy,my_topwin,wlist,nwlist);

XMapRaised(Display0,win);

/* LATER ON WE HANDLE XEvents NORMALLY... TYPICAL EVENTLOOP */



Newsgroup: comp.windows.x
document_id: 67089
From: ksc@cbnewsk.cb.att.com (kenneth.s.cobler)
Subject: XFree86 and Esix 4.0.4

Hello Netlanders:

       I am a novice X user with a question for any Xgod.

       My computer configuration with the X problem is as follows:

       486DX50/256/16RAM  running Esix 4.0.4 
       Wangtek AT-style interface 250 M tape drive.
       I have loaded the Basic OS (which includes nsu) and
       inet utilities (tcp/ip).
       I ftp-ed the XFree86 (X11R5) binaries and installed properly.
 
 I can execute startx and run X-windows with no problems.
 However, if I try to access the tape drive while in X, the
 machine locks up instantly.  If I am out of X and access the
 tape, the tape drive works fine.  Soon as I try to
 startx again; the screen changes modes, but, the grey background
 pattern does not come up and no xterm is forked.  I have to login
 from another terminal and execute a shutdown to reset the system.

 I've contacted Esix about this problem.  They claim THEIR X-window X11R4
 server (which I have) works with the Wangtek tape drive.  They also 
 claim I only need the nsu (network system utilities) to run X; I don't
 need inet (tcp/ip).  My experience has been that I need BOTH to get
 XFree86 to work.  I'm not too concerned about having to load both nsu and inet
 packages to get X to work unless the inet package is causing my problem.

 I would like to get both X and my tape drive to co-exist on the same
 system.  If you can shed any light on the problem, it would be appreciated.
 
 One colleague implied this might be a hardware conflict.  If this is true,
 what direction should I look to resolve the conflict ?

 Thanks,
 
 Kenneth Cobler                ksc@ihlpv.att.com
 AT&T Bell Laboratories
 263 Shuman Blvd.
 Naperville, IL  60566

Newsgroup: comp.windows.x
document_id: 67090
From: hgn@pmw1.nuclint.NL (Hans Geurtsen)
Subject: Cursors

According to the OSF/Motif Style Guide, one should use cursor shapes to give
the user a visual clue of what is happening or what is expected of him. So
a "hourglass" cursor should be shown when the application is busy, or a
"caution" cursor should be shown over an area when input is expected in
another. Defining cursors for widgets has to be done at rather low level.
So defining a cursor for all widgets in an application but not for a certain
subpart of it, is a rather complicated matter. When cursors have been defined
for some windows, e.g. a "crosswire" cursor for a DrawingArea, things get even
more complicated. My intuition says that things should be easier, but is this
so? If anyone has a solid and complete solution to my problem, please let me
know. The topics on "busy cursors" in the several FAQ's are not helpful, since
they only work for applications where all windows have the cursor window
attribute set to 'None'.
-----------------------------------------------------------------
Hans Geurtsen                       Phone: (31) (0) 8385 - 33157
Nucletron Research BV.             e-mail: hgn@nuclint.nl
                                  Surface: Waardgelder 1
                                           NL-3905 TH  Veenendaal


Newsgroup: comp.windows.x
document_id: 67091
From: jra@wti.com (Jim Atkinson)
Subject: How can I detect local vs remote DISPLAY settings?

I am trying to find out if my application is running on a local or a
remote display.  A local display being connected to the same system
that the client is executing on.  I have access to the display string
but can I tell from the string?

If the client is executing on host foo then ":0", "unix:0", "foo:0",
and "localhost:0" are all local.  Under Ultrix, I believe that
"local:0" is also a valid display name (a shared memory connection
maybe?).  Are there other strings that I should check for?  Is there a
better way to detect this?

Thank you for any help you can give me.
-- 
========================================================================
Jim Atkinson		Wavefront Technologies, Inc.
jra@wti.com		What, me?  A company spokesperson?  Get real!
=================== Life is not a spectator sport! =====================

Newsgroup: comp.windows.x
document_id: 67092
From: gerard@netlabs.com (Gerard Horan)
Subject: Running X on a PC at home talking to a host over Serial Line

Some time back I asked for software recommendations to  allow me to
run X from my PC at home to my Sparc at the office.

Many thanks for all replies, the majority of people  recommended
PCXremote from NCD. I received it yesterday  and installed it on
my Sparc and PC with only one hitch. 
The UNIX install consists of copying 2 files into some local bin directory. 
On the PC side, I ordered the WINDOWS version  which  came with a slick windows
installation.


The only problem I had was that  my .xinitrc  in my home directory
had the line
DISPLAY=`hostname`:0.0; export DISPLAY

s.t the clients I kicked off connected to my Xserver on the Sparc console.
By removing this line from the .xinitrc everything worked as planned
and the clients connected to the server at

`hostname`:1.0

Some comments on performance, I was connected to a Sparc 2 thru
a NetBlazer Terminal Server over a 9600 baud line.
My PC is a 486-DX2 ATI Ultra, 16 MB

Bitmap Stuff Sucked.
Basic Editing and compilation stuff definitely usable.
Xmail was very usable.

At times the first time U typed in an Xclient window there was
a very noticable delay, I put this down to brain damaged "WINDOWS
should not be called a SCHEDULER", besides that this will become
my remote work environment for a while.

Has anybody tried the NON Windows version of the product, the sales
person said they performed about the same, given the over head of
WINDOWS I question this?

many thanks for help to all who responded

gerard

Newsgroup: comp.windows.x
document_id: 67093
From: matthew@alchemy.TN.Cornell.EDU (Matthew Kleinmann)
Subject: Is a 2 headed Sun 3/60 possible (cgfour0/bwtwo0)

I have a Sun 3/60 that has a mono framebuffer (bwtwo0 ?) built on the
motherboard.  The same system also has a cgfour (cgfour0 and bwtwo1 ?)
daughterboard.  I have been using this system with a color monitor having a
color "front" screen from the cgfour, and a mono "back" screen from the
bwtwo1, both on the same tube.  I recentley picked up a 1600 x 1280 Sun mono
monitor, and I would like to make a two headed system with the cgfour0 and the
bwtwo0.  I do not care if I loose the "back" screen on the color tube from the
bwtwo1.  After looking through the Xsun man page I am not sure if this is
possible.  Has anybody sucessfuly done this before?  

--Matthew


Newsgroup: comp.windows.x
document_id: 67094
From: devil@loki.HellNet.org (Gil Tene)
Subject: COSE GUI - Just what is it they agreed on?

The COSE announcement specifies that Motif will become the common
GUI. But what does this mean exactly? 

- Do they mean that all "COSE-complient" apps will have the Motif
  look and feel?

- Do they mean that all "COSE-complient" apps will use the Motif
  toolkit API?

- Do they mean both of the above?

- Is it possible that there will be a Motif-API complient toolkit with
  an OpenLook Look & Feel?

- How about an OLIT/XView/OI/Interviews API toolkit with a Motif L & F?
  (I know OI already does this, but will this be considered COSE-complient?)

- Will there be more than one "standard" toolkit API or L & F supported?

- How does using ToolTalk fit in with Motif?

This is my attempt to start a discussion in order to pull as much 
knowledge about these questions off the net... Feel free to e-mail
or followup.

-- 
--------------------------------------------------------------------
-- Gil Tene			"Some days it just doesn't pay     -
-- devil@imp.HellNet.org	   to go to sleep in the morning." -
-- devil@diablery.10A.com 					   -
--------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67095
From: jhcox@kodak.com (James Cox)
Subject: Xterm Problem With Input Focus / "Shuffle Up"


The situation: running a Fortran executable that creats an Xterm.  An option
in the menu contained in the Xterm runs a Fortran subroutine that creats
a Tektronics-mode Xterm for displaying some graphics.  Typing a <RET> while
the Tektronics-mode Xterm (future reference to this will be "Tek-term") is
active makes the Xterm read future keystrokes but does not shift input focus
to the Xterm (I'm basing that statement on the fact that the border of the 
Tek-term stays the highlighted color and that the Tek-term stays on top of
Xterm.  If what I'm describing isn't input focus, let me know.)  

The xterm can be brought to the top by clicking the mouse button on it.

Subsequent selections from the Xterm of the menu item that displays graphics 
highlihts the border and displays the updated graphics, but does not move 
the Tek-term to the top.  If the Tek-term has been iconized to conserve 
screen space, it stays an icon.


The desired behavior: one of two options - 

    1. Whichever of the windows that is active is always on top of the 
       inactive one.

    2. Whenever the Tek-term is inactivated, it should revert to a icon
       but when it is activated it should become a window on a higher 
       level than the Xterm.

What I think I need: a means of specifying that a Xterm or Tek-term will
be at the highest level and a way to iconify/expand a Xterm and Tek-term.
These commands, would, I'd guess, need to be in the Fortran or in the 
command that starts up the Xterm and Tek-term.

Other information: All this is taking place on a VT-1300 (a DEC dumb 
X-windows terminal) connected to a VAX running VMS and Motif.

Thanks for your time.  If you've got any words of wisdom (other than 
"give up" ;-), please send email to 

jhcox@Kodak.com



Newsgroup: comp.windows.x
document_id: 67096
From: larry@gator.rn.com (Larry Snyder)
Subject: Dell 2.2 EISA Video Cards

Does XFree86 support any EISA video cards under Dell 2.2?
-- 
Larry Snyder                               
larry@gator.rn.com

Newsgroup: comp.windows.x
document_id: 67097
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: X Device Driver for Bird


Has anyone written a device driver to use the Ascension bird with XWindows ? 


      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_


***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************



Newsgroup: comp.windows.x
document_id: 67098
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

pyeatt@Texaco.com (Larry D. Pyeatt) writes:
: In article <9304191540.AA09727@sparc1.jade.com>, graham@sparc1.ottawa.jade.COM (Jay Graham) writes:
: |> 
: |> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
: |> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).
: |> Is it possible to mix X and GL in one application program?
: |> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
: |> with XOpenWindow?

You can't make GL calls in an XmDrawingArea widget for sure.  
: 
: There is a widget already defined for GL.  It is the GlxMDraw (motif) or
: GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
: allows you to use GL calls to render into the window.  Look at glxlink,
: glxunlink, glxgetconfig, and glxwinset in the man pages.
: 
: 
: The GlxMDraw widget works pretty well.  OpenGL will be an improvement.

I can vouch for that. The GL Widget works pretty well. I have been using it
for sometime now. I'm not sure though whether you can use Xlib calls to draw
into the GL widget. I haven't tried it yet nor have I read the accompanying
documentation completely. Try posting to comp.sys.sgi for more information.
Better still,you will find most of the answers in the  SGI manuals .. there
is a little transition guide which explains the "mixed-model programming"
paradigm(Mixing X and GL).

: |> Does PEX (graPHIGS?) have the same functionality of GL?
: 
: I think GL is a little easier to use and a little more powerful, but
: that's just an opinion.  Mileage may vary.

Well, PEX is designed as an extension to  X and will be more seamless  but 
then, it is buggy to start with .. opinions again.

      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_

***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************

Newsgroup: comp.windows.x
document_id: 67099
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.165310.14544@dsd.es.com>, pmartz@dsd.es.com (Paul Martz) writes:
> In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> > Hi, I'm new to this group so please bear with me!
> > 
> > Two years ago I wrote a Sunview application for fast animation
> > of raster files. With Sunview becoming rapidly obselete, I've
> > finally decided to rewrite everything from scratch in XView.
> > I put together a quick test, and I've found that XPutImage()
> > is considerably slower (factor of 2 on average?) than the
> > Sunview command pw_rop() which moves image data from memory
> > pixrects to a canvas. This was on a Sparc IPX. It seems that:
> > (1) the X protocol communication is slowing things down; or
> > (2) XPutImage is inefficient...or both!
> 
> Using XPutImage, your source is maintained by the client and the
> destination is maintained by the server, thus you incur the overhead
> of transporting through whatever client-server communications
> mechanism you are using.
> 
> Is it possible for you to maintain your source images in pixmaps?
> These are maintained by the server, so copying them into a window is
> much cheaper.
> 
> Also make sure you are not sending any unnecessary XSyncs, or running
> in XSynchonize mode.

  If you need speed, and your client can run on the same host as the X server,
  you should use the shared memory extension to the sample X server (MIT-SHM).
  xdpyinfo  will tell you if your server has this extension. This is certainly
  available with the sample MIT X server running under SunOS.
  A word of warning: make sure your kernel is configured to support shared
  memory. And another word of warning: OpenWindows is slower than the MIT
  server.
  I have written an imaging tool (using XView for the GUI, by the way) which
  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
  animations.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
document_id: 67100
From: victor@hpfrcu03.FRance.hp.COM (Victor GATTEGNO FRENCH CRC)
Subject: Re: High order bit of a character in xterm .

> 
> Does anyone know why the high order bit is being filtered and what
> I can do to make sure that the entire 8bits make it through to
> the final application? Any help is greatly appreciated.
> 

1. You need these resources :
	XTerm*EightBitInput:    true
	XTerm*EightBitOutput:    true

2. In the shell you need to do : 
        stty cs8 -istrip 


Good luck .
Victor .

                                                              |
                                                              *
                                                              X
                                                              X
                                                              X
                                                              X
______________________________________________________________X________
                                                              X
  Victor Gattegno     Email: victor@hpfrcu03.france.hp.com   XXX
  Hewlett-Packard France   Hpdesk: HP8101/RC                X X X  
  1, Avenue du Canada      Phone : 33-1-69-82-60-60        X  X  X 
  91947 - Les Ulis Cedex   Telnet: 770-1141               X   X   X  

 



Newsgroup: comp.windows.x
document_id: 67101
From: thor@surt.atd.ucar.edu (Richard E. Neitzel)
Subject: XQueryBestCursor semi-broken?

Some one asked me recently why they when they used XQueryBestCursor to see
if they could create of a given size it seemed to imply they could, but the
server did not create cursors of that size. Investigation showed that some X
servers will happily return any size up to the size of the root window, while
others return some fixed limit of more reasonable size. The interesting thing
to me is that the same server binary acts differently on different hardware -
a Sun4 with a cg2 will claim cursors up to root window size are OK, while a
Sun4 with a cg6 will stop at 32x32. So far I've also seen this behavior on
NCD and Phase-X X terminals and have been told it also occurs on HPs. 
Actually, the NCD is even more liberal - sizes much larger then the root
winodw are gladly returned as OK. Is XQueryBestCursor semi-broken or is this
behavior correct? I'd really like to see a 2000x2000 cursor!

-- 
Richard Neitzel thor@thor.atd.ucar.edu          Torren med sitt skjegg
National Center For Atmospheric Research        lokkar borni under sole-vegg
Box 3000 Boulder, CO 80307-3000	                Gjo'i med sitt shinn
303-497-2057                                    jagar borni inn.

Newsgroup: comp.windows.x
document_id: 67102
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: XDM & DECnet ?

#
#Does XDM work with DECnet? I have an Ultrix machine running both TCP/IP
#and DECnet. I have a number of X-terminals hanging off the Ultrix host also
#running TCP/IP and DECnet. Presently I am using XDM for the login procedure
#on the X-terminals using TCP/IP. Since XDM is basically just an X-windows
#client, shouldn't I be able to run XDM on the DECnet protocol tower as well?
#

XDM is not just an X Window client.  XDM has its own protocol (XDMCP) that
operates of UCP on port 177.  It does provide a Login window which is an
X Window Client.  As to using DECnet protocol.  Looking through the source
for XDM from X11R5 that I have here, it seems that the bare bones code is
there but not completely there.

#
#My first inclination is that XDM is not your typical X client. It is making
#TCP/IP specific socket calls. In this case the answer would be no; you can
#not run XDM over DECnet. Is this right or not? Any feedback is appreciated.
#Thanks.
#

From my look at the source, it seems you cannot run it over DECnet as shipped
with X11R5.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67103
From: VANDAMME@NMR.RUG.AC.BE
Subject: XmScale & XtAddEventHandler

Dear Xperts,

I'm developing an application that uses a Motif slider to select
an image file out of a directory. Now I would like to display the
name of the file corresponding to the value of the dragged scale
button (i.e. with the MB1 pressed). As XmNshowValue only displays
the current value of the scale button and not the actual corresponding
image file name, I thought of using an XtAddEventHandler to do
the mapping between the scale value and the file name:

XtAddEventHandler(scaleImage,Button1MotionMask,  FALSE, SliderMoved, NULL);


and in the eventhandler do a:

  while (XCheckTypedWindowEvent (display, event->window, MotionNotify, &Return))
   ;
  XmScaleGetValue(scaleImage,&value);
  /*map value to file entry in directory and finally obtain file name to open*/


However, when I move the pointer in the scale widget I get callbacks, with of co
   urse
a null effect as my MB1 is not pressed to move the scale button. So what is goin
   g wrong?
Or is the a wrong approach to this problem?
Any hints are highly appreciated.
---
Phil

Newsgroup: comp.windows.x
document_id: 67104
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Problem with dni and openwin 3.0

Can anyone help me?

I am having a problem displaying images greater than 32768 bytes from a
Decwindows program running on a Vax 6310, and displaying on a Sparc IPC
running Openwindows 3.0 and dni. The program works fine with Openwindows 2.0.

The code segment which fails is given below, the program simply crashes
out with an Xlib I/O error at the XPutImage() call.

	XImage          *ximage;
	ximage = XCreateImage(myDisplay, DefaultVisual(myDisplay, myScreen), 
			      ddepth, ZPixmap, 0, image,
			      xwid, ywid, 8, 0);
	XPutImage(myDisplay, myWindow, myGC,
		  ximage, 0, 0, xpos, ypos, xwid, ywid);


-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67105
From: mbell@techbook.techbook.com (Max Bell)
Subject: WANTED: Info on Dedicated X Server Kernel for Sun3/100 Series

If anyone has any information about the existence or location of a
dedicated X server kernel for the Sun3, please send email.  I am
trying to put some neglected Sun3s to good use but they don't have
enough memory for SunOS 4.1.1.  Thanks in advance for any help.
-- 

 /\  /\/  Max Bell                    | I used to think I'd emmigrate to escape
/  \/ /\  mbell@techbook.com          | the tyrants, but now I think I'll stay
~~~~~~~~~ mbell@cie.uoregon.edu	      | and make them leave instead.

Newsgroup: comp.windows.x
document_id: 67107
From: pfuetz@igd.fhg.de (Matthias Pfuetzner)
Subject: Re: Available memory to the Xserver. How to get the actual size?

Hello!

In article <1993Apr17.144246.29806@thunder.mcrcim.mcgill.edu>,
mouse@mcrcim.mcgill.edu (der Mouse) writes:
>In article <1965@igd.fhg.de>, pfuetz@igd.fhg.de (Matthias Pfuetzner) writes:
>
>> Is there a possibility to determine via X protocol calls the size of
>> free memory available to the Xserver?
>
>No.  Even if you could, the answer could be out of date even before you
>get it (even if you grab the server, it could be taken up by buffering
>user actions).  You should just try to do whatever you want; a BadAlloc
>error is your indication that insufficient server memory is available.
>
>					der Mouse

This isn't of much help! Especially when doing Phigs (PEX) via the libphigs as
supplied by MIT, I have much trouble together with PEX-terminals that don't
have enough memory!

Performing the following:

   visual.visualid = CopyFromParent;

   bg_pix = WhitePixel( grafik_display, DefaultScreen( grafik_display ) );
   
   xswa.backing_store      = NotUseful;
   xswa.event_mask         = ExposureMask | StructureNotifyMask;
   xswa.background_pixel   = bg_pix;

   graphic_window =
         XCreateWindow( graphic_display,
                       RootWindow( graphic_display,
                                  DefaultScreen( graphic_display ) ),
                       0,
                       0,
                       DisplayWidth(graphic_display, 
                                  DefaultScreen( graphic_display ) ),
                       DisplayHeight(graphic_display, 
                                  DefaultScreen( graphic_display ) ),
                       (unsigned int)0,
                       8,
                       InputOutput,
                       &visual,
                       CWEventMask | CWBackingStore | CWBackPixel,
                       &xswa );
   XMapWindow( graphic_display, graphic_window );
   
   /** sync and wait for exposure event **/
   XSync( graphic_display, False );
   XWindowEvent( graphic_display, graphic_window, ExposureMask, &exposureEvent );

   conn.display     = graphic_display;
   conn.drawable_id = graphic_window;

   xinfo.display = graphic_display;
   xinfo.flags.no_monitor = 0;      /* False -> Monitor is running! */
   xinfo.flags.force_client_SS = 0; /* False! */

   popen_xphigs( NULL, 0, PXPHIGS_INFO_FLAGS_NO_MON |
                          PXPHIGS_INFO_FLAGS_CLIENT_SS |
                          PXPHIGS_INFO_DISPLAY, &xinfo );

   popen_ws( 1, (Pconnid)(&conn), phigs_ws_type_x_drawable );

I get core dumps in the popen_ws call! (No BadAlloc, etc.! Simply a core
dump!) So I need some way of getting info about the maximal available memory
to the Xserver!

But thanks!

Sincerly,
        Matthias
-- 
    Matthias Pfuetzner  |  @work:  +49 6151 155-150  | @home: +49 6151 75717
    6100 Darmstadt, FRG | ZGDV, Wilhelminenstrasse 7 | Lichtenbergstrasse 73
      pfuetzner@igd.fhg.de, pfuetzner@zgdvda.UUCP    |  Keith Packard said:
      R5 is different from R4. That's why we changed the release number :-)

Newsgroup: comp.windows.x
document_id: 67108
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: DIN-Fonts

Hello everybody,

I hope that I insert the right Options, so that my question is only
distributed through out Germany, because my question is more or less
country dependend.

Now the question:
  Is there anybody who can tell my if (and of course where) there is
  a ftp-site/archie (or whatever) where DIN fonts for X are available.
  I am looking for fonts holding the specification:
    DIN 16
    DIN 6776
    DIN V 40950


Thanks in advance

Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1 (Germany)

Tel: +49 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
document_id: 67109
From: dave@einstein.andi.org (David Scheck)
Subject: imake (X11R4) cpp problems on AIX

I am trying to build and use imake (X11R4) on an IBM RS/6000 running AIX V3.2.
I am having the following 2 problems.

(1) Many of my Imakefile's have contructs like
                /**/#This is a makefile
        at the start of lines to pass Makefile comments thru the C
        preprocessor and into the Makefile.  Most of the C preprocessors that
        I have used will not treat such a # as appearing at the start of the
        line.  Thus the C preprocessor does not treat the hash symbol as the
        start of a directive. 

        However the IBM cpp strips the comment and treats the hash symbol
        as the start of a directive.  The cpp fails when it determines
        that "This" is not a known directive.  I have temporarily hacked my
        imake to handle this situation but would like to come up with a better
        fix.

(2) Several Imakefiles use /**/ as a parameter to a macro when a particular
        use of the macro does not need a value for the parameter.  The AIX cpp
        gives warnings about these situations but continues to work OK.

If you are familiar with these problems and have solutions, I would appreciate
information about on your solutions.  (Perhaps, this is solved in a later
version of imake that I have not reviewed.)  Also, do you know of other cpp's
that behave similarly?

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
document_id: 67110
From: snail@lsl.co.uk
Subject: MOTIF & X on Windows NT

In article <1993Apr7.044749.11770@topgun>, smikes@topgun (Steven Mikes) writes:
> Another company, Congruent Corporation of New York City, has also ported Xlib
> Xt and Motif 1.1 over to MS Windows NT, which provides full client development
> for X applications in an NT environment.

Could someone please send me the postal and email address of
Congruent Corporation (and any competitors they may have).

Thank you.
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
document_id: 67111
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Program argument: geometry

I have a question regarding the processing of program arguments
such as the -geometry option. Since this is a standard X option, 
I'm wondering wether I have to parse it manually or whether there
is some predefined function that will do this for me?

Thanks for any info
--> Robret

Newsgroup: comp.windows.x
document_id: 67112
From: singg@alf.uib.no (Kurt George Gjerde)
Subject: Re: Drawing Lines (inverse/xor)

In article <1993Apr19.191531.15865@news.media.mit.edu>, dyoung@media.mit.edu (David Young) writes:

  :
  :

|>    XSetFunction( myDisplay, gc, GXxor);
|>    XSetForeground( myDisplay, gc, drawIndex);
|> 
|> Then to draw I do:
|> 
|>    XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
|>    XFlush( myDisplay);
|> 
|> And when I'm all done, to return things to normal I do:
|> 
|>    XSetFunction( myDisplay, gc, GXcopy);
|> 
|> 
|> What I'd like to happen is for the lines I draw to be the inverse of
|> whatever I'm drawing over.  Instead what happens is I get white lines.  If
|> the lines are over a white background - nothing shows up.  If the lines are
|> over a black area - nothing shows up!  It's very strange.  But the GXxor
|> function seems right - since if I do a rubber-banding box, it erases and
|> redraws itself correctly (ie. not disturbing the underlying image).
|> 
|> Any suggestions what I'm doing wrong?
|> 
|> david


   Try change the GXxor to GXequiv.  I have to do this for programs that
   are to run on NCD terminals (on Sun terminals I have to change it
   back to GXxor)...


Kurt.

Newsgroup: comp.windows.x
document_id: 67113
From: mleisher@nmsu.edu (Mark Leisher)
Subject: CRL Archive Change Announcement

The multi-lingual archives at The Computing Research Labs, New Mexico
State University will be moving to a new ftp address soon.  The
archives are being put under control of the Consortium for Lexical
Research.

The new ftp address will be: clr.nmsu.edu (the current IP address
is 128.123.1.12 but may change, so use clr.nmsu.edu whenever
possible).

Please note that there is a difference between ftp sites crl.nmsu.edu and
clr.nmsu.edu.  The crl.nmsu.edu site will be our ftp site for items
not related to the Consortium for Lexical Research.

The Arabic, Chinese, French, Italian, Indian, Japanese, Korean,
Tibetan, and Vietnamese archives will all be moved.

We will announce the new locations of the relevant directories once
the archives have been moved.

Please be patient if you discover directories missing when you ftp to
either crl.nmsu.edu or clr.nmsu.edu.  It will take a few days to move
everything.

If you are not familiar with our multi-lingual archives, we have been
slowly collecting various software, fonts, and text for different
languages over the past 2 years.  Most of the software is currently
Unix oriented.  We would also like to encourage people to continue to
contribute items to the archives to help improve the quality and
quantity of multi-lingual tools.

If you have an item to contribute, please put it in:

clr.nmsu.edu:incoming/

and send a note to lexical@nmsu.edu telling them about your
contribution.

If you have any questions or comments, please send them to:
lexical@nmsu.edu

-----------------------------------------------------------------------------
mleisher@nmsu.edu
Mark Leisher
Computing Research Lab                    "Elegance is not optional!"
New Mexico State University                  -- Attributed to Richard O'Keefe
Box 3CRL, Las Cruces, NM  88003

Newsgroup: comp.windows.x
document_id: 67114
From: grape@suned1.Nswses.Navy.MIL (Mike Grapevine)
Subject: Subscription

Please subscribe me to this mailing list

        Michael D. Grapevine          |  One of these days,
        USN SWC                       |    One of these days,
        Code 4G33                     |  POW!
        grape@suned1.nswses.navy.mil  |   It's gonna happen,
        Bus: (805) 982-7791           |     and I won't even realize it.

Newsgroup: comp.windows.x
document_id: 67115
From: grape@suned1.Nswses.Navy.MIL (Mike Grapevine)
Subject: subscribe

	subscribe grape@nswses.navy.mil

Newsgroup: comp.windows.x
document_id: 67116
From: bading@cs.tu-berlin.de (Tobias 'Doping' Bading)
Subject: Re: Forcing a window manager to accept specific coordinates for a window


try this after XCreateWindow:
-----------------------------

#include <X11/Xutil.h>

Display display;
Window window;

{
  XSizeHints *xsizehints = XAllocSizeHints ();
  xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
  xsizehints->x = 42;
  xsizehints->y = 42;
  xsizehints->width = 100;
  xsizehints->height = 100;
  XSetWMNormalHints (display, window, xsizehints);
  XFree (xsizehints);
}

These hints tell the window manager that the position and size of the window
are specified by the users and that the window manager should accept these
values. If you use xsizehints->flags = PPosition | PSize, this tells the window
manager that the values are prefered values of the program, not the user.
I don't know a window manager that doesn't place the window like you prefer if
you specify the position and size like above.

Greetings from Berlin,

Tobias (bading@cs.tu-berlin.de)

Newsgroup: comp.windows.x
document_id: 67117
Subject: Automated X testing
From: mark@trident.datasys.swri.edu (Mark D. Collier)

Does anyone know what is available in terms of automated testing
of X/Motif applications. I am thinking of a system which I could
program (or which could record events/output) with our verification
test procedures and then run/rerun each time we do regression
testing. I am interested in a product like this for our UNIX
projects and for a separate project which will be using OpenVMS.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark D. Collier                      Southwest Research Institute
Senior Research Analyst              Automation and Data Systems Division
Voice: (512) 522-3437                Data Systems Department
FAX:   (512) 522-5499                Software Engineering Section
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
document_id: 67118
From: thad@cup.portal.com (Thad P Floryan)
Subject: Re: Is a 2 headed Sun 3/60 possible (cgfour0/bwtwo0)

In article <1r28mg$9r5@fitz.TC.Cornell.EDU>
matthew@alchemy.TN.Cornell.EDU (Matthew Kleinmann) writes:

|  I have a Sun 3/60 that has a mono framebuffer (bwtwo0 ?) built on the
|  motherboard.  The same system also has a cgfour (cgfour0 and bwtwo1 ?)
|  daughterboard.  I have been using this system with a color monitor having a
|  color "front" screen from the cgfour, and a mono "back" screen from the
|  bwtwo1, both on the same tube.  I recentley picked up a 1600 x 1280 Sun mono
|  monitor, and I would like to make a two headed system with the cgfour0 and
|  the bwtwo0.  I do not care if I loose the "back" screen on the color tube
|  from the bwtwo1.  After looking through the Xsun man page I am not sure if
|  this is possible.  Has anybody sucessfuly done this before?

If it's any consolation, I have two 2-headed Sun-3/60 systems, though the
color and mono monitors for each are "rated" 1152x900.   Their configuration
is the same as yours, so it "should" be a Plug'N'Play situation, EXCEPT:

I don't know if your hi-res mono monitor will function this way.  However,
you may simply be able to pull the motherboard and set the HI-RES jumper
(located in the same jumper array as the jumpers for the RAM/SIMM selects
and Ethernet connection) and be happily on your way.  When you pull the
motherboard, the jumpers are in the left-rear (e.g. "north-west") quadrant
of the motherboard (to the left of the SIMM sockets).

Thad Floryan [ thad@btr.com, thad@cup.portal.com, thad@netcom.com ]

Newsgroup: comp.windows.x
document_id: 67119
From: markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof)
Subject: Re: Title for XTerm

In article <1quh74$r71@irz401.inf.tu-dresden.de>, beck@irzr17.inf.tu-dresden.de (Andre Beck) writes:
|> 
|> In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|> |> >Hey guys!
|> |> >I work on many stations and would like this name and current logname
|> |> >to be in a title of Xterm when it's open and a machine name only
|> |> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|> |> >as a title of opened XTerm and $HOST when XTerm is closed.
|> |> >How can I do it?
|> |> 
|> |> Almost all window managers (twm, mwm, olwm and their derivates) support
|> |> escape sequences for it. For your purpose put following into your
|> |> .login (if you're using csh or tcsh), for sh you have to modify it.
|> |> 
|> |> if ( "$term" == "xterm" ) then
|> |> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|> |> endif
|> |> 
|> 
|> 1) This is NOT a feature of the Window Manager but of xterm.
|> 2) This sequences are NOT ANSI compatible, are they ?
|>    Does anyone know IF there are compatible sequences for this and what they
|>    are ? I would think they are DCS (device control sequence) introduced,
|>    but may be a CSI sequence exists, too ?
|>    This MUST work on a dxterm (VT and ANSI compatible), it may not work
|>    on xterms.

It works on xterms. At least I have no problem with it. - Back to the original
question:

I usually start new xterms by selecting the proper menu entry in my desktop
menu. Here is a sample command:

	xterm -sl 999 -n ls12i -title ls12i -e rlogin ls12i &

The -n and -title options give the text for window and icon. As I use the
tcsh (a wonderful extension of the csh), I can do the following:

I have an

	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'

in my ~/.tcshrc. This is a special alias for tvtwm. It is executed each time
before printing the prompt. So, I have the current host name and the current
directory path in the title bar of my xterms.

------------------------------------------------------------------------------
      ____                                                                    
  UniDo  /  Ingolf Markhof  University of Dortmund, LS Informatik XII         
 ___/   /                   P.O. Box 500 500, D-4600 Dortmund 50, F.R. Germany
 \  \  /                    Phone: +49 (231) 755 6142, Fax: +49 (231) 755 6555  
  \__\/                     Email: markhof@ls12.informatik.uni-dortmund.de    
                                                                              
------------------------------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67120
From: howardy@freud.nia.nih.gov (Howard Wai-Chun Yeung)
Subject: need shading program example in X


Do anyone know about any shading program based on Xlib in the public domain?
I need an example about how to allocate correct colormaps for the program.

Appreciate the help.

Howard.



Newsgroup: comp.windows.x
document_id: 67121
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: Title for XTerm

In article 1r3fe2INN10d@fbi-news.Informatik.Uni-Dortmund.DE, markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof) writes:
|>In article <1quh74$r71@irz401.inf.tu-dresden.de>, beck@irzr17.inf.tu-dresden.de (Andre Beck) writes:
|>|> 
|>|> In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|>|> |> >Hey guys!
|>|> |> >I work on many stations and would like this name and current logname
|>|> |> >to be in a title of Xterm when it's open and a machine name only
|>|> |> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|>|> |> >as a title of opened XTerm and $HOST when XTerm is closed.
|>|> |> >How can I do it?
|>|> |> Almost all window managers (twm, mwm, olwm and their derivates) support
|>|> |> escape sequences for it. For your purpose put following into your
|>|> |> .login (if you're using csh or tcsh), for sh you have to modify it.
|>|> |> 
|>|> |> if ( "$term" == "xterm" ) then
|>|> |> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|>|> |> endif
|>|> 1) This is NOT a feature of the Window Manager but of xterm.
|>|> 2) This sequences are NOT ANSI compatible, are they ?
|>|>    Does anyone know IF there are compatible sequences for this and what they
|>|>    are ? I would think they are DCS (device control sequence) introduced,
|>|>    but may be a CSI sequence exists, too ?
|>|>    This MUST work on a dxterm (VT and ANSI compatible), it may not work
|>|>    on xterms.
|>It works on xterms. At least I have no problem with it. - Back to the original
|>question:
|>
|>I usually start new xterms by selecting the proper menu entry in my desktop
|>menu. Here is a sample command:
|>
|>	xterm -sl 999 -n ls12i -title ls12i -e rlogin ls12i &
|>
|>The -n and -title options give the text for window and icon. As I use the
|>tcsh (a wonderful extension of the csh), I can do the following:
|>
|>I have an
|>
|>	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'
|>
|>in my ~/.tcshrc. This is a special alias for tvtwm. It is executed each time
|>before printing the prompt. So, I have the current host name and the current
|>directory path in the title bar of my xterms.

Have you gotten an answer yet?  Using your variables, this is what I would do:
	xterm -T "$HOST - $LOGNAME" -n "$HOST"

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
document_id: 67122
From: wam3090@yak.COM (Bill Massena)
Subject: Function key to text string translation


	I want to press a function key and have a text string appear in an
XmText widget.  When I put

	*XmText.Translations: #augment \n\
		<Key>F1:  insert-string(HELLO)

in my resource file, the translation doesn't happen.  If I put

	*XmText.Translations: <Key>F1:  insert-string(HELLO)

in the file, I get the text string HELLO when F1 is pressed, but no other 
keys work, which makes sense since the default translation mode is "replace".  

	Do I have a syntax problem here, or something deeper?

..Bill Massena (wam3090@yak.boeing.com)

Newsgroup: comp.windows.x
document_id: 67123
From: jmartin@egret.imagesRus (John Martin)
Subject: Re: Animation with XPutImage()?

> Hi, I'm new to this group so please bear with me!
> 
> Two years ago I wrote a Sunview application for fast animation
> of raster files. With Sunview becoming rapidly obselete, I've
> finally decided to rewrite everything from scratch in XView.
> I put together a quick test, and I've found that XPutImage()
> is considerably slower (factor of 2 on average?) than the
> Sunview command pw_rop() which moves image data from memory
> pixrects to a canvas. This was on a Sparc IPX. It seems that:
> (1) the X protocol communication is slowing things down; or
> (2) XPutImage is inefficient...or both! My question is, what
> is the fastest way in X11R5 to dump 8 plane image data to
> a window? Can I take advantage of the fact that the client is
> running on the same machine as the server? Or am I stuck with
> XPutImage() (in which case I might as well give up now...)?
> 
> All help appreciated...thanks!
> 
> Derek
> 
>In article 16330@infodev.cam.ac.uk, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
 -----------------------------------------------------------
> | Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
> | Institute of Astronomy | Fax: (0223) 337523             |
> | Cambridge, U.K.        |                                |
> | CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
> -----------------------------------------------------------
> 



Animation is most frequently done by copying the the client resident XImages into 
server resident Pixmap(s) using XPutImage.  Once this is done, the original XImages
can be deleted and the animation loop can be performed using XCopyArea from the Pixmaps to the windows drawable.

Hope this is helpfull.

John


Newsgroup: comp.windows.x
document_id: 67124
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: Calling a library which creates widgets (multiple times)

A few days ago I posted a question about trying to call a function which set
up an X app multiple times.  It was pointed out that XtAppInitialize() should
never be called more than once.  This helped.  However, I am still having
some problems.  Below is a new little test program that more closely models
my real program.  In the actual program, I am writing a library, callable
from any other program.  This means that the first time the lib function is
called, it must initialize things, and after that, it should just use the
old stuff (still around because of static variables).  In the demo below,
main() represents the main program calling my library and doit() represents
the interface to the library function.

#include <X11/Xlib.h>
#include <Xm/Xm.h>
#include <Xm/PushB.h>
#include <stdio.h>
#include <stdlib.h>

void bla(XtAppContext app, Widget top)
{
        Widget topone = top;		// in real prog, these are member vars
        XtAppContext theapp = app;	// of a class
        int junk = 0;
        Display *dis = XtOpenDisplay(theapp, NULL, NULL, NULL, NULL, 0, &junk,
                                        NULL);

        Widget box = XtVaCreateManagedWidget("blaaa", xmPushButtonWidgetClass,
                        topone,
                        XmNheight, 50,
                        XmNwidth, 50,
                        NULL);

        XtRealizeWidget(topone);
        for (int i=0;i<=25;i++)	// real prog returns when "Exit" button clicked
        {
                XEvent event;
                XtAppNextEvent(theapp, &event);
                XtDispatchEvent(&event);
        }
        XtDestroyWidget(box);
        XtCloseDisplay(dis);
}

// SetItUp - should be called once only
void SetItUp(XtAppContext *app, Widget *top)
{
        int junk = 0;
        (*top)=XtAppInitialize (app, "test", NULL, 0, &junk, NULL,
                NULL, NULL, 0);
}

// doit - some library function callable from the outside
void doit()
{
        static XtAppContext app;	// use these every time called
        static Widget top;

        static int setup = 0;

        if (!setup)
        {
                SetItUp(&app, &top);
                setup = 1;
        }
        bla(app, top);
}

// main - program which links to my library
main()
{
        for (int i=0;i<=20;i++)
        {
                doit();
                printf("sleeping...\n");//widget still on screen at this point
                sleep(5);
        }
}


The problem is that the widget does not go away until the new one is created.
(It is still on the screen -- unusuable -- during the "sleep" in the main prog,
despite the XtDestroyWidget call).

Anyone see something I'm missing?

Thanks very much.

(Please respond via email)
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67125
From: sdennis@osf.org
Subject: REPOST: Accelerators/Translations

I posted this a while ago and didn't recieve one reply, and now we
have another bug report on the same subject. Can anybody help me out?

How can you ensure that accelerators work the same independent of
case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
menu entry.

In ORA Vol. 6, in the section on accelerators it says "For information
on how to specify translation tables see Vol. 4...", this is so you
know what to put for the XmNaccelerator resource.  If you go to
Vol. 4 it says, "Likewise, if a modifier is specified, there is
nothing to prohibit other modifiers from being present as well. For
example, the translation:

	Shift<Key>q:	quit()

will take effect even if the Ctrl key is held down at the same time as
the Shift key (and the q key).

This implies to me that setting XmNaccelerator to Ctrl<Key>o should do
what I want, but it doesn't, it doesn't work if the user presses the
control key, the shift key, and the o key.

Is it possible to supply > 1 accelerator for a menu entry? Keep in
mind when answering this question that when using Motif you can't use
XtInstallAccelerators().

I am using Motif 1.1.3 on a DECstation 5000 but I have also tried it
on an HP using Motif 1.1.3 and 1.2.


-- 
**********************************************************************
Steve Dennis              Internet: sdennis@ann-arbor.applicon.slb.com
Software Engineer         Applicon Inc.            Ann Arbor, Michigan
Hail To The Victors!!!

Newsgroup: comp.windows.x
document_id: 67126
From: webster@ucssun1.sdsu.EDU (paolini p)
Subject: ftp:UNIX-dos-UNIX


I'm an new to this.  Having found some files (public) to look into, I
ftp'ed them to a system I have access to.  I then used kermit to transmit
them via modem to my host computer, a PC-based file system.  I access
internet through modem access to a university mainframe.  From the PC
file server, I pull the files to a disk, and then pull them from disk
to a SGI Indigo (the SGI is not networked yet).  When I try to uncompress
and un-tar the files, they either come out as garbage or I get an error
in the tar process about directories being invalid.
What I'm wondering about is the transfer of UNIX files (compressed,
binary,ascii) about multiple platforms.  My guess is that it is the copy
to a 'dos' disk that is screwing things up.  Any help is appreciated.
bob

Newsgroup: comp.windows.x
document_id: 67127
From: robert@cpuserver.acsc.com (Robert Grant)
Subject: Re: Animation with XPutImage()?

Hi everyone,

Does anyone know a good way to adjust colourmaps on the
fly (say during an animation) and prevent the current
set of colours from flickering?

Thanks,

Robert
robert@acsc.com


Newsgroup: comp.windows.x
document_id: 67128
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: Re: How 2 Get Fontname from Fonstruct ???

In article <1993Apr20.105725@narya.gsfc.nasa.gov> 
   dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC) writes:
>
>Anyone know how an application can retrieve the name of the font from
>an application given an XFontStruct *? 
>Would XGetFontProperty work if I passed XA_FONT_NAME? 
>anyone know details of this?  Thanks in advance.
>Brian
>
>-- 
>Brian Dealy                |301-572-8267| It not knowing where it's at  
>dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
>!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan


Try this:

char *name=NULL;
unsigned long value;

if(XGetFontProperty(font, XA_FONT, value)) 
    name=XGetAtomName(dpy, value);

where dpy is your Display connection and font your XFontStruct pointer.

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
document_id: 67130
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Title for XTerm

In article <1r3fe2INN10d@fbi-news.Informatik.Uni-Dortmund.DE>
markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof) writes:
[...]
|> I have an
|> 
|> 	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'
|> 
|> in my ~/.tcshrc. This is a special alias for tvtwm. 

I presume that you meant to say tcsh here ------^^^^^

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
document_id: 67131
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Re: How do I find my AppContext?

On 19 Apr 1993 23:00:15 GMT, masc0442@ucsnews.sdsu.edu (Todd Greene) said:

> Is there an Xt call to give me my application context?
> I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
> whose first argument is the app_context.  What call can I use
> to give me this value?

I believe it's XtVaAppInitialize or something like that.

--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
document_id: 67132
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

On 19 Apr 1993 16:59:12 -0400, graham@sparc1.ottawa.jade.COM (Jay Graham) said:

> I am developing an X (Xt,Xm) application that will include a graphics window
> of some sort with moving symbols among other things.  A pure X application
> could be implemented with Motif widgets, one of which would be an 
> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).

> Is it possible to mix X and GL in one application program?
> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
> with XOpenWindow?

In SGI's distribution with their Indigo line (others as well, possibly),
they include source code for a GL widget that fits on top of Motif, and
one that's Xt based as well.  You may wish to ask IBM whether they
support this.
--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
document_id: 67133
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: R4 Version of xrecplay

I have and use xrecplay for X11R5.  Does one exist for X11R4???

I have tried to contact one of the developers, Eric Swildens, at
ess@hal.com but he is no longer there and has no forwarding email
address.  Archie is no help either.

Any help would be appreciated.  Thanks,

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
document_id: 67134
From: skelley@umiacs.umd.edu (Stephen Kelley)
Subject: Expose/Configure event handling (R4 vs R5)

I have two questions (well probably more...) about how Expose & Configure
events are handled.

I have an appl. which uses 1 window to draw in.  Since I give the user the
capability of scaling and zooming as well as allowing the window to be
resized, I made a translation table for the Expose & Configure events.
The Expose event calls my redraw method while the Configure event
calls my rescale method.  The rescale method invokes a "fake" Expose
event (actually just calls the redraw w/ an appropriate Expose struct)
to draw the data.

Quest 1.
When the appl. is compiled/linked w/ R4 (running in either R4 or R5 env.)
I get multiple (>4) redraws when the window gets uncovered or the size
is changed.  I assume I'm getting cascading events.  Is that right?
Any suggestions as to how to handle/trap events in a better way?

Quest 2.
When the appl. is compiled/linked w/ R5 I get no Expose events
whatsoever.  Do events and/or translation tables act differently in R5?

Thanks in advance

Steve
-- 
==========================================================================================

Steve Kelley	UMCP CS/UMIACS			Captain, I protest!
Internet:	skelley@umiacs.umd.edu		I am *NOT* a merry man! - Worf

Newsgroup: comp.windows.x
document_id: 67135
From: brians@atlastele.com (Brian Sheets)
Subject: Looking for a filemanager under X11R5

Does anyone have a file manager that runs under UNIX/X11R5??


brians
-- 
Brian Sheets		    _   /|  	"TRUCK?! What truck?"
Support Engineer  	    \`o_O'    	 
Atlas Telecom Inc. 	      ( ) 	   -Raiders of the Lost Ark
brians@atlastele.com           U

Newsgroup: comp.windows.x
document_id: 67136
From: rps@arbortext.COM (Ralph Seguin)
Subject: finding out state of state keys (eg, CapsLock and NumLock)

Hi.  I've looked in the FAQ and the O-Reilly books and was unable to
find (an easy) means of finding out the state of state keys such as
CapsLock and NumLock.  I can certainly track the events inside of my
window and set a boolean there, but what if CapsLock is pressed in
another window?  I looked at XGrabKey() and decided it was definitely
NOT what I wanted to do.  I could find no convenience function to tell
me that information.

My question is this:  Is there a means of determining what the state
of CapsLock and/or NumLock is?

An even more pointed question: Is there an easy means of making an X
keyboard act like a PC keyboard?  ie, CapsLock is active, and the user
presses shift-a, I'd like to get a lowercase 'a' instead of 'A'.

Any input is greatly appreciated. Please respond via email.  I will
repost a summary of my findings.

			Thanks, Ralph

Newsgroup: comp.windows.x
document_id: 67137
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Store/Post events


store and reply of mouse and keyboard events
--------------------------------------------

To produce regression tests or automatic demo's
we would like to store all mouse and keyboard events
produced by a user. It should be possible to filter
the mouse and keyboard events from the server's queue
an to store them in a file.
This sequence of events, stored in a file, should be given 
to the server's queue as if a user is working.


1. Exists a tool that is capable to save and reply all
   mouse and keyboard events (where)?

2. Where one can catch these events to store them ?
   In our case the server's queue is on a X Terminal (HP).
   Where can we catch all events coming from a given
   server.
   If this is not possible, can we catch all events given
   to a certain client and how ?
   
3. Where one can send a stored sequence of events to simulate a user ?
   Is there a central dispatcher on the clients machine who manages
   all incoming events from a given server and how can we reach it ?


Thanks in advance

Ron.

Newsgroup: comp.windows.x
document_id: 67138
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Animation with XPutImage()?

Hi, I'm new to this group so please bear with me!

Two years ago I wrote a Sunview application for fast animation
of raster files. With Sunview becoming rapidly obselete, I've
finally decided to rewrite everything from scratch in XView.
I put together a quick test, and I've found that XPutImage()
is considerably slower (factor of 2 on average?) than the
Sunview command pw_rop() which moves image data from memory
pixrects to a canvas. This was on a Sparc IPX. It seems that:
(1) the X protocol communication is slowing things down; or
(2) XPutImage is inefficient...or both! My question is, what
is the fastest way in X11R5 to dump 8 plane image data to
a window? Can I take advantage of the fact that the client is
running on the same machine as the server? Or am I stuck with
XPutImage() (in which case I might as well give up now...)?

All help appreciated...thanks!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67139
From: drand@spinner.osf.org (Douglas S. Rand)
Subject: Re: Drawing Lines (inverse/xor)

In article <1993Apr21.111919.5281@alf.uib.no> singg@alf.uib.no (Kurt George Gjerde) writes:

   In article <1993Apr19.191531.15865@news.media.mit.edu>, dyoung@media.mit.edu (David Young) writes:

     :
     :

   |>    XSetFunction( myDisplay, gc, GXxor);
   |>    XSetForeground( myDisplay, gc, drawIndex);
   |> 
   |> Then to draw I do:
   |> 
   |>    XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
   |>    XFlush( myDisplay);
   |> 
   |> And when I'm all done, to return things to normal I do:
   |> 
   |>    XSetFunction( myDisplay, gc, GXcopy);
   |> 
   |> 
   |> What I'd like to happen is for the lines I draw to be the inverse of
   |> whatever I'm drawing over.  Instead what happens is I get white lines.  If
   |> the lines are over a white background - nothing shows up.  If the lines are
   |> over a black area - nothing shows up!  It's very strange.  But the GXxor
   |> function seems right - since if I do a rubber-banding box, it erases and
   |> redraws itself correctly (ie. not disturbing the underlying image).
   |> 
   |> Any suggestions what I'm doing wrong?
   |> 
   |> david


      Try change the GXxor to GXequiv.  I have to do this for programs that
      are to run on NCD terminals (on Sun terminals I have to change it
      back to GXxor)...

There is a small section in the O'Reilly Xlib books that describes
the right thing to do.  The key is to set the plane_mask in the
GC to the OR of the foreground and background pixel values.



--
Douglas S. Rand <drand@osf.org>		OSF/Motif Dev.
Snail:         11 Cambridge Center,  Cambridge,  MA  02142
Disclaimer:    I don't know if OSF agrees with me... let's vote on it.
Amateur Radio: KC1KJ

Newsgroup: comp.windows.x
document_id: 67140
From: neuralog@NeoSoft.com (Neuralog)
Subject: Re: compiling on sun4_411

In article <1993Apr20.132914.907@aio.jsc.nasa.gov> mccoy@gothamcity.jsc.nasa.gov writes:
>In article qfe00WB2QzZ7EZ@andrew.cmu.edu, Wilson Swee <ws8n+@andrew.cmu.edu> () writes:
>|>    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
>|>well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
>|>undefined ld errors:
>|>_sin
>|>_cos
>|>_pow
>|>_floor
>|>_get_wmShellWidgetClass
>|>_get_applicationShellWidgetClass
>|>
>|>The following libraries that I linked it to are:
>|>-lXaw -lXmu -lXt -lXext -lX11
>|>
>|>The makefile is generated off an imake template.
>|>Can anyone give me pointers as to what I'm missing out to compile on
>|>a sun4_411?
>
>Well, the first 2 are easy.  You need the math library.  Try adding -lm after
>-lX11.  Don't know if that's the whole problem but it's a start.
>
>---
I "think" you should try linking to /usr/lib/libXmu.a instead of 
-lXmu. At least that solved the problem for me!



Newsgroup: comp.windows.x
document_id: 67141
From: neuralog@NeoSoft.com (Neuralog)
Subject: Authorization in OW 3.0 


Hello,

This is my first net letter, so forgive mistakes!

I have been plagued by problems (or lack of info) with
authorization in Open Windows 3.0 for a long while and
would like some help please!  I generally use strait
MIT X, and so don't use OW much, but when I share 
X software with others - bad news.

PROBLEM:

My friend who logs into his SSII trys to run my 
program that runs fine on my machine, however, 
my friend gets "client not authorized to connect 
to server" (or something close).  If OW is started
with the -noauth option all is well, but surely this
is not required in general!

Also, xhost + does not work, becoming root does not 
work, etc... 

Any help will be greatly appreciated!

Thanx

send replies to neuralog@neosoft.com or this news group


Newsgroup: comp.windows.x
document_id: 67142
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Program argument: geometry

#
#I have a question regarding the processing of program arguments
#such as the -geometry option. Since this is a standard X option, 
#I'm wondering wether I have to parse it manually or whether there
#is some predefined function that will do this for me?
#

If you are using the Intrinsics, it is parsed for you.  If you are working
at the Xlib level, you can parse it yourself or you can use the following
bit of code.

static XrmOptionDescRec options[] = {
	{"-geometry",	".geometry",	XrmoptionSepArg, (XPointer)NULL}
};

#define Number(x)	(sizeof(x)/sizeof(x[0]))
XrmParseCommand(db, options, Number(options), "MyApplication", &argc, argv);

Then use XrmGetResource() to retrieve the value and parse it using
XParseGeometry().

It is probably quicker to parse it yourself from argv, however, I much prefer
using the X resource management routines to do this.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67143
From: ramakris@csgrad.cs.vt.edu (S.Ramakrishnan)
Subject: Re: Mwm title-drag crashes X server (SIGPIPE)

In article <1993Apr20.144415.2153@ncar.ucar.edu> boote@eureka.scd.ucar.edu (Jeff W. Boote) writes:
  >In article <4378@creatures.cs.vt.edu>, ramakris@csgrad.cs.vt.edu (S.Ramakrishnan) writes:
  >> 
  >>    Environment:
  >>       mach/arch : sparc/sun4  (IPX)
  >>       OS	: SunOS 4.1.3
  >>       X11	: X11R5 (patchlevel 22)
  >>       Motif	: 1.2.2
  >> 
  >> I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
  >> of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
  >> to X server lost):
  >
  >I had this problem as well - It had to do with the CG6 graphics card that
  >comes with the IPX.  What fixed the problem for me was to apply the "sunGX.uu"
  >that was part of Patch #7.  Patch #1 also used this file so perhaps you
  >didn't apply the one that came with Patch #7.
  >
  >jeff
  >-
  >Jeff W. Boote  <boote@ncar.ucar.edu>      *********************************
  >Scientific Computing Division             * There is nothing good or bad  *
  >National Center for Atmospheric Research  * but thinking makes it so.     *
  >Boulder                                   *                   Hamlet      *
  >                                          *********************************

Thanx, Jeff. You're a lifesaver. I imported the new sun GX emulator that came in
with patch #7. The problem has since disappeared.

Thanx to der (schoene) Mouse for his help too.

---
S Ramakrishnan, CS Dept, McBryde Hall, VaTech

Newsgroup: comp.windows.x
document_id: 67144
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> Hi, I'm new to this group so please bear with me!
> 
> Two years ago I wrote a Sunview application for fast animation
> of raster files. With Sunview becoming rapidly obselete, I've
> finally decided to rewrite everything from scratch in XView.
> I put together a quick test, and I've found that XPutImage()
> is considerably slower (factor of 2 on average?) than the
> Sunview command pw_rop() which moves image data from memory
> pixrects to a canvas. This was on a Sparc IPX. It seems that:
> (1) the X protocol communication is slowing things down; or
> (2) XPutImage is inefficient...or both!

Using XPutImage, your source is maintained by the client and the
destination is maintained by the server, thus you incur the overhead
of transporting through whatever client-server communications
mechanism you are using.

Is it possible for you to maintain your source images in pixmaps?
These are maintained by the server, so copying them into a window is
much cheaper.

Also make sure you are not sending any unnecessary XSyncs, or running
in XSynchonize mode.
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
document_id: 67145
From: rank@winf.uni-passau.de (Christian Rank)
Subject: Xsun not running on SPARCclassic

I've installed X11R5 with patches for Solaris 2.1 on our SPARCstation LX /
SPARCclassic pool. On the LX, X11R5 runs fine, but on the classics,
after giving the command startx, Xsun prints the following messages:
	WARNING: cg3_mmap: can't map dummy space!
	Mapping cg3c: No such device or address
and exits.

Does anybody know how to fix this problem?

Thanks in advance.

---
Christian Rank
Lehrstuhl fuer Wirtschaftsinformatik * Universitaet Passau *
Innstr. 29 * D-8390 Passau

Newsgroup: comp.windows.x
document_id: 67146
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)


pyeatt@Texaco.com writes:

>> There is a widget already defined for GL.  It is the GlxMDraw (motif) or
>> GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
>> allows you to use GL calls to render into the window.  Look at glxlink,
>> glxunlink, glxgetconfig, and glxwinset in the man pages.

Where do I get hold of these widgets?

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.

Newsgroup: comp.windows.x
document_id: 67147
From: baldwa@antietam.adobe.com (Sanjay Baldwa)
Subject: X support for pressure sensitive tablet

Are there any vendors supporting pressure sensitive tablet/pen with X? I
will appreciate any pointers.

Thanks, Sanjay

--
baldwa@adobe.com  or  ..!decwrl!adobe!baldwa

Newsgroup: comp.windows.x
document_id: 67148
From: bill@west.msi.com (Bill Poitras)
Subject: Re: Automated X testing

Mark D. Collier (mark@trident.datasys.swri.edu) wrote:
: Does anyone know what is available in terms of automated testing
: of X/Motif applications. I am thinking of a system which I could
: program (or which could record events/output) with our verification
: test procedures and then run/rerun each time we do regression
: testing. I am interested in a product like this for our UNIX
: projects and for a separate project which will be using OpenVMS.

A question like this is answered in the FAQ, about sharing X windows.
One of the answers is XTrap, a record and playback extenstion to X.  You
can find it at export.lcs.mit.edu:/contrib/XTrapV33_X11R5.tar.Z.

Does anyone know of a program which doesn't require an X extension?  Most
the the X servers we have at work have vendor extensions which we can't
modify, so XTrap doesn't help up.  There is X conferencing software at
mit, but I don't know how easy it would be to modify it to do record and
playback.

Any help would be appreciated.
--
+-------------------+----------------------------+------------------------+
| Bill Poitras      | Molecular Simulations Inc. | Tel (408)522-9229      |
| bill@msi.com      | Sunnyvale, CA 94086-3522   | FAX (408)732-0831      |
+-------------------+----------------------------+------------------------+
|FTP Mail           |mail ftpmail@decwrl.dec.com | Offers:ftp via email   |
|                   |Subject:<CR>help<CR>quit    |                        |
+-------------------------------------------------------------------------+

Newsgroup: comp.windows.x
document_id: 67149
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: need shading program example in X

#
#Do anyone know about any shading program based on Xlib in the public domain?
#I need an example about how to allocate correct colormaps for the program.
#
#Appreciate the help.
#

I don't know if this might help, but I've just started playing with a program
called POVRay (Persistance of Vision Raytracer) that also displays its output
via X Windows.  It does a fairly good job of allocating the colormap on my
Psuedo-Color 8-plane display.  I got the source from from a site in Canda.
The person I retrieved them from was David Buck (dbuck@ccs.carleton.ca).

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67150
From: toml@boulder.parcplace.com (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <C5r25y.HFz@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
|>
|>	Hi. I'm trying to figure out how to make a window manager
|>place the window where the create window command tells it,
|>regardless of what it may think is right. (my application has
|>reason to know better)
|>
|>	I don't want to set the override-redirect because I do
|>want all the embellishments that the window manager gives, I just
|>want the wm to accept my choice of location.


What "it may think is right" may be exactly what the user wants.
Assuming that your application "has reason to know better" is, IMHO,
anti-social.  If I start your application with a -geometry option are
you going to ignore that as well?

There's really no way to force a window manager to do much of anything
if it's managing your window.  You can ask, you can hint, but there's
no guarantee that you're going to get what you want.

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
document_id: 67151
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <BADING.93Apr21134939@athene.cs.tu-berlin.de>, bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
|> 
|> try this after XCreateWindow:
|> -----------------------------
|> 
|> #include <X11/Xutil.h>
|> 
|> Display display;
|> Window window;
|> 
|> {
|>   XSizeHints *xsizehints = XAllocSizeHints ();
|>   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
|>   xsizehints->x = 42;
|>   xsizehints->y = 42;
|>   xsizehints->width = 100;
|>   xsizehints->height = 100;
|>   XSetWMNormalHints (display, window, xsizehints);
|>   XFree (xsizehints);
|> }
|> 
|> These hints tell the window manager that the position and size of the window
|> are specified by the users and that the window manager should accept these
|> values. If you use xsizehints->flags = PPosition | PSize, this tells the window
|> manager that the values are prefered values of the program, not the user.
|> I don't know a window manager that doesn't place the window like you prefer if
|> you specify the position and size like above.


You are right but PLEASE DON'T DO THIS.  It makes my brain hurt.
USPosition and USSize should ONLY be set if the USER specified the
position and size.

You say: "Tom, don't blow a gasket, what's the harm?"

Some window managers do very different things (besides positioning the window)
when they see USPosition rather than PPosition.

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
document_id: 67152
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: build X11R5 with xlc 1.2.1 (Aix 3.2.3e)

>>>>> On 21 Apr 1993 03:49:16 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com
I  am  having  a  big problem trying to build MIT X11R5 with xlc 1.2.1
(the  one  bundled  with  AIX  3.2.3e).   Its almost the linker is not
working properly with shared libraries.

I've built X11R5 with no problem before .. but now its all  headaches.
For example, the xset client complains that libXmu doesnt have a bunch
of Xt routines and shr.o is missing (or  something  like  that).   The
build of libXmu DOES link in libXt  so I am really perplexed  what  is
going on.


....following up on this, the specific error I get is:
Could not load program ./xset 
Symbol XtVaSetValues in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtName in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtWindowOfObject in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtGetConstraintResourceList in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtDisplayToApplicationContext in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtAppSetTypeConverter in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtScreenDatabase in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtResolvePathname in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtCvtStringToFont in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtCallConverter in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtDisplayStringConversionWarning in ../.././lib/Xmu/libXmu.a is undefined
Could not load library libXmu.a[shr.o]
Error was: Exec format error

--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 67153
From: m91nen@tdb.uu.se (Nils Engstrom)
Subject: Re: compiling on sun4_411

In article <Yfo=qfe00WB2QzZ7EZ@andrew.cmu.edu> Wilson Swee <ws8n+@andrew.cmu.edu> writes:
>_sin
>_cos
>_pow
>_floor

Link with '-lm' (math library).

>_get_wmShellWidgetClass
>_get_applicationShellWidgetClass

This is a bug in Sun's shared libraries. Linking with
'-assert nodefinitions' should do the trick.

	n

Newsgroup: comp.windows.x
document_id: 67154
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: build X11R5 with xlc 1.2.1 (Aix 3.2.3e)

>>>>> On 22 Apr 1993 01:02:41 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com

>>>>> On 21 Apr 1993 03:49:16 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com
	Doug> I  am  having  a  big problem trying to build MIT X11R5 with xlc 1.2.1
	Doug> (the  one  bundled  with  AIX  3.2.3e).   Its almost the linker is not
	Doug> working properly with shared libraries.

	Doug> I've built X11R5 with no problem before .. but now its all  headaches.
	Doug> For example, the xset client complains that libXmu doesnt have a bunch
	Doug> of Xt routines and shr.o is missing (or  something  like  that).   The
	Doug> build of libXmu DOES link in libXt  so I am really perplexed  what  is
	Doug> going on.


	Doug> ....following up on this, the specific error I get is:
	Doug> Could not load program ./xset 
	Doug> Symbol XtVaSetValues in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtName in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtWindowOfObject in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtGetConstraintResourceList in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtDisplayToApplicationContext in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtAppSetTypeConverter in ../.././lib/Xmu/libXmu.a is undefined








	Doug> Symbol XtScreenDatabase in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtResolvePathname in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtCvtStringToFont in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtCallConverter in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtDisplayStringConversionWarning in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Could not load library libXmu.a[shr.o]
	Doug> Error was: Exec format error


....  a  search  on  IBMLINK  revealed that this is similar to IX33890
(howervre this was closed USE).
--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
document_id: 67155
From: sharma@tiger.vill.edu (Sanjeev Sharma)
Subject: Positioning a window, under openlook.

Hi there netters,

I require a window to appear at a co-ordinates (0,0) (top left corner) of my
screen (root window). Could some windows guru out there help me on how to
go about doing this. I write the whole program which creates the window with
the image it displays - I require the image to appear at the top-left corner
so that I can grab it for recording on to video, using a MIniVas controller,
which expects the window at the same spot every time.

Thanks in advance.

sincerely,

Sanjeev Sharma

-- 
_____________________________________________________________________
Office:					     e_mail:	
   Deptt. of Computing Science		     	sharma@monet.vill.edu
   Villanova University			     (215)645-6463  

Newsgroup: comp.windows.x
document_id: 67156
From: xyzzy@hal.gnu.ai.mit.edu (Daniel Drucker)
Subject: tape down selections

I just had an idea. I'm not sure if its been done and I'm just
remembering it unconsiously, but I thought that in dialog
boxes and whatever in windowing systems, there should be a
way to intuitivly set some things checked or unchecked or
filled in a certain way. My idea: tape. You know, like putting
a piece of tape over a light switch?
Just an idea, if you like it, use it.

-- 
Daniel Drucker   N2SXX          | xyzzy@gnu.ai.mit.edu
Forever, forever, my Coda.      | und2dzd@vaxc.hofstra.edu

Newsgroup: comp.windows.x
document_id: 67157
From: jlong@b4pps40.Berkeley.EDU (John Long)
Subject: xman source

   Where can I get xman source?  I would like to get the binaries for
xman for an HP 9000/700, but I would settle for source.  

--

John O.F. Long, BNR, Inc.              |  "If there is no God, who pops
jlong@bnr.ca                           |  up the next Kleenex?"
#include <standard_disclaimer.h>       |                  Art Hoppe

Newsgroup: comp.windows.x
document_id: 67158
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: Detecting read-only colorcells?

[again, poseted for a friend]

Okay, I got such great response from my last question (thanks, everyone), 
lets try again:

How can I tell if a colorcell is read-only?

I want to use any read-only cells that are already in my colormap
once I start running out of allocatable cells, using some arbitrary
nearest color matching scheme to get those cells that come closest to
a requested color.

Once I determine if a cell is read-only, I assume I can then just request
an XAllocColor() with the exact same color specifications and it will 
then be flagged as 'used' by my application so that it doesn't later get
freed by someone else and allocated again as read-write to another
application.

So far, the only way I've figured out to do this is to write my own
error handler and just go ahead and request the cells colors, once my
colormap is all full up.  It should error out if the cell is non-shareable.
But life would be much easier if I could just detect the
read-only/shareable stuff directly...

Any ideas?

Noel (ngorelic@speclab.cr.usgs.gov)

Newsgroup: comp.windows.x
document_id: 67159
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: Colormaps and Window Managers

In article <1993Apr15.155255.27034@thunder.mcrcim.mcgill.edu> mouse@thunder.mcrcim.mcgill.edu (der Mouse) writes:
>In article <C5DuHC.71p.1@cs.cmu.edu>, das+@cs.cmu.edu (David Simon) writes:
>
>>Can some one please explain to me why the following piece of code
>>causes twm (or tvtwm) to dump core [...]
>
>>In particular, I am interested in knowing whether this behavior is
>>caused by a bug in my reasoning, or if it is a bug in twm.
>
>If *anything* a client does causes twm to dump core, it's a bug in twm.
>Window managers should never *ever* crash.

Would if only it were true ...

If only MIT would fix the !@&$^*@ twm "InstallWindowColormaps()" crash bug
once and for all, then I could say that I've (almost) unable to crash either
"twm" or "tvtwm", which would be a remarkable feat - and most desirable to
boot.  I mean, this bug has only been reported, oh, a zillion times by now ...

Now *servers*, on the other hand ... (want to crash an OpenWindows 3.0 "xnews"
server at will?  Just do an 'xbiff -xrm "XBiff*shapeWindow: on"'.  Blammo.)

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
document_id: 67160
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: tvtwm & xsetroot, X11R5 and SPARCstation 10 keyboard

In article <1r1q5g$cv4@genesis.ait.psu.edu> barr@pop.psu.edu (David Barr) writes:
>In article <MAILQUEUE-101.930420145015.384@oak.shu.ac.uk> D.Haywood@sheffield-hallam.ac.uk writes:
>>  Environment: Sun SPARC 10, SunOs 4.1.3.  X11R5 patch level 23.  My X
>>process is started by xdm.
>
>Okay, that's good.  I'm typing this from exactly the same setup.
>(US-UNIX layout keyboard)  I did install the sunkbd patch, though.
...
>> ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
>>     and some keys on the keyboard are not sending the correct characters.
>
>Did you install the sunkbd patch?  It's in the contrib directory on export.
>All the keys on my keyboard send events properly, except the following:
>The End, PageUp, PageDown on the 6-key cluster aren't recognized.
>Even the compose key works.  (Though I can't seem to get the composed
>characters in an xterm to get passed.)
>
>Anyone have a fix for the last two?

I don't know anything about a "sunkbd" patch, but I use the following
.Xmodmap file (run from .xinitrc via "xmodmap $HOME/.Xmodmap", of course) for
my Type-5 UNIX keyboard:  (It's a bit "brute force", however.)

------------------------------------------------------------------------------
!
! Sun Type-5 UNIX keyboard remappings 
!
! This remaps the arrow keys properly
!
! By default, the arrow keys on the keypad (Shift-8 = Up, Shift-4 = Left,
! Shift-6 = Right, and Shift-2 = Down) work, but the arrow keys are not
! assigned to any keysym
!
keycode 27 = Up
keycode 31 = Left
keycode 34 = Down
keycode 35 = Right

!
! Now we want the Back Space key to emit the "Delete" keysym
!
keycode 50 = Delete

!
! Other random mappings that aren't on by default
!
! SysRq/Print Screen key
keycode 29 = SunSys_Req Print
! Break/Pause key
keycode 28 = Break Pause
! Alt Graph key
keycode 20 = Mode_switch
! PageUp key
keycode 103 = Prior
! PageDown key
keycode 130 = Next
! Insert key
keycode 51 = Insert
!
! Home, End keys = ???
!
! Open Look Functions
!
! Stop key (SunStop keysym == Cancel)
keycode 8 = SunStop
! Again key (SunAgain == Redo)
keycode 10 = SunAgain
! Props key 
keycode 32 = SunProps
! Undo key (SunUndo == Undo)
keycode 33 = SunUndo
! Front key
keycode 56 = SunFront
! Copy key
keycode 58 = SunCopy
! Open key
keycode 79 = SunOpen
! Paste key
keycode 80 = SunPaste
! Find key (SunFind == Find)
keycode 102 = SunFind
! Cut key
keycode 104 = SunCut

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
document_id: 67161
From: venkatg@grace.CS.ORST.EDU (Gopal Venkatraman)
Subject: question regarding overlaying of graphics

Hello...

I wonder if some one can suggest an answer to the following question:
I am a total X novice and would appreciate any suggestions you may have.

I am trying to create a simple drawing tool....

       __________
       |        |
       |     ___|___
       |_____|__|  |
             |	   |
	     |_____|

Let's say I have two rectangles on the canvas(see above) 
one intersecting the other...
Now, I would like to delete one of the rectangles.
The way I do it is to create another GC wherein I use the
GXxor logical function and simply redraw the rectangle using the newly
created graphics context thus deleting it for all apparent purposes.
A problem with this approach is that at the points of intersection the pixel 
locations belonging to the other rectangle also become white, which is 
something that should be avoided.

Is there any way I can avoid this problem without having to redraw the other
rectangle too?
I also would not like to generate an expose event for the affected area
as this degrades performance very badly...


Thank you...
Gopal

Newsgroup: comp.windows.x
document_id: 67162
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-Terminal question

A simple question to all the Xperts:

Is it possible to use several X-Terminals
with only one mouse and one keyboard?

Any suggestions?

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 67163
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Subject: NCSA Mosaic for X 1.0 available.

Version 1.0 of NCSA Mosaic for the X Window System, a networked
information systems and World Wide Web browser, is hereby released:

file://ftp.ncsa.uiuc.edu/Mosaic/xmosaic-source/xmosaic-1.0.tar.Z
                            .../xmosaic-binaries/xmosaic-sun.Z
                            .../xmosaic-binaries/xmosaic-sgi.Z
                            .../xmosaic-binaries/xmosaic-ibm.Z
                            .../xmosaic-binaries/xmosaic-dec.Z
                            .../xmosaic-binaries/xmosaic-alpha.Z
                            .../xmosaic-diffs/xmosaic-0.13-1.0-diffs.Z

NCSA Mosaic provides a consistent and easy-to-use hypermedia-based
interface into a wide variety of networked information sources,
including Gopher, WAIS, World Wide Web, NNTP/Usenet news, Techinfo,
FTP, local filesystems, Archie, finger, Hyper-G, HyTelnet, TeXinfo,
telnet, tn3270, and more.

This release of NCSA Mosaic is known to compile on the following
platforms:

  SGI (IRIX 4.0.2) 
  IBM (AIX 3.2)
  Sun 4 (SunOS 4.1.3 with stock X11R4 and Motif 1.1, and GCC).
  DEC Ultrix.
  DEC Alpha AXP (OSF/1).

Documentation is available online.

Changes since 0.13 include:

 o Added new resource, gethostbynameIsEvil, for Sun's that
   coredump when gethostbyname() is called to try to find out what
   their own names are. (Command-line flag is -ghbnie.) 
 o Explicitly pop down all dialog boxes when document view
   window is closed, for window managers too dull to do so
   themselves. 
 o Better visited anchor color for non-SGI's. 
 o Added .hqx and .uu to list of file extensions handled like .tar files. 
 o Added 'Clear' button to Open box, to allow more convenient
   cut-n-paste entries of URL's. 
 o New resource 'autoPlaceWindows'; if set to False, new document
   view windows will not be automatically positioned by the
   program itself (but it's still up to your window manager just how
   they're placed). 
 o Command-line flags -i and -iconic now have desired effect (new
   resource initialWindowIconic can also be used). 
 o Gif-reading code is a little more bulletproof. 
 o Obscure infinite loop triggered by extra space in IMG tag fixed. 
 o Eliminated nonintuitive error message when image can't be read
   (inlined NCSA bitmap is indication enough that something's not
   right for authors, and readers can't do anything about bad images
   in any case). 
 o Obscure parsing bug (for constructs like <ADDRESS><A
   HREF=...>text<A></ADDRESS>) fixed. 
 o Fixed mysterious stupid coredump that only hits Suns. 
 o Fixed stupid coredump on URL's like '://cbl.leeds.ac.uk/'. 
 o Fixed buglet in handling rlogin URL's. 
 o New support for Solaris/SYSVR4 (courtesy
   dana@thumper.bellcore.com). 
 o Better support for HP-UX 8.x and 9.x (courtesy
   johns@hpwarf.wal.hp.com). 
 o Better support for NeXT (courtesy scott@shrug.dur.ac.uk). 
 o Some miscellaneous portability fixes (courtesy
   bingle@cs.purdue.edu). 
 o Miscellaneous bug fixes and cleanups. 

Comments, questions, and bug reports should be sent to
mosaic-x@ncsa.uiuc.edu.  Thanks in advance for any feedback you can
provide.

Cheers,
Marc

--
--
Marc Andreessen
Software Development Group
National Center for Supercomputing Applications
marca@ncsa.uiuc.edu

Newsgroup: comp.windows.x
document_id: 67164
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: WANTED: Info on Dedicated X Server Kernel for Sun3/100 Series


> If anyone has any information about the existence or location of a
> dedicated X server kernel for the Sun3, please send email.  I am
> trying to put some neglected Sun3s to good use but they don't have
> enough memory for SunOS 4.1.1.  Thanks in advance for any help.

	There is a free program called 'xkernel' which does just that.
It is by Seth Robertson (seth@ctr.columbia.edu).  It takes a sun 3 and
boots a limited kernel which allows you to run X.  We converted 4
machines over this semester and the speedup is enormously appreciable
-- I find them faster than an NCD 15inch black&white XTerminal that we
are playing with, and a bigger screen to boot!  As a matter of fact,
the department just bought some old sun3s at an auction to convert!

} Xkernel is available for anonymous ftp from ftp.ctr.columbia.edu
} [128.59.64.40] in /Xkernel/Xkernel.shar (/Xkernel is a symlink to the
} latest version of Xkernel)

	Note that the compiled version which is available is for the
sun 3/50, but compiling to work for a sun 3/1xx should be quite easy.

	I am not connected with xkernel except as a satisfied
installer and user 8).  I may be able to answer questions; feel free
to email me.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  230-   All transfers are disclaimed by my host name and boss's address.
  230-   If you don't like this policy, disconnect now!


Newsgroup: comp.windows.x
document_id: 67165
From: dcr@mail.ast.CAm.ac.UK (Derek C. Richardson)
Subject: Re: Animation


I think you tried to send me a message re: the animation query
I posted to comp.windows.x. I've appended what I received below.
If you can remember what you typed, I'd appreciate another attempt!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------

----- Begin Included Message -----

From aol.com!Postmaster Thu Apr 22 04:47:31 1993
Received: by cast0.ast.cam.ac.uk (UK-Smail 3.1.25.1/2)
  id <m0nlsG0-0001MPC@cast0.ast.cam.ac.uk>; Thu, 22 Apr 93 04:47 BST
Received: from sco1.prod.aol.net by hp81.prod.aol.net with SMTP
	(1.37.109.4/16.2) id AA19251; Wed, 21 Apr 93 23:49:16 -0400
From: Postmaster@aol.com
X-Mailer: America Online Mailer
To: dcr@mail.ast.cam.ac.uk
Subject: Returned Mail Unknown Member 
Date: Wed, 21 Apr 93 23:46:36 EDT
Message-Id: <9304212346.tn60988@aol.com>
Status: R


 The mail you sent could not be delivered; it was addressed to an unknown user.The text you sent follows...

Hi, I'm new to this group so please bear with me!

Two years ago I wrote a Sunview application for fast animation
of raster files. With Sunview becoming rapidly obselete, I've
finally decided to rewrite everything from scratch in XView.
I put together a quick test, and I've found that XPutImage()
is considerably slower (factor of 2 on average?) than the
Sunview command pw_rop() which moves image data from memory
pixrects to a canvas. This was on a Sparc IPX. It seems that:
(1) the X protocol communication is slowing things down; or
(2) XPutImage is inefficient...or both! My question is, what
is the fastest way in X11R5 to dump 8 plane image data to
a window? Can I take advantage of the fact that the client is
running on the same machine as the server? Or am I stuck with
XPutImage() (in which case I might as well give up now...)?

All help appreciated...thanks!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------



----------------------- Headers ------------------------
>From uupsi7!expo.lcs.mit.edu!xpert-mailer Wed Apr 21 23:46:29 1993 remote from aolsys
Received: from uupsi7 by aolsys.aol.com id aa23625; Wed, 21 Apr 93 23:39:41 EDT
Received: from EXPO.LCS.MIT.EDU by uu7.psi.com (5.65b/4.0.071791-PSI/PSINet) via SMTP;
        id AA16562 for ; Wed, 21 Apr 93 19:44:00 -0400
Received: by expo.lcs.mit.edu; Wed, 21 Apr 93 13:58:06 -0400
Received: from ENTERPOOP.MIT.EDU by expo.lcs.mit.edu; Wed, 21 Apr 93 13:58:05 -0400
Received: by enterpoop.MIT.EDU (5.57/4.7) id AA15705; Wed, 21 Apr 93 13:57:34 -0400
Received: from USENET by enterpoop with netnewsfor xpert@expo.lcs.mit.edu (xpert@expo.lcs.mit.edu);contact usenet@enterpoop if you have questions.
To: xpert@expo.lcs.mit.edu
Date: Wed, 21 Apr 1993 15:46:20 GMT
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Message-Id: <1993Apr21.154620.16330@infodev.cam.ac.uk>
Organization: Institute of Astronomy, Cambridge
Reply-To: dcr@mail.ast.cam.ac.uk
Subject: Animation with XPutImage()?


----- End Included Message -----


Newsgroup: comp.windows.x
document_id: 67166
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Re: Animation with XPutImage()?

In article 4867@mlb.semi.harris.com, jmartin@egret.imagesRus (John Martin) writes:
> Animation is most frequently done by copying the the client resident XImages into 
> server resident Pixmap(s) using XPutImage.  Once this is done, the original XImages
> can be deleted and the animation loop can be performed using XCopyArea from the Pixmaps to the windows drawable.
> 
> Hope this is helpfull.
> 
> John
> 

I just implemented this and it seems I can just about achieve the display
rates (20 400x400x8 frames / sec on IPX) that I get with Sunview, though
it's a bit "choppy" at times. Also, loading the data, making an XImage,
then XPut'ing it into a pixmap is a bit cumbersome, so the animation is
slower to load than with Sunview. Is there a better way to load in the
data?

rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>  If you need speed, and your client can run on the same host as the X server,
>  you should use the shared memory extension to the sample X server (MIT-SHM).
>  xdpyinfo  will tell you if your server has this extension. This is certainly
>  available with the sample MIT X server running under SunOS.
>  A word of warning: make sure your kernel is configured to support shared
>  memory. And another word of warning: OpenWindows is slower than the MIT
>  server.
>  I have written an imaging tool (using XView for the GUI, by the way) which
>  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
>  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
>  animations.
>
>				Regards,
>
>					Richard Gooch....

Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
Nick Kisseberth) looks interesting, but I need someone to point me to some
documentation. Is this method likely to give better results than server-
resident pixmaps? I'd also be interested in looking at the XView code
mentioned above...

Thanks for the help so far. If I get something decent put together, I'll
definitely post it to the Net.

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67167
From: kurt@dna.lth.se (Kurt Swanson)
Subject: What determines the default X font?

I'm running X under openwindows 3.  Normal X programs not having a
font specified always show up in the same font - until I change the
fontpath, and restart windows - then a new default font is used until
the next change.  I can't seem to figure out how it chooses.  Is there
some way to set this?  Possibly something in .Xdefaults???

Please reply in direct email - I summarize.
-- 
Kurt Swanson, Dept. of Computer Science,
Lunds universitet.  Kurt.Swanson@dna.lth.se

Newsgroup: comp.windows.x
document_id: 67168
From: rcb5@wsinfo03.win.tue.nl (Richard Verhoeven)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
> 
> try this after XCreateWindow:
> -----------------------------
> ...
>
>   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
>   ...
>   XSetWMNormalHints (display, window, xsizehints);
>   ...
>
> These hints tell the window manager that the position and size of the window
> are specified by the users and that the window manager should accept these
> values. If you use xsizehints->flags = PPosition | PSize, this tells the window
> manager that the values are prefered values of the program, not the user.
> I don't know a window manager that doesn't place the window like you prefer
> if you specify the position and size like above.

Sorry, but olwm and tvtwm don't do it. They place the title at that position
and the window at a position below it.

This becomes a problem when you want a program to be able to save its current
configuration and restore is later.

Currently, my solution is:

	XCreateWindow(...);
	XSetWMProperties(..);
	XMapWindow(...);
	XFlush(...);
	XMoveWindow(...);


It works with olwm, but is less than elegant. All this leaves me wondering
if I'm overlooking something obvious.

Richard.


Newsgroup: comp.windows.x
document_id: 67169
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Overriding Default Behaviour

Usually when I start up an application, I first get the window outline
on my display. I then have to click on the mouse button to actually
place the window on the screen. Yet when I specify the -geometry 
option the window appears right away, the properties specified by
the -geometry argument. The question now is:

How can I override the intermediary step of the user having to specify
window position with a mouseclick? I've tried explicitly setting window
size and position, but that did alter the normal program behaviour.

Thanks for any hints
---> Robert

PS: I'm working in plain X.



******************************************************************************
* Robert Gasch	       * Der erste Mai ist der Tag an dem die Stadt ins      *
* Oracle Engineering   * Freihe tritt und den staatlichen Monopolanspruch    *
* De Meern, NL	       * auf Gewalt in Frage stellt                          *
* rgasch@nl.oracle.com *                           - Einstuerzende Neubauten *
******************************************************************************

Newsgroup: comp.windows.x
document_id: 67170
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Animation with XPutImage()?


In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:

|> Two years ago I wrote a Sunview application for fast animation
|> of raster files. With Sunview becoming rapidly obselete, I've
|> finally decided to rewrite everything from scratch in XView.
|> I put together a quick test, and I've found that XPutImage()
|> is considerably slower (factor of 2 on average?) than the
|> Sunview command pw_rop() which moves image data from memory
|> pixrects to a canvas. This was on a Sparc IPX. It seems that:
|> (1) the X protocol communication is slowing things down; or
|> (2) XPutImage is inefficient...or both! My question is, what

The protocol has to move the whole image from process memory to server
memory, this is the hog. The conversions in the XPutImage() are
fast.

|> is the fastest way in X11R5 to dump 8 plane image data to
|> a window? Can I take advantage of the fact that the client is
|> running on the same machine as the server? Or am I stuck with

Yes, by utilizing the MIT-SHM extension, that provides an XPutImage
derivate that uses shared memory. Fine fast.

|> XPutImage() (in which case I might as well give up now...)?
|> 

No. You can still XPutImage all of the frames onto pixmaps (thus moving
them to server memory) and then replay them fastest using XCopyArea()
BUT be aware, this is a major server memory bummer !

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67171
From: pmcgilla@hp.uwsuper.edu (Mr. Patrick L. McGillan)
Subject: DXF format display

HI,
  I am looking for an X app that will display dxf files. These are
  ascii text files that are normally associated with autocad. I have
  a large 9 meg. file of the state of wisconsin that i would like to
  views and or cut into smaller chunks.

  I also would like to find a complete file layout for dxf files.

  Any information would be appreciated.


--
Patrick L. McGillan
Computer Systems Specialist
University Of Wisconsin     Ph:  (715) 394-8191
Superior, Wisconsin         pmcgilla@uwsuper.edu


Newsgroup: comp.windows.x
document_id: 67172
From: eks@daimi.aau.dk (Eigil Krogh S|rensen)
Subject: X-window for PC

If a X-window package exists, that runs om PC, DOS (and maybe MS-windows)
I would be very happy to hear about it.

Thanx in advance.

  -- Eigil Krogh Sorensen


Newsgroup: comp.windows.x
document_id: 67173
From: operator@mast.mast.queensu.ca (Me)
Subject: Vanishing font problem....

   A colleague has a bizarre font problem on his new MIPS workstation.
When he first logs on (via xdm), he has a single xterm window appear
with the mwm window manager running.  In this configuration, X windows
applications (particularly xdvi) work fine.  However, if he opens up a
second xterm application, suddenly xdvi cannot start in either window,
giving the error: Unable to load ISO 8859-1 font.

   The only difference between the two xterm windows is that the initial
one references a different name in the Xsession file, with prettier
colours and other slight changes.  Further investigation shows that only
opening a default xterm causes this behaviour, and more significant, ALL
X applications can no longer load any fonts if they are invoked from the
command line in either window.  If I start the xterm with a different
font (using the -fn option), no problems.  It would seem that the
default xterm is loading a font which somehow causes the server to lose
all of its fonts.  Note: xlsfonts in either window shows all of the
fonts available, so there doesn't appear to be a problem in the font
directories/hash-tables.

   Other than rewriting the XTerm app-defaults file to use a different
font and hope for the best, does anyone have any ideas?

More info:  This is the most recent MIPS workstation (R4000 I believe),
       with the most current operating system and running X11R5.
       It is not mwm's fault, as the same problems occur under twm, etc.

Newsgroup: comp.windows.x
document_id: 67174
From: sp1henhj@edit (Henrik Balthazar Hjort)
Subject: PostScript on X-terminal


 I have a problem when I'm using PostScript. When I am working local
on a SUN SPARCstaton IPC the PostScript works good, but when I connect
to the SUN from a X-terminal I just get error messages that the
PostScript cannot connect to the news-display.

 Why doesn't PostScript work on an X-terminal?

 Is there any way to make it work?


 Henrik "Henrik Hjort" Hjort




Newsgroup: comp.windows.x
document_id: 67175
From: scornd4@technet.sg (HIANLEONG ONG)
Subject: Re: ..Image processing Packages under X..

Prateek Mishra (mishra@cs.sunysb.edu) wrote:

: I am looking for a package that implements standard
: image processing functions (reading/writing from
: standard formats), clipping, zoom, etc. implemented
: under X. Both public domain and private packages
: are of interest. The particular application area I
: have in mind is medical imaging, but a package meant
: for a more general context would be acceptable.

: Please reply to me; I will summarize on the net if
: there is general interest.

: - prateek mishra
: mishra@sbcs.sunysb.edu 


keep tabs with the FAQ in sci.image.processing. There is quite a
comprehensive compilation of image processing s/w (X included). I've
ftp'ed ImageMagick and its great. Check out the FAQ its all there.

Newsgroup: comp.windows.x
document_id: 67176
From: jdhuse@sedona.intel.com (Jon Dhuse~)
Subject: a strange problem with text


Hello,

I am testing a port of X11R5 to Coherent, a unix clone OS for Intel architecture
machines.  I am seeing a strange problem with text in clients like xvt (a simple
terminal emulator program).

The problem manifests it self when the shell echoes typed characters back to the
server for display, one at a time.  The characters appear to be too closely
spaced, with the result being that the 2nd character echoed destroys the 
rightmost edge of the first character, then the 3rd character destroys the 
rightmost edge of the second character, and so on.  It looks like there is an
invisible boundary around a character which obscures a portion of the previous
character.  There is no problem between the characters when the shell returns
a complete line of text... only when the output is a series of individual
characters.

If anyone has any ideas what the problem might be, or where I should look to
find it, it would be much appreciated.

Regards and thanks, Jon Dhuse.

-- 
 Jon Dhuse              |     Internet: jdhuse@sedona.intel.com
 Intel  Corp.  CH3-69   |     Phone: (602)-554-2685
 5000 W. Chandler Blvd. | Any opinions expressed are my own,
 Chandler, AZ  85226    | not my employer's.


Newsgroup: comp.windows.x
document_id: 67177
From: egreshko@twntpe.cdc.COM (Ed Greshko)
Subject: cxterm on MIPS


Hello,

	Has anyone built cxterm (X11R5) on a MIPS platform.  If you have,
please send me email as I don't read this group.  I've a bunch of questions...
:-)

				Thanks

Edward M. Greshko			Control Data Taiwan
Voice: +886-2-715-2222 x287		6/F, 131 Nanking East Road, Section 3
FAX  : +886-2-712-9197			Taipei, Taiwan R.O.C


Newsgroup: comp.windows.x
document_id: 67178
From: trevor@telesoft.com (Trevor Bourget @ignite)
Subject: Re: REPOST: Accelerators/Translations

In <sdennis.735423404@aa.cad.slb.com> sdennis@osf.org writes:

>I posted this a while ago and didn't receive one reply, and now we
>have another bug report on the same subject. Can anybody help me out?

The problem is that Motif uses XGrabKey to implement menu accelerators,
and these grabs are specific about which modifiers apply.  Unfortunately,
the specification for XGrabKey doesn't allow AnyModifier to be combined
with other modifiers, which is exactly what would be desired in this case:
"Ctrl Any<Key>q".

>In ORA Vol. 6, in the section on accelerators it says "For information
>on how to specify translation tables see Vol. 4...", this is so you
>know what to put for the XmNaccelerator resource.  If you go to
>Vol. 4 it says, "Likewise, if a modifier is specified, there is
>nothing to prohibit other modifiers from being present as well. For
>example, the translation:
>	Shift<Key>q:	quit()
>will take effect even if the Ctrl key is held down at the same time as
>the Shift key (and the q key).

This is true for accelerators and mnemonics, which are implemented using
event handlers instead of grabs; it's not true for menu accelerators.  If
you're a Motif implementor, I'd suggest lobbying to get the Xlib semantics
changed to support the feature I described above.  Otherwise, change the
documentation for menu accelerators to properly set the user's
expectations, because menu accelerators are NOT the same thing as
translations.

>Is it possible to supply > 1 accelerator for a menu entry?

If you mean "menu accelerator", no it's not possible.  That's according to
the definition of the XmNaccelerator resource in the XmLabel manual page.

>Keep in mind when answering this question that when using Motif you
>can't use XtInstallAccelerators().

I can't think of a reason why not.

>How can you ensure that accelerators work the same independent of
>case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
>menu entry.

There is a workaround for Motif users.  In addition to the normal menu
accelerator you install on the XmPushButton[Gadget], set an XtNaccelerators
resource on the shell (TopLevel or Application).  Install the shell's
accelerators on itself and all of its descendants with
XtInstallAllAccelerators (shell, shell).

For example,

  applicationShell - mainWindow - menuBar - fileCascade
					  -- filePulldown - openPushbutton
							  - exitPushbutton

  *openPushbutton.accelerator = Ctrl<Key>O
  *openPushbutton.acceleratorText = Ctrl+O
  *exitPushbutton.accelerator = Ctrl<Key>Q
  *exitPushbutton.acceleratorText = Ctrl+Q

  *applicationShell.accelerators = #override\n\
    Ctrl<Key>O: PerformAction(*openPushbutton, ArmAndActivate)\n\
    Ctrl<Key>Q: PerformAction(*exitPushbutton, ArmAndActivate)

You have to write and add the application action PerformAction, which you
can implement by using XtNameToWidget on the first argument and then
XtCallActionProc with the rest of the arguments.

I tested out something similar to this.  To shorten development time, I
used TeleUSE's TuNinstallAccelerators resource to install the accelerators
on the shell, and I directly invoked the Open and Quit D actions instead
of asking the pushbuttons to do it for me, but the more general approach I
described above should work.

-- Trevor Bourget (trevor@telesoft.com)

Newsgroup: comp.windows.x
document_id: 67179
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <1993Apr22.092830.2190@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> I just implemented this and it seems I can just about achieve the display
> rates (20 400x400x8 frames / sec on IPX) that I get with Sunview, though
> it's a bit "choppy" at times. Also, loading the data, making an XImage,
> then XPut'ing it into a pixmap is a bit cumbersome, so the animation is
> slower to load than with Sunview. Is there a better way to load in the
> data?
> 
> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
> >  If you need speed, and your client can run on the same host as the X server,
> >  you should use the shared memory extension to the sample X server (MIT-SHM).
> >  xdpyinfo  will tell you if your server has this extension. This is certainly
> >  available with the sample MIT X server running under SunOS.
> >  A word of warning: make sure your kernel is configured to support shared
> >  memory. And another word of warning: OpenWindows is slower than the MIT
> >  server.
> >  I have written an imaging tool (using XView for the GUI, by the way) which
> >  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
> >  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
> >  animations.
> >
> >				Regards,
> >
> >					Richard Gooch....
> 
> Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
> Nick Kisseberth) looks interesting, but I need someone to point me to some
> documentation. Is this method likely to give better results than server-
> resident pixmaps? I'd also be interested in looking at the XView code
> mentioned above...
> 
> Thanks for the help so far. If I get something decent put together, I'll
> definitely post it to the Net.
> 

  The MIT tapes come with documentation written by Keith Packard on the Shared
  Memory Extension to X. Look in:  mit/doc/extensions/mit-shm.ms
  I found this invaluble. Unfortunately, there is a bit of work to set up the
  shared memory segments, making an XImage from it, etc. Also, there is an
  extension query to determine if the server supports it, but you still need to
  test if the server is running on the same host and if shared memory is enabled
  in the kernel. I have written layers of convience routines which make all this
  transparent.
  As for the XView code, well, I doubt that would be considered interesting.
  The interesting stuff is done in a C object library. People interested in this
  code can Email me.

				Regards,

					Richard Gooch,
					rgooch@atnf.csiro.au

Newsgroup: comp.windows.x
document_id: 67180
From: egan@phony25.cc.utah.edu (Egan F. Ford)
Subject: Need Help with key bindings

I need help binding some value to the HOME and END keys on my keyboard.  I have an
rs/6000 w/ aix3.2.3ext running X11R5pl19 mit dist.  I'm using a PC running eXceed
for windows as my xterminal.  The HOME and END keys do not send a value, and my
application needs them to be defined.  I used this in my Xdefaults to define the
keys:

varnet*VT100.Translations: #override \
    <Key>Home: string("\033[8~") \n\
    <Key>End: string("\033[7~")

Then I xterm -name varnet.  This works perfect, however the 7 and the 1 key on my
keypad are also defined as \033[8~ and \033[7~.

Any ideas?  Help please.

Thanks.


-- 
Egan F. Ford
egan%phony25.cc.utah.edu@hellgate.utah.edu

Newsgroup: comp.windows.x
document_id: 67181
From: marc@pinet.aip.org (Marc Wiener)
Subject: core dump from getcons(?)

We are getting a memory fault and a core dump whenever we end a Motif
session under Ultrix 4.3, running on a DEC 5000/240. An examintion of the 
core file leads us to believe it's from getcons. Does anyone know what
this is all about?

marc
-- 
Marc Wiener                    |    marc@aip.org
American Institute of Physics  |    
500 Sunnyside Blvd.            |    Voice: (516)576-2329 
Woodbury, NY 11797             |    Fax:   (516)349-7669

Newsgroup: comp.windows.x
document_id: 67182
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Re: Animation with XPutImage()?

In article 17886@nrao.edu, rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>   The MIT tapes come with documentation written by Keith Packard on the Shared
>   Memory Extension to X. Look in:  mit/doc/extensions/mit-shm.ms
>   I found this invaluble. Unfortunately, there is a bit of work to set up the
>   shared memory segments, making an XImage from it, etc. Also, there is an
>   extension query to determine if the server supports it, but you still need to
>   test if the server is running on the same host and if shared memory is enabled
>   in the kernel. I have written layers of convience routines which make all this
>   transparent.
>   As for the XView code, well, I doubt that would be considered interesting.
>   The interesting stuff is done in a C object library. People interested in this
>   code can Email me.
> 
> 				Regards,
> 
> 					Richard Gooch,
> 					rgooch@atnf.csiro.au

Thanks for docs info. It turns out that if I leave out colormap updates between
frames and use tvtwm, my tests with 100 400x400x8 frames on an IPX using the
server-resident pixmap method give an astonishing *50* frames per second! And
VERY smooth. I think I've found the best solution (thanks to the generous help
on this group!) However, I may have colormap questions later.....

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67183
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Animation with XPutImage()?

dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
> Nick Kisseberth) looks interesting, but I need someone to point me to some
> documentation. Is this method likely to give better results than server-
> resident pixmaps? I'd also be interested in looking at the XView code
> mentioned above...

  There's documentation on how to use the shared memory extension in the
X11R5 distribution.

  Actually, I just finished writing a motif animation program...
(take-lots-of-image-data-and-display-it-pretty-darn-fast). When using
on-server pixmaps or shared memory, I had to insert a delay loop to keep
it from going too quickly :). Testing both methods side by side, they
were just about equal.

  The advantage of SHM is that your X server doesn't grow to ridiculous
sizes; but pixmaps can work over a network and *are* removed if your
application dies (one tends to use ipcrm manually quite a bit when
debugging SHM apps).

  Shared memory also has the problem that some operating systems (e.g.
Ultrix) seem to allow only a small number of segments (~6) to be
attached to a process at once; consequently, a redraw becomes
XShmAttach();XShmPutImage();XShmDetach(); on Dec systems. And Dec's 24
bit displays (like the ones I tend to use most often) don't seem to
support the extension (maybe someone compiled them wrong?), and using
pixmaps causes the X server to crash (failed mallocs), so one *has* to
use the local unix domain socket (which really isn't that bad; one
copies the info three times per redraw instead of one).

  In short: allowing all three forms of display, within the program is a
Good Thing (minus SHM if running over a network), and let the user pick
whatever feels fastest.

  (I just use an ximagehandler class and forget about it :)

  )Rob

Newsgroup: comp.windows.x
document_id: 67184
From: cwikla@morrison.wri.com (John Cwikla)
Subject: Pixmaps and colormaps sent through selections...


	I want to be able to send a Pixmap from one client to the next.
Along with this I want to send the Colormap and foreground and
background pixel values.  So far not a problem, I can do
this with no problem.

  However, once I have the Pixmap id and the Colormap id, how
do I go about telling the server that the second (receiving)
client now wants to have associations with the two id's?

	TIA,

	John
--
o  John L. Cwikla                       o                            o
o  X Programmer                         o  X was never the first     o
o  Wolfram Research, Inc.               o   letter of the alphabet   o
o  cwikla@wri.com  (217) 398-0700       o                            o

Newsgroup: comp.windows.x
document_id: 67185
From: gnohmon@ssiny.UUCP (Ralph Betza)
Subject: dynamic SqueezeTitle configuration in *twm

I consider TWM-style Squeezed Titles indispensable in a window
manager. I like to have two tall xterm windows visible at the same
time, with no overlap; and since two windows aren't enough, I have
other xterm windows underneath them, with exactly the same positioning.

In case you're not familiar with Squeezed Titles, here's a crude
picture:

 ====================== Figure 1 ====================================
 |
 |    +---------+                   +---------+          +=========+
 |    + title A +                   + title B +          + title C +
 |    +------------------------+    +------------------------------+
 |    +   this is the          +    + window B hides window C, but +
 |    +     body of the        +    + you can still see C's title  +
 |    +      window, window A  +    + which is squeezed right.     +
 |    +------------------------+    +------------------------------+
 |
 ====================== Figure 1 ====================================

Squeezed titles allow me to have about 5 such windows in each stack,
with easy access; and 3 per stack is usually more than I really
need, since I also insist on having a virtual WM.

The only problem is that the title location is static, that is,  it
is configured in .twmrc, and in order to change it you have to edit
that file and restart the window manager. Doing so is cumbersome and
time-consuming.

Therefore, I have implemented f.squeeze{ left, center, right }
functions in my own copy of vtwm; the idea being that with one click
of a button, you can change this:

    +---------+
    + title A +
    +------------------------+
    +   this is the          +
    +     body of the        +
    +      window, window A  +
    +------------------------+

to this:

                   +---------+
                   + title A +
    +------------------------+
    +   this is the          +
    +     body of the        +
    +      window, window A  +
    +------------------------+

 ===============

Okay. So far, so good. Now, how the heck do I get them to put this
into the next "official" twm, and the next tvtwm, and the next vtwm,
and the next ctwm? And the next xyztwm that I never heard of?

One way would be to post, in comp.windows.x, a description of this
enhancement, together with an explanation of why I think it is a
Very Good Thing, and hope that someone reads it. :-)

In case it isn't already clear why I think it's a Very Good Thing,
look back up at Figure 1, and picture window A moved over on top of
windows B and C; now window A's title hides Window B's title;
but when you hit f.squeezecenter, the result is:

        +=========+   +---------+   +=========+
        + title B +   + title A +   + title C +
        +-------------------------------------+
        +   this is the body of the window,   +
        +   window A, which is on top.        +
        +-------------------------------------+

 ===================

The rest of this posting explains how to implement it, based on my
X11R4 copy of vtvwm.shar; it's just a sketch because posting the
full diffs would be too long.

The key to this enhancement is to add the following lines in the
ExecuteFunction() routine in menus.c:

#ifdef SHAPE
	case F_SQUEEZELEFT:
	{	static SqueezeInfo left_squeeze = { J_LEFT, 0, 0 };
		if (DeferExecution (context, func, Scr->SelectCursor))
		  return TRUE;

		tmp_win->squeeze_info = &left_squeeze;
		SetFrameShape( tmp_win );
		break;
	}
	.... and similarly for squeezeright ( J_RIGHT ) and
	squeezecenter ( J_CENTER ) ...
#endif

( Of course, you also have to define F_SQUEEZELEFT in parse.h
  and add
    { "f.squeezeleft", FKEYWORD, F_SQUEEZELEFT },
     ... and so forth ...
to parse.c

In order to use these functions, add something like the
following to your .twmrc file:

Button2 = m | s : w|v|d|r|i|t|door : f.squeezecenter

 =================

About a year ago, I posted this, but our news was broken and I
*think* it didn't get out.

Since then, "blast" has appeared in comp.sources.x, Volume 19,
Issue 41; you could use blast to achieve a similar effect, by
chiseling away at an mwm-style wide title. Better to have a
twm-style window manager, I think.

--
Ralph Betza (FM),
uunet!ssiny!gnohmon         gnohmon@ssiny.com

"The question of whether a computer can swim is more interesting
 than the question of whether a submarine can think" - Lenny Dykstra

Newsgroup: comp.windows.x
document_id: 67186
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: Animation with XPutImage()?

| 
| Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
| Nick Kisseberth) looks interesting, but I need someone to point me to some
| documentation. Is this method likely to give better results than server-
| resident pixmaps? I'd also be interested in looking at the XView code
| mentioned above...

There is no easy answer to this question: it depends on whether the display
device can hold pixmaps in off-screen memory, and if so, how efficiently
the server manages these resources (having to deal with limited off-screen
memory is the bane of the server implementor's existence!).  

I have worked with graphics devices where the off-screen memory to 
main display copy rate eclipses that of the main memory to display copy
rate, and with those where the main memory to display is *faster* than
off-screen to display (requires only a write to the framebuffer rather
than a read of the F.B. followed by a write)

If your server uses the cfb code or something like it to render into
pixmaps in CPU main memory, the rates you can get through MIT-SHM are
likely to be equal (maybe a tad slower, depending on your OS's implementation
of shared memory) to CopyArea from pixmap to window, which is also then
just a copy from CPU main memory to graphics device.

One advanage of MIT-SHM is that if your images are large, you don't end up
growing the size of the server process to hold them.

One disadvantage of the MIT-SHM is that, in its sample implementation,
there is no provision for elegantly cleaning up the shared memory segments
if the client dies a sudden, violent death (e.g., "kill").  You have to 
be mindful of cluttering up the system with zombie shared memory segments.

	Ken
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
document_id: 67187
From: pramodmm@deforest.ee.washington.edu (Pramod Mahadev)
Subject: Help on xlib and include files


 Hi Xperts!
   I have a Sparc-1 with very limited disk space on /usr partition.
   previously, i was able to run all x-windows applications  and then 
   i upgraded my system to sun o.s. 4.1.3 and realized that , the hard
disk did not have enough space to load openwindows. My immediate alternative
was to load only the neccessary files to boot the system. This resulted in
not loading openwindows. As a result of which none of the X-libraries got loaded.

   I am trying to load just the libraries and include files and bin/X11 files 
required for running X-windows and compiling my programs written for Xlib and Xaw.
In a desperate effort to regain x-windows, i retrieved /usr/lib/libX*.* files from
the tape . /usr/bin/X11/*  and /usr/include/X11/* . Is this enough for running X-windows
 
 BUt i did not get /usr/lib/X11/fonts/  sub directories . these are mainly 100dpi, 75dpi
 and misc. 

when i run xinit, the error message says /usr/lib/X11/fonts/100dpi etc are not in the
default path. But the problem is i cannot load any of those directories as there is no
disk space. 
Are there any temporary suggestions before I get a 1.5 GB disk and load openwindows , to
just have my x-windows running. 

Thanks

Pramod
 
-- 

Newsgroup: comp.windows.x
document_id: 67188
From: nicholas@ibmpcug.co.uk (Nicholas Young)
Subject: Writing a Motif widget

Can anyone give me some information, please ...

I need (probably) to write one or more new Motif widgets on the HP-UX
platform. Do I need the Motif private header files and source,
or can I make do with the public headers that are provided?
"Motif" includes Xt in this context.

One widget is a multi-column list (which lots of people have
already written, I am sure), and would therefore be probably be
a subclass of List rather than something simple like an Xt class.
Is this more difficult (in principle, not lines of code)?

Alternatively, if anyone has a multi-column list widget they
could sell me, this might save me from having to write one!
Does it by any chance exist in Motif 1.2 already (I do not
yet have the spec)?

Answers appreciated,

Nicholas.
-- 
Nicholas Young (+44 71 637 9111)

Newsgroup: comp.windows.x
document_id: 67189
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <1r5l8g$bub@wsinfo03.win.tue.nl>, rcb5@wsinfo03.win.tue.nl (Richard Verhoeven) writes:
|> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
|> > 
|> > try this after XCreateWindow:
|> > -----------------------------
|> > ...
|> >
|> >   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
|> >   ...
|> >   XSetWMNormalHints (display, window, xsizehints);
|> >   ...
|> >
|> > These hints tell the window manager that the position and size of the window
|> > are specified by the users and that the window manager should accept these
|> > values. If you use xsizehints->flags = PPosition | PSize, this tells the window
|> > manager that the values are prefered values of the program, not the user.
|> > I don't know a window manager that doesn't place the window like you prefer
|> > if you specify the position and size like above.
|> 
|> Sorry, but olwm and tvtwm don't do it. They place the title at that position
|> and the window at a position below it.

The reason they place their outside corner at the location you requested
is because that's what the ICCCM says they should do.

|> This becomes a problem when you want a program to be able to save its current
|> configuration and restore is later.
|> 
|> Currently, my solution is:
|> 
|> 	XCreateWindow(...);
|> 	XSetWMProperties(..);
|> 	XMapWindow(...);
|> 	XFlush(...);
|> 	XMoveWindow(...);

This code will almost certainly break.  Calling XMapWindow and then
XFlush does not guarantee that the window is visible and managed by the
window manager.  Even if this did work, there isn't a reliable way to
find out how much decoration the window manager placed around your
window, so you don't know how far to move it.  And what if the window
manager refuses to move your window?

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
document_id: 67190
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: PostScript on X-terminal


> I have a problem when I'm using PostScript. When I am working local 
> on a SUN SPARCstation IPC the PostScript works good, but when I connect
> to the SUN from a X-terminal I just get error messages that the
> PostScript cannot connect to the news-display.
>  Why doesn't PostScript work on an X-terminal

	Because xterminals do not have a NeWS server.  xterminals have
speed by nature of their limited functionality: once you add NeWS and
everything else, you have a workstation.  There are workarounds, I've
heard, one involving a perl script.  What we are trying to do is
replace programs that need NeWS (like pageview) with programs that
don't (like ghostview).
	Maybe someone else can elaborate on the perl workaround; I
have no personal experience with it.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  230-   All transfers are disclaimed by my host name and boss's address.
  230-   If you don't like this policy, disconnect now!

Newsgroup: comp.windows.x
document_id: 67191
From: dyoung@media.mit.edu (David Young)
Subject: Q: Colormaps with dialog shells


I have an applicationShell which uses a colormap created with
XCreateColormap() and uses all of the colors available for my 8-bit
display.  When I move the cursor over the window I get the "Technicolor
Effect" - which is fine.  Basically, my program works.

My problem/question is: When I popup a dialogShell to prompt the user for
some input I want the XmNdialogStyle to be set to
XmDIALOG_PRIMARY_APPLICATION_MODAL.  The result is that if my cursor is
over the dialogShell I get my colormap, but if the cursor is over the
applicationShell (or any window other than the dialogShell) I get the
default colormap.  But I'd like it so that if my cursor is over _any_
window of my application, I get my colormap.

Any suggestions?  Thanks,

david,

Newsgroup: comp.windows.x
document_id: 67192
From: banz@umbc.edu (Rob Banz)
Subject: Looking for an R5 Xserver for HP9000/385


Subject says it all...
Anyone know where I can find one.  Binaries are nice, but source would
do to.  

Thanks in advance,



-- 
Rob Banz (banz@umbc.edu)
	"If we give people an alternative to Microsoft...it will have been
	 a greater good."	         -Steve Jobs (UnixWorld, April 1993)
	"Yes, Bill, we are your father!" -IBM OS/2 Presentation, FOSE'93

Newsgroup: comp.windows.x
document_id: 67193
From: hoang1@litwin.com (Ted Hoang)
Subject: Wcl 2.02

Hi,
I have a problem when compiled Wcl 2.02 in SCO ODT 2.0:


        cc -c -Ox  -I.. -I/usr/include Xt4GetResL.c
Xt4GetResL.c
Xt4GetResL.c(47) : error C2065: '_XtConstraintBit' : undefined
*** Error code 1

Although I follow the instructions in file README_BUILD to build Wcl in SCO 
platform, this problem didn't resolve.

So I have some questions related to this matter:

  1. Does _XtConstraintBit exist in SCO ODT 2.0? ( Does _XtConstraintBit use
      in X11R3 & X11R4? And What release does SCO ODT 2.0 use, X11R3 or X11R4?)
  2. If not, Does someone know how to work around? 

Newsgroup: comp.windows.x
document_id: 67194
From: mikes@ase.co.UK (Mike Schofield-00000315)
Subject: xterm with status line and color


I'm looking for a version of xterm which handles color and vt220 style status
lines. Can anyone out there help?

Thanks


Newsgroup: comp.windows.x
document_id: 67195
From: wcl@risc.sps.mot.com (Wayne Long)
Subject: PROBLEM:  Running AIX info from a Sun rlogin shell.


  When I run our RS6000's "info" utility through a remote login
  shell (rlogin) from my Sun Sparc 1+, I can no longer type
  lower case in any of info's window prompt's.

  I thought the prob. may have been due to my Sun window mgr. 
  (Openlook) being incompatible with the AIX Motif application
  but I tried it under TVTWM also.  Same result.
  
  So this is presumably an X11 key definition problem between 
  workstations - but my system admins. feign ignorance.
  
  What do I need to do the be able to type lower case into 
  this remote AIX motif app. from within my local Openlook
  window manager?
  
  
-- 
-------------------------------------------------------------------
Wayne Long - OE215              Internet: wcl@risc.sps.mot.com
6501 William Cannon Drive West  UUCP: cs.texas.edu!oakhill!risc!wcl
Austin, Texas 78735-8598        Phone (512) 891-4649  FAX: 891-3818

Newsgroup: comp.windows.x
document_id: 67196
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: REPOST: Accelerators/Translations

In article <1993Apr22.162016.5923@telesoft.com>, trevor@telesoft.com (Trevor Bourget @ignite) writes:
|> In <sdennis.735423404@aa.cad.slb.com> sdennis@osf.org writes:
|> 
|> >I posted this a while ago and didn't receive one reply, and now we
|> >have another bug report on the same subject. Can anybody help me out?
|> 
|> The problem is that Motif uses XGrabKey to implement menu accelerators,
|> and these grabs are specific about which modifiers apply.  Unfortunately,
|> the specification for XGrabKey doesn't allow AnyModifier to be combined
|> with other modifiers, which is exactly what would be desired in this case:
|> "Ctrl Any<Key>q".
|> 
|> >In ORA Vol. 6, in the section on accelerators it says "For information
|> >on how to specify translation tables see Vol. 4...", this is so you
|> >know what to put for the XmNaccelerator resource.  If you go to
|> >Vol. 4 it says, "Likewise, if a modifier is specified, there is
|> >nothing to prohibit other modifiers from being present as well. For
|> >example, the translation:
|> >	Shift<Key>q:	quit()
|> >will take effect even if the Ctrl key is held down at the same time as
|> >the Shift key (and the q key).
|> 
|> This is true for accelerators and mnemonics, which are implemented using
|> event handlers instead of grabs; it's not true for menu accelerators.  If
|> you're a Motif implementor, I'd suggest lobbying to get the Xlib semantics
|> changed to support the feature I described above.  Otherwise, change the
|> documentation for menu accelerators to properly set the user's
|> expectations, because menu accelerators are NOT the same thing as
|> translations.
|> 
|> >Is it possible to supply > 1 accelerator for a menu entry?
|> 
|> If you mean "menu accelerator", no it's not possible.  That's according to
|> the definition of the XmNaccelerator resource in the XmLabel manual page.
|> 
|> >Keep in mind when answering this question that when using Motif you
|> >can't use XtInstallAccelerators().
|> 
|> I can't think of a reason why not.
|> 
|> >How can you ensure that accelerators work the same independent of
|> >case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
|> >menu entry.

I find this thread on motif accelerators absoultly amazing.  If I were
writing an interface to keyboard accelerators, I would have one
resource called "accelerators" that took a translation table, period.
I would also implement it so that programmer never has to do any work
to get the accelerators installed.  As soon as the end-user specified
one, it would be active and automatically installed.

To get multiple accelerators on a single menu item I'd do something like:

	*menuItem.accelerators: #override \n\
		Ctrl<Key>M:	fire() \n\
		Shift<Key>L:	fire() \n

The accelerators would work exactly like translations and you would
automatically see a "Ctrl M" show up in your menuItem object.

Why in the world is the motif stuff so complicated with so many different
special cases depending on what type of widget you're dealing with?  There
has to be some reason.

Sorry for the political tone of this message...

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
document_id: 67197
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <WHALEY.93Apr22110027@sigma.kpc.com>, whaley@sigma.kpc.com (Ken Whaley) writes:
> One advanage of MIT-SHM is that if your images are large, you don't end up
> growing the size of the server process to hold them.
>
  Correct. Most X servers use a version of  malloc(3)  which will not return
  memory to the OS (ie. the X server might  free(3)  a Pixmap, but the heap does
  not shrink).

> One disadvantage of the MIT-SHM is that, in its sample implementation,
> there is no provision for elegantly cleaning up the shared memory segments
> if the client dies a sudden, violent death (e.g., "kill").  You have to 
> be mindful of cluttering up the system with zombie shared memory segments.
>
  Well, part of the routines I mentioned do a dirty little trick to get around
  that problem. First, I create the shared memory segment, attach the client,
  attach the X server, and then remove (!) the segment. If you read the man
  pages on removing of shared memory segments, you will see that the segment
  only dies after all attachments are gone.
  Now, if the client dies, that's one attachment gone (the OS cleans up for you)
  and since the X server notices the client has dies, frees up it's resources,
  including detaching from the segment: there goes the last attachment. No more
  shared memory segment.
  Terrible, but it works.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
document_id: 67198
From: osyjm@cs.montana.edu (Jaye Mathisen)
Subject: XTERM patches for Alpha OSF 1.2?



Well, after massaging the Dec.cf, osf.def, (can't remember the exact names)
from OSF into my normal X11R5 distribution, everything compiles and links
fine, but xterm doesn't run.


Warning: Representation size 8 must match superclass's to override background
Warning: translation table syntax error: Modifier or '<' expected
Warning: ... found while parsing 'p^#j?;'P)=#'
X Error of failed request:  BadColor (invalid Colormap parameter)
  Major opcode of failed request:  85 (X_AllocNamedColor)
  Resource id in failed request:  0x0
  Serial number of failed request:  18
  Current serial number in output stream:  18

Other than this, all the other core X stuff seems to be working OK.  Any
hints/tips appreciated, patches would be primo.

Thanks.
-- 
 Jaye Mathisen, COE Systems Manager                (406) 994-4780
 410 Roberts Hall,Dept. of Computer Science
 Montana State University,Bozeman MT 59717	osyjm@cs.montana.edu

Newsgroup: comp.windows.x
document_id: 67199
From: bgendler@opus.starlab.CSc.COM (Bruce Gendler)
Subject: X/GL widget translation problem

I am writing a custom widget to support the display of graphics
and imagery.  The user of the widget will be able to specify,
when creating it, whether it is to operate in X or GL mode.

I have set up translations and actions to handle mouse button
presses.  They work fine when the widget is in X mode.  In GL 
mode they only work when the widget (my GL/X widget) is a child
of a manager.  Put another way, the translations do not work 
when the widget is configured in GL mode and is a child of a 
shell.  Does anyone know why this is happening?

Thanks in advance.
Bruce Gendler
bgendler@csc.com

Newsgroup: comp.windows.x
document_id: 67200
From: reznik@robios5.me.wisc.edu (Dan S Reznik)
Subject: Text field in dialog widget doesn't get focus

I am using the GLX widget + athena widgets on a mixed-model
application, under 4Dwm, but when the dialog gets popped up, its
text entry field does not have focus. Aimilar code works perfectly if
I use "pure X" (no mixed-model). HEre is the relevant portion of
the code.

{
   int n;
   Arg wargs[16];
   Widget Button, PopUpShell, Dialog;

   /* initialize TopLevel here */
   .
   .
   .

   n = 0;
   XtSetArg(wargs[n], XtNlabel, "Foo"); n++;
   Button = XtCreateManagedWidget("FooBtn", commandWidgetClass,
                                  TopLevel, wargs, n);

   PopUpShell = XtCreatePopupShell("PupShell", overrideShellWidgetClass,
                                   Button, NULL, 0);
   XtAddCallback(PopUpShell, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

   n = 0;
   XtSetArg(wargs[n], XtNvalue, ""); n++;
   Dialog = XtCreateManagedWidget("TheDialog", dialogWidgetClass,
                                  PopUpShell, wargs, n);

   .
   .
   .
}

void MyPopUp(w, popup_shell, call_data)
Widget w;
Widget popup_shell;
XtPointer call_data;
{
   XtPopup(popup_shell, XtGrabExclusive);
}

---

A way I found to give focus to the text field is to move the
application window around a little bit and place it right behind the popup.

Any pointers would be greatly appreciated.

Newsgroup: comp.windows.x
document_id: 67201
From: reznik@robios.me.wisc.edu (Dan S Reznik)
Subject: Correction on my last posting (GLX & lack of cous on Dialog Widget)

On the code I sent, please replace the line:

   XtAddCallback(PopUpShell, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

by

   XtAddCallback(Button, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

--- 

The rest (and my question) remains the same...

Dan

Newsgroup: comp.windows.x
document_id: 67202
From: dwex@cbnewsj.cb.att.com (david.e.wexelblat)
Subject: Re: Dell 2.2 EISA Video Cards

[This belongs in comp.windows.x.i386unix - I've redirected followups]

In article <C5ssHu.CBI@gator.rn.com> larry@gator.rn.com (Larry Snyder) writes:
> Does XFree86 support any EISA video cards under Dell 2.2?
> -- 
> Larry Snyder                               
> larry@gator.rn.com

I know for a fact that the EISA version of the Orchid ProDesigner IIS
works.  However, an EISA SVGA card is likely a waste of money.

When XFree86 2.0 comes out, with support for accelerated chipsets, ISA,
EISA, and VLB will all be supported.

The more important question is "what chipsets are supported?".  The bus
is basically irrelevent as a compatibility issue.

--
David Wexelblat <dwex@mtgzfs3.att.com>  (908) 957-5871  Fax: (908) 957-5627
AT&T Bell Laboratories, 200 Laurel Ave - 3F-428, Middletown, NJ  07748

XFree86 requests should be addressed to <xfree86@physics.su.oz.au>

"Love is like oxygen.  You get too much, you get too high.  Not enough and
 you're gonna die."  -- Sweet, Love Is Like Oxygen

Newsgroup: comp.windows.x
document_id: 67203
From: hildjj@jupiter.fuentez.COM (Joe Hildebrand)
Subject: Re: question regarding overlaying of graphics


> Let's say I have two rectangles on the canvas(see above) 
> one intersecting the other...
> Now, I would like to delete one of the rectangles.
> The way I do it is to create another GC wherein I use the
> GXxor logical function and simply redraw the rectangle using the
newly
> created graphics context thus deleting it for all apparent purposes.
> A problem with this approach is that at the points of intersection
the pixel 
> locations belonging to the other rectangle also become white, which
is 
> something that should be avoided.

You could set up a bitmap with a mask in it.  Clear the
bitmap, draw the rectangle to be deleted with GXor.  Draw the one
that is to stay with GXclear.  Then GXxor the entire pixmap with
the screen.  

Note that this is a pretty effective way of animation, if you ever
need to do that (replace the GXclear with a GXxor).

----------
Joe Hildebrand
hildjj@fuentez.com
Software Engineer
Fuentez Systems Concepts
(703)273-1447

Standard disclaimers apply

Newsgroup: comp.windows.x
document_id: 67204
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Keysym database problems

I am having problems with a  Motif application that when run on another machine
(with different X paths, etc) can't find the XKeysymDB file.   This causes a large
warning output:

Warning: translation table syntax error: Unknown keysym name: osfActivate
Warning: ... found while parsing '<Key>osfActivate:ManagerParentActivate()'
Warning: translation table syntax error: Unknown keysym name: osfCancel
Warning: ... found while parsing '<Key>osfCancel:ManagerParentCancel()'
Warning: translation table syntax error: Unknown keysym name: osfSelect
Warning: ... found while parsing '<Key>osfSelect:ManagerGadgetSelect()'
...
....
....
etc.

as the file is in a different location, but Xt seems to only look for it in
the place where it is on the machine the app was compiled on.  Is there any
way to read the XKeysymDB manually with an X/Xt call so that additions to
the XKeysymDB can be distributed with the application ?  I have used trace(1)
to find out what was going on, but I need a fix so that these translations in
the application can be recognised.

--tim
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
document_id: 67205
From: pyeatt@Texaco.com (Larry D. Pyeatt)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

In article <27808.9304211039@scorpion.dps.co.uk>, gerard@dps.co.UK (Gerard O'Driscoll) writes:
|> 
|> pyeatt@Texaco.com writes:
|> 
|> >> There is a widget already defined for GL.  It is the GlxMDraw (motif) or
|> >> GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
|> >> allows you to use GL calls to render into the window.  Look at glxlink,
|> >> glxunlink, glxgetconfig, and glxwinset in the man pages.
|> 
|> Where do I get hold of these widgets?
|> 
|>  	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
|>  	Du Pont Pixel Systems Ltd.

They come with every Iris now.  Nth also ships it with their latest
version of Nth Portable GL.  I just got the update a couple of weeks
ago.  I would assume that Silicon Graphics would license the source
to you so that you can include it in your company's GL offering.

-- 
Larry D. Pyeatt                 The views expressed here are not
Internet : pyeatt@texaco.com    those of my employer or of anyone
Voice    : (713) 975-4056       that I know of with the possible
                                exception of myself.

Newsgroup: comp.windows.x
document_id: 67206
From: drand@spinner.osf.org (Douglas S. Rand)
Subject: Re: Writing a Motif widget

In article <C5wApJ.DD7@ibmpcug.co.uk> nicholas@ibmpcug.co.uk (Nicholas Young) writes:

   I need (probably) to write one or more new Motif widgets on the HP-UX
   platform. Do I need the Motif private header files and source,
   or can I make do with the public headers that are provided?
   "Motif" includes Xt in this context.

Yes.  You'll find it almost impossible without the source
at this point.  It does depend on how ambitious you are and
how concerned you are about compliance with the general
interface and items like traversal.

   One widget is a multi-column list (which lots of people have
   already written, I am sure), and would therefore be probably be
   a subclass of List rather than something simple like an Xt class.
   Is this more difficult (in principle, not lines of code)?

I'm not sure what you're asking.  You could create something
which is very much like a true multi-column list by placing
several lists within a geometry manager,  and putting that
manager within an automatic scrolled window.  This wouldn't
be good for very large lists,  but you might consider this
as an alternative.

   Alternatively, if anyone has a multi-column list widget they
   could sell me, this might save me from having to write one!
   Does it by any chance exist in Motif 1.2 already (I do not
   yet have the spec)?

Motif 1.2 does not have a multi-column list in it.  Have you
looked at commercial sets?  There are also some PD 
widget sets,  one of these might have a multi-column list
you could port.


--
Douglas S. Rand <drand@osf.org>		OSF/Motif Dev.
Snail:         11 Cambridge Center,  Cambridge,  MA  02142
Disclaimer:    I don't know if OSF agrees with me... let's vote on it.
Amateur Radio: KC1KJ

Newsgroup: comp.windows.x
document_id: 67207
From: rps@arbortext.COM (Ralph Seguin)
Subject: NumLock masking? interference with Meta/Compose/ExtendChar, ...

> My question is this:  Is there a means of determining what the state
> of CapsLock and/or NumLock is?

Alright.  Ignore this.  I have delved a bit deeper (XKeyEvent) and
found what I was looking for.

ev->state   has a bunch of masks to check against (LockMask is the one
for CapsLock).  Unfortunately, it appears that the NumLock mask varies
from server to server.  How does one tell what mask is numlock and
which are for Meta (Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, Mod5Mask).
eg, SGI's vendor server has Mod2Mask being NumLock, whereas Solaris
1.0.1 OpenWindows 3.0 has Mod3Mask for NumLock.  Is there an
unambiguous means of determining NumLock's mask at runtime for any
given server?  Sorry for the wasted bandwidth and my appalling ignorance.

			Thanks, Ralph


Newsgroup: comp.windows.x
document_id: 67208
From: davesimp@soda.berkeley.edu (David Simpson)
Subject: Trying to find papers by Rosenthal

I have the March/April version of the X Journal open in front of me.

I'll be working on programming x-clients this summer, and since I don't have
much experience with programming X, I thought this issue might be helpful
as it has a section on debugging, and a section on the 40 most common errors
in programming X.

At the end of the errors section, there are the following references for
tutorials on X programming style.  They are:

Rosenthal, David -   A simple X11 client program
  Proceedings of the Winter 1988 Usenix Conference, 1988.

Lemke, D., and Rosenthal, D. -  Visualizing X11 clients
  Proceedings of the Winter 1989 Usenix Conference, 1989.


Does anyone know where I could find these in printed or (preferably)
electronic form?

Or can you suggest any net resources devoted to the introduction to
programming X (I'll be looking at the bookstore for books, so I am really
only asking about what I can find on the net.)

Thanks,

David Simpson

davesimp@soda.berkeley.edu

Newsgroup: comp.windows.x
document_id: 67209
From: cjhs@minster.york.ac.uk
Subject: Re: Xt intrinsics: slow popups

cjhs@minster.york.ac.uk wrote:
: Help: I am running some sample problems from O'Reilly volume 4,
: Xt Intrisics Programming Manual, chapter 3. popup
: dialog boxes and so on.
: 
: In example 3.5, page 76 : "Creating a pop-up dialog box"
: 
: The application creates window with a button "Quit" and "Press me".
: The button "Press me" pops up a dialog box. The strange feature of
: this program is that it always pops up the dialog box much faster the
: first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
: it is *much* slower.
: 
: Has anyone any experience with these sample programs, or why I get
: this behaviour - fast response time for the first time but slow response
: time from 2nd time onwards ?
: Anyone can give me some ideas on how to program popups so that each time
: they popup in reasonable fast response time ?
: 
: Thankyou - Shirley

Thanks to those who responded.

We were able to prevent this behaviour by two methods:

1) running twm rather than olwm
2) keeping olwm, but putting "wmTimeout: 10" in the resources

It has been suggested that the difficuty was something to do with the
window manager positioning the popup window. Any guru who can analyse
what is going on from this information, please post and let us know.

Thanks -- Shirley

Newsgroup: comp.windows.x
document_id: 67210
From: bshaw@spdc.ti.com (Bob Shaw)
Subject: question on "xon" in X11R5


Hi folks

Say, I'm new to R5 and have one quick question.

In using xon ( xon  <machine_name> )  , I notice that it
always comes up with a very small window .  I'm pretty
sure its the default font.  My xterms all work normally.
Is xon supposed to read your .Xresources for a font size ?

xrdb -q appears to show the right stuff.

I can use xon with arguments such as  xterm -fn 10x20    etc
and everything is correct.  Of course you could always do a 
simple script to do this , but I have a feeling I'm missing
something simple here.

Comments / suggestions appreciated.

Thanks in advance

Bob
bshaw@spdc.ti.com    mm

Newsgroup: comp.windows.x
document_id: 67211
From: seth@ponder.csci.unt.edu (Seth Buffington)
Subject: Re: GUI Study

>Cutsie little Macintrash-like icons that are an instant recipe for
>mousitis IMHO. System 7 is undoubtedly the worst GUI I have used (out of
>that, RISCOS, MSWombles, and X11) simply because it does not provide enough
>keyboard shortcuts. Windows I must confess I quite like (cover your ears
>:-) ) because you can actually use it without having to ever touch the
>mouse.
[stuff delete]
>the user rather than making things _easier_ - and there should always be
>the option to do it your way if you want to, which is why I like the
>UNIX/X combination so much - it's so customizable. 

Hear! Hear! I agree completely. One thing I can't stand about
the Mac interface is its shear determination to FORCE you to use
the mouse(what if your mouse breaks--your whole system is
down!).  I like the mouse--it is handy on some occassions such
as cut and past and moving icons around, etc.  But for most
work, the keyboard and hot keys are 10-20 times faster than
using the mouse. Sure it is a plus to be able to do something
simple if you are an inexperienced user, but how long is it
before your are experienced? A month? Two? (Speaking of PCs at
the moment.)
	I don't think it is too much to ask that window
programmers provide not only a menu/mouse interface but also
look forward to those who would like to move on to hot keys and
command line interfaces, which usually allows you to do more in
less time IF you are experienced.
	All of the above equally applies to windowing systems on
UNIX (especially since Unix is at least 500% more powerful than
DOS).

-- 
\---------------------------------------------------------------------/
 \ Seth Buffington 	U.S.S. GAB 550 I   	817-565-2642         /
  \ seth@cs.unt.edu	seth@gab.unt.edu	Unix Operator       /
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
document_id: 67212
From: abarden@tybse1.uucp (Ann Marie Barden)
Subject: X-Terminal Config. file question

  QUESTION:
  What is the EXACT entry (parameter and syntax please), in the X-Terminal
configuration file (loaded when the X-Terminal boots), to add another system 
to the TCP/IP access control list?   

  BACKGROUND:
  I have two unix systems, 1. an AT&T 3B2 running X11R3 and MIT's X11R4 and 
2. a Sun SS10 without any X.  
  I want to have a window to the Sun and the 3B2 on the NCD X-Terminal at the
same time.  I can do this if I manually set the Network Parameter TCP/IP
Access Control List to off, then login to my telnet session. Not Great!  
  I've tried to get "xhost" to work and failed.  Either my syntax is wrong
or the X11R3 implementation is bogus.  
  I am trying to edit the NCD configuration file that is loaded when the 
NCD boots.  No matter what entry I add or edit, the NCD still boots with
the TCP/IP Access Control list containing only the 3B2.
  My manuals are worthless so any help would be most appreciated!!  Thanks!

Ann Marie Barden  	abarden@afseo.eglin.af.mil

Newsgroup: comp.windows.x
document_id: 67213
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: X Error of failed request:  BadPixmap (invalid Pixmap parameter)

Could someone PLEASE give a guess as to why this simple little program
causes a BadPixmap error on the FOURTH (bizarre???) call to XtRelaizeWidget()?

Here is the code:


int stoploop = 0;

static void Callback(Widget, XtPointer, XtPointer);

main()
{
        XtToolkitInitialize();
        XtAppContext app = XtCreateApplicationContext();
        while (1)
        {
                int junk = 0;
                Display *dis = XtOpenDisplay(app, NULL, NULL, NULL, NULL, 0,
                                                &junk, NULL);

                Widget top = XtAppCreateShell(NULL, NULL,
                                applicationShellWidgetClass, dis, NULL, 0);

                Widget box = XtVaCreateManagedWidget("x",
                                                        xmPushButtonWidgetClass,
                                                        top,
                                                        XmNheight, 25,
                                                        XmNwidth, 25, NULL);

                XtAddCallback(box, XmNactivateCallback, Callback, NULL);

                XtRealizeWidget(top);
                while (!stoploop)
                {
                        XEvent event;
                        XtAppNextEvent(app, &event);
                        XtDispatchEvent(&event);
                }
                stoploop = 0;
                XtReleaseGC(top, XDefaultGCOfScreen(XtScreen(top))); // needed?
                XtDestroyWidget(top);
                XtCloseDisplay(dis);
        }
}

static void Callback(Widget, XtPointer, XtPointer)
{
        stoploop = 1;
}


The error I get (yes, the 4TH time I try to show the box) is:

X Error of failed request:  BadPixmap (invalid Pixmap parameter)
  Major opcode of failed request:  55 (X_CreateGC)
  Resource id in failed request:  0xd0000d
  Serial number of failed request:  71
  Current serial number in output stream:  85


Please respond via email.  Thanks very, very much!

(NOTE: I realize this program does nothing useful, its an ultra-trivialized
version fo a real library routine)
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67214
From: kriss@frec.bull.fr (Christian Mollard)
Subject: Re: Looking For David E. Smyth

In article <1993Apr9.144859.10535@nynexst.com>, zvi@nynexst.com (Zvi Guter) writes:

The author of Wcl (or the current care taker). His is the only name I found
in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
but the mail bounced back.
Any help in finding him will be greatly appreciated.

Try
	david@ap542.uucp
	david%ap542@ztivax.siemens.com


Xtian.


      /     /                              Name:    Christian Mollard      /
     /   /        __/                     Email:   C.Mollard@frec.bull.fr /
       /     __/   /    __/     __/      Phone:   (33) 76 39 78 92       /
   /        /     /  __  /   __  /      Bull:    229 78 92              /
__/  __/ __/   __/ _____/  _____/      Fax:     (33) 76 39 76 00       /
                                                                      /
Address:	BULL S.A., B.P. 208, 38432 Echirolles Cedex, France  /
____________________________________________________________________/

Newsgroup: comp.windows.x
document_id: 67215
From: detroch@imec.be (Stefan De Troch)
Subject: virtual mwm ? 


-- 
Hi netland,

I thought that I once read about the existance of a virtual mwm like vtwm.
On the usual ftp sites (gatakeeper.dec.com, export.lcs.mit.edu) I can't find
any trace of this program. Could anybody give me a hint where to find this
program or confirm/deny the existance of this program.

Regards,

  Stefan

Newsgroup: comp.windows.x
document_id: 67216
From: dsk@ravl.rice.edu (Dan S. Kirkpatrick)
Subject: Installation problem with X11R5

I am in the process of installing X11R5 on my Sun Sparcstation 2 and
have run into a problem.  I imagine it has something to do with a missing
screen driver, or something along those lines, but figured someone out there
in Internet land might be able to help.

I am installing it on a machine that already has OpenLook installed, and would
like to have both installed concurrently.  Thus, I set it up to compile to my
/usr/X11R5 directory.  I worked out all the kinks in getting it compiled (with
gcc), so that it compiles without any warnings.  I need it installed for PEX-SI,
so I set all those appropriate flags.  When I run it, however, I get a message
along the lines of:

Getting interface configuration : Operation not supported on socket

sunOpenFrameBuffer : Inappropriate ioctl for device

Fatal server error : no screens found 


Any ideas on how I can fix it?  Please respond by e-mail at the below
address.

Thanks in advance.

-Dan
-- 
"I do not want to be immortalized through my works; I want to be 
immortalized through not dying."  -Woody Allen

Dan Kirkpatrick                 | Dept of Electrical & Computer Engineering
~dsk@rice.edu                   | Rice University
uunet!rice.edu!dsk@uunet.uu.net | Houston, TX

Newsgroup: comp.windows.x
document_id: 67217
From: dscheck@nextsrv1.andi.org (David Scheck)
Subject: Imake cpp problems on AIX


I am trying to build and use imake (X11R4) on an IBM RS/6000 running AIX V3.2.
I am having the following 2 problems.

(1) Many of my Imakefile's have contructs like
		/**/#This is a makefile
	at the start of lines to pass Makefile comments thru the C
	preprocessor and into the Makefile.  Most of the C preprocessors that
	I have used will not treat such a # as appearing at the start of the
	line.  Thus the C preprocessor does not treat the hash symbol as the
	start of a directive. 

	However the IBM cpp strips the comment and treats the hash symbol
	as the start of a directive.  The cpp fails when it determines
	that "This" is not a known directive.  I have temporarily hacked my
	imake to handle this situation but would like to come up with a better
	fix.

(2) Several Imakefiles use /**/ as a parameter to a macro when a particular
	use of the macro does not need a value for the parameter.  The AIX cpp
	gives warnings about these situations but continues to work OK.

If you are familiar with these problems and have solutions, I would appreciate
information about on your solutions.  (Perhaps, this is solved in a later
version of imake that I have not reviewed.)  Also, do you know of other cpp's
that behave similarly?

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
document_id: 67218
From: dscheck@nextsrv1.andi.org (David Scheck)
Subject: imake on DOS and Windows


Has anyone had experience porting imake to DOS using a Microsoft, Watcom, or
any other DOS compiler? 

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
document_id: 67219
From: mlee@eng.sdsu.edu (Mike Lee)
Subject: Post script viewer

Hello, recently I have been printing out a lot of files on school's laser printer and feeling guilty about it.  Please help me by showing me where to get a post script viewer for X-windows.  Thank you for your help.





A student trying to enhence his cybernatic ability.


Newsgroup: comp.windows.x
document_id: 67220
From: bading@cs.tu-berlin.de (Tobias 'Doping' Bading)
Subject: Re: Forcing a window manager to accept specific coordinates for a window


In article <1r5l8g$bub@wsinfo03.win.tue.nl> rcb5@wsinfo03.win.tue.nl (Richard Verhoeven) writes:

   Sorry, but olwm and tvtwm don't do it. They place the title at that position
   and the window at a position below it.

   This becomes a problem when you want a program to be able to save its current
   configuration and restore is later.

   Currently, my solution is:

	   XCreateWindow(...);
	   XSetWMProperties(..);
	   XMapWindow(...);
	   XFlush(...);
	   XMoveWindow(...);


   It works with olwm, but is less than elegant. All this leaves me wondering
   if I'm overlooking something obvious.

   Richard.


I know that the mwm has an resource to specify if positions are to be used for
the border of a window or for the "user" window. Maybe other window managers
have similar options.
Another way to figure out the difference between the "user" window position
and the window manager decoration window position is to subtract their
positions. You just have to use XQueryTree and remember that the window manager
decorations window is the parent of your window. Unfortunately, you can only
figure out the decoration width and height after the window has been mapped
this way.

Greeting,
          Tobias (bading@cs.tu-berlin.de)

Newsgroup: comp.windows.x
document_id: 67221
From: neideck@nestvx.enet.dec.com (Burkhard Neidecker-Lutz)
Subject: Re: Animation with XPutImage()?

In article <1993Apr22.215913.23501@nrao.edu> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>  ... remove the shared memory segment...
>  Terrible, but it works.

Why is that terrible ? That's exactly the way our code has been doing
it for two years now and is the way that temporary files in UNIX systems
are managed most of the time (open, unlink).

		Burkhard Neidecker-Lutz

Distributed Multimedia Group, CEC Karlsruhe          EERP Portfolio Manager
Software Motion Pictures & BERKOM II Project         Multimedia Base Technology
Digital Equipment Corporation
neidecker@nestvx.enet.dec.com

Newsgroup: comp.windows.x
document_id: 67222
From: cverond@nyx.cs.du.edu (Cristiano Verondini)
Subject: Image plotting source code needed

Hi,

	I'm looking for source sample on how to create a window with an image
in it (actually a 2dim matrix of unsigned char). Any help will be appreciated!
:))

	

Newsgroup: comp.windows.x
document_id: 67223
From: ks@n8pph52.nt.com (Kamlesh Shah)
Subject: Question on Motif Diaog Shell Widget under vuewm...

Dear netters,

I have noticed something rather weared (I think) about creating a dialog shell
widget while running HP Vue's vuewm.

For some reason, every time I create a dialog shell the foreground and backgroun
d colors are different compared to my toplevel shell.
I am not doing anything special/different.

Does any body know anything about this problem?? How to fix it without hardcodin
g the colors ?

Please respond to kamlesh@salzo.cary.nc.usa ....

Thanks !
-Kamlesh

Newsgroup: comp.windows.x
document_id: 67224
From: afielden@cbnewsb.cb.att.com (andrew.j.fielden)
Subject: X benchmarks


We are in the process of evaluating X-terminals. This includes running XRemote
over a serial line.
I would like to run some X benchmarks to determine comparative performance.
Has anyone written any such benchmarks, or know of any useful programs on the
net ? I heard of a program called "Xstone", but I couldn't locate it using
archie.

Please reply to afielden@mlsma.att.com, as I don't get to read this newsgroup
much.
Thanks in advance for any help.

-- 
+----------------------------------------+----------------------------------+
|Andrew Fielden. AT&T Network Systems UK |        Tel : +44 666 832023      |
|Information Systems Group (SUN support) |   Email : afielden@mlsma.att.com |
+----------------------------------------+----------------------------------+

Newsgroup: comp.windows.x
document_id: 67225
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Hypercard for UNIX

Hi netlanders,

Does anybody know if there is something like Macintosh Hypercard for any UNIX 
platform?


Thanks in advance


Ron.

Newsgroup: comp.windows.x
document_id: 67226
From: lapp@waterloo.hp.com (David Lapp)
Subject: Re: NumLock masking? interference with Meta/Compose/ExtendChar, ...

Ralph Seguin (rps@arbortext.COM) wrote:
: > My question is this:  Is there a means of determining what the state
: > of CapsLock and/or NumLock is?

: Alright.  Ignore this.  I have delved a bit deeper (XKeyEvent) and
: found what I was looking for.

: ev->state   has a bunch of masks to check against (LockMask is the one
: for CapsLock).  Unfortunately, it appears that the NumLock mask varies
: from server to server.  How does one tell what mask is numlock and
: which are for Meta (Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, Mod5Mask).
: eg, SGI's vendor server has Mod2Mask being NumLock, whereas Solaris
: 1.0.1 OpenWindows 3.0 has Mod3Mask for NumLock.  Is there an
: unambiguous means of determining NumLock's mask at runtime for any
: given server?  Sorry for the wasted bandwidth and my appalling ignorance.

You'll have to check the keysym(s) on each of the keys for each
modifier. The one with NumLock in its mapping is the modifier
you want. A bit ugly perhaps but I think its currently the only
way to do this (and it does have some precedent as keysyms are 
used to differentiate CapsLock from ShiftLock for the Lock
modifier).

I don't know of an accepted strategy for handling ambiguous
assignments either. (ie. what if NumLock is mapped for more then
one modifier). I suppose first found is as good as any.

X doesn't handle locking modifiers that well. 

Hope that helps,

Dave Lapp

Standard Disclaimer etc...

Newsgroup: comp.windows.x
document_id: 67227
From: mitch@unidata.ucar.edu (Mitch Baltuch)
Subject: motif based graphing package


i am in need of a motif-based graphing package to integrate into a large
software package under development for distribution to universities.  it
can be either public domain or commercial, although a commercial package
can't have royalties required for binary only distribution.  we need 2-d
graphing capabilities at a minimum, but 3-d  would be nice.  any info would
be appreciated and i will summarize if there is interest.

thanks,
mitch
--
_______________________________________________________________________________
Mitchell S. Baltuch					Unidata Program Center
mitch@unidata.ucar.edu					UCAR, PO Box 3000
303/497-8652						Boulder, CO 80307-3000

Newsgroup: comp.windows.x
document_id: 67228
From: ccgwt@trentu.ca (Grant Totten)
Subject: Re: PostScript on X-terminal


I tried to e-mail you but it bounced so...

Hi there,

In article <4263@his.UUCP> you write:
>From: sp1henhj@edit (Henrik Balthazar Hjort)
>Subject: PostScript on X-terminal
>
>
> I have a problem when I'm using PostScript. When I am working local
>on a SUN SPARCstaton IPC the PostScript works good, but when I connect
>to the SUN from a X-terminal I just get error messages that the
>PostScript cannot connect to the news-display.
>
> Why doesn't PostScript work on an X-terminal?
>
> Is there any way to make it work?
>

It might be that the X terminal doesn't support the "Postscript
Extensions to X" product.  I use the 'dxpsview' program on a 
DECstation 5000 to view postscript files but when I moved to an
NCD X terminal, I couldn't use it any more.  So I ftp'd and
compiled GhostScript (GNU software).  Now we can view postscript
files on our X terminals.

Hope this helps.

Grant

>
> Henrik "Henrik Hjort" Hjort
>
>
>
>
--
Grant Totten, Programmer/Analyst, Trent University, Peterborough Ontario
GTotten@TrentU.CA            Phone: (705) 748-1653   FAX: (705) 748-1246
========================================================================
Take everything in stride.  Trample anyone who gets in your way.

Newsgroup: comp.windows.x
document_id: 67229
From: tomk@skywalker.bocaraton.ibm.com (Thomas Chun-Hong Kok)
Subject: Re: Hypercard for UNIX

In article <1993Apr23.114028.17633@bernina.ethz.ch>, queloz@bernina.ethz.ch (Ronald Queloz) writes:
> Hi netlanders,
> 
> Does anybody know if there is something like Macintosh Hypercard for any UNIX 
> platform?
> 
> 
> Thanks in advance
> 
> 
> Ron.

-- 

Try MetaCard - a HyperCard-like programming environment on X.


Chun Hong

Newsgroup: comp.windows.x
document_id: 67230
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <BADING.93Apr23105229@athene.cs.tu-berlin.de> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
>
>I know that the mwm has an resource to specify if positions are to be used for
>the border of a window or for the "user" window. Maybe other window managers
>have similar options.
>Another way to figure out the difference between the "user" window position
>and the window manager decoration window position is to subtract their
>positions. You just have to use XQueryTree and remember that the window manager
>decorations window is the parent of your window. Unfortunately, you can only
>figure out the decoration width and height after the window has been mapped
>this way.
>
	Another way would be to use GetGeometry to find out where
you are relative to the frame, and TranslateCoordinates to find
out where your window's upperleft corner really is.
	-- Ethan



Newsgroup: comp.windows.x
document_id: 67231
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: Key definitions in Emacs + X

In a prior article ajaffe@oddjob.uchicago.edu (Andrew Jaffe) wrote:
  > Hi.
  > 
  > I use Emacs and I want to customize my keyboard better.
  > When I set up stuff in my .emacs with a keymap and define-keys,
  > I can only access certain of the keys on my X-Terminal's
  > keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
  > seem to have either the same or no keycode. I have a feeling
  > this can't be fixed in emacs itself, but that I need to do some
  > xmodmap stuff. Can someone help me?

Unfortunately, the key event handling is pretty much hardwired into
emacs.  I ran into this problem a while back; my solution was to
change the source code so that all of these special keys generated
character sequences which basically encoded the keysym and modifier
state as escape sequences -- for example, the sequence "ESC [ 1 B 7" 
would indicate that the "HOME" key was pressed, with the shift key
down.  You could also detect standard keys with odd modifiers, such
as "shift-Return".

If anybody wants these changes, they're welcome to them, but you'll
have to have the source available and be comfortable munging with
it a bit.  Basically you have to replace the keypress handling code
in the source file "x11term.c".  Maybe if someone at OSF is 
interested, I can send them the tweaks, but I imagine they've got
bigger fish to fry (hopefully including the much talked about 
emacs V19!).  If there's sufficient interest, I'll post the mods 
somewhere, although this probably isn't the appropriate group for it.

Notes: 

 * This special code will only apply if you let emacs create
   its own (X11) window.  If you run it in plain old tty mode (which 
   includes Xterm windows) then it's business as usual.

 * The patches I made were to version 18.58, under Sun OS 4.1.2
   [I also did this a while back under HP-UX].  The patches are
   in a chunk of code between '#if sun ... #endif' but could 
   easily be adapted for anything else.


+-------------------------------------------------------+------- /// -----+
| Mark Lanzo   KD4QLZ  lanzo@tekelec.com   919-460-5576 |    \\\///       |
+-------------------------------------------------------+---- \XX/ -------+

Newsgroup: comp.windows.x
document_id: 67232
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: Title for XTerm

In a prior article naoumov@physics.unc.edu (Sergei Naoumov) writes:

  > Hey guys!
  > I work on many stations and would like this name and current logname
  > to be in a title of Xterm when it's open and a machine name only
  > when it's closed. In other words, I want $HOST and $LOGNAME to appear
  > as a title of opened XTerm and $HOST when XTerm is closed.
  > How can I do it?

[Apologies if I'm answering something already answered in the FAQ.
Our news feed has been losing a lot of articles lately - so I haven't
seen the FAQ lately to check.]


Two ways:
 
 1) When you start the xterm, you can use command line options:
         -n ICON_NAME           To set the icon label
         -T WINDOW_TITLE        To set the window title
         -title WINDOW_TITLE    Equivalent to -T WINDOW_TITLE

 2) You can use escape sequences to change things on the fly:

    The basic escape sequence is:
	ESC ] <P> ; <SOME_ARBITARY_TEXT> BEL

    where ESC and BEL are the ASCII ESCAPE and BELL characters,
    <P> is an ASCII decimal digit -- '2', '1', or '0', depending
    on whether you are trying to set the window or icon title,
    or both, and <SOME_ARBITARY_TEXT> is your desired label string.

    Hence, this command will set the window & icon title:
         echo "\033]0;YOUR_TITLE_GOES_HERE\007\c" 

    To set just the icon title:
         echo "\033]1;YOUR_TITLE_GOES_HERE\007\c" 

    To set just the window title:
         echo "\033]2;YOUR_TITLE_GOES_HERE\007\c" 

    Of course, you may have to fiddle with exact syntax,
    depending on how the echo command works on your system
    and what shell you are using (I've shown System-V semantics
    under Bourne or Korn shells).

    [Hint for Sun OS users:  use /usr/5bin/echo instead of
    /bin/echo or Csh's built-in echo.  Otherwise you'll have
    to embed literal ESC and BEL characters in the string
    instead of using convenient octal sequences.]

    If you want your titlebar updated continously, say to show
    your current directory, hostname, or somesuch, then you'll
    have to see if you can coerce your shell into spitting out
    the appropriate escape sequences when it prompts for commands.
    Sometimes you can just put the appropriate escape sequence
    in the prompt string itself, sometimes not ...


+-------------------------------------------------------+------- /// -----+
| Mark Lanzo   KD4QLZ  lanzo@tekelec.com   919-460-5576 |    \\\///       |
+-------------------------------------------------------+---- \XX/ -------+

    



Newsgroup: comp.windows.x
document_id: 67233
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: How do I find my AppContext?

In a prior article masc0442@ucsnews.sdsu.edu (Todd Greene) said:
 
 > Is there an Xt call to give me my application context?
 > I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
 > whose first argument is the app_context.  What call can I use
 > to give me this value?
 
	XtAppContext XtWidgetToApplicationContext(Widget)

Of course, just using the app context returned from 
XtCreateApplicationContext, XtAppInitialize, etc. is the
best option, unless that path is not available.

Newsgroup: comp.windows.x
document_id: 67234
From: tracy@cs.ucf.edu (Tracy Rene Tolley)
Subject: HELP: xdm & Solaris2.1

I recently read here that Sun has a patch for xdm on
Solaris2.1.  I was wondering if anyone could give me the 
patch number. 

Thanks in advance,
Tracy Tolley
University of Central Florida - Technical Support

Newsgroup: comp.windows.x
document_id: 67235
From: ziegenfE@moravian.edu (Eric W. Ziegenfus)
Subject: Re: PROBLEM: Running AIX info from a Sun rlogin shell.

In <1r74bcINN6ei@ome.sps.mot.com> wcl@risc.sps.mot.com (Wayne Long) writes:


>  When I run our RS6000's "info" utility through a remote login
>  shell (rlogin) from my Sun Sparc 1+, I can no longer type
>  lower case in any of info's window prompt's.

>  I thought the prob. may have been due to my Sun window mgr. 
>  (Openlook) being incompatible with the AIX Motif application
>  but I tried it under TVTWM also.  Same result.
>  
>  So this is presumably an X11 key definition problem between 
>  workstations - but my system admins. feign ignorance.
>  
>  What do I need to do the be able to type lower case into 
>  this remote AIX motif app. from within my local Openlook
>  window manager?
>  
>  
>-- 
>-------------------------------------------------------------------
>Wayne Long - OE215              Internet: wcl@risc.sps.mot.com
>6501 William Cannon Drive West  UUCP: cs.texas.edu!oakhill!risc!wcl
>Austin, Texas 78735-8598        Phone (512) 891-4649  FAX: 891-3818

I have had the exact same problem, but have not figured out a solution.
I run a PC with Linux (free-unix) with X11r5 and OpenWindows 3.0, I
would appreciate any solutions.

ewz
-- 

               /---------------------------------------------\
              | INTERNET:  ziegenfE@moravian.edu              |
              | UUCP:      ...!rutgers!lafcol!batman!ziegenfE |
               \_____________________________________________/

Newsgroup: comp.windows.x
document_id: 67236
From: christy@cs.concordia.ca (Christy)
Subject: XFree86 --- need help...

Hi,

I just got XFree86 running on my pc with Consensys and encountered a few
minor (I hope) probems.

The pc is hooked up to a LAN where I want remote X applications to 
connect to my X-server.  I believe the command to permit this is
xhost.  When I'm logged on my pc and type 'xhost + '  ,  I get the error message saying
"You must be on local machine to enable access". 
what does this mean ?  ain't I already on the local machine?

Another problem I have is with the mouse movement.  I find that the 
mouse cursor moves extremely slow and choppy.
How can I make the mouse cursor move more accurately?


thank in advance.
Any help is much appreciated.

please send replies to christy@alex.qc.ca.


Christy

Newsgroup: comp.windows.x
document_id: 67237
From: bshaw@spdc.ti.com (Bob Shaw)
Subject: SUMMARY  xon and X11R5


Hi folks
Thanks to the ones that replied, however, my problem turned out
to be very simple.

In my .Xresources I had a space after XTerm*font:   10x20.
Removing this and xrdb fixed my problem.

Also, same symptom, was that some of my users did not have the
proper capitals for XTerm*font.

Thanks again

Bob


Newsgroup: comp.windows.x
document_id: 67238
From: bkline%occs.nlm.nih.gov (Bob Kline)
Subject: X11 load on the Network

Can someone point me in the direction of any papers (not necessarily
formally conducted studies) discussing how much traffic X apps generate
for the network, particularly in comparison with curses-bases apps 
over telnet?  Also, does an X server typically buffer up user keyboard
input a line at a time?  Can the X client control this, asking for
keystrokes immediately?  Thanks in advance for any feedback!

--
/*----------------------------------------------------------------------*/
/* Bob Kline                                      Phoenix Systems, Inc. */
/* bkline@occs.nlm.nih.gov                        voice: (703) 522-0820 */
/*----------------------------------------------------------------------*/

Newsgroup: comp.windows.x
document_id: 67239
From: curtiss@cs.UND.NoDak.Edu (Chuck Curtiss x3289)
Subject: Athena Widgets

Where do I find the Athena Widgets that are needed for xtdm-2.4.8 

Thanks in advance



Newsgroup: comp.windows.x
document_id: 67240
From: min@stella.skku.ac.KR (Hyoung Bok Min)
Subject: subscribe


subscribe min@stella.skku.ac.kr


Newsgroup: comp.windows.x
document_id: 67241
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: RE: need shading program example in X


In article <930421105641.100043a@TGV.COM>, mahan@TGV.COM (Patrick L. Mahan) writes:
|> 
|> #
|> #Do anyone know about any shading program based on Xlib in the public domain?
|> #I need an example about how to allocate correct colormaps for the program.
|> #
|> #Appreciate the help.
|> #
|> 
|> I don't know if this might help, but I've just started playing with a program
|> called POVRay (Persistance of Vision Raytracer) that also displays its output
|> via X Windows.  It does a fairly good job of allocating the colormap on my
|> Psuedo-Color 8-plane display.  I got the source from from a site in Canda.
|> The person I retrieved them from was David Buck (dbuck@ccs.carleton.ca).
|> 

I think the original post was searching for existing implementations of
f.i. Gouroud-shading of triangles. This is fairly complex to do with plain
X. Simpler shading models are implemented already, f.i. in x3d (ask archie
where to get the latest version).
For Gouroud, a fast implementation will be possible utilizing some extension
only, either MIT-SHM to do the shade in an image and fast update the window
with it, or PEX/OpenGL which should be able to shade themselves. The portable
'vanilla X' way would be to shade in a normal XImage and use XPutImage(),
what would be good enough to do static things as f.i. fractal landscapes
or such stuff.

To speak about POVRay, the X previewer that comes with the original source
package is not that good, especially in speed, protocol-friendlyness and
ICCCM compliance. Have a look on x256q, my own preview code. It is on

141.76.1.11:pub/gfx/ray/misc/x256q/

The README states the points where it is better than xwindow.c from
POVRay 1.0

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67242
From: stevedav@netcom.com (Steve Davidson)
Subject: MOOLIT and OLIT

Does anyone know the difference between MOOLIT and OLIT?  Does Sun
support MOOLIT?  Is MOOLIT available on Sparcstations?

I have recntly downloaded a copy of wkshTree written by Eric Wallengren
of Univel.  There are many widgets that are apparently available only
to MOOLIT but not OLIT.

Is there a wkshTree program available under OLIT?

steved@cfcl.com

Newsgroup: comp.windows.x
document_id: 67243
From: andre@bae.bellcore.com (Andre Cosma)
Subject: Is authentication a planned feature for X11R6?

Greetings,

My question is whether the upcoming release of X11R6 will provide
(strong) authentication between the X clients and server(s). If so,
will this feature be based on the Kerberos authentication mechanism
(and, if so, will Kerberos Version 5 be used)? Please reply via email.

Thanks,

--Andre
-- 
Andre S. Cosma         | RRC 1N-215          |  Bellcore - Security and
andre@bae.bellcore.com | 444 Hoes Lane       |       Data Services
(908) 699-8441         | Piscataway, NJ 08854|
----------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67244
From: garym@ie.utoronto.ca (Gary Murphy)
Subject: X on Amiga 4000?

I'm new to the hardware and with a mandate to port some X-based
stereo-video software --- does anyone know of or have experience with
X on Amiga machines?  If I can retain the X event handling, it would
ease my plight considerably, and if I can keep all the Motif bits, so
much the better!


-- 
Gary Lawrence Murphy ---------------- garym@virtual.rose.utoronto.ca
University of Toronto, Industrial Eng Dept    fax:    (416) 971-1373
4 Taddle Creek Rd, Toronto, Ont M5S 1A4       voice:  (416) 978-3776
The true destination is always just here, now ----------------------

Newsgroup: comp.windows.x
document_id: 67245
From: brian@nostromo.NoSubdomain.NoDomain (Brian Colaric  Sun Dallas DSE)
Subject: Help: OS2 Presentation Mgr port to X

I need to port several OS/2 PM applications to X (OpenWindows or Motif),
and desperately need any information on how to go about doing this (short
of a complete rewrite.
 
Are there any tool to make porting easer?
Any References?
Any talent out there to hire to do this?
I will even take an OS/2 Presentation Mgr emulator for sun!
 
Any, and all replies (except flames) welcome!
 
 
Brian Colaric
 
Brian.Colaric@dallas.Central.Sun.COM



Newsgroup: comp.windows.x
document_id: 67246
From: cjhs@minster.york.ac.uk
Subject: Re: Xt intrinsics: slow popups

Bryan Boreham (bryan@alex.com) wrote:
: In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
: > The application creates window with a button "Quit" and "Press me".
: > The button "Press me" pops up a dialog box. The strange feature of
: > this program is that it always pops up the dialog box much faster the
: > first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
: > it is *much* slower.
: 
: The shell is waiting for the window-manager to respond to its
: positioning request.  The window-manager is not responding because
: it thinks the window is already in the right place.
: 
: Exactly *why* the two components get into this sulk is unclear to
: me; all information greatly received.

Thanks for this clue, and thanks to Derek Ho also for a pointer in the
same direction.

One solution, due to Derek Ho: when the popup is popped up, we SetValue
its location -- which on repeat popups will be unchanged from the
previous popup. The slow response can be avoided by calling GetValue
first, and only using SetValue if the required location is different.
The problem can also be avoided by making a tiny alteration in the
location of the popup, so that the SetValue really does change the
location of the popup. (We tried this just for a double check on the
source of the problem.)

The solutions we have tried successfully are now as follows:

1) Use "twm" or "mwm" rather than "olwm"
2) Use "olwm", with resource "*wmTimeout: 10"
3) Only reset the location of the popup window if it is truely changed.

This is obviously working around some bug somewhere.

Thanks -- Chris Ho-Stuart

Newsgroup: comp.windows.x
document_id: 67247
From: ge!severy%severy@uunet.UU.NET (severy)
Subject: Overriding window manager focus processing

     I am working on an X-Window based application that needs to 
override some of the window manager focus processing.  I am 
using X11R4 and Motif 1.1 currently, although I will also be 
working with Open Look in the future.

     What I need to do is under certain circumstances prevent the 
user from switching from one window of the application to 
another window.  Let's say, for example, that Window A is on top 
of Window B in the window hierarchy.  Normally, if the user clicks 
the mouse in Window B it will be brought to the top of the 
window hierarchy and placed on top of Window A.  Under certain 
circumstances if the user clicks the mouse in Window B I need to 
beep and prevent Window B from being raised on top of Window 
A.

      From the research and testing I've done so far, it appears that 
this window ordering is handled by the window manager, in this 
case Motif.  I haven't found any way to override this default 
processing through standard X Window functions.  I can tell 
when this switching occurs through focus change and mapping 
notify events, but I can't find any way to tell Motif not to make the 
switch.

      The temporary solution I've currently come up with is very 
kludgy but it partially works.  When I detect such a window switch 
in those cases when the switch is not allowed, I manually force 
the formerly top window back on top with an XRaiseWindow call 
and beep with the XBell function.  This provides the necessary 
functionality but looks ugly when the windows switch places 
twice.

      Does anyone know how I can tell Motif (or preferably *any* 
window manager) when I don't want the window order switch to 
actually take place?  Respond either by e-mail or posting to this 
newsgroup.

Cheers....     Randall

***************************************************************************
* Randall Severy                    *      UUNET: uunet!ge!severy         *
* GE Information Services           *   INTERNET: ge!severy@uunet.uu.net  *
* 401 N. Washington St.   MC05A     *      GENIE: RSEVERY                 *
* Rockville, MD  20850    USA       *      PHONE: +1-301-340-4543         *
***************************************************************************

Newsgroup: comp.windows.x
document_id: 67248
From: jeremy@wildcat.npa.uiuc.edu (Jeremy Payne)
Subject: Re: Xt intrinsics: slow popups

In article <735516045.1507@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
|> cjhs@minster.york.ac.uk wrote:
|> : Help: I am running some sample problems from O'Reilly volume 4,
|> : Xt Intrisics Programming Manual, chapter 3. popup
|> : dialog boxes and so on.
|> : 
|> : In example 3.5, page 76 : "Creating a pop-up dialog box"
|> : 
|> : The application creates window with a button "Quit" and "Press me".
|> : The button "Press me" pops up a dialog box. The strange feature of
|> : this program is that it always pops up the dialog box much faster the
|> : first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
|> : it is *much* slower.
|> : 
|> : Has anyone any experience with these sample programs, or why I get
|> : this behaviour - fast response time for the first time but slow response
|> : time from 2nd time onwards ?
|> : Anyone can give me some ideas on how to program popups so that each time
|> : they popup in reasonable fast response time ?
|> : 
|> : Thankyou - Shirley
|> 
|> Thanks to those who responded.
|> 
|> We were able to prevent this behaviour by two methods:
|> 
|> 1) running twm rather than olwm
|> 2) keeping olwm, but putting "wmTimeout: 10" in the resources
|> 
|> It has been suggested that the difficuty was something to do with the
|> window manager positioning the popup window. Any guru who can analyse
|> what is going on from this information, please post and let us know.
|> 
|> Thanks -- Shirley

I ran in to this problem I while ago, and from what I remember you should use
XtTranslateCoordinates etc. after realizing the main widget to calculate
the location of the popup, then use something like XtVaSetValues on the
popup widgets before ever using them.  Calling SetValues repeatedly (e.g.
every time something pops up) seems to be what slows you down.  I never
delved deep enough to figure out exactly why though...

---------------------------
Jeremy Payne
UIUC Neuroscience program /
College of Medicine
jrpayne@uiuc.edu
(217)244-4478
---------------------------

Newsgroup: comp.windows.x
document_id: 67249
From: deloura@cs.unc.edu (Mark A. DeLoura)
Subject: Looking for X Window Server Frequency-of-Operations Data

Hello--  I'm currently designing the architecture of a chip which is
intended to help speed up common operations on a windowing system such as
X.  A friend and I are designing the chip as the final course project for
an advanced computer architecture course taught by Dr. Fred Brooks at
UNC-Chapel Hill.  While we feel that we've got a pretty solid design
currently, we'd really like to get ahold of some frequency data from an
X-Windows server so that we can make the most effective use of our bit
budget.  

Unfortunately, I've been unable to find anything of this sort in the
various X FAQs, or X manuals that I've seen.  Does anyone have some type of
frequency data, like how many Copy-rectangle operations vs draw-lines, and
things of that sort?  Or, barring that, a program that records requests to
the server into a logfile that I can munge on myself?

Any and all help would be very appreciated.

Many thanks,
    ---Mark

===============================================================================
 Mark A. DeLoura       deloura@cs.unc.edu      U of North Carolina, Chapel Hill

Newsgroup: comp.windows.x
document_id: 67250
From: dbrooks@osf.org (David Brooks)
Subject: Re: Q: Colormaps with dialog shells

dyoung@media.mit.edu (David Young) writes:
| 
| I have an applicationShell which uses a colormap created with
| XCreateColormap() and uses all of the colors available for my 8-bit
| display....When I popup a dialogShell to prompt the user for
| some input I want the XmNdialogStyle to be set to
| XmDIALOG_PRIMARY_APPLICATION_MODAL.  The result is that if my cursor is
| over the dialogShell I get my colormap, but if the cursor is over the
| applicationShell (or any window other than the dialogShell) I get the
| default colormap.  But I'd like it so that if my cursor is over _any_
| window of my application, I get my colormap.

I *think* this is correct behavior.  Remember the default
colormapFocusPolicy is keyboard (meaning the cmap focus follows the
keyboard focus).  Since the dialog is modal, mwm won't allow keyboard
focus onto your main shell, and so it won't allow cmap focus either.

Since it sounds as though you have keyboardFocusPolicy:pointer, I
suggest you set colormapFocusPolicy:pointer also.  That way, the cmap
focus won't slavishly follow keyboard focus, but will beat its own path.

(if you have keyboardFocusPolicy: explicit, you can set cmap focus
explicit also, but you then need a binding to f.focus_color, probably on
MB1).
-- 
David Brooks					dbrooks@osf.org
Open Software Foundation			uunet!osf.org!dbrooks
Showres soote my foote


Newsgroup: comp.windows.x
document_id: 67251
From: papresco@undergrad.math.uwaterloo.ca (Paul Prescod)
Subject: X Toolkits

I am considering making a reasonably large application for free
distribution (probably copylefted).  I am going to use X.  Now I'm
bewildered by the huge number of "standards" that "open systems" has
created.  

I've lived in a fairly tookit-sheltered environment.  Most of the tools
here were produced with the Athena Widget set, or X Intrinsics or Xw
(??).  

In my humble opinion, they look like crap.  I don't know, however, if
this is a characteristic of the tookits, or just poor aestetic taste
in the programmers.

I would like my app to look a little more "sculptured" like mwm.  I
understand, however, that mwm isn't free like the other tookits.

I am getting Linux, so I will have InterViews, but I don't know how it
will look.  I get the impression Andrew is from the FSF, but I don't
know what it looks like either.

If you can help explain this toolkit mess to me, I would be much
obliged.  Which are free?  Which are the best?  Which are portable?  Which
looks nice?  Which is not a resource hog?

Also, if you happen to know which are available on Linux and/or Sun,
that would be a big help too.

Thanks in advance.


Newsgroup: comp.windows.x
document_id: 67252
From: ben@dbsm.oz.au (Benjamin Stephen Kelley)
Subject: Problems with color Xterm

We have recently obtained a copy of color_xterm (from export.lcs.mit.edu) after
seeing it mentioned in a previous article. On compilation, it reports the
following undefined symbols:
	_get_wmShellWidgetClass
	_get_applicationShellWidgetClass

	but still runs. When sending escape sequences to set the colour,
any colour comes out as black text on a black background. Any Ideas?

Has anyone used this program in colour successfully?

Can anyone point me to any other colour terminal emulators?

We are running OpenWindows 3 on Sun Sparcs running SunOS 4.1.3.

				advaTHANKSnce  Ben Kelley.

						ben@thor.dbsm.oz.au


Newsgroup: comp.windows.x
document_id: 67253
From: barnett@grymoire.crd.ge.com (Bruce Barnett)
Subject: Re: Title for XTerm

In article <1993Apr22.173546.5198@gecko.uucp> lanzo@tekelec.com (Mark Lanzo) writes:

       [Hint for Sun OS users:  use /usr/5bin/echo instead of
       /bin/echo or Csh's built-in echo.  Otherwise you'll have
       to embed literal ESC and BEL characters in the string
       instead of using convenient octal sequences.]

Bad idea. using /usr/5bin/echo is slower than the built-in echo.
This is what I do. It does execute `hostname` once per shell window,
and does read in one extra file. But manipluating the titles does not
require executing extra programs.

Oh yes, it does execute some programs once per each system. 
But it stores them in a file for the next time...


if ( ! $?HOSTNAME ) then
	setenv  HOSTNAME `hostname`
endif

# figure how how to generate escape, bell, 
# and echo commands without a a line terminator
# I may have done this before. If so, the variable E is set

# have I executed this script before on this system?
if ( $?E ) then
#	echo "already set the echo variables">/dev/tty
else if ( -f ~/.echo.${HOSTNAME} ) then
	source ~/.echo.${HOSTNAME}
else if ( `echo -n |wc -l`  == 0 ) then
#	echo "built in echo is bsd" >/dev/tty
	# then berkeley style echo
	echo 'set ech = "echo -n"' >~/.echo.${HOSTNAME}
	echo "set E = `echo a | tr a '\033'`" >> ~/.echo.${HOSTNAME}
	echo "set B = `echo a | tr a '\007'`" >> ~/.echo.${HOSTNAME}
	echo 'set N = ""' >> ~/.echo.${HOSTNAME}
	source ~/.echo.${HOSTNAME}
else 
#	echo "built in echo is sysV" >/dev/tty
	echo 'set ech = "echo"' >~/.echo.${HOSTNAME}
	echo 'set E = "\033"' >> ~/.echo.${HOSTNAME}
	echo 'set B = "\007"' >> ~/.echo.${HOSTNAME}
	echo 'set N = "\c"' >> ~/.echo.${HOSTNAME}
	source ~/.echo.${HOSTNAME}
endif	


# Are we using shelltool, cmdtool or xterm?
# duplicate these aliases here to avoid problems
if ( $term =~ sun* ) then
	# Sun Aliases
	alias Header '${ech}  "${E}]l\!:1${E}\${N}"'
	alias IHeader '${ech}  "${E}]L\!:1${E}\${N}"'
else if ( $term =~ xterm ) then
	alias Header '${ech}  "${E}]2;\!:1${B}${N}"'
	alias IHeader '${ech}  "${E}]1;\!:1${B}${N}"'
endif



--
Bruce Barnett <barnett@crd.ge.com> uunet!crdgw1!barnett

Newsgroup: comp.windows.x
document_id: 67254
From: rao@cse.uta.edu (Rao Venkatesh Simha)
Subject: xrn , xarchie for HP's


	Hi,
	I need xrn and xarchie for the HP's (9000/730, version 8 OS), either in
the source form or, (preferably) in executable form. Please suggest
where I can find this, 
	Send e-mail to: rao@cse.uta.edu
Thanks in advance,
Rao.
-- 
SSC

Newsgroup: comp.windows.x
document_id: 67255
From: skip@eco.twg.com (Skip Koppenhaver)
Subject: Pulldown menu periodically hangs application on OpenWindows 3.0


Has anyone found a fix for the following problem?

Client Software:	SunOs 4.1.1, X11R5
Server Hardware:	Sun IPC
Server Software:	SunOs 4.1.1, Open Windows 3.0 (w/ patch 100444-37)

A Motif 1.2.2 application will periodically hang when run against the
OpenWindows 3.0 server (xnews). The pulldown is displayed but then no
button actions have any effect. Sometimes pressing <Return> will
unstick the application but not usually. It looks like the pulldown is
grabbing the focus and never letting go. Other windows on the display
continue to get updated so the server isn't hanging. If I log in from
another terminal and kill the Motif application then everything gets
back to normal. The same application when run against other X servers
(including MIT X11R5 Xsun, DecWindows, Tektronix X terminal) has no
problems. This is obviously a OpenWindows problem but I need a
work-around since most of our customers are OpenWindows users.

I have tried the following things:

    1. Installing the latest version of the OpenWindows server patch
       (100444-37).

    2. Using mwm (version 1.2.2) instead of olwm.

    3. Applying the patch specified in the Motif FAQ (question 110).
       This had the effect of disabling the point-and-click method of
       menu interaction (as opposed to the click-and-drag method), and
       screwing up the menu mnemonics keys. It did seem to help, but I
       was still able to get the application to hang.

Repeat By:

This is an intermittent problem so you'll have to try several times.

Click and release on a menu heading (pulldown menu will pop up)

Click and release on a menu item

Repeat until application hangs


Any help would be appreciated. Thanks in advance.
--
Skip Koppenhaver
skip@eco.twg.com

Newsgroup: comp.windows.x
document_id: 67256
From: ma201rs@prism.gatech.EDU (SHONKWILER R W)
Subject: screen problem in unix/xwindows/solaris

Experiment: From a Sun openwindows 4.1.3 xterm window log into a
Solaris 2.x machine using rlogin; now do an "ls" and get the first
character of each line display in the last column of the display
with the rest of the line wrapped to the next line of the display.

Log out and the condition persists.  Check stty all, try reset
with no effect.

Use telnet instead of rlogin and it doesn't occur.

Try it from a unix console and it doesn't occur.

(1) What's causing this?
(2) Can it be avoided?
(3) How can the terminal characteristics be reset?

Please send replies to shenk@math.gatech.edu

-- 
SHONKWILER R W
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{allegra,amd,hplabs,seismo,ut-ngp}!gatech!prism!ma201rs
ARPA: ma201rs@prism.gatech.edu

Newsgroup: comp.windows.x
document_id: 67257
From: jigang@dale.ssc.gov (Jigang Yang)
Subject: Re: internationalized menus & icon labels



             I have a problem with icon pixmap. My application has to run
   under openwindow and motif. I wrote my program in Motif with pixmap and
   icons. It runs fine under motif/motif window manager and X11R5/mwm. But 
   the icon pixmap does not show up under openwin/olwm and X11R5/olwm.

             Has anybody got into this kind of problem? Need a clue. An 
   example which works in both X11R5/motif and openwindow will be great.

-- 
Jigang Yang, jigang@dale.ssc.gov, jyang@sscvx1.bitnet
2550 Beckleymeade Ave. MS 4011  Tel: 214-708-3498
Dallas, TX 75237                Fax: 214-708-4898 
 

Newsgroup: comp.windows.x
document_id: 67258
From: jigang@dale.NoSubdomain.NoDomain (Jigang Yang)
Subject: icon pixmap problem...



             I have a problem with icon pixmap. My application has to run
   under openwindow and motif. I wrote my program in Motif with pixmap and
   icons. It runs fine under motif/motif window manager and X11R5/mwm. But 
   the icon pixmap does not show up under openwin/olwm and X11R5/olwm.

             Has anybody got into this kind of problem? Need a clue. An 
   example which works in both X11R5/motif and openwindow will be great.

-- 
Jigang Yang, jigang@dale.ssc.gov, jyang@sscvx1.bitnet
2550 Beckleymeade Ave. MS 4011  Tel: 214-708-3498
Dallas, TX 75237                Fax: 214-708-4898 
 

Newsgroup: comp.windows.x
document_id: 67259
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: X Toolkits

Excerpts from netnews.comp.windows.x: 23-Apr-93 X Toolkits Paul
Prescod@undergrad.m (1132)


> I am getting Linux, so I will have InterViews, but I don't know how it
> will look.  I get the impression Andrew is from the FSF, but I don't
> know what it looks like either.

If you're on the internet and your site isn't sheltered from external
tcp/ip traffic, you can use the Remote Andrew Demo to see what the
Andrew Toolkit looks like:

Remote Andrew Demo Service

This network service allows you to run Andrew Toolkit applications
without the overhead of obtaining or compiling the Andrew software.  You
need a host machine on the Internet, and you need to be running the X11
window system.  A simple "finger" command will allow you to experience
ATK applications firsthand.  You'll be able to compose multimedia
documents, navigate through the interactive Andrew Tour, and use the
Andrew Message System to browse through CMU's three thousand bulletin
boards and newsgroups.

To use the Remote Andrew Demo service, simply run the following command
on your machine:

    finger help@atk.itc.cmu.edu

The service will give you further instructions.   

Gary Keim
Andrew Consortium

Newsgroup: comp.windows.x
document_id: 67260
From: c2xjfa@kocrsv01.delcoelect.com (James F Allman III)
Subject: Re: GUI Study


In article <1993Apr23.031744.19111@mercury.unt.edu>, seth@ponder.csci.unt.edu (Seth Buffington) writes:
> >Cutsie little Macintrash-like icons that are an instant recipe for
> >mousitis IMHO. System 7 is undoubtedly the worst GUI I have used (out of
> >that, RISCOS, MSWombles, and X11) simply because it does not provide enough
> >keyboard shortcuts. Windows I must confess I quite like (cover your ears
> >:-) ) because you can actually use it without having to ever touch the
> >mouse.
> [stuff delete]
> >the user rather than making things _easier_ - and there should always be
> >the option to do it your way if you want to, which is why I like the
> >UNIX/X combination so much - it's so customizable. 
> 
> Hear! Hear! I agree completely. One thing I can't stand about
> the Mac interface is its shear determination to FORCE you to use
> the mouse(what if your mouse breaks--your whole system is
> down!).  I like the mouse--it is handy on some occassions such
> as cut and past and moving icons around, etc.  But for most
> work, the keyboard and hot keys are 10-20 times faster than
> using the mouse. Sure it is a plus to be able to do something
> simple if you are an inexperienced user, but how long is it
> before your are experienced? A month? Two? (Speaking of PCs at
> the moment.)
> 	I don't think it is too much to ask that window
> programmers provide not only a menu/mouse interface but also
> look forward to those who would like to move on to hot keys and
> command line interfaces, which usually allows you to do more in
> less time IF you are experienced.
> 	All of the above equally applies to windowing systems on
> UNIX (especially since Unix is at least 500% more powerful than
> DOS).
> 
And at least 500% more user unfriendly as well!

Newsgroup: comp.windows.x
document_id: 67261
From: jh@cadre.com (Joe Hartley)
Subject: Re: X on Amiga 4000?

In article 8yD@ie.utoronto.ca, garym@ie.utoronto.ca (Gary Murphy) writes:
>I'm new to the hardware and with a mandate to port some X-based
>stereo-video software --- does anyone know of or have experience with
>X on Amiga machines?  If I can retain the X event handling, it would
>ease my plight considerably, and if I can keep all the Motif bits, so
>much the better!
>

There is X for the Amiga, but it'll cost you.  GfxBase Inc., owned by
Dale Luck, one of the original Amiga architects, sells X for the Amiga.
There are many options available, including Motif.  Call 'em and get the
scoop.

GfxBase Inc.
1881 Ellwell Drive      Phone: 408-262-1469
Milpitas, CA 95035        Fax: 408-262-8276

I've got no connection with them, other than being a satisfied customer.


---
===============================================================================
Joe Hartley          | jh@cadre.com  -  Whenever you find that you are on the
Cadre Technologies   | side of the majority, it is time to reform. - M. Twain
222 Richmond St.     | --------------------------------------------------------
Providence, RI 02903 | Overman 1st Class - the Kilgore Trout Memorial Clench
(401) 351-5950 x266  |            of the Church of the SubGenius  
===============================================================================

Newsgroup: comp.windows.x
document_id: 67262
From: jimf@centerline.com (Jim Frost)
Subject: How to make simplest possible composite widget?

Not being an Xt programmer by any stretch of the imagination, this is
driving me crazy and it's probably really simple to do.

I need to make a composite widget that does nothing at all but is
merely a placeholder in a widget instance heirarchy -- allowing me an
additional resource name level.

To illustrate I have an application with the following widget
heirarchy:

	    Shell Widget
	         |
	Application Widghet

I want the following:

	    Shell Widget
	         |
	Intermediate Widget
	         |
	 Application Widget

where the intermediate widget has a name but gets all its other
properties (and propagates down new values) from the shell widget.

I assume there's a simple way to do this but I can't find an example
and the documentation I have is rather vague about implementing
composite widgets.

Please respond via email.  Any help will be very much appreciated.

jim frost
jimf@centerline.com

Newsgroup: comp.windows.x
document_id: 67263
From: tdunbar@vtaix.cc.vt.edu (Thomas Dunbar)
Subject: Re: X Toolkits


 libXaw3d, the 3D Athena widget set will greatly improve the
"sculptured" look. In Linux, with its shared, jump-table libs, you
don't even have to recompile or relink. you merely have to:
 ln -sf /lib/libXaw3d.so.3.0 /lib/libXaw.so.3



   thomas

Newsgroup: comp.windows.x
document_id: 67264
From: rar@schooner.otra.COM (Rich Rollman)
Subject: File Formats

Hi folks,

Can anyone give me some information, the location of some
information, or some reference material for the following
file formats: WIFF, MO;DCA/IOCA, PCX.

If this is not quite the appropriate place to ask such
questions, please let me know a more appropriate one and
accept my apologies in advance.

Thanks for your help,

Rich Rollman
Dogleg Systems, Inc.
(908) 389-9597

Newsgroup: comp.windows.x
document_id: 67265
From: smd@iao.ford.com (Steve Dahmen)
Subject: Changing colors on a label - HELP


I have a toggleButton widget (yes widget) and I have a routine
which changes the color of the foreground and background of the
label.  Well, the background changes alright, but the label
text does not redraw itself.

I am guessing that I have to force it to redraw with an
XExposeEvent sent to it via XSendEvent.  Is this the best
way to get the text up again?  I can't seeem to get
XSEndEvent to work right.... if this is a good approach,
might anyone have an example lying around to show me how to
do this?  I've RTFM all evening and did not find a decent
example.

PS I keep getting Segmentation Faults in XSEndEvent, tho all
the values are as expected.

Thanks in Advance

Stephen M. Dahmen


Newsgroup: comp.windows.x
document_id: 67266
From: egan@phony25.cc.utah.edu (Egan F. Ford)
Subject: color xterm

I'm look for current patches for color xterm for X11R5 pl19 ro higher.  Could
someone please tell me where to get them for e-mail them to me.

Thanks.


-- 
Egan F. Ford
egan%phony25.cc.utah.edu@hellgate.utah.edu

Newsgroup: comp.windows.x
document_id: 67267
From: hasty@netcom.com (Amancio Hasty Jr)
Subject: Re: X Toolkits

In article <C5y8wJ.3zE@undergrad.math.uwaterloo.ca> papresco@undergrad.math.uwaterloo.ca (Paul Prescod) writes:
>I am considering making a reasonably large application for free
>distribution (probably copylefted).  I am going to use X.  Now I'm

The following packages meet your criteria in that they are PD and
present an aesthetically pleasant graphical interface to the users.

If you can use 386bsd:
	there is xview3 (OpenLook)

	there is Interviews which looks a little like Motif

	there is gopath a very nice C++ toolkit for Athena Widgets and Motif
	         which is simpler
                 and better than interviews and you will enjoy
                 technical support from Bull via e-mail
		 It has a nice draw program (it uses motif) which can be used
		 to create graphical front-end to programs.
		 The data format is called streams which you can feed
		 to your programs. I ported gopath on an internet machine
		 which is gone but if you use gcc-2.3.3 with minimal effort
		 gopath can be ported to 386bsd.
		 Last but not least, gopath interfaces to toolkits via a driver
		 module. They have an MS-Windows driver module for instance.

	Also, many have written extensions to tk/tcl thus allowing powerful
	applications. For instance, tcl_nm  has snmp extensions for tk/tcl.
	With ease, I  can now combine snmp network operations with graphs,
	photo-widget, graphical interface, file operations, database 
	operations,etc.. The author of tcl_nm mail me a simple network 
	management application which was about 80 lines long - it displayed
	various environmental parameters from a router. I wrote  a simple
	strip chart script for displaying Real-Time ip received
	packets/seconds.


	Hope this helps,
	Amancio Hasty

	
-- 
This message brought to you by the letters X and S and the number 3
Amancio Hasty           |  
Home: (415) 495-3046    |  ftp-site depository of all my work:
e-mail hasty@netcom.com	|  sunvis.rtpnc.epa.gov:/pub/386bsd/incoming

Newsgroup: comp.windows.x
document_id: 67268
From: sivap-s@cs.buffalo.edu (S. Suresh)
Subject: Re: screen problem in unix/xwindows/solaris

SHONKWILER R W (ma201rs@prism.gatech.EDU) wrote:
: Experiment: From a Sun openwindows 4.1.3 xterm window log into a
: Solaris 2.x machine using rlogin; now do an "ls" and get the first
: character of each line display in the last column of the display
: with the rest of the line wrapped to the next line of the display.

: Log out and the condition persists.  Check stty all, try reset
: with no effect.

The condition happens  when the TAB is not  set  to 8 spaces,  set and
then check out.

-- 
Suresh Sivaprakasam                    
Department of Computer Science,    SUNY Buffalo,    Amherst,   NY - 14260-0001
Internet :sivap-s@cs.Buffalo.EDU               Bitnet : sivap-s@SUNYBCS.BITNET

Newsgroup: comp.windows.x
document_id: 67269
From: mcc@timessqr.gc.cuny.edu (George McClintock)
Subject: Re: XDM & DECnet ?

While I cannot answer questions about running XDM over a DECnet, I can
say that the following defines must be added to the site.def before
building R5 before any X clients will work over a DECnet.

From site.def

#define ConnectionFlags -DTCPCONN -DUNIXCONN -DDNETCONN
#define ExtraLibraries -ldnet

Hoping this helps,

George

--
/*******************************************************************
* The opinions expressed are those of the author and in no way     *
* represent the opinions of the CUNY Graduate School, its agencies *
* or personnel.  mcc@timessqr.gc.cuny.edu  ||  CMCGC@CUNYVM.BITNET *
*******************************************************************/
-- 
/*******************************************************************
* The opinions expressed are those of the author and in no way     *
* represent the opinions of the CUNY Graduate School, its agencies *
* or personnel.  mcc@timessqr.gc.cuny.edu  ||  CMCGC@CUNYVM.BITNET *

Newsgroup: comp.windows.x
document_id: 67270
From: steerr@h01.UUCP (R. William Steer)
Subject: X-server for NT?

Has anybody generated an X server for Windows NT?  If so, are you willing
to share your config file and other tricks necessary to make it work?

Thanks for any information.

Bill Steer
Westinghouse
(412)374-6367

Newsgroup: comp.windows.x
document_id: 67271
From: mppa3@syma.SUssex.ac.UK (Alan Richardson)
Subject: Now available: xvertext.4.0

Now available: xvertext 4.0 
--------------

Summary                                  
-------
xvertext provides you with four functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). Rotation  
is still achieved using XImages, but the notion of rotating a whole font
first has been dropped.

What's new?
-----------
I've added a cache which keeps a copy of previously rotated strings - thus
speeding up redraws.

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.4.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
document_id: 67272
From: thor@surt.ATd.ucar.EDU (Richard E. Neitzel)
Subject: xcursor4.1

Xcursor version 4.1 is now on export as xcursor4.1.tar.Z. I've added 
a new option to determine if a requested cursor size is OK. Of course,
your server may lie!

-- 
Richard Neitzel thor@thor.atd.ucar.edu          Torren med sitt skjegg
National Center For Atmospheric Research        lokkar borni under sole-vegg
Box 3000 Boulder, CO 80307-3000	                Gjo'i med sitt shinn
303-497-2057                                    jagar borni inn.

Newsgroup: comp.windows.x
document_id: 67273
From: dcc@dcs.ed.ac.uk (David Crooke)
Subject: Bitplaned ("non-chunky" pixel) cfb????

Is there a PD version of cfb, or other PD server stuff, which has a colour frame
buffer implementation which works in bitplaned mode, i.e. where the screen
memory is grouped so that "bit 0 of every pixel is here, bit 1 is there, etc."

The only such beast I know if at the moment is the GfxBase server for the
Commodore Amiga, and it is commercial. I don't know if they wrote their own cfb,
but I suspect they did.

Please respond by email, as I don't read this group.

Many thanks
Dave
-- 
David Crooke, Department of Computer Science, University of Edinburgh
Janet dcc@ed.dcs  :  Internet dcc@dcs.ed.ac.uk  :  IP talk dcc@129.215.160.2
Work: JCMB Rm 3310, King's Bldgs, W Mains Rd., Edinburgh EH9 3JZ. 031 650 6013
Home: 2FL, 39 Woodburn Terr, M'side, Edinburgh EH10 4ST. Tel: 031 452 9067

Newsgroup: comp.windows.x
document_id: 67274
From: humesdg1@netnews.jhuapl.edu (Dave Humes)
Subject: xwd segmentation fault

I was planning to use the following pipe to move some display data to a system
that has a color hardcopy unit:

	xwd | xwud -display hostname:0.0

I had tested it with some simple windows like the OpenWindows file manager,
and it worked fine, but when I tried it with a more complex (larger) image,
the xwd part blew up with a segmentation fault.  I tried it without the pipe,
by redirecting xwd's output to a file and then used the file as input to xwud
and got the same error from xwud.  If I had to guess, it seems like it's
running out of memory, but this happened on a SPARC 10 with 64 megs, 128 meg
swap space, and only one user with minimal activity.  The file was about 3 MB.

This verion of xwd/xwud was supplied with the Sun OpenWindows 3.0 distribution
which I believe corresponds to X11 R4.

Any ideas?  Thanks in advance.
-- 
--------------------------------------------------------------------------
Dave Humes        |    Johns Hopkins University Applied Physics Laboratory
(410) 792-6651    |    humesdg1@aplcomm.jhuapl.edu
---------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67275
From: martinh@cac.washington.EDU (Martin Hunt)
Subject: Announcing tcpview: A Motif-based TCP/IP protocol analyzer


Tcpview is the result of several problems we had at UW.  We have several
Network General Sniffers which are heavily used to help debug problems on
several hundred subnets. These are good tools, but they are 1) heavy, 
2) hard to find when you need one, 3) limited in their software expandibility,
4) difficult to use to upload data for analysis, 5) cannot be remotely
operated, and 6) cannot resolve names with DNS, requiring much manual 
manipulation of the name table.  We also sometimes use tcpdump, but we found 
it 1) too difficult for most people, 2) did not have enough information for
many protocols, 3) could not be used interactively, 4) could not handle
TCP streams and 5) could not read Sniffer files.  However, tcpdump did do
a reasonable job of decoding a large number of protocols, and could be easily
modified.  Tcpview is an attempt to resolve these problems
by adding a Motif interface to tcpdump and expanding its features.

Tcpview has been tested on a DECstation 5000 and Sun 4 under Ultrix 4.2 and
SunOS 4.1 respectively.  It should work on the same systems as tcpdump.
It compiles with cc and gcc on the DEC and Sun.  To build tcpview you will
need Motif 1.1 or better.

The following files are available for anonymous ftp from 
ftp.cac.washington.edu in /pub/networking

tcpview-1.0.tar.Z	tcpview and tcpdump source code
tcpview-1.0.sun.tar.Z	Sun4 binaries
tcpview-1.0.dec.tar.Z	DEC Mips Ultrix 4.2 binaries

What tcpview adds to tcpdump:
- easier interface
- enhanced protocol decoding
- hex display of frame
- capture based on time, number of frames, or user interrupt
- can show ethernet addresses with manufacturer's name
- ethernet address host table
- can easily follow a stream, highlighting out-of-order frames
- can send TCP data to an external file or filter for additional
	processing.

-------------------------------------------------------------------------------
CHANGES TO TCPDUMP 2.2.1

New features:

Now reads and writes Network General Sniffer files.  When used with '-r', the 
file type will be automatically detected.

Can now read in (and use) an SNMP MIB file.

The hex format has been changed.

New time options have been added.

Options were added to allow viewing and processing of the data in TCP packets.

Bugs were fixed in the relative TCP sequence numbers. (-S flag)

New flags:
-R	read Sniffer file.  Not usually needed, except for reading from stdin
-ttt	prints delta times
-tttt	prints times relative to the first frame
-W	write a Sniffer save file (use with -w)
-x	print frame (minus link-level header) in hexdump format.  
	Sample output:

16:36:23.349851 jeff.cac.washington.edu.1285 > nic.funet.fi.ftp: S 0:0(0) win 16384
        0000  45 00 00 28 8a 98 00 00 3c 06 7c 9c 80 5f 70 02   |  E..(....<.|.._p.
        0010  80 d6 06 64 05 05 00 15 5b 19 4a 00 00 00 00 00   |  ...d....[.J.....
        0020  50 02 40 00 4e 13 00 00 00 00 00 00 00 00         |  P.@.N.........

-X	print TCP data in hexdump format (used with -Z)
-z	write TCP data to stdout (use with -t to eliminate timestamp)
-Z	write frames and TCP data to stdout


Martin M. Hunt
martinh@cac.washington.edu
Networks & Distributed Computing
University of Washington






--

-------------------------------------------------------------------------------
Martin Hunt                            martinh@cac.washington.edu   
Networks and Distributed Computing     University of Washington		  

Newsgroup: comp.windows.x
document_id: 67276
From: inoue@crd.yokogawa.co.jp (Inoue Takeshi)
Subject: How to see characterset from wchar_t


We developed a toolkit running on the X Window System.
The toolkit copes with any languages based on X11R5's i18n
facility. As you know, there are 2 kinds of i18n implementation from MIT's 
X11R5 release -- Xsi and Ximp. Our original implementation of the toolkit
uses Xsi.

Our toolkit manages each character's size based on our own font management system.
In order to do that, the 'wchar_t' typed character strings must be decomposed
to character sets. This means that if one wchar_t type compound string with 
ASCII and Kanji mixed, for example, is given, each element of the wchar_t
array must be checked its corresponding character set based on a bit layout
and application environment's locale. In this case if the locale is 'japanese',
each wchar_t character will be classified either to iso8859-1, jisx0208 or so.

We need a function to do this. The function must check how many characters
from the top are the same character set and what the character set is.

We could not find any public X11R5 function to do that and inevitably, used
Xsi's internal functions to construct that function. The following is the
source code of that function 'decomposeCharacterSet()'.


//I18N.h
// This may look like C code, but it is really -*- C++ -*-
// $Id: I18N.h,v 1.1 1992/01/21 12:05:24 iima Exp iima $

#ifndef _I18N_H
#define _I18N_H

#include <X11/Xlib.h>

extern int decomposeCharacterSet(const wchar_t *wc_str,	/* IN */
				 int wc_len,		/* IN */
				 char *buf,		/* OUT */
				 int *buflen,		/* IN/OUT */
				 int *scanned_len,	/* OUT */
				 char **charset);	/* OUT */
extern XmString wcharToXmString(const wchar_t *wc_str);
extern XmStringCharSet charsetOfWchar(const wchar_t wc);

#endif /* _I18N_H */

//I18N.cc
/* $Id: I18N.cc,v 1.1 1992/01/21 12:05:05 iima Exp $ */

#include <stdlib.h>
#include <X11/Xlibint.h>
#include <Xm/Xm.h>
#include "I18N.h"

extern "C" {
#include <X11/wchar.h>
#define _XwcDecomposeGlyphCharset XXX_XwcDecomposeGlyphCharset
#define _Xmbfscs XXX_Xmbfscs
#define _Xmbctidtocsid XXX_Xmbctidtocsid
#include "Xlocaleint.h"
#undef _XwcDecomposeGlyphCharset
#undef _Xmbfscs
#undef _Xmbctidtocsid
    extern int _XwcDecomposeGlyphCharset(XLocale, const wchar_t*, int,
					 char*, int*, int*, int*);
    extern Charset *_Xmbfscs(XLocale, _CSID);
    extern _CSID _Xmbctidtocsid(XLocale, _CSID);
};

int decomposeCharacterSet(const wchar_t *wc_str,/* IN */
			  int wc_len,		/* IN */
			  char *buf,		/* OUT */
			  int *buf_len,		/* IN/OUT */
			  int *scanned_len,	/* OUT */
			  char **charset)	/* OUT */
{
    XLocale xlocale = _XFallBackConvert();
    int ctid;
    int status;
    Charset *xcharset;
    
    status = _XwcDecomposeGlyphCharset(xlocale, wc_str, wc_len, buf,
				       buf_len, scanned_len, &ctid);
    if (status == Success) {
	xcharset = _Xmbfscs(xlocale, _Xmbctidtocsid(xlocale, ctid));
	*charset = (xcharset) ? xcharset->cs_name : NULL;
    }
    else
	*charset = NULL;
    return status;
}
----------------

An included file above, "Xlocaleint.h", is also Xsi internal and we copied
the file to the toolkit directory and compiled.

A serious issue occured when we tried to compile a toolkit application on
our HP machine with its OS version of HP-UX9.01.

When we tried to link an application based on our toolkit,
link errors occured saying that the following functions are missing:
    _Xmbctidtocsid (code)
    _Xmbfscs (code)
    _XwcDecomposeGlyphCharset (code)
    _XFallBackConvert (code)

We had used MIT release version of X11R5 and its Xsi implementation until
HP-UP9.0 and ran applications successfully. One of the reasons to use Xsi was that
because HP did not release HP's X11R5 until the OS 9.0 and we had no way to 
know how HP's R5 would be implemented. We had hoped Xsi's popularity and used 
its internal functions. 

The HP's linker complains that there are no Xsi internal functions implemented.
We observe from HP's libX11.a, they used some Ximp implementation but we are
not sure if they used MIT's vanilla Ximp version or their own version of Ximp and
therefore, finding just counter part functions in MIT's Ximp for Xsi does not
seem to lead us a solution.

My question and goal is to know how we can construct a function like
'decomposeCharacterset()' listed above. Is there any function to check
character set of each element of wchar_t type strings depending on locales?
If it is a public function, that is perfect but even if it is not, we
want to use any internal functions in HP's X11R5 as we did for MIT's R5.

In order to render a 'wchar_t' type string, there must be some machinery
to judge character sets and that is how the proper fonts are selected for
the string. We have no way to find out that without any HP's X11R5 source 
files. We want to know how we can use that for our goal. 
Any help or comments would be highly appreciated.

I also appreciate if anyone tell me about Ximp treating around this area
even if it is not HP's implementation.

Thank you.

--
				Takeshi Inoue
				inoue@crd.yokogawa.co.jp
				Yokogawa Electric Corporation
				Open Systems Laboratory	0422(52)5557

Newsgroup: comp.windows.x
document_id: 67277
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Looking for a filemanager under X11R5

In article <1993Apr21.130259.3773@atlastele.com> brians@atlastele.com (Brian Sheets) writes:
>Does anyone have a file manager that runs under UNIX/X11R5??
>

xdtm is working looking at, as is ftptool.  There really isn't anything of
any quality that I've seen though, and I'm seriously considering writing one
on my own.

-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 67278
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Installing MIT X11R5 on Apollo

Can any Apollo GURUS out there let me know of their experiences building MIT X11R5,
with or without GCC 2.3.3.  In particular, is there anything I should watch out for.

Thanks in advance

--tim 
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
document_id: 67279
From: <CHLBS079@TWNMOE10.BITNET>
Subject: change default visual

My HP720 workstation uses PseudoColor (id 0x21, 255 colors) as the

default visual.  How can I start X with different visual as default?



Newsgroup: comp.windows.x
document_id: 67280
From: usun@mcl.ucsb.edu (Sonnie)
Subject: X bitmap -> Postscript

Hey folks,

on the course to develope a X window application, we encountered
a problem. How could I transform a X window bitmap into a postscript
files ? Is there any library routines or source code I can call to
do the job ?

Thank you in advance.
p.s. Email reply please. I seldom read this newsgroup. =)


Newsgroup: comp.windows.x
document_id: 67281
From: toml@boulder.parcplace.com (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <C5xxq0.18M@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
>In article <BADING.93Apr23105229@athene.cs.tu-berlin.de> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
>>
>>I know that the mwm has an resource to specify if positions are to be used for
>>the border of a window or for the "user" window. Maybe other window managers
>>have similar options.
>>Another way to figure out the difference between the "user" window position
>>and the window manager decoration window position is to subtract their
>>positions. You just have to use XQueryTree and remember that the window manager
>>decorations window is the parent of your window. Unfortunately, you can only
>>figure out the decoration width and height after the window has been mapped
>>this way.
>>
>	Another way would be to use GetGeometry to find out where
>you are relative to the frame, and TranslateCoordinates to find
>out where your window's upperleft corner really is.


As I've said before, there's no reliable way to find out the size of
the window manager decoration.  If your window has been reparented, you
can't assume that the window you're parented to is the window that
holds all of the window manager decoration.  There may be several
layers of windows.  Doing multiple XQueryTree's until you get to the
root will work in most cases, but there's no guarantee that the outside
decoration window is parented to the root window of the display (tvtwm).

--
Tom LaStrange        toml@boulder.ParcPlace.COM


Newsgroup: comp.windows.x
document_id: 67282
From: theslim@anathema.engin.umich.edu (Eric Michael Slimko)
Subject: Real-Time Data Display Tool


Hi,

I'm looking for a X-Windows tool that can display data (in a
2D plot) in real time with a couple different signals.  
Anybody know of such a gem?  Please Email me as I do not read
this group often.

Thanks much!
Eric Slimko
theslim@caen.engin.umich.edu


Newsgroup: comp.windows.x
document_id: 67283
From: clay@cs.scarolina.edu (F Rodney Clay)
Subject: Slider Position of Vertical Scrollbars

I need help positioning the slider of a List widget's horizontal scrollbar.  I am displaying the full
path of a selected file in a list widget.  The horizontal's slider defaults to the left side of the
list widget; however, I need the slider on the right side.  This is so the user can SEE the file name
they selected.  I know it's possible, because when files are displayed in a file selection dialog box,
the slider is on the right side.

Thanking any and all who can help in advance,
Rodney F. Clay

clay@cs.scarolina.edu

Newsgroup: comp.windows.x
document_id: 67284
From: rao@cse.uta.edu (Rao Venkatesh Simha)
Subject: xrn, xarchie for HP 9000/730 - ASAP


	Hi,
	I need xrn and xarchie for the HP's (9000/730, version 8 OS), either in
the source form or, (preferably) in executable form. Please suggest
where I can find this, 
	Send e-mail to: rao@cse.uta.edu
Thanks in advance,
Rao.
-- 
SSC

Newsgroup: comp.windows.x
document_id: 67285
From: matt@centerline.com (Matt Landau)
Subject: Re: Asynchronous X Windows?

In <ellis.735675321@nova> ellis@nova.gmi.edu (R. Stewart Ellis) writes:
>>Is there anyway to use X Windows over an async line?  Clearly you could use
>                                x
>It is X window.

No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
a number of other designations accepted by the X Consortium.  In fact,
doing "man X" on pretty much any X11 machine will tell you:

     The X Consortium requests that the following names  be  used
     when referring to this software:

                                  X
                           X Window System
                             X Version 11
                     X Window System, Version 11
                                 X11

There is no such thing as "X Windows" or "X Window", despite the repeated
misuse of the forms by the trade rags.  This probably tells you something
about how much to trust the trade rags -- if they can't even get the NAME
of the window system right, why should one trust anything else they have 
to say?

With regard to dialup X11 implementations, there are several.  You can
buy serial X11 terminals from a couple of companies, including both 
GraphOn and NCD.  (In fact, I'm composing this from an NCD running X11
over serial lines across 14.4 kbaud connection.)  

NCD also sells a software-only package that provides XRemote (which is
NCD's implementation of serial X11) for PC's.  There may be other such 
software packages available.

X11R6 is supposed to include a standardized compression scheme for running
X11 over low-speed connections.  It's called Low Bandwidth X (LBX), and 
is based on improved versions of the techniques used in NCD's XRemote. 

It seems likely that once LBX is released as a Consortium standard, there
will be several vendors willing to supply implementations for various 
sorts of hardware.

Followups directed to comp.windows.x
--
 Matt Landau			Waiting for a flash of enlightenment
 matt@centerline.com			  in all this blood and thunder

Newsgroup: comp.windows.x
document_id: 67286
From: herzog@dogwalk.Eng.Sun.COM (Brian Herzog - SunSoft Product Engineering)
Subject: Re: Xsun not running on SPARCclassic

In article <1r3th9INNdtp@tom.rz.uni-passau.de> rank@winf.uni-passau.de (Christian Rank) writes:
>I've installed X11R5 with patches for Solaris 2.1 on our SPARCstation LX /
>SPARCclassic pool. On the LX, X11R5 runs fine, but on the classics,
>after giving the command startx, Xsun prints the following messages:
>	WARNING: cg3_mmap: can't map dummy space!
>	Mapping cg3c: No such device or address
>and exits.
>
>Does anybody know how to fix this problem?

I'm just guessing here, but I'd guess that X11R5 expects the CG3 to have
1152x900 resolution, and the version of the CG3 in the SPARCclassic is 
1024x768.

-- 
--------------------------------------------------------------------------------
Disclaimer: I do not represent SunSoft, Inc., Sun Microsystems, Inc., etc., etc.
Brian Herzog, SunSoft          herzog@Eng.Sun.COM             ...!sun!eng!herzog

Newsgroup: comp.windows.x
document_id: 67287
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Tektronix

I remember seeing something in the X distribution mentioning support
for a Tektronix terminal in an X server.  Is this accurate? 
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 67288
From: rj@rainbow.in-berlin.de (Robert Joop)
Subject: Re: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

barr@pop.psu.edu (David Barr) writes:

>Did you install the sunkbd patch?  It's in the contrib directory on export.
>All the keys on my keyboard send events properly, except the following:
>The End, PageUp, PageDown on the 6-key cluster aren't recognized.
>Even the compose key works.  (Though I can't seem to get the composed
>characters in an xterm to get passed.)

>Anyone have a fix for the last two?

fix the table in .../X11R5/mit/server/ddx/sun/ or
use xmodmap(1).

put
  stty pass8; setenv LC_CTYPE iso_8859_1; setenv LESSCHARSET latin1
in your .login. the first prevents the stripping of bit 7.
the second sets the locale. the third makes less(1) show the character
instead of the octal representation.

rj

-- 
__________________________________________________
Robert Joop
  rj@{rainbow.in-berlin,fokus.gmd,cs.tu-berlin}.de
  s=joop;ou=fokus;ou=berlin;p=gmd;a=dbp;c=de

Newsgroup: comp.windows.x
document_id: 67289
From: dick@bart.starnet.com (Dick Montgomery)
Subject: Re: X-window for PC

Briefly, StarNet Communications has four PC X server packages.

	Micro X-lite		$ 75.00
		Includes integrated tcp/ip, runs in 640KB, no arcs().

	Micro X-enlite		$150.00
		Includes integrated tcp/ip, runs under DOS, shape extension
		   "     interface to Novell tcp/ip

	Micro X-DOS		$345.00		($225 ea. in a 5-pack)
		Includes integrated tcp/ip, runs under DOS, shape extension
		   "     interface to Novell tcp/ip, FTP's PC/TCP, & PC-NFS.

	Micro X-WIN		$425.00		($300 ea. in a 5-pack)
		Includes Lanera TCPOpen tcp/ip stack & utilities
		   "     interface to FTP's PC/TCP, Sun's PC-NFS, & WinSock.

For more information contact:
----------------------------------------------------------------
StarNet Communications		FAX:	   1-408-739-0936
3073 Lawrence Expressway	Voice:	   1-408-739-0881
Santa Clara, Ca.  95051		E-mail     microx@starnet.com
----------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67290
From: amathur@ces.cwru.edu (Alok Mathur)
Subject: How to get 24bit color with xview frames ?

Hi !

I am using Xview 3.0 on a Sparc IPX under Openwindows along with a XVideo board
from Parallax which enables me to use 24 bit color. I am having some problems
utilizing the 24 bit color and would greatly appreciate any help in this matter.

I use Xview to create a Frame and then create a canvas pane inside which I use
to display live video. My video input is 24 bit color.

The problem is that my top level frame created as
	frame = (Frame) xv_create(NULL,FRAME,NULL);
seems to have a depth of 8 which is propagated to my canvas.

I would like to know how I can set the depth of the frame to be 24 bits.
I tried using the following Xlib code :

XVisualInfo visual_info;
int depth = 24;
Colormap colormap;
XSetWindowAttributes attribs;
unsigned long valuemask = 0;
Window *win;
Xv_opaque frame;

win = xv_get(frame,XV_XID);
XMatchVisualInfo(display,screen,depth,TrueColor,&visual_info);

/* So far so good */

colormap = XCreateColormap(display,win,visual_info,AllocNone);

/* It dies here with a BadMatch error :( */

attribs.colormap = colormap;
valuemask |= CWColormap;
XChangeWindowAttributes(display,w,valuemask,&attribs);
XSetWindowColormap(display,win,colormap);


Am I using a completely wrong approach here ? Is it possible to set the depth
and colormap for a window created by Xview ? What am I doing wrong ?

Thanks in advance for any help that I can get. I would prefer a response via
email although a post on the newsgroup is also okay.

Thanks again,


Alok.
---
ALOK MATHUR
Computer Science & Engg, Case Western Reserve Univ, Cleveland, OH 44106
11414 Fairchild Road, #2, Cleveland, OH 44106
Off - (216) 368-8871 Res - (216) 791-1261, email - amathur@alpha.ces.cwru.edu


Newsgroup: comp.windows.x
document_id: 67291
From: azn30@RUTS.ccc.amdahl.com
Subject: Compiling X programs


Hi Guys,

	It has been a long time since I wrote a program using X. I am trying to 
	get myself re-familiarize with X. I would appreciate your help regarding
	the following problem.

	I am trying to compile a simple X program on sun running sunOS 4.1.2. 
	using
	cc -o ex ex.c -lXaw -lXmu -lXt -lXext -lX11 -lm
	I am getting an error

	ld: Undefined symbol
		_get_wmShellWidgetClass
		_get_applicationShellWidgetClass


 The simple program I tried to compile is given below.

#include <stdio.h>
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xaw/Form.h>

main(argc,argv)
int 	argc;
char	**argv;
{
	Widget	topLevel;
	Widget	frame;

	topLevel = XtInitialize("ex","Ex",NULL,0, &argc,**argv);
	frame = XtCreateManagedWidget("Form",formWidgetClass,topLevel,NULL,0);
	XtRealizeWidget(topLevel);
	XtMainLoop();
}




	I got the same error when I tried to build "xpostit" using the Imakefile
	provided with the software.

	I have compiled X programs before (not on this machine, but on other 
	machines running sunOS 4.0 and X11 R4). I did not get this error message
	Can anybody tell me why I am getting these messages.

	I would appreciate if you can email your responses to me at
	azn30@ruts.ccc.amdahl.com.

	Thanks
	Anand


Newsgroup: comp.windows.x
document_id: 67292
From: raney@teal.csn.org (Scott Raney)
Subject: Re: Hypercard for UNIX

queloz@bernina.ethz.ch (Ronald Queloz) writes:

>Hi netlanders,

>Does anybody know if there is something like Macintosh Hypercard for any UNIX 
>platform?

There are several products you might investigate.  If you've got
$20,000 per seat and high-end hardware, Gain Momentum might be a good
choice.  It isn't compatible with HyperCard, but has a similar
architecture (and *way* more functionality).  I don't have contact
information, but they were recently purchased by Sybase who shouldn't
be too hard to find.

If you're running News on SPARC, check out HyperLook
(hyperlook@turing.com).  It uses Postscript as a scripting language
which is good if you need to do lots of display oriented scripting,
but not so good for non-programmers.  It was $995, last I heard.

You might also look at our product MetaCard.  We're alpha-testing
direct importing of HyperCard stacks (we've even made the test release
available for anonymous FTP), so we're obviously the closest in
functionality.  MetaCard runs on most UNIX workstations and costs
$495.  Email to info@metacard.com for more details.
  Scott

>Thanks in advance


>Ron.
-- 
***********************************************************************
* Scott Raney  303-447-3936            Remember: the better you look, *
* raney@metacard.com                   the more you'll see -- Lidia   *
***********************************************************************

Newsgroup: comp.windows.x
document_id: 67293
From: megan@cs.uq.oz.au (Megan Grenenger)
Subject: Regression Testing and X

I'd appreciate any feedback on capture/playback tools for use with X clients.

I have pulled XTM from public domain but it appears to be set up to test
X servers not X clients. 

Any comparisons/comments on regression testing tools would be great -
particularly XTM, XRunner, Autotester, and SRI's CAPBAK, SMARTS and EXDIFF.

Megan Grenenger
megan@cs.uq.oz.au

Newsgroup: comp.windows.x
document_id: 67294
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: need shading program example in X

# 
# I think the original post was searching for existing implementations of
# f.i. Gouroud-shading of triangles. This is fairly complex to do with plain
# X. Simpler shading models are implemented already, f.i. in x3d (ask archie
# where to get the latest version).
# For Gouroud, a fast implementation will be possible utilizing some extension
# only, either MIT-SHM to do the shade in an image and fast update the window
# with it, or PEX/OpenGL which should be able to shade themselves. The portable
# 'vanilla X' way would be to shade in a normal XImage and use XPutImage(),
# what would be good enough to do static things as f.i. fractal landscapes
# or such stuff.
# 
# To speak about POVRay, the X previewer that comes with the original source
# package is not that good, especially in speed, protocol-friendlyness and
# ICCCM compliance. Have a look on x256q, my own preview code. It is on
# 
# 141.76.1.11:pub/gfx/ray/misc/x256q/
# 
# The README states the points where it is better than xwindow.c from
# POVRay 1.0
# 

The version I have is using the x256q code instead of the default X Windows
code.  I have it currently running on a DEC Alpha running OpenVMS AXP and
so far have been pretty impressed.  The only "side-effect" of x256q is that
it requires xstdcmap -best be run before it will work, annoyning but not a
show stopper.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67295
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Tektronix

#
# I remember seeing something in the X distribution mentioning support
# for a Tektronix terminal in an X server.  Is this accurate? 
#

Xterm supports 401x emulation.


Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67296
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Allocated colors...

Can anyone out there tell me how to get the total number of color cells
allocated in the default colormap?

e.g.   colormap = DefaultColormap(mydisplay, myscreen);

The MAXIMUM number of allocated cells is given by DefaultCells(mydisplay,
myscreen), but in general the number of cells actually allocated will be
much less than this, depending on the color requirements of the windows
currently in place. I'd like a way to determine this number. Thanks in
advance!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67297
From: mknewman@blkbox.COM (Marc Kraker Newman)
Subject: Unsubscribe pancamo@blkbox.comm

Please unsubscribe pancamo@blkbox.com.  This user has become inactive and I
wish to discontinue his participation in this mailing list.

Marc Newman
mknewman@lkbox.com

Newsgroup: comp.windows.x
document_id: 67298
From: Iris_-_Smith@cup.portal.com
Subject: Re: Drawing Lines (inverse/xor)

You can also set the Foreground to the XOR of the foreground and background
colors:  XSetForeground(..., fg ^ bg);    This works great for me (at least
with TrueColor visuals).

Newsgroup: comp.windows.x
document_id: 67299
From: tim@hssc.scarolina.edu (Tim White)
Subject: Re: X11 load on the Network

bkline%occs.nlm.nih.gov (Bob Kline) writes:

>Can someone point me in the direction of any papers (not necessarily
>formally conducted studies) discussing how much traffic X apps generate
>for the network, particularly in comparison with curses-bases apps 
>over telnet?  Also, does an X server typically buffer up user keyboard
>input a line at a time?  Can the X client control this, asking for
>keystrokes immediately?  Thanks in advance for any feedback!


   Ncd has an excellent document titled "Host Loading Considerations in the X 
  environment". I received my copy by emailing support@ncd.com. This may
  help out.
--
==============================================================================
Tim White				 University of South Carolina
tim@otis.hssc.scarolina.edu	   Humanities and Social Sciences Laboratory
(803)-777-7840 		  		     Columbia, S.C. 29208

Newsgroup: comp.windows.x
document_id: 67300
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Tektronix

In article <930424212154.1000227@tgv.com> mahan@TGV.COM (Patrick L. Mahan) writes:
># I remember seeing something in the X distribution mentioning support
># for a Tektronix terminal in an X server.  Is this accurate? 

>Xterm supports 401x emulation.

What I was talking about was using an Tek terminal as your X display.  I
should be possible to write an X server that does this as far as I can
tell, but what I'm asking is if there is already one.

-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 67301
From: proberts@informix.com (Paul Roberts)
Subject: How to mask the left button?

[I am posting this for a friend whose news service is "fubared as usual".
 I will forward replies to him, or if you want to try to reply directly,
 try: Return-Path: <uunet!sunfse.ese.lmsc.lockheed.com!mcfar>    PR ]


I have an event handler working for a ButtonPressMask like:

  XtAddEventHandler( plot_data->display, ButtonPressMask, FALSE,
                    show_mouse_position, plot_data);

but I would like to be able to have two types of actions: one to occur
with the left mouse, the other the right, and perhaps one with the
middle.  So my event handler would look more like:


  XtAddEventHandler( plot_data->display, left-ButtonPressMask, FALSE,
                    show_left_mouse_position, plot_data);

  XtAddEventHandler( plot_data->display, right-ButtonPressMask, FALSE,
                    show_right_mouse_position, plot_data);

However I don't know how to make my left-ButtonPressMask.  There didn't seem
to be one in the event mask lists I had on hand (although Button1MotionMask
looked promising).  My references also mentioned using "|" to or two
mask events.  Can you  use "&" to and two masks?  Would I want to in this
case? 

Any help would be appreciated.

Thanks, 

-lrm

Newsgroup: comp.windows.x
document_id: 67302
From: kgrider@magnus.acs.ohio-state.edu (Keith A Grider)
Subject: Remote TEKTRONICS emulation

Hello,

I am looking for someone to help me with the proceedure for remote login, via
modem not ethernet, to our new silicon graphics iris machines.  I can log in to
them only as a vt100 terminal regardless of what I am emulating on my end.  I
have communication software, kermit, which supports tek 401x and vt102
emulation.  The x windows manual lists XTERM as the appropriate command to
change the terminal type.  When I try it the reponse is 'unable to open window'

Thanx in advance

Keith Grider
-- 
__________________________________________________________________________
Keith Grider		        	'Come on man, let's go do the crimes
kgrider@magnus.acs.ohio-state.edu	Yeah, Lets get sushi, and not pay'
						Repo Man

Newsgroup: comp.windows.x
document_id: 67303
From: hdr@ross.COM (Henry D. Reynolds)
Subject: X11R5 on Sun4/110 cg2 comes up Mono


The 4/100 prints out the following message about it's framebuffer

cgtwo0 at vme24d16 0x400000 vec 0xa8 
cgtwo0: Sun-3 color board, fast read

Anybody know the story on this?
--

- Can I have an IMPULSE ITEM instead?

Henry D. Reynolds           hdr@ross.com -OR- hdr@nidhog.cactus.org
FONE: (512)892-7802 x253    ROSS Technology, Inc.
FAX:  (512)892-3036         5316 Hwy 290 West Suite 500 Austin, TX 78735

Newsgroup: comp.windows.x
document_id: 67304
From: aa894@Freenet.carleton.ca (Terry MacLean)
Subject: How Do I Modify Key Map?


Hello folks,

I'm seeing these errors when I try to modify my key map:

mwm: invalid accelerator specfication, line x

I've added a line in the start up file before the line
that starts mwm. It looks like the following:

xmodmap keymapfile
mwm

I think that the problem has to do with a conflict between
function keys F1 through F7 which already have assigned
functions (e.g. Move, Minimize, etc).

The odd thing is that I don't see these errors if I run

xmodmap keymapfile

from an xterm.

Can anyone suggest a way to modify the key map, specifically
F1 through F7 AND not have mwm (Motif Window Manager) complain.

I realize this is a bit stupid, but we only have time to
implement, not time to learn how to implement.

Terry

Newsgroup: comp.windows.x
document_id: 67305
From: r0506048@cml3 (Chun-Hung Lin)
Subject: Re: xman source

jlong@b4pps40.Berkeley.EDU (John Long) writes:
:    Where can I get xman source?  I would like to get the binaries for
: xman for an HP 9000/700, but I would settle for source.  
: 
: --
Try xport.lcs.mit.edu, in direcotry /contrib.
--
--------------------------------
=================================================================
Chun-Hung Lin ( LT )                     
r0506048@csie.ntu.edu.tw    
Communication & Multimedia Lab.
Dept. of Comp. Sci. & Info. Eng.
National Taiwan University, Taipei, Taiwan, R.O.C.
=================================================================

Newsgroup: comp.windows.x
document_id: 67306
From: venky@engr.LaTech.edu (Venky M. Venkatachalam)
Subject: FAQ in comp.windows.x

Is there any FAQ list for Programming in X windows? 

Thankx for the info
			bye
				venky


Newsgroup: comp.windows.x
document_id: 67307
From: aafc6@syma.sussex.ac.uk (Nightline)
Subject: Editres under Pie(TVT)wm

Hi, looking for any advice or suggestions about a problem I'm
having with MIT X11R5's editres, in particular under twm variants.

For a start, 9 times out of 10 (but NOT always) editres won't
grab a widget tree when running on our NCD (Decwindows) Xterms,
which I'm told will be fixed when the R5 (not R4) XDm is installed.
OK, so I tried running it on a Sun, running real R5, on the same
network - I get a widget tree, but it's ALWAYS for 'TWM Icon Manager'

Anybody know of any patches for (a) twm or (b) editres that I should
look at?

Thanks,
K

Newsgroup: comp.windows.x
document_id: 67308
From: yuri@physics.heriot-watt.ac.UK (Yuri Rzhanov)
Subject: REPOST: XView slider

Hi Xperts,

this is a repost (no one responded to my desperate yell 8-(
I can't believe there is no XView wizards any more 8-)...

I'm using sliders in my XView apps, usually with editable numeric
field. But I seem to have no control over the length of this field.
In some apps it appears long enough to keep several characters,
in some - it cannot keep even the maximum value set by 
PANEL_MAX_VALUE! 

As I understand, PANEL_VALUE_DISPLAY_LENGTH, which controls
number of characters to be displayed in text items, doesn't
work in the case of slider, despite the fact that <panel.h>
contains the following bit:

	/* Panel_multiline_text_item, Panel_numeric_text_item,
	 * Panel_slider_item and Panel_text_item attributes
	 */
	PANEL_NOTIFY_LEVEL	= PANEL_ATTR(ATTR_ENUM,			 152),
	PANEL_VALUE_DISPLAY_LENGTH	= PANEL_ATTR(ATTR_INT,		 182),

which gives a hint that this attribute can be used for sliders.
But 1) setting this attribute gives nothing, and 2) xv_get'ting
this attribute gives warning: Bad attribute, and returns value 0.

Strange thing is that DEC's port of XView gives plenty of space
in a text fields, but not Sun's Xview...

Can someone share his experience in managing sliders in XView with me,
and clear this problem? 

Any help is very much appreciated.

Yuri

yuri@uk.ac.hw.phy

Newsgroup: comp.windows.x
document_id: 67309
From: roeber@vxcrna.cern.ch (Frederick Roeber)
Subject: 24-bit Static color: will clients like it?

I'm writing an X server for some video-generation equipment.  The
hardware is "truecolor" in YUV space; in X terms it has a 24-bit
static color visual.  I would really like to have the server just
present this static visual, but I'm not sure if this will be 
acceptable to "most" X clients.  The three problems I see are:

  1) The colormap, though huge, is static.
  2) All pixels would be 3 bytes wide.
  3) Because the hardware actually lives in YUV space, the
     translation RGB->YUV will introduce some rounding error.

Being more of a server guy than a client guy, I ask: will these
limitations thwart many X clients?  Or will most of the X stuff
floating around blithely accept what they're given?  I could write
the server to also present a pseudocolor visual of, e.g., 8 bits, 
but I'd rather avoid this if not necessary.

I know there are no absolutes, but I'd appreciate hearing people's
opinions and suggestions.  Thanks!

-- 
Frederick G. M. Roeber | CERN -- European Center for Nuclear Research
e-mail: roeber@cern.ch or roeber@caltech.edu | work: +41 22 767 31 80
r-mail: CERN/PPE, 1211 Geneva 23, Switzerland | home: +33 50 20 82 99

Newsgroup: comp.windows.x
document_id: 67310
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Polygon to raster converter required

Can anybody tell me if they know where I can obtain the source code for
a polygon filling algorithm, or any other graphics orientated mailing lists
that may be able to help me.

Thanks, Paul.
-- 
-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67311
From: nicholas@ibmpcug.co.uk (Nicholas Young)
Subject: Graphics editor required

See subject. An opportunity for sales-people (-persons? -entities?).

I am looking for a commercial/PD graphics editor with fairly limited
abilities that runs under X and preferably uses Motif widgets. It must
run on HP-UX version 9, either with or without the PEX extension. The
sort of things I want are simple drawing, resizing and moving of objects
such as lines, rectangles and text. Bounding rectangle operations are
sufficient for object selection. Ideally it should also allow the
creation and placement of more complex objects such as widgets (e.g.
text entry fields or labels), but this is not mandatory.

Does anyone have such an animal? If you do, please mail me with details
including price (especially run-time licensing since it must be
included in a product). Alternatively, send glossies to me at Logica,
68 Newman Street, London W1, including technical info please. For PD
stuff, I have some effort that could be put into porting.

Thanks for any help,
Nicholas Young.
-- 
Nicholas Young (+44 71 637 9111)

Newsgroup: comp.windows.x
document_id: 67312
From: EEI.EEIIHY@memo.ericsson.SE (353-1-2800455)
Subject: help

--- Received from EEI.EEIIHY  353-1-2800455         93-04-26 12.28
  -> VAX.XPERT..EXPO.LCS.MIT.EDU..INET
  -: - - - - - - - - - - > MAIL USER IN VAX AND INTERNET
help


Newsgroup: comp.windows.x
document_id: 67313
From: marc@pinet.aip.org (Marc Wiener)
Subject: core dump from getcons

We are getting a memory fault and a core dump whenever we end a Motif
session under Ultrix 4.3, running on a DEC 5000/240. An examintion of the 
core file leads us to believe it's from getcons. Does anyone know what
this is all about?

marc

-- 
Marc Wiener                    |    marc@aip.org
American Institute of Physics  |    
500 Sunnyside Blvd.            |    Voice: (516)576-2329 
Woodbury, NY 11797             |    Fax:   (516)349-7669

Newsgroup: comp.windows.x
document_id: 67314
From: rchui@nswc-wo.nswc.navy.mil (Raymond Chui)
Subject: A Question I Do Not Found In FAQ

I created a pixmap or drawable window, then used XDrawLine() function 
drawed a line as below fingure:

		width = 300
	================================
	|				|
	|				|
	|			p1	|
	|			\	|
	|			 \	| height = 300
	|			  \	|
	|			   \	|
	|			    \	|
	|			     \	|
	|			      \	|
	|			       \|p3
	|				| 
	|===============================| \
					    \
					     p2

	I created the pixmap or drawable window only with size 300x300.
But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
My question is, dose the XDrawLine function can finger out that correct
p3(x3 and y3) for me? If you calculate x3 and y3. 

x3 = 300;

@ = art tan (( 800 - 100)/(500 - 270)) = 71.81 degrees;

y3 = 100 + x3/tan(@) = 100 + 300/tan(71.81) = 198.58 ~= (integer) 199.

How do I prove XDrawLine() give me the right x3, y3 or not?
Please don't ask me why I don't created a 900x900 pixmap. No, I don't
wan to. 

Thanks in advance!
-- 
Raymond H. Chui
NSWC N62
10901 New Hampshire Ave.
Silver Spring, MD 20903-5000
U.S.A.
Voice:1(301)394-3807 Ext. 45
FAX:1(301)394-4483
EMail:rchui@opal.nswc.navy.mil
 _ __                                  _    ,    __
' )  )                           /    ' )  /    /  ) /
 /--' __. , , ____   ______   __/      /--/    /    /_  . . o
/  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
          /
         '

Newsgroup: comp.windows.x
document_id: 67315
From: rchui@nswc-wo.nswc.navy.mil (Raymond Chui)
Subject: Re: A Question I Do Not Found In FAQ

comp.windows.x
In article <1993Apr26.122007.25760@relay.nswc.navy.mil>, rchui@nswc-wo.nswc.navy.mil (Raymond Chui) writes:

	Please igore my previouse calculation mistaked. Please see the correct
calculation. Sorry!
|> I created a pixmap or drawable window, then used XDrawLine() function 
|> drawed a line as below fingure:
|> 
|> 		width = 300
|> 	================================
|> 	|				|
|> 	|				|
|> 	|			p1	|
|> 	|			\	|
|> 	|			 \	| height = 300
|> 	|			  \	|
|> 	|			   \	|
|> 	|			    \	|
|> 	|			     \	|
|> 	|			      \	|
|> 	|			       \|p3
|> 	|				| 
|> 	|===============================| \
|> 					    \
|> 					     p2
|> 
|> 	I created the pixmap or drawable window only with size 300x300.
|> But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
|> My question is, dose the XDrawLine function can finger out that correct
|> p3(x3 and y3) for me? If you calculate x3 and y3. 
|> 
 x3 = 300;
 @ = art tan (500 - 270)/(800 - 100)) = 18.19 degrees;
 y3 = 100 + (300 - 270)/tan(@) = 191.29 ~= 191 integer

|> 
|> How do I prove XDrawLine() give me the right x3, y3 or not?
|> Please don't ask me why I don't created a 900x900 pixmap. No, I don't
|> wan to. 
|> 
|> Thanks in advance!
|> -- 
|> Raymond H. Chui
|> NSWC N62
|> 10901 New Hampshire Ave.
|> Silver Spring, MD 20903-5000
|> U.S.A.
|> Voice:1(301)394-3807 Ext. 45
|> FAX:1(301)394-4483
|> EMail:rchui@opal.nswc.navy.mil
|>  _ __                                  _    ,    __
|> ' )  )                           /    ' )  /    /  ) /
|>  /--' __. , , ____   ______   __/      /--/    /    /_  . . o
|> /  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
|>           /
|>          '

-- 
Raymond H. Chui
NSWC N62
10901 New Hampshire Ave.
Silver Spring, MD 20903-5000
U.S.A.
Voice:1(301)394-3807 Ext. 45
FAX:1(301)394-4483
EMail:rchui@opal.nswc.navy.mil
 _ __                                  _    ,    __
' )  )                           /    ' )  /    /  ) /
 /--' __. , , ____   ______   __/      /--/    /    /_  . . o
/  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
          /
         '

Newsgroup: comp.windows.x
document_id: 67316
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Title for XTerm


Yet again,

the escape sequences you are speaking about here are non standard and
dangerous. In fact, an ANSI compliant sequence parser HANGS on them.

Why are there such strange ESC sequences instead of compatible DSC ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67317
From: afielden@cbnewsb.cb.att.com (andrew.j.fielden)
Subject: X interactive performance

We recently got an NCD X-terminal to evaluate. This is running XRemote over
a serial line.
I wanted to get some measurement of response time, so I wrote a small Xlib
program which simply creates a window, maps it and sends the first Expose 
event to itself. The program times the delay from sending the event, to 
receiving it.  I thought this was the simplest way to test client/X-server 
round-trip delays. It's a similar concept to the ping(8C) program.

Is this a valid test to perform ? I've also tried the xbench program, available
from ftp.uu.net, which bombards the server with graphics operations, but I 
just wanted to get a quantative measure of what is "acceptable" interactive 
response time. Has anyone got any ideas on this subject ?

Thanks.
Andrew. (afielden@mlsma.att.com)

-- 
+----------------------------------------+----------------------------------+
|Andrew Fielden. AT&T Network Systems UK |        Tel : +44 666 832023      |
|Information Systems Group (SUN support) |   Email : afielden@mlsma.att.com |
+----------------------------------------+----------------------------------+

Newsgroup: comp.windows.x
document_id: 67318
From: michel@crnsu1.IN2p3.FR (6893)
Subject: creating a GIF file.


	We are looking for a X client which can convert a xwd or a bitmap
file into a gif file for use on a Macintosh.

	Thanks

		michel@crnsu1.in2p3.fr
		Laurent MICHEL
		CRN - GTI
		BP 20
		67037 STRASBOURG cedex (France)
		Phone (33) 88 28 62 76

Newsgroup: comp.windows.x
document_id: 67319
From: rlee@ssdc.SSDC.Sterling.COM (Richard Lee)
Subject: Re: Pulldown menu periodically hangs application on OpenWindows 3.0

Skip Koppenhaver (skip@eco.twg.com) wrote:
: 
: Has anyone found a fix for the following problem?
: 
: Client Software:	SunOs 4.1.1, X11R5
: Server Hardware:	Sun IPC
: Server Software:	SunOs 4.1.1, Open Windows 3.0 (w/ patch 100444-37)
: 
: A Motif 1.2.2 application will periodically hang when run against the
: OpenWindows 3.0 server (xnews). The pulldown is displayed but then no
: button actions have any effect. Sometimes pressing <Return> will
: unstick the application but not usually. It looks like the pulldown is
: grabbing the focus and never letting go. Other windows on the display
: continue to get updated so the server isn't hanging. If I log in from
: another terminal and kill the Motif application then everything gets
: back to normal. The same application when run against other X servers
: (including MIT X11R5 Xsun, DecWindows, Tektronix X terminal) has no
: problems. This is obviously a OpenWindows problem but I need a
: work-around since most of our customers are OpenWindows users.

I have seen the same problem using a SPARCStation 10, Solaris 2.1, OW 3.1.
In my case, it happens far more often than "periodically".

Help?



Newsgroup: comp.windows.x
document_id: 67320
From: andreas@appel012.hydromech.uni-hannover.de (Andreas Dunker)
Subject: mail

Hello networld,

I'm looking for an X mailreader. Is there a Xelm?

Andreas


--
_______________________________________________________________________________
Andreas Dunker
andreas@appel012.hydromech.uni-hannover.de   We all live in a yellow subroutine
andreas@veeble.han.de                        The Beatles

Newsgroup: comp.windows.x
document_id: 67321
From: gmh@hpfcso.FC.HP.COM (Greg Hughes)
Subject: Re: Looking for an R5 Xserver for HP9000/385

Update your 385 to HP-UX 9.0.  You get an R5 server and libraries.

Greg Hughes	gmh@fc.hp.com

Newsgroup: comp.windows.x
document_id: 67322
From: duijnda@wldelft.nl (ArnoDuijndam)
Subject: Re: creating a GIF file.

In article <9304261216.AA04485@crnsu1.in2p3.fr> michel@crnsu1.IN2p3.FR (6893) writes:
>Path: wldelft.nl!sun4nl!mcsun!uunet!gatech!enterpoop.mit.edu!INTERNET!news-mail-gateway
>From: michel@crnsu1.IN2p3.FR (6893)
>Newsgroups: comp.windows.x
>Subject: creating a GIF file.
>Date: 26 Apr 1993 10:43:28 -0400
>Organization: The Internet
>Lines: 12
>Sender: news@athena.mit.edu
>Message-ID: <9304261216.AA04485@crnsu1.in2p3.fr>
>NNTP-Posting-Host: enterpoop.mit.edu
>To: xpert@expo.lcs.mit.edu
>
>	We are looking for a X client which can convert a xwd or a bitmap
>file into a gif file for use on a Macintosh.
>
>	Thanks
>
>		michel@crnsu1.in2p3.fr
>		Laurent MICHEL
>		CRN - GTI
>		BP 20
>		67037 STRASBOURG cedex (France)
>		Phone (33) 88 28 62 76

Just look at the pbmplus package; it does everything you could ever ask
for in converting pbm to almost any format (gif, tga, pcx etc...)

Arno Duijndam

Newsgroup: comp.windows.x
document_id: 67323
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Is it just me, or is this newsgroup dead?

In article <930419000332.60e01d81@TGV.COM>, mahan@TGV.COM (Patrick L.
Mahan) writes:
|> #
|> # I've gotten very few posts on this group in the last couple days.  (I
|> # recently added it to my feed list.)  Is it just me, or is this group
|> # near death?
|> #
|> 
|> Seen from the mailing list side, I'm getting about the right amount of
|> traffic.

And seen from my point of view, I get far too much articles to keep up with
them. I am lucky if I can scan through the subjects from time to time.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67324
From: epstein@trwacs.fp.trw.com (Jeremy Epstein)
Subject: WANTED: X & security posting

A few days ago there was a posting in this group by Andrea Winkler
titled "X and Security / X Technical Conference".  I was one of the
instructors of that tutorial.  Unfortunately, my system purged
the message before I had a chance to see it, and I don't have
Andrea's email address.  If someone has Andrea's address and/or
the posting, I would really appreciate it if you'd forward it to
me!

Thanks
--Jeremy

Jeremy Epstein			Internet: epstein@trwacs.fp.trw.com
Trusted X Research Group	Voice: +1 703/803-4947
TRW Systems Division
Fairfax Virginia
-- 
Jeremy Epstein			Internet: epstein@trwacs.fp.trw.com
Trusted X Research Group	Voice: +1 703/803-4947
TRW Systems Division
Fairfax Virginia

Newsgroup: comp.windows.x
document_id: 67325
From: oleg@sdd.comsat.com (Oleg Roytburd)
Subject: HP 2623A graphics terminal emulators

I would be grateful to anyone who knows about an X-windows application
that would emulate HP 2623A graphics in a manner similar to
the way TEK graphics windows are implemented in xterm.
Thanks for you help.

-- Oleg Roytburd (oleg@sdd.comsat.com)

Newsgroup: comp.windows.x
document_id: 67326
From: Wilfred.Hansen@cs.cmu.edu
Subject: Andrew (was Re: X Toolkits)

Excerpts from netnews.comp.windows.x: 23-Apr-93 X Toolkits Paul
Prescod@undergrad.m (1132)

> I get the impression Andrew is from the FSF, but I don't know what it
> looks like either.

The Andrew User Interface System is supported, maintained, enhanced, and
distributed by the Andrew Consortium, Carnegie Mellon.  The distribution
terms are those of the X consortium, not the GNU Public License.  Thus
anyone can commercially exploit the Andrew code without restriction. 
(To encourage membership, however, we defer universal release of the
latest versions until Consortium members have had an opportunity to
explore the new capabilities.)

To se what AUIS looks like, you can try a remote demo.  You need an X
server (R5 is best) on a machine linked to the internet.  Give the
command 

	finger help@atk.itc.cmu.edu 

for instructions.

NOTE:  The demo version does not use the Motif-look-and-feel scrollbar,
but one is available.  You can use it on the demo by changing an option
in the ~/preferences file and starting a new editor.

The Andrew Toolkit component of AUIS is ideal if you want to build
applications using compound documents.  Andrew's major feature is its
architecture for recursive embedding of objects: equation in table in
figure in text, for example.  This architecture extends to areas not
usually found in toolkits, including file stream formats, cut/paste, and
printing.

Andrew also provides some of the most commonly requested applications: 
word processor, spreadsheet, drawing editor, and font editor (the latter
two are in version 5.2 which will be generally released on the XR6 tape
in December.)

Fred Hansen
Director, Andrew Consortium

Newsgroup: comp.windows.x
document_id: 67328
From: lehors@koala.inria.fr (Arnaud Le_Hors)
Subject: ** Xpm 3.2g is available **

On export.lcs.mit.edu directory contrib, and avahi.inria.fr directory pub/xpm:
xpm-3.2f-to-3.2g.patch.Z
xpm-3.2g.tar.Z

/* Copyright 1990-93 GROUPE BULL -- See license conditions in file COPYRIGHT */
/**************************************************************************\
* 									   *
*  			HISTORY of user-visible changes			   *
* 									   *
\**************************************************************************/

3.2g	(93/04/26)

    ENHANCEMENTS:
	- much faster close colors
	- piping from/to compressed files now handles GNU's gzip (.z)  format
	- added XpmColorKey attribute - ability to specify which visual's
	  colors to use (ie: now it's possible to read in a pixmap in a
	  color visual, but use the colors specified for monochrome).
	- added -mono, -grey4, -grey and -color options to sxpm to demonstrate
	  the XpmColorKey attribute.
		- Jason Patterson <jasonp@fitmail.qut.edu.au>

    BUGS CORRECTED:
	- fixed bug where redefining "None" as a pixel stopped mask generation
	- minor SVR4 defines for <string.h>
	- fixed annoying closecolor bug related to read/write color cells
	- fixed minor bug in color value -> pixel overloading
	- manual updated to include new red/green/blue closeness attributes
		- Jason Patterson <jasonp@fitmail.qut.edu.au>

	- the top Imakefile was missing the depend target
	- sxpm/Imakefile fixed so that -L../lib is set before the standard
	  library location.
		- Vivek Khera <khera@cs.duke.edu>

	- lib/xpmP.h now defines bcopy as memcpy for VMS (required by recent
	  versions of VMS)
		- J. Daniel Smith <dsmith@ann-arbor.applicon.slb.com>

	- the lib/Imakefile didn't work with X11R4.

-- 
 Arnaud LE HORS - lehors@sophia.inria.fr - BULL Research France, Koala Project

Newsgroup: comp.windows.x
document_id: 67329
From: gary@ioc.co.uk (Gary Phillips)
Subject: Re: Xt intrinsics: slow popups

In article <735525194.9026@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> Bryan Boreham (bryan@alex.com) wrote:
> : In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> : > The application creates window with a button "Quit" and "Press me".
> : > The button "Press me" pops up a dialog box. The strange feature of
> : > this program is that it always pops up the dialog box much faster the
> : > first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
> : > it is *much* slower.
> : 
> : The shell is waiting for the window-manager to respond to its
> : positioning request.  The window-manager is not responding because
> : it thinks the window is already in the right place.
> : 
> : Exactly *why* the two components get into this sulk is unclear to
> : me; all information greatly received.

The only time I've seen similar behaviour is when an X application forked a child
without setting close on exec on the X display connection file descriptor.
The shell waited for a ConfigureNotify event that never arrived because it got
picked up by the child.  Sometimes the shell correctly got the ConfigureNotify if
the timing was 'right'.

-- 
Gary Phillips		| Email:  gary@ioc.co.uk
Phone: +44 81 528 9864	|	  phones@cix.compulink.co.uk
Fax:   +44 81 528 9878	|	  

Newsgroup: comp.windows.x
document_id: 67330
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: imake - help needed

In article <1993Apr20.101306.21536@def.bae.co.uk>, paul@def.bae.co.uk (Paul
Byrne) writes:
|> Can someone please give me some pointers to setting up imake in a SUN
|> OPENWINDOWS
|> enviornment ? I've checked through all the documentation but can not
|> find any clues.

Sun's OpenWindows imake is broken. I suggest installing imake-pure, MIT's
X11R5 imake. You can get it from ftp.germany.eu.net in file
/pub/X11/misc/imake/imake-pure.tar.Z (117807 Byte).

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67331
From: steerr@h01.UUCP (R. William Steer)
Subject: X server for NT?

Does anybody have an X server for NT that they're willing to share files
or experiences?

Bill Steer
Westinghouse

Newsgroup: comp.windows.x
document_id: 67332
From: hughm@brwal.inmos.co.uk (Hugh McIntyre)
Subject: Sun3/60 + X11R5 -> undeletable console messages.

We have an old Sun3/60 here which gets occasional use.  When X11R5 is started
on it any console messages during startup are undeletable.  After X is fully
started we run an xterm as the "console" - the problem is that any messages
that arrive before this starts go to the plain console.  "Refresh window" fails
to remove them.  The messages are a real pain since they sit in the middle of
the screen obscuring anything else below them.

At boot time the 3/60 lists two framebuffers  -  /dev/cgfour0 and /dev/bwtwo1.
We're running X in color, and I suspect that maybe the offending messages are
on the B/W framebuffer, and thereby not getting deleted.

My question is: has anyone else seen this, and is there an easy way to get rid
of these messages?

Please reply by e-mail to hughm@inmos.co.uk.

Hugh McIntyre.
INMOS Ltd., Bristol, UK.

(BTW: SunOS 4.0.3, X11R5, mwm).

PS: I know I can redirect output of the relevant commands to /dev/null - I'm
    looking for a more general solution).

Newsgroup: comp.windows.x
document_id: 67333
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: 24-bit Static color: will clients like it?


In article <1993Apr26.123918.1@vxcrna.cern.ch>, roeber@vxcrna.cern.ch (Frederick Roeber) writes:
|> 
|> I'm writing an X server for some video-generation equipment.  The
|> hardware is "truecolor" in YUV space; in X terms it has a 24-bit
|> static color visual.  I would really like to have the server just
|> present this static visual, but I'm not sure if this will be 
|> acceptable to "most" X clients.  The three problems I see are:
|> 
|>   1) The colormap, though huge, is static.
|>   2) All pixels would be 3 bytes wide.
|>   3) Because the hardware actually lives in YUV space, the
|>      translation RGB->YUV will introduce some rounding error.
|> 
|> Being more of a server guy than a client guy, I ask: will these
|> limitations thwart many X clients?  Or will most of the X stuff
|> floating around blithely accept what they're given?  I could write
|> the server to also present a pseudocolor visual of, e.g., 8 bits, 
|> but I'd rather avoid this if not necessary.
|> 

Even 24Bit TrueColor machines are in most cases running an emulated
8 bit PseudoColor visual, only to get standard x clients, motif apps and
thelike to run. I strongly suppose you to emulate at least:

> 24 Bit TrueColor. Should be no problem, only some translation. Rounding
  should not make big misfits
> 8 bit PseudoColor. More of a problem, you have to emulate a colormap,
  pixel indices, conversion stuff. Furthermore, you should run your default
  screen on this visual.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67334
From: chudel@watarts.uwaterloo.ca (Chris Hudel)
Subject: 4-plane Xterminal (Do I want one?)

I've been offerred an old 4-bits/pixel greyscale Xterminal.  Aside from the
"real people have already upgraded to RISC architecture R5 servers", do I want
this Xterminal? 

I'm concerned about the 4-planes...I've only ever heard of 1 (mono) and 8
(colour) planes -- will I have any concerns with this 4-plane unit? 
[Specifically related to 4-planes vs 1 or 8]

Thanks!
-C-

PS: all R5 apps run on R4/R3 servers,right?

Newsgroup: comp.windows.x
document_id: 67335
From: slosser@ntsc-rd.navy.MIL (Steve Slosser)
Subject: UNIX interest group:  Where is it?

I know that this is not the correct place to post this, but I have 
exhausted all other logical options.  I used to be on the INFO-UNIX 
newsgroup mailer.  The mailers mysteriously quite coming around the end of
last year.  All e-mails requesting that I be placed back on the list have
been ignored.  I have been unable to locate the administrator of this list.

If anyone knows of the internet address that I can send a the request to
get back on this list, can you please send it to me.  If you don't know
of this specific newsgroup mailer, I would appreciate the address of *any*
UNIX-related newsgroup.  Thanks.

                                       Cutoff,
                                       Steve
                                       slosser@ntsc-rd.navy.mil

PS - Sorry for the non-X-related question.


Newsgroup: comp.windows.x
document_id: 67336
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: 24-bit Static color: will clients like it?

|
|Even 24Bit TrueColor machines are in most cases running an emulated
|8 bit PseudoColor visual, only to get standard x clients, motif apps and
|thelike to run. I strongly suppose you to emulate at least:
|
|> 24 Bit TrueColor. Should be no problem, only some translation. Rounding
|  should not make big misfits

Depends on the nature of the "rounding."  X allows the user to do bit
arithmetic on pixel values, (i.e.,  XOR foreground and backgroun pixel
values together to calculate a foreground color that when used with a
function of GXxor fill change foreground to background and vice-versa).
If your rounding does not preserve these types of calculations then 
clients that use them will break.

	Ken
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
document_id: 67337
From: tomk@skywalker.bocaraton.ibm.com (Thomas Chun-Hong Kok)
Subject: Re: MOOLIT and OLIT

In article <stevedavC5y2Jz.3D7@netcom.com>, stevedav@netcom.com (Steve Davidson) writes:
> Does anyone know the difference between MOOLIT and OLIT?  Does Sun
> support MOOLIT?  Is MOOLIT available on Sparcstations?
> 

-- 
MoOLIT (Motif/Open Look Intrinsic Toolkit allows developers to build 
applications that can switch between Motif and Open Look at run-time,
while OLIT only gives you Open Look.

--
Internet: chunhong@vnet.ibm.com

Newsgroup: comp.windows.x
document_id: 67338
From: gutenkun@fzi.de (Kai Gutenkunst)
Subject: Archie-Client ?

xgetftp-1.2 needs an archie client program.
Does anybody know, where I can get it?

Thanks in advance, Kai

Newsgroup: comp.windows.x
document_id: 67339
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: 24-bit Static color: will clients like it?

In article <1993Apr26.123918.1@vxcrna.cern.ch>, roeber@vxcrna.cern.ch (Frederick Roeber) writes:
> I'm writing an X server for some video-generation equipment.  The
> hardware is "truecolor" in YUV space; in X terms it has a 24-bit
> static color visual.  I would really like to have the server just
> present this static visual, but I'm not sure if this will be 
> acceptable to "most" X clients.  The three problems I see are:
> 
>   1) The colormap, though huge, is static.
>   2) All pixels would be 3 bytes wide.
>   3) Because the hardware actually lives in YUV space, the
>      translation RGB->YUV will introduce some rounding error.

We tried to ship an X server once that only supported a 24bit
TrueColor visual. The main problems we encountered were:

	1) Clients written with logic like the following:

	    if (DefaultDepth() != 1)
		/* Assume default depth is 8bit */

	   These clients need an 8bit deep visual in the root window
	   to run correctly.

	2) Other clients didn't even bother to do that much, and just
	   outright assumed they had a *dynamic* visual class, with a
	   dynamic colormap. XStoreColors doesn't work on cmaps
	   associated with Static or TrueColor visual classes, but
	   many clients don't bother to check, they just start
	   throwing XStoreColor calls at you.

Though both are clearly client error, this is the case with so many
clients that it's easier for you to expose 8bit PseudoColor as a
default root window visual, than it ever would be for all these client
writers to change their clients to do the right thing.
--

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
document_id: 67340
From: moore@halley.est.3m.com (Richard Moore)
Subject: Using message passing with XtAddInput 

In the past, I have used named pipes to communicate between processes using
the XtAddInput function to set up the event handling in Motif. Does anybody
know of a way to do this with message passing ( IPC ) ? I tried it here and
no luck so far.

Thanks


Newsgroup: comp.windows.x
document_id: 67341
From: vidya-v@acsu.buffalo.edu (vidyaranya)
Subject: Red color on button on enter window.


This may be an FAQ, but I dont know where to get the FAQ list!
My OpenLook application has a few buttons. The first button turns
red(gets highlighted?) as soon as the sprite(mouse) is moved into the
application window. How do I suppress this?

Vidyaranya

Newsgroup: comp.windows.x
document_id: 67342
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Asynchronous X Windows?


>> No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
>> a number of other designations accepted by the X Consortium.  In fact,
>> doing "man X" on pretty much any X11 machine will tell you:
>> 
>>      The X Consortium requests that the following names  be  used
>>      when referring to this software:
>> 
>>                                   X
>>                            X Window System
>>                              X Version 11
>>                      X Window System, Version 11
>>                                  X11
>> 
>> There is no such thing as "X Windows" or "X Window", despite the repeated
>> misuse of the forms by the trade rags.  This probably tells you something >> about how much to trust the trade rags -- if they can't even get the NAME
>> of the window system right, why should one trust anything else they have 
>> to say?

I used to think this way, and not just about X. For example, incorrect
English constructs such as "its raining" or "it's window id" annoy me.
However, there comes a time when popular usage starts to dictate the way
things really are in the world. Indeed, the fact that X won out over NeWS
was really down to popular opinion (I know, we all think it's(!) technically
superior as well!).

On a related topic, who is to say that "color" is more or less correct
than "colour" - being Irish, and hence using English English as opposed
to American English, I always use the latter except, of course, for API
terms such as "XAllocColor" and "colormap".

In a world that uses the term "Windows" to refer to Microsoft Windows,
perhaps the time has come to accept "X Windows" as a valid term for X.
I think that this is a more concise and uncluttered term than, say,
"the X Window System" and, let's face it, almost everyone uses it.
Ultimately, we all need product sales to more than just X-literate
people. In this respect, product recognition is important and a short,
snappy, descriptive title ("X" is positively obscure) will help
when dealing with the average punter (it's sad - I thought I was a
software engineer!). Indeed it is unfortunate that X did not become
popularly known as Windows and let MS worry about whether it should
be called "Microsoft Windows" or "the Microsoft Window System" or
how about just plain "Microsoft"!

To summarise (or should that be "summarize") the point of this message:
I think there are far more pressing issues facing the X community than
worrying about subtle distinctions in the naming of the window system
(or should that be "windowing system"). Whatever gets recognised is
fine by me. I agree that one should be careful in interpreting what
trade papers say. However, I would be reluctant to come to this
conclusion purely on the basis of how they name the X Window System.


			Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
			Du Pont Pixel Systems Ltd.

Newsgroup: comp.windows.x
document_id: 67343
From: mwchiu@tigr.org (Man-Wai Chiu)
Subject: Xm1.2.1 and OW server


We have a program written with X11R5 and Motif 1.2.1.  It runs fine on the Sun
X11R5 server and MacX.  When that program is run under the Sparc 2 and the
OW server, the program crashed itself along with the server.  It crashed before
the first window had showed up.

I got the following error from X.
XIO:  fatal IO error 32 (Broken pipe) on X server "perot:0.0"
      after 62 requests (59 known processed) with 0 events remaining.
      The connection was probably broken by a server shutdown or KillClient.

I have run the program with xmon and below is the last twenty lines or so from
xmon before both the program and server crashed.

           ............REQUEST: GetProperty
                        delete: False
                        window: WIN 00900001
                      property: ATM 00000074
                          type: ATM 00000074
                   long-offset: 00000000
                                        ..............REPLY: GetProperty
                                                     format: 00
                                                       type: <NONE>
                                                bytes-after: 00000000
           ............REQUEST: GetInputFocus
                                        ..............REPLY: GetInputFocus
                                                  revert-to: Parent
                                                      focus: WIN 0040000d
           ............REQUEST: ChangeProperty
                          mode: Replace
                        window: WIN 00900001
                      property: ATM 00000074
                          type: ATM 00000074
                        format: 08
                          data: 42 00 00 01 00 00 00 10 00 00 00 75 00 00 00 00 
           ............REQUEST: GetInputFocus

Please email to me if you have any idea of the above problem.
Thanks in advance.

--
MW Chiu
mwchiu@tigr.org

Newsgroup: comp.windows.x
document_id: 67344
From: matt@centerline.com (Matt Landau)
Subject: Re: Asynchronous X Windows?

In <1382.9304261508@zztop.dps.co.uk> gerard@dps.co.UK (Gerard O'Driscoll) writes:
>>> No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
>>> a number of other designations accepted by the X Consortium....
>>> 
>>> There is no such thing as "X Windows" or "X Window", despite the repeated
>>> misuse of the forms by the trade rags.  

>I used to think this way, and not just about X. For example, incorrect
>English constructs such as "its raining" or "it's window id" annoy me.
>However, there comes a time when popular usage starts to dictate the way
>things really are in the world. 

Well, yes and no.  I don't particularly want this discussion to spark
a lengthy debate, but I do think it's worth pointing out that "popular
usage" is not always sufficient excuse.  

In this case, for example, I think an appropriate parallel may be found
in the pronunciation of proper names: if people commonly misspelled or 
mispronounced your name, would you feel compelled to change it?  Probably
not.  

The same is true of X.  "The X Window System", "X", "X11", and related
monickers are proper names in the same sense that any product name is a
proper name.  In fact, some of them are *trademarked* names.  The fact 
that many people get them wrong is largely beside the point.  

As for the trade publications that promulgate things like "X Window" or
"X.windows" or any of the other nonsensical variants one often sees, 
consider the fact that these publications are supposedly written by 
*journalists*.  Would you trust the facts of a journalist who couldn't
be bothered to get the name of his/her source right?  Would you trust
a product review by someone who got the name of the product wrong?

Popular usage is as it may be, but I for one am all for holding people
who claim to be journalists to a higher standard of correctness.

>Indeed, the fact that X won out over NeWS
>was really down to popular opinion (I know, we all think it's(!) technically
>superior as well!).

X11 technically superior to NeWS?  Well, in *some* alternate universe
perhaps ...

Newsgroup: comp.windows.x
document_id: 67345
From: mikell@cactus.org (Mikell Vanderlaan)
Subject: Unisys 22403 emulation


Has anyone seen source to an xterm package ready
to perform UNISYS 22403 TERMINAL EMULATION. 
Got a clunker... and ...  Got a connect!

return: mikell@cactus.org

-- 
////////////////////////////mikell@cactus.org/////////////////////////
////////////////////Calame Linebarger Graham & Pena///////////////////
//////////////////////////////Attys AT Law////////////////////////////

Newsgroup: comp.windows.x
document_id: 67346
From: Wilfred.Hansen@CS.CMU.EDU
Subject: CFP: Andrew Technical Conference

*Reminder*   Plan now for the Andrew Conference.
*Date* The dates are as noted below.  (We have not changed them.)
*Submission extension*   We are still accepting papers.

*Tutorial topic*  
	_Converting Andrew source code to C++_

This tutorial will discuss the steps necessary to convert a site from C
(extended with classC) to C++.  Conversion of the source code requires
only a couple of steps:
	run the converter
	fill in missing type information
Describing this will not take long.  The remainder of the day will be
spent learning how to write objects in C++ and practicing.

------------------------------

1993 Andrew Technical Conference and Consortium Annual Meeting
June 24-25, 1993
Carnegie Mellon University
Pittsburgh, PA

The conference will be held on the last Thursday and Friday in June.  A
tutorial will be on Thursday the 24th and the conference proper on the
25th with the annual meeting at the dinner on the evening between the
two days.  All conference attendees are welcome at the annual meeting,
though only Consortium members will be able to vote.

This year's theme is 

	Application Construction by Non-Programmers

Much of the effort on X toolkits has been aimed at programmer
construction of applications.  There have, however, been some excellent
UIMS systems built on top of X.  Papers addressing the theme will
consider questions such as
	What is needed for application construction by non-programmers?
	Can we avoid programming altogether, or is a simple language needed?
	Is it sufficient to create applications, or must users be able to
create new widgets?
	Should widgets and applications be able to print themselves?

Your participation in the conference is welcome.  Papers are appropriate
on the theme or any aspect of the Andrew User Interface System, including

	applications
	experience with users
	new objects
	reviews of and proposals for revision of 
		internal Andrew protocols

We expect to have an RS/6000 with video projector available if you would
like to do a demonstration.  

Paper proposals should be submitted by 15 May 1993.
Acceptance will be 1 June with final papers due by 15 June.

Send papers via electronic mail to wjh+@andrew.cmu.edu.

Fred Hansen
Director, Andrew Consortium

Newsgroup: comp.windows.x
document_id: 67347
From: ferguson@cs.rochester.EDU (George Ferguson)
Subject: Xarchie-2.0 available on export

[Please accept the following announcement for comp.windows.x.announce. -gf]

A completely revamped version of the X11 browser interface to Archie,
Xarchie, is now available as
	export.lcs.mit.edu:/contrib/xarchie-2.0.tar.Z

For those not familar with Archie or Xarchie, I include part of the
manpage intro:

  Xarchie is an X11 browser interface to the Archie Internet information
  system using the Prospero virtual filesystem protocol.  Archie
  provides information about files available for ftp anywhere on the
  Internet; Xarchie displays this information using an easy-to-use,
  point-and-click interface.  Xarchie allows you to further explore ftp
  sites by examining directories returned as query matches, and allows
  you to retrieve files located this way.

Xarchie 2.0 has been extensively tested on R4, R5, and a variety of
other flavors of X, and on a wide range of machines. A summary of the
new features (from the README) follows:

  * Major improvements include:
    - Multiple selections allowed in browser for use with other new
      features (FWF MultiList widget).
    - Ability to expand directories in browser.
    - Real fully-integrated ftp implementation.
    - Ability to save and reload query results, as well as print them.
    - Ability to resort results, and sort results by user-definable
      pseudo-weights.
    - Online help browser.
    - Color resources, done so that they don't break mono displays.
    - FWF FileSelector widget for local file operations.
    - Makefile.dst's supplied for the imake-impaired.

George
-- 
George Ferguson                 ARPA: ferguson@cs.rochester.edu
Dept. of Computer Science       UUCP: rutgers!rochester!ferguson
University of Rochester         VOX:  (716) 275-2527
Rochester  NY  14627-0226       FAX:  (716) 461-2018

Newsgroup: comp.windows.x
document_id: 67348
From: bill@west.msi.com (Bill Poitras)
Subject: Re: Regression Testing and X

Megan Grenenger (megan@cs.uq.oz.au) wrote:
: I'd appreciate any feedback on capture/playback tools for use with X clients.

: Any comparisons/comments on regression testing tools would be great -
: particularly XTM, XRunner, Autotester, and SRI's CAPBAK, SMARTS and EXDIFF.

How about starting where I could find ANY of these.  For the commercial
ones, at least a phone number would be appreciated.

--
+-------------------+----------------------------+------------------------+
| Bill Poitras      | Molecular Simulations Inc. | Tel (617)229-9800      |
| bill@msi.com      | Burlington, MA 01803-5297  | FAX (617)229-9899      |
+-------------------+----------------------------+------------------------+
|FTP Mail           |mail ftpmail@decwrl.dec.com | Offers:ftp via email   |
|                   |Subject:<CR>help<CR>quit    |                        |
+-------------------------------------------------------------------------+

Newsgroup: comp.windows.x
document_id: 67349
From: hue@island.COM (Pond Scum)
Subject: Re: How to get 24bit color with xview frames ?

amathur@ces.cwru.edu (Alok Mathur) writes:
>I would like to know how I can set the depth of the frame to be 24 bits.
>I tried using the following Xlib code :

>Am I using a completely wrong approach here ? Is it possible to set the depth

Yes.

>and colormap for a window created by Xview ? What am I doing wrong ?

Look up XV_DEPTH.  Also, you might want to try using XView colormap segments
instead of Xlib for your colormap stuff.  They will probably be easier
for you to use, and since you are using a TrueColor visual, you won't
be losing anything compared to straight Xlib.


-Jonathan		hue@island.COM

Newsgroup: comp.windows.x
document_id: 67350
From: rvloon@cv.ruu.NL (Ronald van Loon)
Subject: Announcing the Motif++ mailing list

I am glad and proud to announce the new mailing-list for the PD Motif C++
bindings. I got over 40 replies in about one week of people interested in
such a list, and the software has now been properly installed, so the list
is now up and running. For those interested in joining, please send e-mail
to that extend to 'motif++-request@cv.ruu.nl' or 'rvloon@cv.ruu.nl'.

The blurb everyone who joins gets follows, as well as the original 
announcement for where Motif++ can be obtained.

Enjoy!

8< - 8< -


Welcome to the Motif++ Mailing List!

The Motif++ mailing list is a mailing list dedicated to Motif++, the PD C++
wrapper library for Motif, where people can ask questions about Motif++, 
swap stories, and give new ideas about new directions and improvements for the 
bindings. 

All requests of an administrative nature, like subscription, removal, etc.
should be directed to motif++-request@cv.ruu.nl

All e-mail sent to motif++@cv.ruu.nl will be sent to the entire list, so
please make sure when using 'vacation' type programs that will reply to
messages automatically, that the address for the mailing-list is excluded 
from auto-replies.

Enjoy!

Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

8< - 8< -

Hello Motif World,

over the past half year there have been a lot of relatively minor changes to
the Motif++ bindings. Imake support has been improved, a few defaults have
been changed, and a lot of other small things have been added.

This is basically a release which drops the 'gamma' status. Next release will
incorporate some improvements by Stefan Schwarz, and possibly will support
X11R5 and Motif 1.2.x.

Note to all of those who keep copies of the archive: please retrieve this
distribution (during off-peak hours), and delete all previous copies.

Here is the original ANNOUNCEMENT:

HISTORY

The University of Lowell, supported by a grant of the Open Software Foundation,
has developed a wrapper-library, that encapsulates Motif widgets in C++
classes. All resources of these Widgets can now be set through
member-functions, while objects can be used in callback-functions. The library
was made available for free or nominal cost for anonymous ftp at 129.63.1.1.
However, the library contained a large number of bugs and oversights, and only
worked under X11R3. Due to lack of subsequent fundings, the bindings are no
longer actively supported by the University of Lowell.

I, Ronald van Loon, at a certain point last year, have taken the Lowell 
bindings, fixing the bugs I came across, adding missing memberfunctions, and
enhancing functionality and made the bug-fixed library available for the
general public for anonymous ftp (made possible by Rick Murphy at DEC).

NEW RELEASE

I am now pleased to announce a new and updated release of the Motif++
bindings. 

This release offers:

- Full Motif1.1 and X11R4 support
- Support for Xbae widgetset 
- Two additional widgets, written by myself, that can be used to indicate
  progress in an application.
- Imake support. NB: this release relies heavily on the existence of imake
		     and its config files on your site. I have tried to
		     provide the bindings with a standard Makefile, tweakable
		     for those unfortunates without imake. I have not severely
		     tested the standard Makefile though. Contact me if you
		     have problems. The reason for calling this a gamma
		     release lies in the fact that I do not have a multitude
		     of platforms to test the Imake-files on.
- Lots of testfiles (even somewhat useful programs)
- An article I wrote on the usage of Motif, X and C++, previously posted
  on Usenet.

WHERE TO GET THE NEW MOTIF BINDINGS

Ftp:

Anonymous ftp at decuac.dec.com (192.5.214.1), directory /pub/X11.

Note:

Please be patient as the network link is quite slow. Please do not FTP large
files during working hours.

Also note that there is also a motif++.31.jan.92.tar.Z file at this site; this
is an old version of the bindings.

E-mail:

Those who don't have ftp can send me e-mail, and I will send the bindings by
e-mail.

REQUEST

Those who use the bindings and find bugs, or see room for improvement, please
contact me, and I will try to incorporate them in a future release (in case of
bugs, a bug-fix of course ;-). 

MORE INFORMATION 

Contact me at "rvloon@cv.ruu.nl".
If you are desperate, then you can call me at
+31 30 506711 (that is Utrecht, the Netherlands; those within the Netherlands
call 030-506711).

Enjoy!

-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.


Newsgroup: comp.windows.x
document_id: 67351
From: tom@CapMgtSci.COM (Thomas Tulinsky)
Subject: MANUAL unsubscribe REQUEST

I am on the list under two addresses, I think:
	tom@capmgtsci.com
and
	zuma!tom@netcomsv.netcom.com

Please delete the second one, 
	zuma!tom@netcomsv.netcom.com

Thanks. Sorry for the screw up.

----------------------------------------------------------------------------
Tom Tulinsky		Capital Management Sciences	    West Los Angeles
tom@CapMgtSci.com	        310 479 9715

Newsgroup: comp.windows.x
document_id: 67352
From: matt@centerline.com (Matt Landau)
Subject: Looking for updated XView textedit source (w/d-n-d support)

The XView version 3 source distribution included in the contrib section 
of X11R5 included the source to the textedit program.  I'd like to take 
the sources and modify them to add support for a ToolTalk-like message 
server, and maybe for ToolTalk while I'm at it, since the Sun-supplied
textedit binary doesn't seem to speak tooltalk.

However, the sources in the R5 contrib area seem to be for an older
version of textedit than the version shipped with OpenWindows 3.  For
example, the OWN 3.0 textedit includes drag and drop support and a 
dropsite in the main control area, while the source in contrib/xview
knows nothing about drag and drop.

The textedit.c included in the xview sources says it's version 15.50,
dated 5/22/90, while doing a 'what textedit' on the OWN 3.0 binary says:

        textedit.c 2.62 91/09/14 Copyr 1990 Sun Micro
        dragdrop.c 1.26 91/09/14 Copyr 1990 Sun Micro
        tooltalk.c 2.16 91/09/14 Copyr 1990 Sun Micro
        ds_relname.c    1.7 91/09/14 Copyr 1990 Sun Micro

So, does anyone know if the 9/14/91 sources to textedit are available?
I'd really like to work from the latest source if possible.

Please reply by email, and I'll post a summary if there's enough 
interest.
--
 Matt Landau			Waiting for a flash of enlightenment
 matt@centerline.com			  in all this blood and thunder

Newsgroup: comp.windows.x
document_id: 67353
From: barnettj@pookie.crd.ge.com (Janet A Barnett)
Subject: Input Focus to a Window Other Than Where the Pointer Is


I have noticed in FrameMaker 3.1X on both the SGI and SUN platforms
that certain dialogs, such as "Column Layout..." for example, respond
to keyboard traversal even though the pointer is NOT in the dialog
window and even though the window manager keyboard focus policy is
POINTER.

How is this done?

I would like to emulate this behavior in my application. It seems a
reasonable behavior since when a dialog is popped up from a keyboard
action, the dialog is not guaranteed to be under the pointer and the
user should not have to reach for the mouse just to move the focus.

Alternatively, I'm open to any suggestions as to what is the "right"
way to insure that popups get the focus when they appear, particularly
when they are invoked from the keyboard and one's keyboard focus
policy is pointer.

Allen Barnett
(whose wife graciously allowed to use her account)

Newsgroup: comp.windows.x
document_id: 67354
From: ian@csc.liv.ac.uk (Ian Finch)
Subject: Which X events are generated on application exit?

I'm writing an application running under X (using Motif), and I need to do
some stuff when the application quits.  Now, when I shut down my X Windows
session, it doesn't seem to send a SIGTERM (or whatever) signal to my
application (I'm trapping various signals like that).  Therefore, I thought
I could use an X signal to check for my top level window being destroyed.

However I seem to get DestroyNotify events whenever I move windows.  Is
there any way for me to check that the window is actually being destroyed
(some field to check or some combination of events?).

Replies by e-mail please and I will summarise.

Thanks for any help,
                      Ian
--
 //                             //
 // ian@compsci.liverpool.ac.uk //
 //                             //

Newsgroup: comp.windows.x
document_id: 67355
From: rei@tsl.cl.nec.co.jp (Rei Hamakawa)
Subject: Xavier (AV Extension to InterViews)

Dear Folks:

It's a pleasure to be able to announce the release of a new freeware program, 
Xavier, an audio and video  extension to InterViews.

Xavier(eXtension AV class for IntERviews) is a C++ class library
that adds multimedia capability to InterViews. It allows composite
multimedia objects to be built from media objects.

Specifically, it adds audio and video objects to the classes available
in InterViews 3.0.1/3.1, and it does so without changing the
source code for the original classes (though several configuration
files for InterViews need to be changed via a patch file). 
 
Currently, the Xavier audio classes are only supported on SUN
workstations with an audio interface, such as the SPARCstation2.

Xavier has been tested in the following environments:

SUN:
  Machine : SPARCserver470 SPARCstation-IPC
  OS      : SUN-OS4.1.1 or later
  C++     : SUN C++ ver2.1

NEC(EWS):
  Machine : EWS4800/210,230
  OS      : EWS-UX/V(Rel4.0) WSOS41 Release5.1,Release5.2
  C++     : C++ Release3.1

It can be obtained via anonymous ftp from 

         interviews.stanford.edu in /pub/contrib/
          (Xavier.large-demo.tar, and Xavier.tar)

We are preparing a mailing-list for information regarding Xavier.
If you are interested, please contact
               
                   xavier@tsl.cl.nec.co.jp. 

I will add your e-mail address to our list.

[Reference]
o Rei Hamakawa, Hizekazu Sakagami, Jun Rekimoto:
  Audio and Video Extension to Graphical Interface Toolkits,
  The Third International Workshop on Network and Operating
  System Support for Digital Audio and Video, San Diego, 1992

***********************************************************************
* _                                                                   *
*  \ \      Rei Hamakawa (e-mail: rei@tsl.cl.nec.co.jp)               *
*   |o|                                                               *
*   |o|     C & C Systems Research Laboratories                       *
*   |o| __  NEC Corporation                                           *
*  O| || /  1-1, Miyazaki 4-Chome,      TEL : +81-44-856-2271         *
*  O| || |  Miyamae-ku, Kawasaki,       FAX : +81-44-856-2232         *
*  O| \/ |  Kanagawa 216 JAPAN                                        *
*    \__/                                                             *
***********************************************************************

Newsgroup: comp.windows.x
document_id: 67356
From: barmar@think.com (Barry Margolin)
Subject: Re: Pulldown menu periodically hangs application on OpenWindows 3.0

In article <1rgt23INNonv@ssdc.SSDC.Sterling.COM> rlee@ssdc.SSDC.Sterling.COM (Richard Lee) writes:
>: A Motif 1.2.2 application will periodically hang when run against the
>: OpenWindows 3. server (xnews).

>I have seen the same problem using a SPARCStation 10, Solaris 2.1, OW 3.1.
>In my case, it happens far more often than "periodically".

I don't know if there's a corresponding patch for Solaris 2.1, but this
sounds like the following bug which is supposedly fixed in 100492-06, the
Solaris 1.x olwm Jumbo patch:

	1108642 - window system can hang in an errant pointer grab

Actually, I suspect that the OW 3.1 problem may be different, since the
README file says that this patch is just a SunOS 4.x version of the OW 3.1
olwm (but maybe that line came from an earlier version of the patch, and
they forgot to take it out in the -06 version).
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
document_id: 67357
From: hedrick@geneva.rutgers.edu (Charles Hedrick)
Subject: Re: Xsun not running on SPARCclassic

herzog@dogwalk.Eng.Sun.COM (Brian Herzog - SunSoft Product Engineering) writes:

>I'm just guessing here, but I'd guess that X11R5 expects the CG3 to have
>1152x900 resolution, and the version of the CG3 in the SPARCclassic is 
>1024x768.

I've used X11R5 with classics set for both 1024x768 and 1152x900 (you
can choose which resolution you want in the PROM monitor before
booting).  One person had trouble with X11R5 that was fixed by
using the multi-screen version.  Here's how our version was built.
(You can just copy /usr/local/X11R5/bin/Xsun from farside.rutgers.edu
if you just want to see whether this version will work.)

  R5 distribution installed,
        from pub/R5/mit-[1-4] and contrib-[1-3] on export.lcs.mit.edu
  patches 1 - 23 installed,
	from pub/R5/fixes on export
  R5 Xsun Multi-screen patches installed, 
	from contrib/R5.Xsun.multi-screen* on export, 22-Mar-93
  Solaris 2.1 patches installed, release 1/update 2,
	from contrib/R5.SunOS5.patch* on export, 22-Mar-93

Compilation is with gcc 2.3.3.  Configuration is standard, except that
the root is /usr/local/X11R5, per Rutgers conventions.

Newsgroup: comp.windows.x
document_id: 67358
From: oj@world.std.com (Oliver Jones)
Subject: Re: A Question I Do Not Found In FAQ

In article <1993Apr26.122007.25760@relay.nswc.navy.mil> rchui@opal.nswc.navy.mil writes:
>I created a pixmap or drawable window, then used XDrawLine() function 
>to draw a [clipped] line ... = 300
...
>I created the pixmap or drawable window only with size 300x300.
>But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
>My question is, dose the XDrawLine function can finger out that correct
>p3(x3 and y3) for me? If you calculate x3 and y3. 

If you're asking, "does the X server perform clipping
correctly when drawing lines," the answer is "yes."

Newsgroup: comp.windows.x
document_id: 67359
From: folkert@capints.UUCP (Folkert Boonstra)
Subject: comp.windows.x

I would like to keep track of X development on:
- A/UX
- ULTRIX
- OpenWindows
Currently I cannot use the newsgroup comp.windows.x 
and would like to use the Email based info. 
Thanks,


Folkert Boonstra 


Cap Gemini Innovation		Dutch Research Centre 
Burg.Elsenlaan 170		Phone:	+31 70 3957 239 
P.O. Box 3027			Fax:	+31 70 3957 237 
2280 GA Rijswijk (NL)		e-mail:	boonstra@capints.uucp


Newsgroup: comp.windows.x
document_id: 67360
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Problem with dni and OW 3.0

Can anybody help me?

I am having a problem displaying images greater than 32768 bytes on a Sparc
IPC running Openwindows 3.0 and dni. My program runs on a Vax and displays
images on the IPC with no problems if I use Openwindows 2.0. The program uses
the following lines to display the image - it is the XPutImage() routine
that crashes.

	XImage          *ximage;
	ximage = XCreateImage(myDisplay, DefaultVisual(myDisplay, myScreen),
			      ddepth, ZPixmap, 0, image,
			      xwid, ywid, 8, 0);
	XPutImage(myDisplay, myWindow, myGC, ximage, 0, 0,
		  xpos, ypos, xwid, ywid);

The error I get is:-

XIO:  fatal IO error 65535  on X server "galaxy::0.0"
      after 30 requests (18 known processed) with 0 events remaining.
%XLIB-F-IOERROR, xlib io error
-SYSTEM-F-LINKDISCON, network partner disconnected logical link
%TRACE-F-TRACEBACK, symbolic stack dump follows
module name     routine name                     line       rel PC    abs PC

                                                           000773B9  000773B9
                                                           00077BBE  00077BBE
                                                           0007259D  0007259D
                                                           00072741  00072741
                                                           00072840  00072840
                                                           00072A27  00072A27
MYXSUBS         my_imtoiks                       3184      00000093  000010AF
TEST            main                              293      000000E5  00000EE5

I have a simple test program if anyone would like to test it !!

Thanks Paul.

-- 
-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67361
From: jgealow@mtl.mit.edu (Jeffrey C. Gealow)
Subject: Standard Colormaps

I'm working on an X11R5 application and have concerns regarding 
standard colormaps.

The X11R5 documentation says: "Usually, a window manager creates 
these colormaps."  I wonder what window manager the writer had 
in mind.  Neither twm or mwm seem to create standard colormaps.

Of course, one can use xstdcmap to create standard colormaps.  
However, xstdcmap doesn't seem to try very hard to avoid 
conflicts with the default colormap.  When I use standard 
colormaps created by xstdcmap, the rest of my display goes black.  
So it seems as if use of standard colormaps causes the very 
problem standard colormaps are intended to avoid.  Perhaps 
if every application used standard colormaps, things would 
be wonderful.  But not many applications seem to use 
standard colormaps.

Finally, the operation of the functions XmuGetColormapAllocation, 
XmuStandardColormap, and XmuCreateColormap seem inconsistent 
with the section 14.3 of the X11R5 XLIB documentation.

    According to the section 14.3 of the X11R5 XLIB documentation (p. 436):

    For GrayScale colormaps, only the colormap, red_max, red_mult, and 
    base_pixel members are defined.  The other members are ignored.  
    To compute a GrayScale pixel value, use the following expression:

            (gray * red_mult + base_pixel) &0xFFFFFFFF

    XmuGetColormapAllocation, defined in mit/lib/Xmu/CmapAlloc.c, is 
    used by XmuLookupStandardColormap, defined in mit/lib/Xmu/LookupCmap.c
    to select red_max, green_max, and blue_max values for the 
    call to XmuStandardColormap.  When the RGB_GRAY_MAP property is 
    specified, XmuGetColormapAllocation sets red_max to 30% of the 
    total number of cells in the gray scale, sets green_max to 59% 
    of the total number, and sets blue_max ot 11% of the total number.
    Referring to section 14.3, one would expect XmuGetColormapAllocation 
    to set red_max to the total number of cells in the gray scale.

    When the RGB_GRAY_MAP property is specified, XmuStandardColormap, 
    defined in mit/lib/Xmu/StdCmap.c, sets red_mult, green_mult, 
    and blue_mult all equal to 1.  Referring to section 14.3, 
    one would expect green_mult and blue_mult to be ignored.

    When red_mult, green_mult, and blue_mult all equal 1, 
    XmuCreateColormap, defined in mit/lib/Xmu/CrCmap.c, constructs 
    a gray map. The sum of red_max, green_max, and blue_max gives 
    the maximum gray value.  Referring to section 14.3, on would 
    expect red_max to give the maximum gray value.

Newsgroup: comp.windows.x
document_id: 67362
From: ccdw@kudu.ru.ac.za (Dave Wilson)
Subject: Xlib timeouts?

I am in the process of modifying an X application that uses Xlib.  I'd
like to include a timer-driven facility (for network polling), but cannot
see how to do it using Xlib.  I know it can be done with Xaw, using
XtAppAddTimeout and XtTimerCallBackProc.  How do I do the same using
Xlib?

Thanks for any help.  Please email.

--
Dave Wilson
Computing Centre, Rhodes University
Grahamstown, South Africa

Newsgroup: comp.windows.x
document_id: 67363
From: phil@flex.eng.mcmaster.ca (Phil Nguyen)
Subject: How to unsubscribe from mailing list

I try to unsubscribe from this group by sending an email but that doesn't work.

Could some one tell me the listserv address and command for me to unsubcribe ?

I am leaving this Friday (30th April 93) and the mail box will overflow
soon after that.

Thanks

-----------------------------------------------------------------
Philip Nguyen
Research Engineer
Flexible Manufacturing Research and Development Centre (FMR&D)
McMaster University
1280 Main St. West
Hamilton, On L8S 4L7
Voice: (416) 529-7070 ext 2902 or 7343
Fax: (416) 572-7944
e-mail: phil@flex.eng.mcmaster.ca
-----------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67364
From: gcw@met.ed.ac.uk (Gordon Watson)
Subject: How can get a pixel value from a Drawable ??

How can get a pixel value from a Drawable, without having to copy it to the client
as an XImage and use XGetPixel ?? - I want to select pixels from an animating
window on the server, without having to copy the whole lot back to my client.
(X11R5).

Any pointers appreciated,

Gordon.


=====================================================================
  Gordon C. Watson,                                    _------_      
                                                      {  {     }     
  Meteorology Department, Edinburgh University,      (__________)    
                          Scotland.                   /  /  /  /     
  JANET - G.C.Watson@uk.ac.ed   INTERNET - gcw@met.ed.ac.uk  
=====================================================================





Newsgroup: comp.windows.x
document_id: 67365
From: edwind@lims01.lerc.nasa.gov (Tom NGUYEN)
Subject: How to resolve different font formats ...?

Hi All!

I tried to run SoftPC, a PC emulation software program, installed on a Silicon 
Graphics workstation from a Human Design System (HDS) X terminal, and 
everything went fine, except the fonts could NOT be converted from one type 
of format to the other - HDS uses different font format from SGI worksation.
So, I have the following questions:

1. How do you resolve different font formats from different machines?

2. Is there a program to convert one type of font format to another?

If you have similar problems/experiences and have found a solution, please 
let me know.  Your help will be greatly appreciated!

Thank you in advance for your help and information.

Tom Nguen

edwind@lims01.lerc.nasa.gov


Newsgroup: comp.windows.x
document_id: 67366
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Archie-Client ?


Get Xarchie 2.0 instead.
--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67367
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Standard Colormaps

In article <1rjdk8INNcnh@senator-bedfellow.MIT.EDU>, jgealow@mtl.mit.edu (Jeffrey C. Gealow) writes:
> I'm working on an X11R5 application and have concerns regarding 
> standard colormaps.
> 
> The X11R5 documentation says: "Usually, a window manager creates 
> these colormaps."  I wonder what window manager the writer had 
> in mind.  Neither twm or mwm seem to create standard colormaps.

Standard colormaps were spec'd with the intention that window managers
would make them available. This doesn't mean that every window manager
author in the world immediately dropped everything they were doing and
implemented this at top priority.

The ESGE server we ship makes the XA_RGB_BEST_MAP available at
startup. It doesn't wait for window managers to do it.

> Of course, one can use xstdcmap to create standard colormaps.  
> However, xstdcmap doesn't seem to try very hard to avoid 
> conflicts with the default colormap.  When I use standard 
> colormaps created by xstdcmap, the rest of my display goes black.  
> So it seems as if use of standard colormaps causes the very 
> problem standard colormaps are intended to avoid.  Perhaps 
> if every application used standard colormaps, things would 
> be wonderful.  But not many applications seem to use 
> standard colormaps.

Does your hardware have only one CLUT? Since standard colormaps
typically devour all 256 entries, there is no way it can avoid
displacing the entire default colormap if your hardware has only one
CLUT.

I don't believe standard colormaps are intended to aboid possible
colormap flashing between clients using the default coilormap. Rather,
colormap flashing will be avoided between two clients that use the
same standard colormap. An example would be two clients that need a
full color range would both use XA_RGB_BEST_MAP (or whatever it's
called under X11R5).

If you are trying to avoid colormap flashing with the default
colormap, your best bet is to try to load all the colors you use into
that colormap. If you can't do that, then you'll get flashing on a one
hw CLUT framebuffer.

Now if your window manager used the same standard colormap as your
client, this flashing could also be avoided. Perhaps some window
managers have command line options for selecting standard colormaps?
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
document_id: 67368
From: klute@tommy.INformatik.uni-dortmund.DE (Rainer Klute)
Subject: Imake support for xmosaic


	Imake support for xmosaic
	=========================

Although xmosaic is a great program in general, it unfortunately comes
without Imake support. So I created one. Until Marc Andreessen finds the
time to incorporate it in an official xmosaic release, you can easily do it
yourself. Use anonymous FTP to get

	ftp.germany.eu.net:/pub/X11/misc/xmosaic.Imake.tar.z

The file's size is 3200 Byte. You will need gzip to unpack it. Have fun!

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67369
From: julia@netcom.com (Julia Miller)
Subject: Posix Message Catalogs

Can someone tell me in 25 words or less how to compile posix
message catalogs so that I can use them with catgets, catopen, etc.
I know what the format for the catalogs is, but don't know how
to compile them.

Please reply to chas@blackwhite.com

Thanks in advance,

chas

Black & White Software, Inc.   	| Leaders in Systems & Software Solutions
2155 S. Bascom Ave. Suite 210   | Contact Black & White for information on
Campbell, CA 95008   		| X Windows & OSF/Motif Software & Support
(408) 369-7400   		| OSF/Motif & MS-Windows GUI Builders
(408) 369-7406   		| Add on Widgets, Editors and Help Systems
info@blackwhite.com   		| C++ and Ada Motif Bindings

Newsgroup: comp.windows.x
document_id: 67370
From: susan+@andrew.cmu.EDU (Susan Straub)
Subject: REGISTRATION:  Andrew Tutorial & Technical Conference

                          1993 Andrew Tutorial 
                                  and 
                          Technical Conference 


When:  Thursday and Friday, June 24 and 25, 1993 
    (Deadline for Registration:  June 4, 1993) 

Where:  Carnegie Mellon University in Pittsburgh, Pennsylvania.   

Sponsor:  Andrew Consortium of CMU's School of Computer Science.  

Schedule:  The Tutorial  will be on Thursday, followed by dinner and the
    Annual Meeting.  The Conference proper will be on Friday.  All
    Conference attendees are welcome at the Annual Meeting.  

    Wednesday, June 23 

        Check in:  After 4:00 PM 
        Informal Reception:  7:30 PM 

    Thursday, June 24 

        Tutorial:  9:00 A.M. - 5:00 PM 
        Conference Dinner:  6:30 PM 
        Annual meeting:  8:00 PM 

    Friday, June 25 

        Technical Conference:  9:00 AM - 5:00 PM 

Cost:  
    Tutorial fee includes breaks, lunch and tutorial materials:  $100 
    Conference fee includes conference dinner, breaks and proceedings: $100 
    Rooms (student housing):  $50 / night 

Housing is tight around the campus area, so please register soon.  If you 
prefer to stay in off-campus housing, please contact us for suggestions. 
Mary Anne Cowden will be handling registration.  You can contact her by
email,  mc8b+@andrew.cmu.edu,  or by phone, (412) 268-6710.  
 Registration Form 

Please complete the attached form and return it to: 

Mary Anne Cowden 
Andrew Consortium Technical Conference 
Carnegie Mellon University 
Smith Hall 106 
5000 Forbes Avenue 
Pittsburgh, PA 15213-3890 

                                     <-       cut along here       -> 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - 



Name:              ______________________________________________ 

Address: 	______________________________________________ 

		______________________________________________ 

Organization: 	______________________________________________ 

Email:               ______________________________________________ 

Phone:              ______________________________________________ 




Tutorial		$ ___________     $100 
Conference		$ ___________     $100 
Housing		$ ___________      $50/night 

	TOTAL ENCLOSED     $ ___________ 


      Please make checks payable to Carnegie Mellon University.   
 

Newsgroup: comp.windows.x
document_id: 67371
From: bnoble+@cs.cmu.edu (Brian Noble)
Subject: X Server scanline padding question


I am *almost* done porting XFree86 1.2 to a new piece of display
hardware, but have run into a snag I think may be somewhat
commonplace, so I'm sending a net-feeler.

I have a display that is a non-interlaced, memory mapped, 1-bit
720x280 display.  The server's view of the world, (obtained via xwd |
xwud), seems to be exactly what it should be.  However, the displayed
version of the framebuffer gives the impression that the server is
using scanlines that are too long.  After a bit of experimentation, it
seems that the problem was that the server was padding the line out to
a word boundry, but the scanline size in the buffer is 90 bytes, which
isn't exactly divisible by four.  Changing the following defines in
mit/server/include/servermd.h:

----

#define BITMAP_SCANLINE_PAD  32
#define LOG2_BITMAP_PAD		5
#define LOG2_BYTES_PER_SCANLINE_PAD	2

---

to:

---

#define BITMAP_SCANLINE_PAD  16
#define LOG2_BITMAP_PAD		4
#define LOG2_BYTES_PER_SCANLINE_PAD	2

---

Was not exactly the right solution.  How do I tell the server either
(a) don't pad the scan lines at all ('cause this server is only being
built to run on this particular display), or to pad only to byte
boundries?

I'm using a customized version of XFree86v1.2, under Mach 3.0.

Thanks
Brian

Newsgroup: comp.windows.x
document_id: 67372
From: darcym@fpddet4.mentorg.com (Darcy McCallum)
Subject: Keyboard mapping and window placement questions

These are two common subjects so I hope someone has had to deal with these
specific questions.

1.  If my application depends on modifiers, what is the best lookup method?
My choices are to call XGetModifierMapping() for each key press with a 
modifier, or make the call once at the init of the app and store the modifiers
in a lookup table.  I would like to do it the second way, but I can't seem to
get the notify when the user uses xmodmap to remap the modifiers.  I know that
when an app calls XSetModifierMapping() a MappingNotify event is generated
(non-maskable) which I can pick up and modify my internal table.  But, I don't
seem to get any notify events when the user uses xmodmap.  If I use Xt, all 
O'Reilly has to say is '...is automatically handled by Xt...'.  If I use Xlib, ala XNextEvent(), I get nothing.  This all stems from problems with users of 
the Sun 4/5 keyboard and the NumLock; plus various Alt/Meta/etc. modifier 
requirements.

2.  I would like to place a popup so that it will be to the immediate right
of my main window.  I want it at the same y coord, and their right/left
sides touching.  What I need to ask for is the x,y coord of the window 
manager's border for the main window.  This should ring a bell with anyone
who has called XtMoveWidget(), immediately checking the x,y after the move
and seeing that it is right, and in their next callback asking for the x,y
and seeing that it is now offset by the WM border.

Any help would be most appreciated.

Darcy
darcy_mccallum@mentorg.com

Newsgroup: comp.windows.x
document_id: 67373
From: hans@xelion.nl (Hans Bos)
Subject: Save Under with X11R5

I have the following problem on X11R5 servers.

When a window of my is obscured by a pop up window which has
the Save Under attribute set, the subwindows of my window are not restored.

Normally, the subwindows are redrawn when the parent window gets an expose
event, but because the save under attribute is used for the pop up window
that obscured my window, no expose event is sent.

When ExposureMask is set for the child windows, those windows are correctly
updated when the popup window disappears, however then the application
gets too many expose events and you see extra redraws.

Everything works fine with X11R4.

Is this something that is changed between X11R4 and X11R5 (obvious)?
Is it something I do wrong?
Is there something that the popup window should do (which is also mine)?
Is this a bug in X11 release 5?

Greetings,
-- 
----------------------------------------------------------------------
Hans Bos                     	   domain : hans@xelion.nl
Xelion BV                          uucp   : ...!sun4nl!xelion!hans
Postbus 88                         phone  : +31 15 622121

Newsgroup: comp.windows.x
document_id: 67374
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Overriding default WM Behaviour


I posted this about tow weeks ago but never saw it make it (Then again
I've had some problems with the mail system). Apologies if this appears
for the second time:

Usually when I start up an application, I first get the window outline
on my display. I then have to click on the mouse button to actually
place the window on the screen. Yet when I specify the -geometry 
option the window appears right away, the properties specified by
the -geometry argument. The question now is:

How can I override the intermediary step of the user having to specify
window position with a mouseclick? I've tried explicitly setting window
size and position, but that did alter the normal program behaviour.

Thanks for any hints
---> Robert

PS: I'm working in plain X, using tvtwm.



******************************************************************************
* Robert Gasch        * Der erste Mai ist der Tag an dem die Stadt ins      *
* Oracle Engineering   * Freihe tritt und den staatlichen Monopolanspruch    *
* De Meern, NL        * auf Gewalt in Frage stellt                          *
* rgasch@nl.oracle.com *                           - Einstuerzende Neubauten *
******************************************************************************


----------------------- Headers ------------------------
>From uupsi7!expo.lcs.mit.edu!xpert-mailer Thu Apr 22 17:24:28 1993 remote from aolsys
Received: from uupsi7 by aolsys.aol.com id aa19841; Thu, 22 Apr 93 17:10:35 EDT
Received: from srmftp.psi.com by uu7.psi.com (5.65b/4.0.071791-PSI/PSINet) via SMTP;
        id AA02784 for ; Thu, 22 Apr 93 12:04:36 -0400
Received: from expo.lcs.mit.edu by srmftp.psi.com (4.1/3.1.072291-PSI/PSINet)
 id AA17104; Thu, 22 Apr 93 10:19:31 EDT
Received: by expo.lcs.mit.edu; Thu, 22 Apr 93 06:57:38 -0400
Received: from ENTERPOOP.MIT.EDU by expo.lcs.mit.edu; Thu, 22 Apr 93 06:57:37 -0400
Received: by enterpoop.MIT.EDU (5.57/4.7) id AA27271; Thu, 22 Apr 93 06:57:14 -0400
Received: from USENET by enterpoop with netnewsfor xpert@expo.lcs.mit.edu (xpert@expo.lcs.mit.edu);contact usenet@enterpoop if you have questions.
To: xpert@expo.lcs.mit.edu
Date: 22 Apr 93 08:09:35 GMT
From: rgasch@nl.oracle.com (Robert Gasch)
Message-Id: <3873@nlsun1.oracle.nl>
Organization: Oracle Europe
Subject: Overriding Default Behaviour


Newsgroup: comp.windows.x
document_id: 67375
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: X Toolkits

Excerpts from misc: 27-Apr-93 Re: X Toolkits Sivesh Pradhaan@rebels.b (423)

> I do not have finger!!! So is there any other way of accessing this service 
> like mail server or telnet or ftp?

You can use telnet:

% xhost +atk.itc.cmu.edu
% telnet atk.itc.cmu.edu 79
run-demo

Newsgroup: comp.windows.x
document_id: 67376
From: lakshman@ms.uky.edu (Lakshman K)
Subject: Realtime X-tensions

Hi,
	Iam looking for information on any work that deals with real-time
support in X-windows????!!
	Would be happy if you could provide any pointers or information
thanks
Lakshman
lakshman@ms.uky.edu 


Newsgroup: comp.windows.x
document_id: 67377
From: neal@grover.stat.washington.edu (Phil Neal)
Subject: Wierd xdm behavior

Dear sun and windows people,

I am running sun workstations with SunOs 4.1.1 and 
vanilla X11 R5. I have a bunch of xterminals as well.

Today I had my xdm fail. At about 9:30
it was impossible to login to a host from an xterminal.
The message was the "xdm too many retransmissions".
In my xdm-errors file I had the following entries:


  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256
  >error (pid 7927): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >
  >I also had:
  >
  >error (pid 7457): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256
  >error (pid 7462): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256

Also, at the console, the login box would come up for
about 2 seconds and then
it would go away. It would do this continuously.

I could login from another workstation to the hosts in question,
however, I could not login on the console.

I tried killing xdm and restarting it but that didn't help.
I finally rebooted all the hosts. (Which hurts when done in the
middle of the day).

Any help would be appreciated.

Thanks,
Phil 
-- 
Phil Neal, Systems Programmer, Statistics Department GN-22
University of Washington, Seattle, Wa. 98195 USA  | 206-685-1627
----------------------------------------------------------------
"Look, another bit!" -- Repo Man (the movie)

Newsgroup: comp.windows.x
document_id: 67378
From: black@westford.ccur.com (Samuel Black)
Subject: Re: Realtime X-tensions

>	I am looking for information on any work that deals with real-time
>	support in X-windows????!!
>	Would be happy if you could provide any pointers or information

Concurrent has a product called RealTimeX (tm) that is a set of real-time
extensions to the X Window System.  RealTimeX is currently supported on
the Concurrent Series 7000 and Series 8000 with the GA5000 graphics
accelerator.  If you need/want more info, let me know.

		- sam black

-------------------------------------------------------------------------------
Once you remove the absurdity from human existence, there isn't much left.
		     __________
		    /  _______/__
		   /__/______/  /	black@westford.ccur.com
	  Concurrent /_________/
	Computer Corporation
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67379
From: moore@halley.est.3m.com (Richard Moore)
Subject: Re: X interactive performance

For image display, about 10 frames per second seems to be the lower limit
for interactive operations. For just bringing up an image for viewing less
than 1 second seems to be a good number. Of course the measure of response
time should be based on the applications you are planning to run.

Newsgroup: comp.windows.x
document_id: 67380
From: panvalka@cs.unc.edu (Anay Panvalkar)
Subject: Frame buffer question for X11R5 (Sun)

X Window installation on a Sun4/470 with CG6 alone and with CG2 as
screen:0.0 and CG6 as screen:0.1.

Questions:
1)  Are there any hardware configuration changes on the CG2 and/or
CG6 devices that need to be made other than pulling out and inserting the
CG2 frame buffer in the vme bus?

2)  The CG6 is called a 'graphics accelerator' as apposed to a 'frame buffer'.
What is the significance of this to the X server and how do we install
the SunOS driver / X to be compatable.

-----------------------
I would appreciate any information on this. 
I am posting this on the behalf of Dr. John Charlton (who does not have net
access). Please reply to him directly at charlton@bme.unc.edu or just send
it at this address and I will forward it. 

Thank you for your help!

-Anay
panvalka@cs.unc.edu

Newsgroup: comp.windows.x
document_id: 67381
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: 4-plane Xterminal (Do I want one?)

In article <C63srv.57w@watserv1.uwaterloo.ca> chudel@watarts.uwaterloo.ca (Chris Hudel) writes:
>
>
>PS: all R5 apps run on R4/R3 servers,right?

The 4-bit server should work fine.  As far as I know, Xterminals
running older versions can run the latest apps as long as the host 
machine has the R5 libraries installed. I could be wrong though.
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
document_id: 67382
From: gse9k@uvacs.cs.Virginia.EDU (Scott Evans)
Subject: MenuButton Widget Question

I'm trying to create a button that has both a label and a bitmap using
the MenuButton widget.  Is this possible?  Right now, all I get is the
bitmap -- no sign of the label.

Any help would be appreciated.



scott

Newsgroup: comp.windows.x
document_id: 67383
From: herlock@lclark.edu (Jon Herlocker)
Subject: How to access 24-bit color on cg8?

We have a Sun 3/80 and we have just acquired a cg8 frame buffer card.

The cg8 is supposed to support both a 24-bit color visual and a monochrome visual.
The default visual for the xnews server is the monochrome, and we are unable to change it to
the 24-bit visual. We have tried using XGetVisualInfo to get a visual of depth 24, but had no
success.  xdpyinfo gives no information about a 24-bit deep visual, only monochrome. 

There are two possible solutions:
	If someone has patches for X11R5 Xsun server, could they forward them to us?

	Otherwise, could someone instruct us how to access the 24-bit color in openwindows?
-- 
Jon Herlocker		email:  herlock@lclark.edu
Lewis & Clark College
Portland, OR 97219

Newsgroup: comp.windows.x
document_id: 67384
From: joel@zodiac.z-code.COM (Joel Reymont)
Subject: Xsun not finding default font (Sol2.1)

Hi, netters!

I've just built X11R5 pl 21 under Solaris 2.1. I've used the multi-screen 
patch, as well as the R5.SunOS... patch and everything builds great, except 
for that error message Xsun gives me upon startup. It says: 
"Cannot set default font path '[stuff deleted]'" and "Cannot set default font
'fixed'". If I supply the -fp option, it doesn't complain about the font path
but still complains about the font. I have symlinks from /usr/lib/ to the 
place where my distribution lives.

Could somebody help me?

	-joel

-- 
-----------------------------------------------------------------------------
Joel Reymont    !   Z-Code Software Corporation    ! e-mail: joel@z-code.com 
-----------------------------------------------------------------------------
4340 Redwood Hwy, Suit B.50, San Rafael, CA 94903
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67385
From: saint@mitchell.hac.com (Kathy Saint)
Subject: Callback parameter problem after X11R5 upgrade


We've just recently upgraded our X11 to R5 and are now running into problems
with some of our applications that use Motif 1.1.  It appears that pointer to
the widget being passed to the callback function (i.e., the "w" of
(w, client, call) ) is nil.  The client and call pointers are okay in some
instances, but bogus in other instances.

We are running SunOS 4.1.2 on a Sun 4.  After compiling X11R5 and all 23
patches (with the MotifBC flag set), we recompiled Motif and then we 
recompiled the application.

Did we skip a step or leave something out?  Is there a flag that we should
have used?  Should we have left Motif alone?

Any answers or suggestions would be greatly appreciated.

Thanks
Kathy

==============================================================================
Kathy Saint             ||  "She's a witch!! She's a witch!!."
"I'm not dead yet."     ||  "How can you tell she's a witch?"
                        ||  "She looks like one!!"
saint@mitchell.hac.com  ||      - "Monthy Python & the Holy Grail"

Newsgroup: comp.windows.x
document_id: 67386
From: gpatapis@boyd.tansu.com.au (George Patapis)
Subject: Re: DESQview/X on a PC and network Traffic


In article 1369@qdeck.com, support@qdeck.com (Technical Support) writes:
>In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>
>>What sort of traffic is generated with the X-calls?  I am curious to find
>>out the required bandwidth that a link must have  if one machine running
>>DV/X is supporting multiple users (clients) and we require adequate response
>>time.  Anyone have any ideas ??  
>
>I expect the limiting factor will be your server machine, not the network
>itself. To give you a real-world example, here at Quarterdeck we have
>roughly 100 people using DVX to talk to a bunch of unix boxes, novell
>file servers, and each other. It's not _too_ much of a load on our
>Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
>segment). If you had a badly loaded net, or the apps you wanted to run
>were very network intensive, you could run into some slowdowns.
>
>But the biggest problem would be the machine itself. Say you have a 486
>33 with plenty of ram and a fast hard disk and network card. If you have
>10 people running programs off it, you're going to see some slowdowns
>because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
>attempt to see if tasks are idle and make sure they give up their time
>slice, but if you have 10 working programs running, you'll know it.
>

Well I can buy a bigger and more powerful server machine because of the 
significant drop in price year after year.  The link I want to use 
though (ISDN 64K) is costly and the bandwidth limited.  That's why my
interest lies in seeing if such a link can be used and see what traffic 
goes through it.


>Having said that, if you can tweak the programs being run (by adding
>in calls to give up time slices when idle and that sort of
>thing), you could probably run 15-20 people on a given machine before
>you started seeing slowdowns again (this time from network bandwidth).

Hmmm.  Has anyone at your centre monitored the traffic at all?  Are you
running any standard MS-Windows programs like Word ?  What sort of 
packets go blazing through? What size link do you have (2Mb or 10Mb ?).
What is the average traffic flow going through your network or do you
have few high peaks and then many low points?


>It all really depends on what the programs are doing (ie. you're going
>to see a slowdown from X-bandwidth a lot sooner if your apps are all
>doing network things also...)
>-- 

What do you mean by network things?  I vision using MS Windows and other
Windows applications over the network were the processes are running on
the server and all I am getting are the displays.  I am wondering how 
good is the X and subsequently DV/X protocol in transferring these 
images with X-calls and displaying them on a client's machine.


>       Quarterdeck Office Systems - Internet Support - Tom Bortels
> Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
>  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
>   Q/Fax: (310) 314-3214 from touch-tone phone for Technotes On Demand!




---
__/ __/ George Patapis ---------------------PAN METRON ARISTON---------- __/ __/
__/ __/ Telecom C.S.S.C Lane Cove---email:gpatapis@cssc-syd.tansu.com.au __/ __/
__/ __/ P.O.Box A792 Sydney South --fax  :(02) 911 3 199---------------- __/ __/
__/ __/ NSW, 2000, Australia.-------voice:(02) 911 3 121---------------- __/ __/



Newsgroup: comp.windows.x
document_id: 67387
From: ron@cr.CRic.COM (R Lundstrom)
Subject: REQUEST UNSUBSCRIBE

Please remove me from this mailing list - we finally
got our news feed!

	Ron L.

--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ron Lundstrom  Collaborative Research Inc.  617-487-7979 x148  %
% ron@cric.com        1365 Main Street        617-891-5062 (fax) %
%                    Waltham, MA. 02154                          %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Newsgroup: comp.windows.x
document_id: 67388
From: jeffcop@i88.isc.com (Jeff Copeland)
Subject: HP Interface Architect

Hey GUI folks,

Does anyone out there have experience with the HP Interface Architect
(GUI dev tool)?  If so, can I call you and ask a couple of quick
questions?  I promise I'll be brief, the questions are simple, and of
course I'll call on my nickel.

Jeff Copeland
jeffcop@i88.isc.com

708-505-9100 x330
INTERACTIVE Systems Corp. (now a Systemhouse co.)
-- 
Jeff Copeland
jeffcop@i88.isc.com          708-505-9100   x330

Newsgroup: comp.windows.x
document_id: 67389
From: bradley@grip.cis.upenn.edu (John Bradley)
Subject: XV 3.00 has escaped!

No, not another false alarm, not a "It'll certainly be done by *next* week"
message...  No, this is the real thing.  I repeat, this is *not* a drill!

Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
finally escaped.  I was cleaning its cage this morning when it overpowered
me, broke down the office door, and fled the lab.  It was last seen heading
in the general direction of export.lcs.mit.edu at nearly 30k per second...

If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.

Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.

--jhb

Newsgroup: comp.windows.x
document_id: 67390
From: vaughan@ewd.dsto.gov.au (Vaughan Clarkson)
Subject: Connecting a digitiser to X (REPOST)

Hi there

(I posted this to comp.windows.x.intrinsics but got no response, so I'm posting
here.)

I'm wanting to connect a digitiser made for PCs into my workstation (an HP 720).
It is my understanding the X windows can understand a variety of input devices
including digitiser tablets.  However, this digitiser makes use of the serial
port, so there would seem to be a need to have a special device driver.

The HP manual pages say that the HP X server will accept X input from
devices listed in the /usr/lib/X11/X*devices file (* = display number).
I shouldn't think I would be able to simply insert /dev/rs232c as an input
device in this file and expect a digitiser to work.  But maybe I'm wrong.  Am I?

What I would like to know is: does anybody out there have a digitiser connected
to their workstation for use as a pointer for X (rather than just as input to a
specific X application)?  If so, what were the steps required for installation?
Did you need a special device driver?  Did the manufacturer supply it?  Are
there generic public domain device drivers around?  (I understand that
digitisers generally use only a couple of standard formats.)

Any help would be greatly appreciated.

Cheers
- Vaughan

-- 
Vaughan Clarkson                  ___________    Email: vaughan@ewd.dsto.gov.au
Engineering Ph.D. Student              |                  Phone: +61-8-259-6486
& Glider Pilot			       ^                    Fax: +61-8-259-5254
     ---------------------------------(_)---------------------------------

Newsgroup: comp.windows.x
document_id: 67391
From: fabian@vivian.w.open.de (Fabian Hoppe)
Subject: Searching CAD-software

Hi out there!

I'm looking for (mechanic-construction)CAD-software either PD-sources
or Sun 3-binaries (respective the licence.. :-).
Who knows _ANY_ package (and a source/site to get it..) ?

Thx, Fabian

-- 
Fabian Hoppe				Phone  : ++49 2332 12580
Elsternstr. 57				Fax    : ++49 2332 83741
W-5820 Gevelsberg			EMail  : fabian@vivian.w.open.de
Germany

Newsgroup: comp.windows.x
document_id: 67392
From: fish@daacdev1.stx.com (John Vanderpool)
Subject: is there a simple way to check what action a mouse button will take?

w/o actually executing it? somehow one of my xterminal users has made it
so that a click of MB3 (right) automatically kills all clients - oh my :-(

		thanx,
			fish
--
John R. Vanderpool     INTERNET: fish@eosdata.gsfc.nasa.gov
NASA/GSFC/HSTX         VOX: 301-513-1683                
"So you run, and you run, to catch up with the sun, but it's sinking,
 racing around to come up behind you again." -rw/dg

Newsgroup: comp.windows.x
document_id: 67393
From: fish@daacdev1.stx.com (John Vanderpool)
Subject: anybody have patched version of xroach for tvtwm???

i read about the code you can put in to most applications so that
the virtual desktop stuff in tvtwm doesn't confuse them (or is the
application confusing the virtual-ness? [chicken & the egg?]

but wanted to see if it has been applied to a version of xroach

i never could quite get ssetroot to work either? any suggestions.
luckily xv -root -quit does the trick for the most part

also, i'ld be quite interested in hearing more about the icon region
for each virtual window under tvtwm that i read a thread on last week
here
	thanx,
		fish
--
John R. Vanderpool     INTERNET: fish@eosdata.gsfc.nasa.gov
NASA/GSFC/HSTX         VOX: 301-513-1683                
"So you run, and you run, to catch up with the sun, but it's sinking,
 racing around to come up behind you again." -rw/dg

Newsgroup: comp.windows.x
document_id: 67394
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: SUMMARY: virtual mouse in ol{v}wm

I got the following today from Gary Risebrough and it worked fine:

Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
ITO2@aodc.gov.au (554)

> hi,

> With regard to :
> > I have the following lines in my .Xresources:
> > olwm.KeyboardCommands: Full
> > olvwm.KeyboardCommands: Full
> > olwm.GrabVirtualKeys:  true
> > olvwm.GrabVirtualKeys: true

> I have :
> > OpenWindows.KeyboardCommands:   Full
> > OpenWindows.VirtualGrabKeys :   False

> which seems to work.

> Cheers!
> ----------
> Gary Riseborough                         Phone :  +61 2 563  gary@AODC.gov.au



Newsgroup: comp.windows.x
document_id: 67395
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: Problem with xterm, no access to tty


I'm running xterm under X11R5, Motif 1.1, mwm and UNIX SVR4 on a UNISYS
386 based machine. My default shell is /bin/csh or the C shell. Whenever
I run xterm, I get the following message before the first C shell prompt:

Warning: no access to tty; thus no job control in this shell...

After this, I can't run any job control commands like fg, bg etc. Also,
I can't run another xterm from the command line of this xterm (I can only
launch additional xterms from a .mwmrc menu).

I'd appreciate some help with this problem, or pointers to where I can get
some help. By the way, my environment variable TERM is set to xterm.

----------------------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com

Newsgroup: comp.windows.x
document_id: 67396
From: sgreene@nimbus.com (Spencer Greene)
Subject: How can I change sun/cgthree fb writes to dword?

Hello Xperts out there.
I've just built X11R5 for SunOS 4.1.1/SPARC.
I have gcc-2.2 and I'd like to use its 64-bit capability
to generate an X11 release which will render to the frame
buffer using store-double (64-bit) machine code.
Can anyone tell me which directories/source files/
compiler switches to begin with?

thanks in advance
-- 
- Spencer Greene                                          +1 408 727 5445 -
- Nimbus Technology Inc.                               sgreene@nimbus.com -
- Santa Clara, California USA            {sgiblab,ub-gate}!c2tech!sgreene -
- "Patriotism is the last refuge of a scoundrel."    --Dr. Samuel Johnson -

Newsgroup: comp.windows.x
document_id: 67397
Subject: Re: XV 3.00 has escaped!
From: sands@ccu1.aukuni.ac.nz (Greg Sands)

bradley@grip.cis.upenn.edu (John Bradley) writes:

>If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.

Before I even think about getting this, is it going to be posted to 
comp.sources.x at any time in the near future?  

Greg.

-- 
Greg Sands.                           |  Department of Engineering Science
-----------                           |  University of Auckland           
g.sands@auckland.ac.nz                |  New Zealand.

Newsgroup: comp.windows.x
document_id: 67398
Subject: Re-entrancy of Xlib functions. Known problem???
From: visser@eedwsa.itwol.bhp.com.au (Martin Visser)

I've found a problem in the use of Xlib functions regarding re-entrancy. I
decided to implement an animated cursor (using 6 created cursors) by calling
XDefineCursor from a SIG_ALRM signal handler. This is used to indicate we are
waiting for a operator request to complete. (on a production control system).
I was redrawing the screen underneath the animated cursor and then restoring
the standard cursor when complete. I found dumped core , and upon analysis
it was when the SIG_ALRM handler was called during a XDrawString call. XDrawString
was doing a bcopy (presumably an internal structure) when the XDefineCursor
was called. Presumably the (internal) structure that XDrawString was manipulating
was not in a stable state and sent XDefineCursor to where it shouldn't have been.

Has anyone else experienced this? Is there any official documentation that
says you should ensure this doesn't happen? Or should bcopy() be atomic.
We are running on SGI Irix 4.0.1 with X11R4.



-- 
Regards, Martin

   /\/\     :  Martin Visser - Electrical / Software Engineer 
  / / /\    :  Engineering Technology Department
 / / /  \   :  BHP Steel - Slab and Plate Products Division
/ / / /\ \  :  P.O. Box 1854 Wollongong NSW 2500 AUSTRALIA
\ \/ / / /  :  Phone    +61-42-75-7522 ext. 6207
 \  / / /   :  Fax      +61-42-75-7038 
  \/\/\/    :  E-mail   visser@itwol.bhp.com.au

Newsgroup: comp.windows.x
document_id: 67399
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Imake-TeX: looking for beta testers

In article <1rl3efINNl7p@fbi-news.Informatik.Uni-Dortmund.DE>,
klute@tommy.informatik.uni-dortmund.de (Rainer Klute) writes:
|> As I announced at the X Technical Conference in January, I would like
|> to
|> make Imake-TeX, the Imake support for using the TeX typesetting system,
|> publically available. Currently Imake-TeX is in beta test here at the
|> computer science department of Dortmund University, and I am looking
|> for
|> some more beta testers, preferably with different TeX and Imake
|> installations.

Judging from the responses so far, I have not made clear enough in my
article quoted above that Imake-TeX is not for installing TeX, but for
*using* it. With Imake-TeX, you will never again have to fiddle around with
calling latex and its various utility programs (makeindex, bibtex). Simply
type "make" and your document's DVI file will be up-to-date. All you have
to do is to write a simple Imakefile and let Imake generate a suitable
Makefile for you. Here is such an Imakefile:

	#include "TeX.tmpl"
	PaperFormatA4()
	SimpleLatexTarget(document)

The generated Makefile provides the following commands:

    make depend:    Searching the TeX source files for dependencies like
                    \input{somefile}

    make dvi:       Generate an up-to-date DVI file

    make viewdvi:   Display it on your screen

    make ps:        Generate a PostScript version of your document

    make viewps:    Display it

    make clean:     Remove unnecessary things

    make veryclean: Remove even the DVI file

    make Makefiles: Generate Makefiles in subdirectories


If ...

a) ...this seems attractive to you,
b) ...you are willing to test Imake-TeX and send me a short test report,
c) ...you are willing to cope with a rudimentary English documentation
   (however, the German version is completed and included),

then you are invited as a beta tester. I am looking forward to your e-mail.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67400
From: vallot@chine.ilog.fr (Joseph Vallot)
Subject: Re: XV 3.00 has escaped!


In article <123645@netnews.upenn.edu>, bradley@grip.cis.upenn.edu (John
Bradley) writes:
|> From: bradley@grip.cis.upenn.edu (John Bradley)
|> Subject: XV 3.00 has escaped!
|> Date: 28 Apr 93 01:27:46 GMT
|> 
|> No, not another false alarm, not a "It'll certainly be done by *next* week"
|> message...  No, this is the real thing.  I repeat, this is *not* a drill!
|> 
|> Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
|> finally escaped.  I was cleaning its cage this morning when it overpowered
|> me, broke down the office door, and fled the lab.  It was last seen heading
|> in the general direction of export.lcs.mit.edu at nearly 30k per second...
|> 
|> If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
|> 
|> Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.
|> 
|> --jhb

Newsgroup: comp.windows.x
document_id: 67401
From: p7003ag@sun1.LRZ-Muenchen.DE
Subject: German keyboard ALT-GR ?


Hi ppl,

I am running XFree386 under Linux SLS1.0 and am trying to get the german
keyboard working. I have already recompiled my kernel and the german
keyboard in the textmode works just fine.
I have found out, that there is a preconfigured german keymap for X
called Xmodmap.gr in /usr/lib/X11, so I ran xmodmap /usr/lib/X11/Xmodmap.gr.
My first impression was very good, I was able to get Z and Y straight :)
There's still a little problem I can't solve however:
I cannot get at the backslash, bar, brackets and curly brackets.
The ALT-GR key doesn't seem to work.
I tried xev to find out whether it produces an event at all and it does.
Looking up its keycode (113) in the Xmodmap I found the entry "Mode_switch"
which doesn't ring any bell. The entries for the keys I cannot use seem
to be correct. Example: keycode XX = ssharp questn backslash
The first 2 entries I can even get at. The first one is the unmodified
key and the second is the key with shift, but what is the 3rd??
My guess is that it should be the key with ALT-GR but it isn't.
If anybody has run into similar problems and knows how to solve them,
help would be appreciated.

CU

Alaric

Newsgroup: comp.windows.x
document_id: 67402
From: 9130037@golum.riv.csu.edu.au (CHAN Yin Mei)
Subject: Help! Anything about X.

From 9150618 Thu Apr 29 16:36:43 1993
Date: Thu, 29 Apr 1993 16:36:42 +1000
From: 9150618 (Gavin Fairlamb)
To: 9130037
Status: R


Hello, folks...
        I am doing a uni. project and was wondering if you could
   supply with some specific info. or references for info. regarding
   		1). Considerations for installation of XWindows in
		a HP 9000(unknown model)
                2). Motif, OPENLOOK, XToolkit????
                3). X11, X11R.... 
                4). Glossary of any term on X 
	We considering this software for the project which deals
     in image analysis...

     Any info. would be greatly appreciated.

        Please email to 9130037@golum.riv.csu.edu.au

 	


Newsgroup: comp.windows.x
document_id: 67403
From: 9130037@golum.riv.csu.edu.au (CHAN Yin Mei)
Subject: Help! Anything about X.

From 9150618 Thu Apr 29 16:36:43 1993
Date: Thu, 29 Apr 1993 16:36:42 +1000
From: 9150618 (Gavin Fairlamb)
To: 9130037
Status: R


Hello, folks...
        I am doing a uni. project and was wondering if you could
   supply with some specific info. or references for info. regarding
   		1). Considerations for installation of XWindows in
		a HP 9000(unknown model)
                2). Motif, OPENLOOK, XToolkit, Linux????
                3). X11, X11R.... 
                4). Glossary of any term on X 
	We considering this software for the project which deals
     in image analysis...

     Any info. would be greatly appreciated.

        Please email to 9130037@golum.riv.csu.edu.au

 	


Newsgroup: comp.windows.x
document_id: 67404
From: spatel@cs.tamu.edu (Samir K Patel)
Subject: Background Processing in X Applications

I have written a server program which makes socket connections to many nodes
and collects data from that nodes periodically. I need to display this data on
my X Application. I tried
to invoke this server using XtAddAppTimeout which works ok. But the
problem here is some time there is delay in collecting data. So I doesn't
returns to EventLoop during that time and my application remains busy and
It doesn't respond to users input. I button press events are queued and
exected after server finished its task. Now I am going to try AppAddInput
call. So that It reads pipe only when there is something to read in pipe.

I am thinking of creating one pipe in which server will write and client
which is my X application will read. Now I have some doubts which you may
be able to clarify.

1) When I fork a process. It will create to copy of my process. Right !!
   Now what does this two copies mean? Two Shells. Where should I fork
   my application. What are the responsibilities of this processes. How
   should I call this processes.?

2) Can I fork more than one processes. So that I can read from more
   than one servers input.

Thanks

Samir Patel

/////////////////////////////////////////////////////////////////////////////

spatel@cs.tamu.edu

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Newsgroup: comp.windows.x
document_id: 67405
From: restrugo@netcom.com (Ramiro Estrugo)
Subject: Sources for vuewm gadgets

Does anyone know any sites/resources where I can find gadgets for the vuewm
window manager?  Such as types,actions,icons for the file manager and
event manager...etc....


tanks, all input appreciated....


Newsgroup: comp.windows.x
document_id: 67406
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Xsun not finding default font (Sol2.1)

joel@zodiac.z-code.COM (Joel Reymont) writes:

>Hi, netters!

>I've just built X11R5 pl 21 under Solaris 2.1. I've used the multi-screen 
>patch, as well as the R5.SunOS... patch and everything builds great, except 
>for that error message Xsun gives me upon startup. It says: 
>"Cannot set default font path '[stuff deleted]'" and "Cannot set default font
>'fixed'". If I supply the -fp option, it doesn't complain about the font path
>but still complains about the font. I have symlinks from /usr/lib/ to the 
>place where my distribution lives.

Try to run Xsun under truss(1).

	The best way to do this is by logging in over the network
	and typing:

	truss -t open Xsun

open("/opt/X11R5/lib/X11/fonts/misc/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/Speedo/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/Speedo/fonts.alias", O_RDONLY, 0666) Err#2 ENOENT
open("/opt/X11R5/lib/X11/fonts/75dpi/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/75dpi/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/100dpi/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/100dpi/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/6x13.pcf", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/cursor.pcf", O_RDONLY, 0666) = 8

This will give you and idea of where Xsun things the fonts should be.

If you have defined  a project root and done a make install, everything
should have gone right by default, even without symbolic links.

Casper

Newsgroup: comp.windows.x
document_id: 67407
From: wilde@bernina.tik.ethz.ch (Erik Wilde)
Subject: X audio extension

Is there an "official extension" to X which allows the use of audio? Most
of the X audio programs use system-specific ways to access the audio
capabilities of the computer they run on. Is there a hardware-independent
way to do this (like the video extension XV)? Thanks for any help.

Erik Wilde (wilde@tik.ethz.ch)
  Swiss Federal Institute of Technology   (ETH Zuerich)
  Laboratory of Computer Engineering and Networks (TIK)
  ETH-Zentrum, ETZ G61.2, CH - 8092 Zuerich
  Phone: +41-1-254-7009  Fax: +41-1-251-2504

Newsgroup: comp.windows.x
document_id: 67408
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Imake-TeX: looking for beta testers

As I announced at the X Technical Conference in January, I would like to
make Imake-TeX, the Imake support for using the TeX typesetting system,
publically available. Currently Imake-TeX is in beta test here at the
computer science department of Dortmund University, and I am looking for
some more beta testers, preferably with different TeX and Imake
installations.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67409
From: marcus@iiasa.ac.at (Marcus SCHNELL)
Subject: Re: Save Under with X11R5

Hans Bos (hans@xelion.nl) wrote:
: I have the following problem on X11R5 servers.
: 
: When a window of my is obscured by a pop up window which has
: the Save Under attribute set, the subwindows of my window are not restored.
: Normally, the subwindows are redrawn when the parent window gets an expose
: event, but because the save under attribute is used for the pop up window
: that obscured my window, no expose event is sent.

We had the same problem and on most of our machines it works if we use
Backing Store instead of Save under.

Marcus

*****************************************************************
*    Marcus Schnell                         marcus@iiasa.ac.at  *
*    International Institute for Applied Systems Analysis IIASA *
*    A-2361 Laxenburg AUSTRIA                                   *
*    Phone   : (+43 2236) 715 21 *487                           *
*    FAX     : (+43 2236) 731 48                                *
*    Vice-Commissioner of the Australian Rules Internet         *
*      Football League (ARIFL) 1992, 1993, ...                  *
*****************************************************************


Newsgroup: comp.windows.x
document_id: 67410
From: deepak@expert.cc.purdue.edu (Deepak Mulchandani)
Subject: Help in developing a X-Windows interface for GDB

Hi,

  I am trying to write an X-windows based interface that runs on top of GDB. Could 
anyone help me in understanding the way we are supposed to "fork" GDB off as a 
subprocess ?? I currently use pipes but when I try and debug this program, the 
following happens :

PROGRAM :

	main()
	{
           int x;
 

	   printf("enter x : ");
           scanf("%d", &x);
           printf("x = .%d.\n", x );

        }

OUTPUT :

	The program hangs without returning the output of the printf statement. When I type
in a value (like 5), then all the printf's output comes out at one time.


Is there any other way, besides using PIPES to do this i.e., like ioctl or something else ??

Thanks,

Deepak

--------------------------------------------------------------------------------------------
Deepak Mulchandani
Advanced Products Research and Development Laboratory
Motorola, Semiconductor Products Sector
Austin, TX
(512) 928-7642 							     deepak@inxs.sps.mot.com


Newsgroup: comp.windows.x
document_id: 67411
From: sherman@lea.csc.ncsu.edu (Chris Sherman)
Subject: Re: XV 3.00 has escaped!

In <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:

>Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
>finally escaped.  

It really bums me out that xv went shareware.

 * XV is shareware for PERSONAL USE only.  You may use XV for your own
                       ^^^^^^^^^^^^
                       What does this mean anyway?  Can I sit in a company
                       and look at pictures off the net in my spare time?

 * amusement, and if you find it nifty, useful, generally cool, or of
 * some value to you, your non-deductable donation would be greatly
 * appreciated.  $25 is the suggested donation, though, of course,
 * larger donations are quite welcome.  Folks who donate $25 or more
 * can receive a Real Nice bound copy of the XV manual for no extra
 * charge.
 *
 * Commercial, government, and institutional users MUST register their
 * copies of XV, for the exceedingly REASONABLE price of just $25 per
 * workstation/X terminal.  Site licenses are available for those who
 * wish to run XV on a large number of machines.  Contact the author
 * for more details.

Now since universities are institutions (right?), doesn't this mean that
most everyone in the world is affected by this?  (I don't believe there
are that many running X windows at home yet, relatively speaking).

Can the author legally sell xv?  Xv uses tiff and jpeg code developed
by others.  Did the author get permission to sell these works?  Did
the author also get permission from all the people who contributed to
xv to sell their work as well?

My guess is that now nobody is going to want to help the author
maintain the code anymore now that xv has become a commercial product,
and support for xv will begin to slide downhill.

If this is the case, then that's a bummer.  I really liked xv.

-- 
     ____/     /     /     __  /    _  _/    ____/
    /         /     /     /   /      /     /          Chris Sherman
   /         ___   /        _/      /          /
 _____/   __/   __/   __/ _\    _____/   _____/        sherman@lea.csc.ncsu.edu

Newsgroup: comp.windows.x
document_id: 67412
From: spang@nbivax.nbi.dk (Karsten Spang)
Subject: Cannot create 24 plane window

    Hello X'ers

I have a problem: I am not able to create a window with 24 bit planes. The
following code illustrates the problem:

#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

main()
{
        Display *display;
        Window win;
        XVisualInfo vinfo;
        Colormap colormap;
        XSetWindowAttributes attributes;
        XEvent event;
        Status status;

        display=XOpenDisplay(NULL);
        status=XMatchVisualInfo(display,DefaultScreen(display),24,TrueColor,
                &vinfo);
        if (!status){
                fprintf(stderr,"Visual not found\n");
                exit(1);
        }
        colormap=XCreateColormap(display,DefaultRootWindow(display),
                vinfo.visual,AllocNone);

        attributes.colormap=colormap;

        win=XCreateWindow(display,DefaultRootWindow(display),0,0,100,100,
                0,24,InputOutput,vinfo.visual,CWColormap,&attributes);
        XMapWindow(display,win);
        for (;;){
                XNextEvent(display,&event);
        }
}

I tried this with an SGI with 24 plane TrueColor server, and with an HP
9000-700 24 plane DirectColor server (with the obviously neccessary change),
both running X11R4. On the client side, I have tried with X11R4 Xlib on
HP 9000-700 and DECstation, and with X11R3 Xlib on DECstation. All the
combinations gave BadMatch error on the CreateWindow request.

As far as I can tell from the manual, the only attribute which may give
a BadMatch, is the colormap, if it belongs to a wrong visual. But the
visual was correctly matched, as I did not get the error message. What
am I doing wrong? For information I can tell that xwud aborts with the
same error.

                                   Karsten
-- 
--------------------------------------------------------------------------------
InterNet:       krs@kampsax.dk                             Karsten Spang
Phone:          +45 36 77 22 23                            Kampsax Data
Fax:            +45 36 77 03 01                            P.O. Box 1142
                                                           DK-2650 Hvidovre
                                                           Denmark

Newsgroup: comp.windows.x
document_id: 67413
From: lindholm@ucs.ubc.ca (George Lindholm)
Subject: Re: XV 3.00 has escaped!

In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
>No, not another false alarm, not a "It'll certainly be done by *next* week"
>message...  No, this is the real thing.  I repeat, this is *not* a drill!
>
>Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
>finally escaped.  I was cleaning its cage this morning when it overpowered
>me, broke down the office door, and fled the lab.  It was last seen heading
>in the general direction of export.lcs.mit.edu at nearly 30k per second...
>
>If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
>
>Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.

And here is the first patch :-) The following fixes some problems with the
Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
having to use the ucb stuff:

*** 1.1	1993/04/28 06:05:03
--- Imakefile	1993/04/28 08:20:35
***************
*** 209,215 ****
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! 
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
--- 209,218 ----
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! all::
! 	@echo ""
! 	@echo "  Did you remember to 'make depend' first?"
! 	@echo ""
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
***************
*** 222,238 ****
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
     MakeSubdirs($(SUBDIRS))
-    DependSubdirs($(DUBDIRS))
  #endif
  
  
  all::
- 	@echo ""
- 	@echo "  Did you remember to 'make depend' first?"
- 	@echo ""
- 
- all::
  	@echo "  building xv ..."
  	@echo ""
  
--- 225,236 ----
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
+ #  define IHaveSubdirs
     MakeSubdirs($(SUBDIRS))
  #endif
  
  
  all::
  	@echo "  building xv ..."
  	@echo ""
  
***************
*** 259,267 ****
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
- DependTarget()
    
  AllTarget($(PROGRAMS))
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
--- 257,269 ----
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
    
+ 
  AllTarget($(PROGRAMS))
+ DependTarget()
+ #ifdef IHaveSubdirs
+    DependSubdirs($(SUBDIRS))
+ #endif
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 08:19:31
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #if defined(sun) && defined(SYSV)
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(0)
+ #define PAUSE_SIG        sigpause(0)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #if defined(sun) && defined(SYSV)
+ #define random() rand()
+ #define srandom(x) srand(x)
+ #endif
  
  
  
*** 1.1	1993/04/28 06:09:50
--- xcmap.c	1993/04/28 07:09:03
***************
*** 9,15 ****
--- 9,19 ----
  
  /* include files */
  #include <stdio.h>
+ #if defined(sun) && defined(SYSV)
+ #include <string.h>
+ #else
  #include <strings.h>
+ #endif
  #include <ctype.h>
  
  #include <X11/Xos.h>
*** 1.1	1993/04/28 06:17:41
--- tiff/Imakefile	1993/04/28 08:53:34
***************
*** 49,59 ****
--- 49,69 ----
  
  tif_compress.o: Imakefile
  
+ #if HasGcc
  g3states.h: mkg3states.c t4.h
          -${RM} g3states.h
+ 	${CC} -traditional -o mkg3states ${CFLAGS} mkg3states.c
+         ./mkg3states > g3states.h || rm g3states.h
+ #else
+ g3states.h: mkg3states.c t4.h
+         -${RM} g3states.h
          ${CC} -o mkg3states ${CFLAGS} mkg3states.c
          ./mkg3states > g3states.h || rm g3states.h
+ #endif
  
  depend:: g3states.h
  
+ clean::
+ 	-${RM} mkg3states g3states.h
+ 
  DependTarget()
-- 
George Lindholm                                  phone:    (604) 822-4375
University Computing Services, UBC               fax:      (604) 822-5116
6356 Agricultural Road, Vancouver, B.C., Canada  internet: lindholm@ucs.ubc.ca
V6T 1Z2                                          bitnet:   USERGNL@UBCMTSG

Newsgroup: comp.windows.x
document_id: 67414
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-Server documentaion

Where can I get documentation about the X-Server-Internals?
BTW, I'm also interested in documentation about TIGA.

Any hints welcome.

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 67415
From: J.K.Wight@newcastle.ac.UK (Jim Wight)
Subject: Re: MenuButton Widget Question

Scott Evans <server.cs.Virginia.EDU> writes:
> I'm trying to create a button that has both a label and a bitmap using
> the MenuButton widget.  Is this possible?  Right now, all I get is the
> bitmap -- no sign of the label.

That's expected. The first sentence describing the bitmap resource in the
MenuButton section of the "Athena Widget Set - C Language Interface"
documentation states

      bitmap      A bitmap to display instead of the label.

One way round this might be to make use of the button's backgroundPixmap
resource, but remember that you, or a user of your application, won't be able
to set it from a resource file. Also, the button won't automatically be the
size of the bitmap. The bitmap will be tiled if necessary, or you could set the
button's dimensions to match its size.

Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232



Newsgroup: comp.windows.x
document_id: 67416
From: julian@comp.lancs.ac.uk (Julian G. Self)
Subject: Re: XV 3.00 has escaped!

Wasn't the shareware fee a "suggestion" by John?
Is so then it's up to the individual to make the choice whether or not to
honour it and part with money.  Personally if I was in his position I would
do exactly the same thing, John has obviously put in lot of time and effort
into xv and why shouldn't he receive some money for it.

Just my pennies worth

(Keep up the good work John)


	Julian


-- 
NAME:   Julian G. Self                  PHONE: +44 524 65201 ext 3141
EMAIL:  julian@comp.lancs.ac.uk         FAX:   +44 524 381707
POST:   University of Lancaster, Department of Computing, Engineering Building,
        Bailrigg, Lancaster, Lancashire, LA1 4YR, UNITED KINGDOM.

Newsgroup: comp.windows.x
document_id: 67417
From: irishjd@nscultrix2.network.com (john d. irish)
Subject: Button sensitivity problem: MOTIF app under OpenWindows

The MOTIF application consists of multiple Transient shells as children 
of a single TopLevel shell:

+-----------+   +---------------+   +----------------+
| AppShell  |---| TopLevelShell |---| TransientShell |
+-----------+   +---------------+ | +----------------+
                                  |
                                  | +----------------+
                                  |-| TransientShell |
                                  | +----------------+
                                  |

While a Transient shell is popped-up, my application modifies the 
sensitivity of a button in the TopLevel shell which is hidden by the 
Transient shell window.  When the Transient shell is popped-down, the 
button sensitivity is correct but the button text remains unchanged 
(i.e., solid/shaded).  Subsequent selection of the button causes the 
text to revert to the correct visual state.

When tracing event messages sent to the application, many of the events 
seen under mwm are not present under OpenWindows.

If anyone has any suggestions or solutions please post or send me mail.
  Thanks!


Newsgroup: comp.windows.x
document_id: 67418
From: spang@nbivax.nbi.dk (Karsten Spang)
Subject: Re: Cannot create 24 plane window (summary)

In article <1993Apr28.100545.1217@nbivax.nbi.dk>, spang@nbivax.nbi.dk (Karsten Spang) writes:
> I have a problem: I am not able to create a window with 24 bit planes.
> ... gave BadMatch error on the CreateWindow request.
> 
> As far as I can tell from the manual, the only attribute which may give
> a BadMatch, is the colormap, if it belongs to a wrong visual. But the
> visual was correctly matched

I got several answers, the most complete was from Errol Crary 
(errolc@tv.tv.Tek.com):
>I have just looked at the R4 server listings (.../mit/server/dix/window.c )
>and there are several ways in which you can get a BadMatch error, even
>though my O'Reilly book only says "BorderWidth is nonzero for InputOnly".
>
>1- if ((class == InputOnly) && ((bw != 0) || (depth != 0)))
>
>
>2- /* Find out if the depth and visual are acceptable for this Screen */
>
>
>3- if (((vmask & (CWBorderPixmap | CWBorderPixel)) == 0) &&
>    (class != InputOnly) &&
>    (depth != pParent->drawable.depth))
>
>
>4- if (((vmask & CWColormap) == 0) &&
>    (class != InputOnly) &&
>    ((visual != ancwopt->visual) || (ancwopt->colormap == None)))
>
>
>So, 
>case 1 is InputOnly which is not your case;  it seems to be the
>     O'Reilly case.
>Case 2 should not be the case since you got the visual for the screen.
>Case 3 looks suspicious; you are giving no CWBorder... in the attribute
>     mask, and since the visual is not the parent depth, I would suspect you
>     need to supply a border pixel from the new colormap you are going to use
>     for this window.
>Case 4 does not seem to be the problem since you do supply the CWColormap
>     in the attributes.

                             Thanks for your help

                                   Karsten
-- 
--------------------------------------------------------------------------------
InterNet:       krs@kampsax.dk                             Karsten Spang
Phone:          +45 36 77 22 23                            Kampsax Data
Fax:            +45 36 77 03 01                            P.O. Box 1142
                                                           DK-2650 Hvidovre
                                                           Denmark

Newsgroup: comp.windows.x
document_id: 67419
From: tgl+@cs.cmu.edu (Tom Lane)
Subject: Re: XV 3.00 has escaped!

sherman@lea.csc.ncsu.edu (Chris Sherman) gripes:
> It really bums me out that xv went shareware.

xv's been shareware for about a year ... hadn't you noticed?
I don't have a problem with this.  John Bradley has put a *hell*
of a lot of work into xv, and if he feels that it's time to get
some monetary reward from it, that's surely his right.

> Can the author legally sell xv?  Xv uses tiff and jpeg code developed
> by others.  Did the author get permission to sell these works?

Had you bothered to consult the distribution terms of the IJG JPEG
code (which are right there in the xv distribution), you would have
observed that we specifically grant permission for use in shareware
and commercial software.  Sam Leffler's libtiff copyright also grants
permission for unrestricted use including resale.

> My guess is that now nobody is going to want to help the author
> maintain the code anymore now that xv has become a commercial product,

"Commercial"?  There's a big difference between a polite request
for a voluntary donation and commercial, it's-illegal-to-copy-this-
and-we'll-sic-our-lawyers-on-you software.

I do agree that John's readme file could be a little clearer about
what he means by personal use.

			regards, tom lane
			organizer, Independent JPEG Group

Newsgroup: comp.windows.x
document_id: 67420
From: oj@world.std.com (Oliver Jones)
Subject: Re: Xlib timeouts?

In article <ccdw.735917051@kudu> ccdw@kudu.ru.ac.za (Dave Wilson) writes:
>I am in the process of modifying an X application that uses Xlib.  I'd
>like to include a timer-driven facility (for network polling)

You have to do the same sorts of things that Xt does with its main loop.
That is, you have to rig up a timer queue, and you have to put a 
select(2) or poll(2) call in your main loop.  You can obtain the 
file descriptor of the X display connection using 
    fd = ConnectionNumber (display);

The functionality of the main loop dispatcher in Xt is quite useful.
The good news is, you can get the source and plagiarize!

Newsgroup: comp.windows.x
document_id: 67421
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

In article <0frolV200awVI3IV4s@andrew.cmu.edu> "Derrick J. Brashear" <db74+@andrew.cmu.edu> writes:
:
:I got the following today from Gary Risebrough and it worked fine:
:
:Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
:ITO2@aodc.gov.au (554)
:

:> I have :
:> > OpenWindows.KeyboardCommands:   Full
:> > OpenWindows.VirtualGrabKeys :   False
:
:> which seems to work.
:

Where can I find man pages about VirtualGrabKeys resource - it doesn't
show up in my OpenWindows 3.0 man pages...
-- 
:s 
:s Larry W. Virden                 INET: lvirden@cas.org
:s Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614

Newsgroup: comp.windows.x
document_id: 67422
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Imake-TeX: looking for beta testers

In article <1rnodlINNlde@fbi-news.Informatik.Uni-Dortmund.DE>,
klute@tommy.informatik.uni-dortmund.de (Rainer Klute) writes:
|> If ...
|> 
|> a) ...this seems attractive to you,
|> b) ...you are willing to test Imake-TeX and send me a short test
|> report,
|> c) ...you are willing to cope with a rudimentary English documentation
|>    (however, the German version is completed and included),
|> 
|> then you are invited as a beta tester. I am looking forward to your
|> e-mail.

Please don't respond anymore, I have enough beta testers now. Thank you.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
document_id: 67423
From: sysrick@orion.spd.louisville.edu (Rick McTeague)
Subject: Need help with MIT-MAGIC-COOKIE

I'm trying to turn on Xauthorization using MIT-MAGIC-COOKIE on my servers
(CPU heads, HP700RX Xterminals), but I'm running into a couple of problems.

First, at least one of our applications (Maple) doesn't seem to understand 
how to deliver the magic cookie, and won't run on a display with authorization
turned on. 

Second, we have people with client software on remote machines, and I
really don't want to hassle them with having to copy their .Xauthority
file to the remote machine... assuming that the clients there support
Xauthorization.

So, what I would like to do is turn on MIT-MAGIC-COOKIE by default, with
non-privileged users able to turn it off - dropping back to host-based
authorization.

(Yes, I know how to turn it off by changing the Xconfig file for the
heads and the Client Authorize setting for the Xterminals, but
non-privileged users can't do this.)

I've checked with the HP Support Line, and there doesn't appear to be a way.
Can anyone confirm this, or do you know of a way to accomplish what I
want?

BTW, I'm running HPUX 9.0, and Vue 3.0.

Thanks in advance,
Rick
-- 

Rick McTeague
Electrical Engineering Department, Speed Scientific School
University of Louisville, Louisville, KY 40292
(502) 588-7020

Internet: sysrick@starbase.spd.louisville.edu

Disclaimer: I'm a stand-up comedian; if anyone takes me seriously, I'm
            doing something wrong!

Newsgroup: comp.windows.x
document_id: 67424
From: malik@alvserv-2.dfki.uni-kl.de (Thomas Malik)
Subject: Re: Overriding default WM Behaviour

specify RamdomPlacement (or RandomPlace ? )
in your .tvtwmrc. This places the windows not-interactively
in pseudo - random positions on your screens.

Newsgroup: comp.windows.x
document_id: 67425
From: dus@dusws1.ctd.ornl.gov (Steinert D A)
Subject: ButtonPress/ButtonRelease events -> multiple clients

How can I capture ButtonPress/ButtonRelease events in multiple clients?
I want to know if the user is still at the display before locking the screen.
I can get  KeyPress/KeyRelease and Pointer motion events, but if the user
is pressing the mouse button in the same location (the mouse doesn't move)
I can't capture the events.  

The O'Reilly Xlib Programming Manual (vol. 1) says on page 252;
   "Only one client can select button events on any one window at one time, 
    due to the grab that automatically takes place."  

Any help would be appreciated.

Deryl Steinert
dus@ornl.gov 

Newsgroup: comp.windows.x
document_id: 67426
From: snail@lsl.co.uk
Subject: Congruent Corporation. X/Motif on Windows NT

OK, many people emailed me asking for information on Congruent Corporation's
product which allows X/Motif unix applications to function on Windows NT.
Today I was sent a telephone number by a kind person by the name of Sam (I'd
give better attribution, but the mail is in a different application on VMS :-()

The number to call in New York City is (212)431-5100

The email address is info@congruent.com

The product is NTNIX.

Other details I do not know.

They said they'd send me email info, but as yet it has not arrived. More
as I get it. Cheers Folks!
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
document_id: 67428
From: steve@smartstar.com
Subject: Motif Server for ASCII terminals

Does anyone know of an X server for character cell terminals?
Doesn't have to be anything fancy, as long is it works.

Newsgroup: comp.windows.x
document_id: 67429
From: snail@lsl.co.uk
Subject: Congruent Corporation. X/Motif more info!

Here follows a headerless (my editing) email message in full (except for the
header) sent to me by congruent corporation today. I received it about 5
minutes ago, and still haven't read it.

Have fun.
-------------------------------------------------------------------------------

Product Overview
	Allows Existing Unix/X Applications to be hosted on Windows NT
	Includes Common X Support Clients
	Supports X Terminals
	Provides Multiuser NT
	Facilitates Porting Unix/X Applications to Window NT
	BSD Behavior
	X Programming Libraries
	
Target Market
	Customers With Unix/X Applications Who Want To Standardize On Windows NT
	Allows Hosting On Windows NT With Minimal Effort
	Permits X Clients On Single Windows NT System To Support Multiple Users
	X Servers Can Be X Terminals, Unix Based, NT Based, Windows Based
	
BSD Library Behavior
	Minimize Unix Porting Effort
	Layered Above Standard C Libraries/WINSOCK
	NT Registry Path/Drive Replacement
	BSD Include File Layout
	True Berkeley Sockets
	Supplies Common BSD Functions Missing From NT

X Programming Libraries
	Complete X.V11R5 Libraries
	Motif Widget Libraries
	Motif UIL
	Registry Based X Configuration Locator
	Direct to Windows GDI via "local socket" winnt:0

X Support Applications
	Includes Full Set Of X Client Applications
	Motif Window Manager (MWM)

Multiuser NT Capabilities
	NtNixTerm: Special Adaptation of Xterm
	Special NT Hosted Command Shell
	Provides LOGNAME, HOME facilities
	Multiple Users on Multiple X Servers Can Simultaneously Access Single NT System

X Terminal Support
	BOOTP to Boot X Terminals
	TFTPD For Font Loading
	Font Server For Scaled X Fonts
	XRemote for Serial SLIP X

info@com.congruent (Congruent Information)
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
document_id: 67430
From: dac@cbnewsf.cb.att.com (david.a.copperman)
Subject: click to focus vs. point to focus?

I am having the problem of ensuring point-to-focus when the mouse
cursor enters a window in my application.  I'm using InterViews,
but that may not matter, this seems to be a generic problem in X.
For example, I use OpenWindows on a Sparc2, with point-to-focus
set, and that generally works, but not always, depending on what
was going on in some window when I move the cursor from one shell
tool window to another.  Or so it seems...

My question, then, is what can I do within X to guarantee point-to-
focus within my application?  Thanks for any response.

Dave

Newsgroup: comp.windows.x
document_id: 67431
From: lrn@howdy.wustl.edu (Larry Roger Nittler)
Subject: X on amiga 4000

Hi,  there were a couple of articles posted to this group the other
day with the above subject heading.  Unfortunately, they expired 
before I could read them.  I could really use an xterm-like thing    
on my Amiga 4000; could somwone give me any information.
Thanks,
Larry R. Nittler


Newsgroup: comp.windows.x
document_id: 67432
From: lennart@blade.stack.urc.tue.nl (Lennart Benschop)
Subject: Wanted: diagram drawing program


I am looking for a  program to draw various kinds of diagrams on my Linux
system.

- It must be free.
- It must run on standard (monochrome) X with a small screen size (800x600)
  No motif/openlook etc.
- It must compile under Linux with gcc/g++. Most generic unix software
  works ok.
- It must produce postscript files that I can include into LaTeX documents
  with dvips. Or just tell me another free program that converts one
  of the supported formats to ps.
- It must produce drawings that are larger than the window size (scrollable).

I know of several such programs, idraw, xfig. tgif. I have
no experience with any of them. Features I would like in the programs are.

- ability to draw circles, arcs, straight lines, boxes and arrows.
- support for both dashed and solid line styles for all of these objects.
- support for texts in any size.
- ability to move/copy/resize/rotate any part of the drawing.
- ability to turn any part of the drawing into a library component
  (e.g. a transistor symbol composed of three lines, an arrow and a circle)
- any aid (numeric coordinates, screen grid) to align parts of the drawing.
- less essential, but in fact very handy: preservation of connection.
  If I move one part of the drawing, the lines that connect that part to the
  rest of the drawing, stay connected.

Ideally I want the tool so general and flexible that it is comfortable to
draw electronic schematics, flow charts, logic diagrams, data flow diagrams
and block diagrams with it. 

I just want to know which of the programs offer which of the features on my
whishlist and are there any other programs? How demanding are the programs
with respect to disk space, memory and CPU usage? Are any of the programs
known to work on Linux with monochrome X?

Lennart.

Newsgroup: comp.windows.x
document_id: 67433
From: Wilfred.Hansen@cs.cmu.EDU
Subject: AIX3.2 version of Andrew 5.1

                          The Andrew Consortium
          of the School of Computer Science at Carnegie Mellon 
                         is pleased to announce

                          AUIS 5.1.1 for AIX3.2
                                 4/26/93

The Andrew User Interface System version 5.1 (our CDrom version) was
developed for AIX  version 3.1 on the IBM RS/6000 and many other
platforms.  To accomodate AIX version 3.2, we have created a patch to
the sources.  The patch and accompanying instructions for its
application can be retrieved at no charge via anonymous-ftp from the
internet host emsworth.andrew.cmu.edu (128.2.45.40) in the directory
./aixpatch.  For those without internet access, a 3.5" diskette can be
ordered for $10 by sending, or faxing, a purchase order to the address
below. 

The base 5.1 system can be ordered from us as a CDrom or ftp'ed from the
same host.

Note that this patch adds no additional functionality but simply allows
AUIS to compile under AIX3.2.

-----------

The Andrew User Interface System (AUIS) is a comprehensive environment
on top of X11 windows in which you can create, use, and mail multi-media
applications and documents.   A major advantage of AUIS is the
capability to recursively embed objects.  Thus, one can edit text that
not only contains multiple fonts, indentation, and other typography, but
also  contains embedded raster images, spreadsheets, drawing editors,
equations, simple animations, and so on. These embedded objects can
themselves contain other objects, including text.

AUIS has three components:

    The Andrew User Environment is an integrated and extensible set
    of applications beginning with the ez text editor, a help
    system, a system monitoring tool, an editor-based shell
    interface, and other editors corresponding to the various
    available types of objects. 

    The Andrew Toolkit (ATK) is a portable, object-oriented
    user-interface toolkit that provides the architecture wherein
    objects can be embedded in one-another.  With the toolkit,
    programmers can create new objects that can be embedded as
    easily as those that come with the system. 

    The Andrew Message System (AMS) provides a multi-media interface
    to mail and bulletin-boards.  AMS supports several mail
    management strategies and implements many advanced  features
    including authentication, return receipts, automatic sorting of
    mail, vote collection and tabulation, enclosures, audit trails
    of related messages, and subscription management. It also
    provides a variety of interfaces that support ttys and
    low-function personal computers in addition to high-function
    workstations. 

The current public release of Andrew, Version 5.1,  includes support for
the new Internet MIME (Multipurpose Internet Mail Extensions) standards
for multipart, multimedia mail.  A newer release, 5.2, for members of
the Andrew Consortium has numerous additional features including new
editors for drawings, images, fonts, and user preferences.


Remote Andrew Demo Service

You can try out Andrew from your own work station via the Remote Andrew
Demo Service.  You need a host machine on the Internet running the X11
window system.  You'll be able to compose multimedia documents, navigate
through the interactive Andrew Tour, and use the Andrew Message System
to browse through a few of CMU's four thousand bulletin boards and
newsgroups.

To get started with the Remote Andrew Demo service, simply run the
following command on your machine:

	finger help@atk.itc.cmu.edu

The service will give you further instructions.   


More information about Andrew is available from:

    Information Requests
    Andrew Consortium
    Carnegie Mellon University
    Smith Hall 106
    5000 Forbes Avenue
    Pittsburgh, PA 15213-3890
    USA
    phone: +1-412-268-6710
    fax: +1-412-682-6938
    info-andrew-request@andrew.cmu.edu

Contact info-andrew-request@andrew.cmu.edu for additional information.  


Newsgroup: comp.windows.x
document_id: 67435
From: skelley@umiacs.umd.edu (Stephen Kelley)
Subject: X11R5 vs X11R4 Configure Event Handling

REPOST:

I have two questions (well probably more...) about how Expose & Configure
events are handled.

I have an appl. which uses 1 window to draw in.  Since I give the user the
capability of scaling and zooming as well as allowing the window to be
resized, I made a translation table for the Expose & Configure events.
The Expose event calls my redraw method while the Configure event
calls my rescale method.  The rescale method invokes a "fake" Expose
event (actually just calls the redraw w/ an appropriate Expose struct)
to draw the data.

Quest 1.
When the appl. is compiled/linked w/ R4 (running in either R4 or R5 env.)
I get multiple (>4) redraws when the window gets uncovered or the size
is changed.  I assume I'm getting cascading events.  Is that right?
Any suggestions as to how to handle/trap events in a better way?

Quest 2.
When the appl. is compiled/linked w/ R5 I get no Expose events
whatsoever.  Do events and/or translation tables act differently in R5?

Thanks in advance



-- 
====================================================================================
Steve Kelley	UMCP CS/UMIACS			Captain, I protest!
		skelley@umiacs.umd.edu		I am *NOT* a merry man! - Worf

Newsgroup: comp.windows.x
document_id: 67436
From: mmc@cs.rit.edu (Mahendra M Chheda)
Subject: Print from within an application

Hi,

I have an application which draws graphs, bar charts etc. I need to include
print support for these from within my application i.e. a user can print
the graphs from within the applictaion by clicking on a print button. I am 
not sure if I can invoke xwd & xpr from within my application and specify
the window id to get my window dump and then send this file for printing or 
if there are other ways of doing this. I would appreciate any help in this 
regard. Thanx.

	- Mahendra.

PS : Please mail your replies to me as I am not a regular reader of this 
news group. I will post a summary if there is sufficient interest.

-- 

***************************************************************************
	Mahendra Chheda			#
	mmc@cs.rit.edu			#
	mmc7274@ritvax.isc.rit.edu	#
					#
	Office :			#	Residence :
	Dept. of Computer Science	#	440 Kimball Drive
	Rochester Institute of Tech.	#	Rochester, NY 14623
	Tel. 716-475-2079		#	Tel. 716-292-5726
***************************************************************************

Newsgroup: comp.windows.x
document_id: 67437
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscribe

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
document_id: 67438
From: david@pop (David E. Smyth)
Subject: Re: Looking For David E. Smyth

Christian.Mollard@ec.bull.fr writes:
>zvi@nynexst.com (Zvi Guter) writes:
>
>>The author of Wcl (or the current care taker). His is the only name I found
>>in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
>>but the mail bounced back.
>>Any help in finding him will be greatly appreciated.
>
>Try
>	david@ap542.uucp
>	david%ap542@ztivax.siemens.com

Nope, here I am:	david@jpl-devvax.jpl.nasa.gov

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6193 (do NOT use v-mail yet!)
CCCP, X and Object Guru.		office: 525/C165
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
	"That Sun Windows thingy, what's it called?  You know, its
	really awful.  X?  Motif?  That's it - Motif! Yuck!"
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67439
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscrive

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
document_id: 67440
From: kelsey@mdd.comm.mot.com (Joe Kelsey)
Subject: Re: XV 3.00 has escaped!

In <1rmhiuINNh2a@skeena.ucs.ubc.ca> lindholm@ucs.ubc.ca (George Lindholm) writes:
>In article <1rlhhkINNg62@skeena.ucs.ubc.ca>, lindholm@ucs.ubc.ca (George Lindholm) writes:
>> In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
>> And here is the first patch :-) The following fixes some problems with the
>> Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
>> having to use the ucb stuff:

>Oops, I didn't get the signal processing right (thats what I get from doing
>the work on an ascii terminal). Here is the fixed patch:

The patches for xv.h need to use ``#ifdef SVR4'' rather than the
overly complex ``#if defined(sun) && defined(SYSV)'' in order to
generically compile XV on i386SVR4Architecture.  Also, rand and srand
don't work very well--use lrand48 and seed48 to get better results.
Otherwise, xv-3.00 compiles just fine on my Esix System V 4.0.4 box
with XFree86 and gcc-2.3.3.  I just uncommented the gcc definition in
the Makefile, added -L/usr/X386/lib -I/usr/X386/include to the COPTS
line and modified LIBS to include -lsocket -lnsl.  Really John, if you
just use the Imakefile things like this don't even have to get
mentioned...

*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 17:47:38
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #ifdef SVR4
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(SIGALRM)
+ #define PAUSE_SIG        sigpause(SIGALRM)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #ifdef SVR4
+ #define random lrand48
+ #define srandom seed48
+ #endif
  
  

Newsgroup: comp.windows.x
document_id: 67441
From: bingle@cs.purdue.edu (Richard Bingle)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk> julian@comp.lancs.ac.uk (Julian G. Self) writes:

   Wasn't the shareware fee a "suggestion" by John?
   Is so then it's up to the individual to make the choice whether or not to
   honour it and part with money.  Personally if I was in his position I would
   do exactly the same thing, John has obviously put in lot of time and effort
   into xv and why shouldn't he receive some money for it.

It is interesting to look at the change(s) of mind that John has had.

The AUTHOR file for xgif (an early incarnation of xv) reads (in part) 
as follows...

  Do whatever you want with this program, though it *would* be nice if my name
  remained on it somewhere...  Other than that, it may be freely modified,
  distributed, and used to fill up disk space.

The README file for xv 1.00 (?) reads (in part) as follows...

  NOTE:  If you like the program and decide to use it, *please* send me a short
  email message to that effect.  Be sure to mention the full name of your
  organization.  When our sponsors ask us 'what have you been doing', it would
  be most handy to be able to come up with a nice long list of organizations
  that are using code developed in the GRASP Lab.  Brownie points, as
  it were.

The copyright notices as it appeared then was...

  /*
   * Copyright 1989, 1990 by the University of Pennsylvania
   *
   * Permission to use, copy, and distribute for non-commercial purposes,
   * is hereby granted without fee, providing that the above copyright
   * notice appear in all copies and that both the copyright notice and this
   * permission notice appear in supporting documentation.
   *
   * The software may be modified for your own purposes, but modified versions
   * may not be distributed.
   *
   * This software is provided "as is" without any express or implied warranty.
   */

The README file for xv 2.00 reads (in part) as follows...

  Also, if you find XV to be nifty, useful, generally 'cool', and of
  some value to you, your donation (not tax-deductable) would be greatly
  appreciated.  $10 (U.S.) is probably a fine amount to donate.
  Folks who donate $25 and up will receive a nice, bound copy of the XV Manual
  printed on a spiffo 600-dpi laser printer.  It'll look lovely mounted over
  your fireplace.

Which looks to me as a suggestion (see Julian's comment above).

The copyright notices as it appeared then was...

  * Copyright 1989, 1990, 1991, 1992 by John Bradley and
  *                       The University of Pennsylvania

The README for xv 3.00 reads (in part) as follows...

  XV is shareware for PERSONAL USE only.  You may use XV for your own
  amusement, and if you find it nifty, useful, generally cool, or of
  some value to you, your non-deductable donation would be greatly
  appreciated.  $25 is the suggested donation, though, of course,
  larger donations are quite welcome.  Folks who donate $25 or more
  can receive a printed, bound copy of the XV manual for no extra
  charge.  If you want one, just ask.  BE SURE TO SPECIFY THE VERSION
  OF XV THAT YOU ARE USING!

  Commercial, government, and institutional users MUST register their
  copies of XV, for the exceedingly REASONABLE price of just $25 per
  workstation/X terminal.  Site licenses are available for those who
  wish to run XV on a large number of machines.  Contact the author
  for more details.

The second paragraph to me says that universities MUST register and
pay (a potentially) large sum of money.

The copyright notices now read...

  * Copyright 1989, 1990, 1991, 1992, 1993 by John Bradley

Was this developed on upenn's time/equipment?  What do they, and the
GRASP lab mentioned above, have to say about all this?

Richard Bingle                                             bingle@cs.purdue.edu
Dept. of Computer Sciences                             {backbone}!purdue!bingle
Purdue University                                                (317) 494-0893
West Lafayette, IN 47907-1398

Newsgroup: comp.windows.x
document_id: 67442
From: a93xaEPS@gsd.harvard.edu (Evan Smyth)
Subject: Re: How to mask the left button?

One way to "mask" the left button check the contents of the XEvent that the
XAddEventHandler send to your event_handling function (in your case, it is the
show_mouse_position function. 

If the XEvent arrive in this function as 

XEvent p_event;

then, the value of p_event->xbutton.button is the button that was pressed. So, 
you just do a switch on that value in order to distinguish between them. In case
it was not clear p_event->xevent.button is an int. 

By the way, you mentioned the Button1MotionMask and if anyone can help me with 
these MotionMasks I would be grateful. I can not figure out how do distinguish
between motions by which button is pressed as the motion is occurring. In 
essence I would like an seperate event-handler for motion with each button. 
Unfortunately, the XEvent sent by a MotionMask does not seem to contain the 
value of the pressed button.

Any ideas,
eps

Newsgroup: comp.windows.x
document_id: 67443
From: mattf@cac.washington.edu (Matthew Freedman)
Subject: Non-Roman Font Availability

Can anybody tell me anything about the availibility of non-Roman fonts
for X-Windows? Especially Unicode and/or han idiographic fonts.

Also, how about conversion tools for getting PC/Macintosh fonts into a
format suitable for X? I would assume it is not too difficult for
bitmap fonts.

The FAQ's for this group and comp.fonts are not very helpful on these
questions. 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
= Matthew M. Freedman                                                 =
= U. of Washington Information Systems       mattf@cac.washington.edu =
= 4545 15th Ave. NE; 3rd Floor               (206) 543-5593           =
= Seattle, WA  98105                                                  =
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Newsgroup: comp.windows.x
document_id: 67444
From: lindholm@ucs.ubc.ca (George Lindholm)
Subject: Re: XV 3.00 has escaped!

In article <1rlhhkINNg62@skeena.ucs.ubc.ca>, lindholm@ucs.ubc.ca (George Lindholm) writes:
> In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
> >No, not another false alarm, not a "It'll certainly be done by *next* week"
> >message...  No, this is the real thing.  I repeat, this is *not* a drill!
> >
> >Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
> >finally escaped.  I was cleaning its cage this morning when it overpowered
> >me, broke down the office door, and fled the lab.  It was last seen heading
> >in the general direction of export.lcs.mit.edu at nearly 30k per second...
> >
> >If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
> >
> >Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.
> 
> And here is the first patch :-) The following fixes some problems with the
> Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
> having to use the ucb stuff:

Oops, I didn't get the signal processing right (thats what I get from doing
the work on an ascii terminal). Here is the fixed patch:

*** 1.1	1993/04/28 06:05:03
--- Imakefile	1993/04/28 08:20:35
***************
*** 209,215 ****
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! 
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
--- 209,218 ----
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! all::
! 	@echo ""
! 	@echo "  Did you remember to 'make depend' first?"
! 	@echo ""
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
***************
*** 222,238 ****
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
     MakeSubdirs($(SUBDIRS))
-    DependSubdirs($(DUBDIRS))
  #endif
  
  
  all::
- 	@echo ""
- 	@echo "  Did you remember to 'make depend' first?"
- 	@echo ""
- 
- all::
  	@echo "  building xv ..."
  	@echo ""
  
--- 225,236 ----
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
+ #  define IHaveSubdirs
     MakeSubdirs($(SUBDIRS))
  #endif
  
  
  all::
  	@echo "  building xv ..."
  	@echo ""
  
***************
*** 259,267 ****
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
- DependTarget()
    
  AllTarget($(PROGRAMS))
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
--- 257,269 ----
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
    
+ 
  AllTarget($(PROGRAMS))
+ DependTarget()
+ #ifdef IHaveSubdirs
+    DependSubdirs($(SUBDIRS))
+ #endif
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
*** 1.1	1993/04/28 06:09:50
--- xcmap.c	1993/04/28 07:09:03
***************
*** 9,15 ****
--- 9,19 ----
  
  /* include files */
  #include <stdio.h>
+ #if defined(sun) && defined(SYSV)
+ #include <string.h>
+ #else
  #include <strings.h>
+ #endif
  #include <ctype.h>
  
  #include <X11/Xos.h>
*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 17:47:38
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #if defined(sun) && defined(SYSV)
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(SIGALRM)
+ #define PAUSE_SIG        sigpause(SIGALRM)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #if defined(sun) && defined(SYSV)
+ #define random() rand()
+ #define srandom(x) srand(x)
+ #endif
  
  
  
*** 1.1	1993/04/28 06:17:41
--- tiff/Imakefile	1993/04/28 08:53:34
***************
*** 49,59 ****
--- 49,69 ----
  
  tif_compress.o: Imakefile
  
+ #if HasGcc
  g3states.h: mkg3states.c t4.h
          -${RM} g3states.h
+ 	${CC} -traditional -o mkg3states ${CFLAGS} mkg3states.c
+         ./mkg3states > g3states.h || rm g3states.h
+ #else
+ g3states.h: mkg3states.c t4.h
+         -${RM} g3states.h
          ${CC} -o mkg3states ${CFLAGS} mkg3states.c
          ./mkg3states > g3states.h || rm g3states.h
+ #endif
  
  depend:: g3states.h
  
+ clean::
+ 	-${RM} mkg3states g3states.h
+ 
  DependTarget()

Newsgroup: comp.windows.x
document_id: 67445
From: Rick Miller <rick@ee.uwm.edu>
Subject: X-Face?

I'm not familiar at all with the format of these "X-Face:" thingies, but
after seeing them in some folks' headers, I've *got* to *see* them (and
maybe make one of my own)!

I've got "dpg-view" on my Linux box (which displays "uncompressed X-Faces")
and I've managed to compile [un]compface too... but now that I'm *looking*
for them, I can't seem to find any X-Face:'s in anyones news headers!  :-(

Could you, would you, please send me your "X-Face:" header?

I *know* I'll probably get a little swamped, but I can handle it.

	...I hope.

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
document_id: 67446
From: bkilgore@ips.iacd.honeywell.com (Bruce Kilgore)
Subject: RE: X-Server documentation


> 
> Where can I get documentation about the X-Server-Internals?
> BTW, I'm also interested in documentation about TIGA.
> 
> Any hints welcome.
> 
> Thanks, rainer.
> 
> -- 
> Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
> ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
> Penzingerstr. 76                 |
> A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.a
> 

The only book I know of is :
	"The X Window System Server - X Version 11, Release 5"
	by Elias Israel / Erik Fortune
	Digital Press  Copyright 1992
	Order number EY-L518E-DP
	DP ISBN 1-55558-096-3
	PH ISBN 0-13-972753-1

But if there are any more, please post/email me the names.


--


-- bkilgore



   Thus spake the master programmer:
       "After three days without programming,
           life becomes meaningless."
              - Geoffrey James "The Tao of Programming"

 ------------------------------------------------------
|     Disclaimer: Any and *ALL* opinions are mine!     |
|------------------------------------------------------|
| William Bruce Kilgore                                |
| email  bkilgore@ws15.ips.iacd.honeywell.com          |
| phone  (602) 436-4837  or  (602) 436-4866            |
| smail  16404 N Black Canyon HWY, Phoenix Az 85023    |
 ------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67447
From: neal@fuentez.COM (Neal Norwitz)
Subject: Getting OPENBUGS for Motif 1.2

Hello!!!

The title just about says it all.

I need a list of the bugs for Motif 1.2.

Thanks,
Neal


Newsgroup: comp.windows.x
document_id: 67448
From: swalker@bbn.com (Susan Walker)
Subject: XmTextField truncation with LANG bug(???)

I have found a situation which I think is a bug in X or Motif, but I'm hoping
is really just a mistake on my part.  Does anyone know anything about
this problem........

- I am using an XmTextField, and setting its XmNvalue to a hardcoded
  text string (ascii or Kanji) either via XtSetValues or XmTextSetString.
  The problem is that when the XmTextField is displayed, the text is getting
  truncated, depending on the setting of the environment variables
  LANG (more specifically LC_ALL).  When they are set to japanese,
  the text gets truncated.  When they are set to english, everything
  works fine.  I am taking the default for XmNcolumns.
  (Please note that hardcoding of text is NOT done in my actual
   application, just in my sample code to make things easier)
	
- I am running Motif 1.2, X11R5 via HPUX9.01.  My test program is set up
  to handle 16 bit Kanji characters.  I have remembered to do   
  XtSetLanguageProc() prior to my MrmInitialize and my font resources
  are set to japanese fonts.

- Don't know if this matters, but my dialog box and TextField is initially
  created with UIL. 


The problem does NOT happen with XmText.  Unfortunately substituting
XmTextFields with XmTexts in my application is not an acceptable
alternative (way too much code to be modified while in beta!)

I have a small test program which illustrates the problem if anyone
wants it.  My best guess is that either the X code or Motif is not
properly allocating memory for japanese, but since I don't have the
source to look at it is just a guess.

Please let me know if this sounds familiar, or if you have a suggestion,
or if you want the sample program.

THANKS!!!!!!!!

- Susan 

  swalker@bbn.com
  617-873-8190


Newsgroup: comp.windows.x
document_id: 67449
From: smarks@trantor.Eng.Sun.COM (Stuart Marks)
Subject: Re: Xt intrinsics: slow popups

In article <1993Apr20.114824.9110@alex.com>, bryan@alex.com (Bryan Boreham) writes:
|> 
|> The shell is waiting for the window-manager to respond to its
|> positioning request.  The window-manager is not responding because
|> it thinks the window is already in the right place.
|> 
|> Exactly *why* the two components get into this sulk is unclear to
|> me; all information greatly received.

This problem is caused by a bad interaction between the way olwm reparents
windows, a misfeature of the X protocol, and a bug in the Xt intrinsics.  

The Intrinsics bug is that it ignores the (x,y) position given in
ReparentNotify events.  Olwm is structured in such a way that, when a window
is popped down, the last event the client receives is a ReparentNotify event. 
At this point, the Intrinsics' notion of the shell's location is out of date.

If a SetValues is done using the same (x,y) position, the Intrinsics thinks it
needs to move the shell, so it issues a ConfigureWindow request to move it
there.  However, a (mis)feature of the X protocol is that a ConfigureWindow
request that has no effect will generate no ConfigureNotify event.  The
Intrinsics thus waits for an event that will never arrive, and times out after
wmTimeout has expired.  (Actually, things are somewhat more complex because
the request is redirected to the window manager, but the net result is the
same.)

The solution is for the Intrinsics to note the (x,y) positioning information
in ReparentNotify events.  This has been implemented and is available in X11R5
public fix 20.  This is XBUG 5513 for those of you who are interested in
gorier details.

s'marks

-- 
Stuart W. Marks				stuart.marks@eng.sun.com
Window Systems Technology		2550 Garcia Ave. M/S 21-228
SunSoft, Inc.				Mountain View, CA 94043

Newsgroup: comp.windows.x
document_id: 67450
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: XView 3.0 window positioning problems

I don't seem to be able to get window positions reliably through
the XView xv_get() function:

   x = (int) xv_get(my_frame, XV_X);
   y = (int) xv_get(my_frame, XV_Y);

For example, if I set XV_X & XV_Y to 50,50 the frame comes up
in the correct position, with the top left corner (the size
handle) at 50,50. xv_get() returns 50,50 as well. But later on
xv_get() returns 5,25 without any intervening xv_set(my_frame,
XV_?). My frame is fitted around a canvas, and it turns out
(by measuring on the screen) that 5,25 is the position of the
first pixel in my canvas relative to the frame's origin. What
gives? Any help most appreciated!

Derek

P.S. On a related subject, is there any way of querying the
window manager as to the thickness of borders it puts around
frames, etc.?

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67452
From: pjs@euclid.JPL.NASA.GOV (Peter J. Scott)
Subject: Re: XV 3.00 has escaped!

I've found that I have to add the "-8" option for displaying JPEGs
with the new version.  For some reason, if I don't, it goes into
24-bit mode and the resulting image is displayed with 216 colors 
(from a 6x6x6 array) instead of 256 and looks grainier.  Since I'm
on the ubiquitous 8-bit pseudo color display I would have thought it
could tell that.

-- 
This is news.  This is your       |    Peter Scott, NASA/JPL/Caltech
brain on news.  Any questions?    |    (pjs@euclid.jpl.nasa.gov)

Newsgroup: comp.windows.x
document_id: 67453
From: colinm@max.carleton.ca (Colin McFadyen)
Subject: X11R5 support for 386i GX??

  Does X11R5 support the graphics accelerator board
in the Sun 386i????

Thanks in advance.

Colin.


Newsgroup: comp.windows.x
document_id: 67454
From: panguyen@vela.acs.oakland.edu (panguyen)
Subject: REPOST: COSE-GUI

 
  
this is a repost... I like to find out more about this also...

*** Message Part 2: Text ****************************************
The COSE announcement specifies that Motif will become the common
GUI. But what does this mean exactly?
 
- Do they mean that all "COSE-complient" apps will have the Motif
  look and feel?
 
- Do they mean that all "COSE-complient" apps will use the Motif
  toolkit API?
 
- Do they mean both of the above?
 
- Is it possible that there will be a Motif-API complient toolkit with
  an OpenLook Look & Feel?
 
- How about an OLIT/XView/OI/Interviews API toolkit with a Motif L & F?
  (I know OI already does this, but will this be considered COSE-complient?)
 
- Will there be more than one "standard" toolkit API or L & F supported?
 
- How does using ToolTalk fit in with Motif?
 
This is my attempt to start a discussion in order to pull as much
knowledge about these questions off the net... Feel free to e-mail
or followup.
 
--
--------------------------------------------------------------------
-- Gil Tene "Some days it just doesn't pay     -
-- devil@imp.HellNet.org    to go to sleep in the morning." -
-- devil@diablery.10A.com     -
--------------------------------------------------------------------
 



Newsgroup: comp.windows.x
document_id: 67455
From: ktz@lrs.e-technik.uni-erlangen.de (Martin Kreutzer)
Subject: Problem with German keyboard on a Sparc10

Yesterday I changed the US-Keyboard of my Sparc10 with a german keyboard.
And now I cannot get any "Alt Graph" characters ('tilde' usw.).
When I exit from X I can get the characters, but not under X.

Can anybody give me some hints, where to check for the correct installation
of the keyboard.

Martin Kreutzer


Newsgroup: comp.windows.x
document_id: 67456
From: gerben@rna.indiv.nluug.nl
Subject: What is second best?

Answers please by e-mail, since not all groups in the header are carried here.

Hi!

Personally, I like NeXTSTEP very much. Even more when I realise how much a  
burden ordinary X or Windows programming is. I also like Objective-C better  
than I like C++.

But, sometimes the restrictions are there. For instance it sometimes has to be  
MS-Windows or X. Now I'm looking for pointers to tools on those environments  
that come close to NeXTSTEP, the appkit etc. Also, environs that support rapid  
prototyping (like with IB) without producing spaghetti-code as soon as you want  
to do real work.

Maybe STEPSTONE with some Windows version of a kit of UI objects? Interviews  
(what it is exactly, I don't know. I kind of lost touch with that world when I  
started with NeXTSTEP.)

Thanks,

-- 
Gerben Wierda    [NeRD:7539]        Tel. (+31) 35 833539
  "If you don't know where you are going, any road will 
  take you there." From the Talmud(?), rephrased in 
  Lewis Carroll, "Alice in Wonderland".

Newsgroup: comp.windows.x
document_id: 67457
From: smeets@speedy.cci.de (Vincent Smeets)
Subject: Sun 3/80 with SunOS 4.0.3 as X-Terminal

At the moment, I am using a Sun 3/80 (cgfour/bwtwo) with SunOS 4.0.3
and OpenWindows 2.0.

This configuration is slow and I can't run all the programs on OW2. For
example, when I start a mailtool from OW3 and display it on my OW2
display, I can't open the compose window.

I want to install an X11R5 or X11R4 server on my Sun and use xdm (yes,
we have xdm already running for other X-Terminals) to log in and start
the X programs.

Is there a "ready to go" binairy of the X11 server for my configuration
(I have read something about Xsun), or must I compile the X11 stuff by
myself?

Any help is welcome

	V. Smeets

-- 
--	Vincent Smeets			Competence Center Informatik GmbH
--	smeets@cci.de			Software Engineering / Ada
--	whois VS36			4470 Meppen, Germany

Newsgroup: comp.windows.x
document_id: 67458
From: deford@netwrx1.NW1.COM (Brian DeFord)
Subject: preventing user from hitting CTRL-ALT-BKSP to exit X

Hello,

	I am admin for an RS/6000 running AIX 3.2, X11R5, Motif, and xdt3.
	I want to prevent the user from hitting CNTL-ALT-BKSPC to exit X.
	
	I've tried invoking X with 'xinit -T', but that doesn't work.
	xinit appends the -T to the call to .xinitrc, and not to the
	call to X.  

	The man page to xinit is no help.  In fact, it tells
	me that xinit is a script when it is really a binary file.  

	So far, the only way I've been able to accomplish this feat is
	to add the -T to the call to X in /usr/lpp/X11/defaults/xserverrc.
	I would rather not do it this way.  Does anyone have any other ideas?

 
------------------------------------------------------------------------
  Brian DeFord				Internet: deford@netwrx1.nw1.com	
  Open Networks, Inc.			Usenet:   uunet!netwrx1!deford
  11490 Commerce Park Dr. #205		Tel:      703-648-0013
  Reston, VA 22091			FAX:      703-648-0016

	
























I want to prevent the 

Newsgroup: comp.windows.x
document_id: 67459
From: muller@mafalda.inria.fr (Christophe Muller)
Subject: Re: XV 3.00 has escaped!


> It is interesting to look at the change(s) of mind that John has had.

Very interested indeed! This is against this kind of "changes" that the GNU
COPYLEFT is protecting us.

Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
shows because of its "-loop" feature that display does not have (display
from the *wonderful* ImageMagick package! :-D), but I think I will implement
it myself (even a shell-script should do the job) and forget xv.

Cheers,
Christophe.
-- muller@simulog.fr

     =    Are you the police?  --  No ma'am, we're musicians.    =

Newsgroup: comp.windows.x
document_id: 67460
From: dlemoin@xobu.nswc.navy.mil (D. lemoine)
Subject: Colormap Problem

I am saving an image on one machine and redisplaying the image on
another machine (both are HP 9000 Model 750s).  The image is created
using XCreateImage and XGetImage and displayed with XPutImage.  The
image is redisplayed correctly except that the colors are wrong because
the server on the other machine is using a different colormap.

I tried saving the colormap (pixel and rgb values) and on the redisplay,
performed a table lookup against the new colormap.  This didn't work
because some rgb combos don't exist in the new colormap.

Is there a way to force the server to load colors into set pixel values, or
is there a simpler way to solve this problem?  I tried using xinitcolormap
but couldn't get that to work either.

Any help would be appreciated.

--------------------------------------
Don Lemoine
Naval Surface Warfare Center
Dahlgren Division
Dahlgren, VA 22405
(703)663-7917
dlemoin@xobu.nswc.navy.mil


Newsgroup: comp.windows.x
document_id: 67461
From: apara@ctp.com (Atul Parasnis)
Subject: DCE RPC, Threads, X/Motif Clients


	Has anyone used DCE threads with an X Client?
	Is it possible to have one thread listening for incoming RPCs
	while another processes X Events? How do you set something
	like this up?
					_ Atul
					(apara@ctp.com)

				

Newsgroup: comp.windows.x
document_id: 67462
From: sinclair@dcs.glasgow.ac.uk (Duncan Sinclair)
Subject: Glasgow RX - remote execution of X programs, Part01/01

[[ I posted this a few weeks back, but all I got back was an error
   message "pnews: /dev/null: Permission denied".  Yep, /dev/null
   had a mode of 600.  (Arrghhh!!)  ]]

With renewed interest in "setting the DISPLAY variable", etc.. I
thought I would post my contribution.

This Perl script is my solution.  It trys to be intelligent about
what it's doing so that you should be able to type "rx host.domain.etc",
and get a xterm running on "host.domain.etc", with all the difficult
stuff taken care of.

In theory, this program can do *everything* you ever wanted to do
when you wanted to run a remote command in the background - it
doesn't even need to be an X program.  Try a "rx big-machine make"
for instance, for a backgrounded make on the remote "big-machine".

For more details and a full list of features read the README file,
about 20 lines below...  All comments welcome.

Duncan.



#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 1)."
# Contents:  README Imakefile MANIFEST Makefile rx.man rx.pl
# Wrapped by sinclair@dcs.gla.ac.uk on Thu Apr  8 18:47:48 1993
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(1442 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X
X   Glasgow RX - remote execution of X programs.  Version 3.1.7
X
XCopyright 1992 Duncan Sinclair <sinclair@dcs.gla.ac.uk>
X
XTrivial to install, but there's an Imakefile to make it even more trivial.
X
XThe perl script needs some customisation before it is installed, just
Xedit the "rx.pl" file, and read the comments.  Once you've done
Xthis you can "xmkmf", then "make install install.man".
X
XFEATURES:
X
X*) Does the right thing for off-site remote execution.  Including
X   setting up $DISPLAY to include domain names, and passing
X   magic cookies, or doing the "xhost" stuff.
X
X*) Allow different remote user name.  (rx -l user host ...)
X
X*) Smart quoting of arguments - makes passing wild-cards easy.
X
X*) Custom command execution - link it to "remacs" to get a remote
X   emacs command.
X
X*) Automatic xterm options - names the xterm according to hostname,
X   and turns on "login shell".
X
X*) Default command is xterm.
X
X*) Propagates X-ish env. variables to remote session - user may
X   extend the list of variables to pass.
X
X*) Special handling for bourne shell users.
X
X*) Tries to do remote execution from same directory as local.
X   That is, it propagates $PWD, in an intelligent manner.
X
X*) Logs errors in a file.
X
X*) Overall Intelligence (TM) - makes reasoned decisions about what
X   you are trying to do, and tries to "do the right thing".
X
X*) Written in Perl, for portability and hackability.
X
XFor more info, read the man page or the source.
X
END_OF_FILE
if test 1442 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'Imakefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Imakefile'\"
else
echo shar: Extracting \"'Imakefile'\" \(370 characters\)
sed "s/^X//" >'Imakefile' <<'END_OF_FILE'
X# Glasgow RX Imakefile.
X
X         PROGRAMS = rx
X
Xall:: $(PROGRAMS)
X
Xinstall:: safe
X
XInstallNamedProg(rx.pl,rx,$(BINDIR))
XInstallManPage(rx,$(MANDIR))
X
Xinstall::
X	$(RM) $(BINDIR)/rxterm
X	$(LN) $(BINDIR)/rx $(BINDIR)/rxterm
X
Xsafe:
X	@grep -s 'debug = 0' rx.pl || false
X
Xshar: safe
X	makekit -m -p
X	@-perl -pi -e "s/sinclair@dcs.gla.ac.uk/sinclair@dcs.gla.ac.uk/;" Part*
X
END_OF_FILE
if test 370 -ne `wc -c <'Imakefile'`; then
    echo shar: \"'Imakefile'\" unpacked with wrong size!
fi
# end of 'Imakefile'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(313 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X README                     1	Read me first
X Imakefile                  1	
X MANIFEST                   1	This shipping list
X Makefile                   1	
X rx.man                     1	
X rx.pl                      1	
END_OF_FILE
if test 313 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Makefile'\"
else
echo shar: Extracting \"'Makefile'\" \(10172 characters\)
sed "s/^X//" >'Makefile' <<'END_OF_FILE'
X# Makefile generated by imake - do not edit!
X# $XConsortium: imake.c,v 1.65 91/07/25 17:50:17 rws Exp $
X#
X# The cpp used on this machine replaces all newlines and multiple tabs and
X# spaces in a macro expansion with a single space.  Imake tries to compensate
X# for this, but is not always successful.
X#
X
X# -------------------------------------------------------------------------
X# Makefile generated from "Imake.tmpl" and </tmp/IIf.a04196>
X# $XConsortium: Imake.tmpl,v 1.139 91/09/16 08:52:48 rws Exp $
X#
X# Platform-specific parameters may be set in the appropriate <vendor>.cf
X# configuration files.  Site-specific parameters should be set in the file
X# site.def.  Full rebuilds are recommended if any parameters are changed.
X#
X# If your C preprocessor does not define any unique symbols, you will need
X# to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
X# "make World" the first time).
X#
X
X# -------------------------------------------------------------------------
X# site-specific configuration parameters that need to come before
X# the platform-specific parameters - edit site.def to change
X
X# site:  $XConsortium: site.def,v 1.2 91/07/30 20:26:44 rws Exp $
X
X# -------------------------------------------------------------------------
X# platform-specific configuration parameters - edit sun.cf to change
X
X# platform:  $XConsortium: sun.cf,v 1.72.1.1 92/03/18 13:13:37 rws Exp $
X
X# operating system:  SunOS 4.1.3
X
X# $XConsortium: sunLib.rules,v 1.7 91/12/20 11:19:47 rws Exp $
X
X# -------------------------------------------------------------------------
X# site-specific configuration parameters that go after
X# the platform-specific parameters - edit site.def to change
X
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 cq
X  BOOTSTRAPCFLAGS =
X               CC = gcc -fpcc-struct-return
X               AS = as
X
X         COMPRESS = compress
X              CPP = /lib/cpp $(STD_CPP_DEFINES)
X    PREPROCESSCMD = gcc -fpcc-struct-return -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/X11
X
X     TOP_INCLUDES = -I$(INCROOT)
X
X      CDEBUGFLAGS = -O2
X        CCOPTIONS =
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# -------------------------------------------------------------------------
X# X Window System Build Parameters
X# $XConsortium: Project.tmpl,v 1.138.1.1 92/11/11 09:49:19 rws Exp $
X
X# -------------------------------------------------------------------------
X# X Window System make variables; this need to be coordinated with rules
X
X          PATHSEP = /
X        USRLIBDIR = /usr/X11/lib
X           BINDIR = /usr/X11/local/bin
X          INCROOT = /usr/X11/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/X11/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        PEXLIBSRC = $(EXTENSIONSRC)/lib/PEXlib
X      PHIGSLIBSRC = $(EXTENSIONSRC)/lib/PEX
X
X# $XConsortium: sunLib.tmpl,v 1.14.1.2 92/11/11 09:55:02 rws Exp $
X
XSHLIBLDFLAGS = -assert pure-text
XPICFLAGS = -fpic
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        DEPPEXLIB =
X           PEXLIB = -lPEX5
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         SOPEXREV = 1.0
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          LINTPEX = $(LINTLIBDIR)/llib-lPEX5.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
X# -------------------------------------------------------------------------
X# Imake rules for building libraries, programs, scripts, and data files
X# rules:  $XConsortium: Imake.rules,v 1.123 91/09/16 20:12:16 rws Exp $
X
X# -------------------------------------------------------------------------
X# start of Imakefile
X
X# Glasgow RX Imakefile.
X
X         PROGRAMS = rx
X
Xall:: $(PROGRAMS)
X
Xinstall:: safe
X
Xinstall:: rx.pl
X	@if [ -d $(DESTDIR)$(BINDIR) ]; then set +x; \
X	else (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); fi
X	$(INSTALL) -c $(INSTBINFLAGS) rx.pl $(DESTDIR)$(BINDIR)/rx
X
Xinstall.man:: rx.man
X	@if [ -d $(DESTDIR)$(MANDIR) ]; then set +x; \
X	else (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); fi
X	$(INSTALL) -c $(INSTMANFLAGS) rx.man $(DESTDIR)$(MANDIR)/rx.$(MANSUFFIX)
X
Xinstall::
X	$(RM) $(BINDIR)/rxterm
X	$(LN) $(BINDIR)/rx $(BINDIR)/rxterm
X
Xsafe:
X	@grep -s 'debug = 0' rx.pl || false
X
Xshar: safe
X	makekit -m -p
X	@-perl -pi -e "s/sinclair@dcs.gla.ac.uk/sinclair@dcs.gla.ac.uk/;" Part*
X
X# -------------------------------------------------------------------------
X# common rules for all Makefiles - do not edit
X
Xemptyrule::
X
Xclean::
X	$(RM_CMD) "#"*
X
XMakefile::
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
Xtags::
X	$(TAGS) -w *.[ch]
X	$(TAGS) -xw *.[ch] > TAGS
X
Xsaber:
X	# load $(ALLDEFINES) $(SRCS)
X
Xosaber:
X	# load $(ALLDEFINES) $(OBJS)
X
X# -------------------------------------------------------------------------
X# empty rules for directories that do not have SUBDIRS - do not edit
X
Xinstall::
X	@echo "install in $(CURRENT_DIR) done"
X
Xinstall.man::
X	@echo "install.man in $(CURRENT_DIR) done"
X
XMakefiles::
X
Xincludes::
X
X# -------------------------------------------------------------------------
X# dependencies generated by makedepend
X
END_OF_FILE
if test 10172 -ne `wc -c <'Makefile'`; then
    echo shar: \"'Makefile'\" unpacked with wrong size!
fi
# end of 'Makefile'
fi
if test -f 'rx.man' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rx.man'\"
else
echo shar: Extracting \"'rx.man'\" \(3551 characters\)
sed "s/^X//" >'rx.man' <<'END_OF_FILE'
X.TH RX 1 "4 March 1993" "X Version 11"
X.SH NAME
Xrx,rxterm,r* - remote command, xterm, anything execution
X.SH SYNOPSIS
X.B rx
X[
X.B \-l
X.I username
X]
X.I host
X[
X.I command
X]
X.br
X.B rxterm
X[
X.B \-l
X.I username
X]
X.I host
X[
X.IR args .\|.\|.
X]
X.SH DESCRIPTION
XThe 
X.B rx
Xprogram connect to the specified
X.I host
Xand executes the specified
X.I command
Xin the background, returning immediately.  To allow the execution
Xof X programs, it copies a number of environmental variables to
Xthe remote session.  If you omit
X.IR command ,
Xthen rx will start an xterm on the remote host.  The
X.B rxterm
Xvarient starts a remote xterm on a host, and also passes
X.I args
Xto the remote xterm as arguments.
X.PP
XShell metacharacters which are not quoted are interpreted on the local
Xmachine, while quoted metacharacters are interpreted on the remote
Xmachine.
X.PP
XIf the name of the file from which
X.B rx
Xis executed is anything other than ``rx,''
X.B rx
Xtakes this name, stripped on a leading ``r'' as the command
Xto run on the remote host, using any
X.I command
Xparameters as arguments for the remote command.
X.PP
XIf
X.B rx
Xthinks you are using
X.B xauth
Xbased X authorisation, and you are calling to a off-site host, or
Xto a different username, it will attempt to copy an authorization
Xkey to the remote account.  Otherwise it will try to use
X.B xhost(1)
Xto grant access to the remote host.
X.SH OPTIONS
X.TP
X.BI \-l " username"
XUse
X.I username
Xas the remote username instead of your local username.  In the absence
Xof this option, the remote username is the same as your local username.
X
X.SH ENVIRONMENT
XIf set, the values of PATH, DISPLAY, XENVIRONMENT, XAPPLRESDIR,
XXFILESEARCHPATH, XUSERFILESEARCHPATH, OPENWINHOME, LD_LIBRARY_PATH,
Xand XAUTHORITY are exported to the remote program, unless the
Xremote username is different, or the remote host is off-site, in which
Xcase only DISPLAY is exported, with in all cases any variables named in the
Xvariable RXENV.
X.PP
XThe DISPLAY variable is tweaked as appropriate, to contain as qualified
Xa hostname as is needed.
X.SH DIAGNOSTICS
X.TP
X.IB command ": don't recognise my name."
X.B rx
Xcannot decode the name it has been called under.  In this case
Xit prints a warning message, and continues, as normal.
X.TP
X.B "rx: usage: rx [-l username] hostname [args...]"
XThis means it could not decode the arguments given to it.
X.SH AUTHOR
XDuncan Sinclair <sinclair@dcs.glasgow.ac.uk>, July 1992
X.br
XOriginally based on a program with the same name from the
X.B gwm
Xdistribution.  To distinguish this "rx" from other programs
Xwith similar names, you should refer to this program as the
X.B Glasgow
X.BR rx .
X.SH "SEE ALSO"
XX(1), rsh(1), xterm(1), xauth(1), xhost(1), gwm(1)
X.SH BUGS
X.B Rx
Xmakes a number of assumptions about the relationship between the
Xlocal user, and the remote one, depending on whether the remote
Xhost is onsite or not, and whether an alternative username was used
Xor not.
X.PP
XIn particular, if either the locally used shell, or the remotely
Xused shell is the standard Bourne Shell,
X.B sh(1)
Xthen strange things are more likely to happen.  Especially when 
Xit's only one of them.
X.PP
XSometimes quoting can get messed up.
X.PP
XIt's too easy to fool the smarts in
X.B rx
Xto make it believe something that is not true, and fail because of it.
X.PP
XWhen
X.B rx
Xuses
X.B xhost
Xto grant access, the
X.B xhost
Xcommand may fail silently.
X.PP
XIf
X.B rx
Xtries to send to large a command to the remote machine, it will
Xlikely fail with a parse error from csh.  If this happens, you
Xwill probably have to reduce the size of the exported environment.
END_OF_FILE
if test 3551 -ne `wc -c <'rx.man'`; then
    echo shar: \"'rx.man'\" unpacked with wrong size!
fi
# end of 'rx.man'
fi
if test -f 'rx.pl' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rx.pl'\"
else
echo shar: Extracting \"'rx.pl'\" \(9028 characters\)
sed "s/^X//" >'rx.pl' <<'END_OF_FILE'
X#! /usr/local/bin/perl
X# CONFIG: change the line above to point to your copy of perl.
X##############################################################################
X# Glasgow RX  version 3.1.7
X#
X# Copyright 1992 Duncan Sinclair <sinclair@dcs.gla.ac.uk>
X#
X# Last Modified:  Early April 1993.
X#
X# Distribution limited, as per the usual MIT copyright.
X##############################################################################
X# remote execution of X programs.  Based on a script in an old version of gwm.
X#
X# To install, put rx in your bin and make rxterm a link to it.
X#  Some configuration will be necessary, see "CONFIG" comments...
X#
X# More and more this is less and less like the original....
X#
X# Major hacked to work for our(my) set up, and also partly
X#  re-written to work with sh, rather than ksh.
X#
X# Maybe I'll turn this into our first zsh script!
X#
X# Looks like it turned into a perl script at some point - big improvement.
X##############################################################################
X# This code tries to be intelligent in the way it works.  This means there
X#  are tons of implicit assumptions about the environment it is run in.
X#  These assumptions are all valid on the machines I use, and in my
X#  environment.  At the same time, I try to make as few assumptions as possible
X#  about the remote machine.  Here's a list of all the more tricky ones...
X# *) That the remote machine has csh.  (Linux?)
X# *) That $RSHELL = /bin/(k)?sh ==> remote shell = /bin/(k)?sh.  (Make same.)
X# *) If remote shell = sh, that $PATH is compatible.  (Use csh, etc..)
X# *) I pass a cookie to the remote machine if need be, but does it
X#    know what to do with a cookie. (eat it?)
X# *) There must be others...
X##############################################################################
X# Why am I using csh to run the remote commands?  Simply because it doesn't
X#  interact badly with rsh, and hang waiting for a file descriptor to
X#  be closed.  I'd rather use zsh, or bash, or even perl, but they are not
X#  as universal as csh.
X##############################################################################
X#
Xrequire "stat.pl";
X#
X# What we called?
X#
X$argv0 = $0 ;
X$argv0 =~ s:.*/:: ;
X#
X# CONFIG:
X# Change these variables to be your domain name, and a pattern that
X#  will match all variations on your domain name.  You must include
X#  those leading dots!!! If your hostname includes your domain, see
X#  the code further down, marked "XXX"
X#
X$DOM  = ".dcs.gla.ac.uk" ;
X$DOMPAT = "\.dcs(\.gla(sgow)?(\.ac\.uk)?)?" ;
X#
X# CONFIG:
X# Change this to your value of BINDIR, or set the variable to "" if
X#  you think your users are smarter than that.
X#
X$XPATHS = "/usr/X11/bin" ;
X#
X# CONFIG:
X# Make this the name of your "remote shell" command.
X#
X$RSH = "rsh" ;
X#
X# end of CONFIG
X#
X# Some variables we'll no doubt use sometime...
X#
X$usage = "$argv0: usage: $argv0 [-l username] hostname [args...]\n" ;
X$RSHELL = (getpwuid($<))[8] || "/bin/sh" ;
X$HOME = $ENV{"HOME"} || (getpwuid($<))[7] ;
X$XAUTH = $ENV{"XAUTHORITY"} || $HOME . "/.Xauthority" ;
X$LOGF = "~/.rx.log" ;
X@STUFF = () ;
X$debug = 0 ;
X#
X# Before anything else, close stdin.  This might stop rx hanging
X#  due to rsh weirdness.
X#
Xclose(STDIN);
X#
X# do a "-l" flag...
X#
Xif ($ARGV[0] eq "-l") {
X  shift ;
X  $User = $ARGV[0] || die $usage ;
X  @LUser = ("-l",$User) ;
X  shift ;
X}
X#
X# Pick a host, any host...
X#
X$MACH = $ARGV[0] || die $usage ;
Xshift ;
X#
X# Things to think about for the remote machine.
X#
X$MACH =~ s/$DOMPAT// ;
X$OffSite = $MACH =~ /\./ ;
X#
X# Where am I?  Seems we can't trust the dumb user to set HOSTNAME right!
X#
X#$HOSTNAME=$ENV{HOSTNAME} || `hostname` ;		# Current Host
X$HOSTNAME=`hostname` ;					# Current Host
X$HOSTNAME =~ s/\n// ;
X#
X#  If all your hostnames include your domain, comment out the next line.
X#
Xif ( $OffSite ) { $HOSTNAME = $HOSTNAME . $DOM ; }	# XXX
X#
X# Now we know where we are, and they are, are they different?
X#
X$Diff = $HOSTNAME ne $MACH ;
X#
X# What is the display going to be?
X# !! Danger !! Heavy Regular expressions follow...
X# This needs to be re-written to be modular and can so be extended to
X#  support resetting host:* to unix:*, as required.
X#
X$DISPLAY = $ENV{"DISPLAY"} || ":0.0" ;
X$DISPLAY =~ s/$DOMPAT// ;
X$DISPLAY =~ s/^(unix)?(:\d(\.\d)?)$/$HOSTNAME$2/ if ($Diff) ;
X$DISPLAY =~ s/^([^.]*)(:\d(\.\d)?)$/$1$DOM$2/ if ($OffSite) ;
X$ENV{"DISPLAY"} = $DISPLAY ;
X#
X# Here comes the hard bit in sh.  Quote our args.
X# Also have to quote quotes.  To cope with csh braindamage,
X#  quotes are quoted thus; ' -> '\''
X# So for an arg "foo'bar", we get "'foo'\''bar'".
X#
Xforeach (@ARGV) {
X  s#\'#\'\\\'\'#g ;
X  s#(.*)#\'$1\'# ;
X}
X#
X# So what we doing?
X#
XPROG: {
X  if ($argv0 eq "rx") { last PROG ; }
X  if ($argv0 eq "rxterm") {
X    #unshift(@ARGV,"-ls") if ($Diff) ;
X    unshift(@ARGV,"xterm","-ls","-n",$MACH) ;
X    last PROG ;
X  }
X  if ($argv0 =~ /r(.*)/) { unshift(@ARGV,$1) ; last PROG ; }
X  warn "$argv0: don't recognise my name." ;
X}
X#
X# If nothing else, become an rxterm.
X#
Xif (@ARGV == 0) {
X  #unshift(@ARGV,"-ls") if ($Diff) ;
X  unshift(@ARGV,"xterm","-ls","-n",$MACH) ;
X}
X#
X# Some special considerations if we are not ourselves on the other side.
X#
Xif ($OffSite || $User) {
X  #
X  # We want to pass a cookie here.
X  #
X  if (-e $XAUTH) {
X    #
X    # This is going to be unsecure, as the cookie will appear in a number
X    #  of command line args.  But at least it'll work.
X    # This will need enhanced if we ever fix the code above to
X    #  set DISPLAY to ":0.0", when we return to the server.
X    #
X    $CooKie = `PATH=\$PATH:$XPATHS xauth list $DISPLAY` ;
X    chop($CooKie) ;
X    @CooKs = split(' ',$CooKie) ;
X    shift(@CooKs) ;
X    unshift(@STUFF,"xauth","add",$DISPLAY,@CooKs,";") if (@CooKs == 2) ;
X  } else {
X    #
X    # Yuk.  What a crock.  I hate doing this.
X    #
X    system("xhost +$MACH >/dev/null 2>/dev/null") if ($Diff) ;
X  }
X  #
X  # We really only want to pass a value for $DISPLAY.
X  #
X  @VARS=("DISPLAY", split(' ',$ENV{"RXENV"})) ;
X} else {
X  #
X  # Some variables we wish to export
X  #
X  @VARS=(
X    "DISPLAY",
X    "XENVIRONMENT",
X    "XFILESEARCHPATH",
X    "XUSERFILESEARCHPATH",
X    "XAPPLRESDIR",
X    "OPENWINHOME",
X    "LD_LIBRARY_PATH",
X    # "MANPATH",		# for "rxman", and bourne shell users.
X    "XAUTHORITY",
X    split(' ',$ENV{"RXENV"}),
X    ) ;
X  #
X  # Braindead bourne shell, needs to be given a $PATH...
X  # We would rather not pass the current $PATH, because it might not work
X  #  on the destination machine.  I'd rather it was set by the user's
X  #  remote shell during the rsh.
X  # Fortunately, all *my* X programs are in an arch independant place, and
X  #  so it shouldn't cos a problem, locally.
X  # We check against $RSHELL, because they might be running another shell,
X  #  differant from their login shell.  I know, sounds weird, but it's too
X  #  common round here.
X  # I've also included ksh in the brain-damage, cos I can't see an easy way
X  #  to pass throught $ENV{"ENV"} without it being too late. (We only have
X  #  one person who has ksh as a login shell anyway...)
X  # Oh, yeah.. we are assuming that if it's bourne shell here, then it's
X  #  bourne shell there.  Much more important than this is that it it ISNT
X  #  bourne shell here, it better not be bourne shell there.
X  #
X  if ($RSHELL =~ m#/(k)?sh#) { push(@VARS,"PATH"); }
X}
X#
X# Validate $PWD routine...
X#
Xsub validate_pwd {
X  local(@pwdstats, @dotstats);
X  local($pwd) = $_[0];
X
X  unless (defined($pwd))          { return undef; } ;
X  unless (@dotstats = stat("."))  { return undef; } ;
X  unless (@pwdstats = stat($pwd)) { return undef; } ;
X  if (($pwdstats[$ST_DEV] != $dotstats[$ST_DEV]) ||
X      ($pwdstats[$ST_INO] != $dotstats[$ST_INO])) { return undef; } ;
X  $pwd;
X}
X#
X# Try and find a nice, valid, pwd.
X#
XPRESENT: {
X  if ($PWD = $ENV{"PWD"}) {
X    $FOOPWD = $PWD ;
X    $FOOPWD =~ s#(/tmp_mnt|/export)?/(.*)#/$2# ;
X    $PWD = &validate_pwd($FOOPWD) || &validate_pwd($PWD) ;
X  }; 
X  unless ($PWD) {
X    chop($PWD = `pwd`) ;
X    $FOOPWD = $PWD ;
X    $FOOPWD =~ s#(/tmp_mnt|/export)?/(.*)#/$2# ;
X    $PWD = &validate_pwd($FOOPWD) || &validate_pwd($PWD) || $HOME;
X  }
X}
X$PWD =~ s#(.*)#\'$1\'# ;
X#
X# Try to find somewhere nice to live on the other side.
X#
Xunless ($OffSite) {
X  unshift(@STUFF,"test","-d",$PWD,"&&","cd",$PWD,";");
X}
X#
X# Start building the full command.
X#
Xforeach $var (@VARS) {
X  ($val = $ENV{$var}) &&
X     unshift(@STUFF,"setenv","$var","\'"."$val"."\'",";") ;
X}
X#
X# Some commands to do on the other side...
X#
Xunshift(@STUFF,"set","nonomatch",";");	# only if we are using csh.
X#
X# Build the remote command.
X#
X$REMOTE=("(umask 077 ; ((".join(" ",@STUFF,@ARGV).")</dev/null >&$LOGF &))") ;
X$REMOTE =~ s#\"#\\\"#g ;
X$REMOTE = "\"" . $REMOTE . "\"" ;
X#
X# Build the arg list for the exec.
X#
X@COMM=($RSH,@LUser,"$MACH","csh","-fc",$REMOTE) ;
X#
X# Do it!
X#
Xif ($debug) {
X  print "@COMM\n" ;
X} else {
X  exec @COMM ;
X}
X#
X# Rsh doesn't return any indication of how it went over
X# on the other side, but that's OK, cos we aint going to
X# wait around to see what happened.
X#
Xexit 0 ;
X#
X# tHe ENd
END_OF_FILE
if test 9028 -ne `wc -c <'rx.pl'`; then
    echo shar: \"'rx.pl'\" unpacked with wrong size!
fi
chmod +x 'rx.pl'
# end of 'rx.pl'
fi
echo shar: End of archive 1 \(of 1\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have the archive.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0


-- 
    Duncan Sinclair  |  sinclair@dcs.gla.ac.uk  |  sinclair@uk.ac.gla.dcs
      ---  Would the *real* UNIX Operating System please stand up.  ---

Newsgroup: comp.windows.x
document_id: 67463
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscribe me

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
document_id: 67464
From: barmar@think.com (Barry Margolin)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk> julian@comp.lancs.ac.uk (Julian G. Self) writes:
>Wasn't the shareware fee a "suggestion" by John?

It's a request to personal users; it's a requirement for commercial,
government, and institutional users.

Someone else asked whether the authors of the JPEG and TIFF software had
given permission to incorporate their code into a commercial product.  I
found the following in jpeg/README:

    We specifically permit and encourage the use of this software as the
    basis of commercial products, provided that all warranty or liability
    claims are assumed by the product vendor.

and the following in tiff/Copyright:

    Permission to use, copy, modify, distribute, and sell this software and
    its documentation for any purpose is hereby granted without fee, ...

Looks like he's OK on that account.
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
document_id: 67465
From: smedley@tuns.ca (Trevor J. Smedley)
Subject: Buying X Terminals

We are planning on buying 15-20 X Terminals.  I have the article from Jim
Morton regarding prices, etc., and am looking for any other information
that will help me decide which to buy.

The terminals will be connected to a DEC 3000/400 AXP with 96Mb RAM,
running OSF/1.  From what I have found out so far, it would be best to run
as much as possible in the terminal itself (X11, window manager, xterm,
etc.), and that in order to do this we need n Mb RAM in the Xterminal
(where n ranges from 4 to 10, depending on who I talk to).

What should I be looking for?  What sort of questions should I be asking
the salespeople?

Thanks

Trevor J. Smedley - smedley@tuns.ca
School of Computer Science
Technical University of Nova Scotia

Newsgroup: comp.windows.x
document_id: 67466
From: kartik@hls.COM (Kartik Chandrasekhar)
Subject: Multiple(Not Simultaneous) server connections

Hi,

   We have a requirement for dynamically closing and opening
different display servers within an X application in a manner such
that at any time there is only one display associated with the client.

   Assumming a proper cleanup is done during the transition should
we anticipate any problems.


kartik
kartik@hls.com


Newsgroup: comp.windows.x
document_id: 67467
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: XmTextField truncation with LANG bug(???)

In article <lttm1lINNrli@news.bbn.com>, swalker@bbn.com (Susan Walker) writes:
|> I have found a situation which I think is a bug in X or Motif, but I'm hoping
|> is really just a mistake on my part.  Does anyone know anything about
|> this problem........
|> 
|> - I am using an XmTextField, and setting its XmNvalue to a hardcoded
|>   text string (ascii or Kanji) either via XtSetValues or XmTextSetString.
|>   The problem is that when the XmTextField is displayed, the text is getting
|>   truncated, depending on the setting of the environment variables
|>   LANG (more specifically LC_ALL).  When they are set to japanese,
|>   the text gets truncated.  When they are set to english, everything
|>   works fine.  I am taking the default for XmNcolumns.
|>   (Please note that hardcoding of text is NOT done in my actual
|>    application, just in my sample code to make things easier)
|> 	
|> - I am running Motif 1.2, X11R5 via HPUX9.01.  My test program is set up
|>   to handle 16 bit Kanji characters.  I have remembered to do   
|>   XtSetLanguageProc() prior to my MrmInitialize and my font resources
|>   are set to japanese fonts.
|> 
|> - Don't know if this matters, but my dialog box and TextField is initially
|>   created with UIL. 
|> 
|> 
|> The problem does NOT happen with XmText.  Unfortunately substituting
|> XmTextFields with XmTexts in my application is not an acceptable
|> alternative (way too much code to be modified while in beta!)
|> 
|> I have a small test program which illustrates the problem if anyone
|> wants it.  My best guess is that either the X code or Motif is not
|> properly allocating memory for japanese, but since I don't have the
|> source to look at it is just a guess.

The problem was that TextField was improperly walking the string; it used
the character count instead of the byte count... a significan "Oops". 
The problem has been fixed and the patch is included in the latest periodic
patch from HP support services.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
document_id: 67468
From: thewalt@canuck.ce.berkeley.edu (C. Thewalt)
Subject: Re: XV 3.00 has escaped!

The copyright notices themselves seem to be making conficting
restrictions.  I do not know how to reconcile:

/* Copyright Notice
 * ================
 * Copyright 1989, 1990, 1991, 1992, 1993 by John Bradley
 * 
 * Permission to use, copy, and distribute XV in its entirety, for 
 * non-commercial purposes, is hereby granted without fee, provided that
 * this license information and copyright notice appear in all copies.
 *

... with:

 *
 * XV is shareware for PERSONAL USE only.  You may use XV for your own
 * amusement, and if you find it nifty, useful, generally cool, or of
 * some value to you, your non-deductable donation would be greatly
 * appreciated.  $25 is the suggested donation, though, of course,
 * larger donations are quite welcome.  Folks who donate $25 or more
 * can receive a Real Nice bound copy of the XV manual for no extra
 * charge.
 * 
 * Commercial, government, and institutional users MUST register their
 * copies of XV, for the exceedingly REASONABLE price of just $25 per
 * workstation/X terminal.  Site licenses are available for those who
 * wish to run XV on a large number of machines.  Contact the author
 * for more details.
...

It strikes me that the first part gives you the right to use, without
fee, the program for noncommercial purposes if the info appears in all
copies. This seems to cover educational institutions despite what the
rest of the notice says.  And the first part doesn't say subject to
the conditions outlined below... 

Chris
--
Christopher Robin Thewalt               (thewalt@ce.berkeley.edu)
Dept. of Civil Engineering              These opinions are not necessarily
University of California, Berkeley      shared by my employer...

Newsgroup: comp.windows.x
document_id: 67469
From: gentry@bcstec.ca.boeing.com (Tim Gentry)
Subject: "XIO: fatal IO error 22" problem

Posted for a friend without posting access (but with e-mail access...)
----------------------------

Help, anyone!

I have a X client that is abnormally terminated with the following message:

XIO:   fatal IO error 22 (Invalid argument) on X server "xxxxx:0.0"
       after 10058 requests (10057 known processed) with 78 events remaining.

It has been known to occur when displaying on the Xsun (X11R4) server.  It
occurs with a higher frequency when the client displays on the Xdomain
(X11R4) server running on DomainOS 10.3.5 on an Apollo.

Anybody know why this may be happening? Any suggestions would be greatly
appreciated.

Reply-To: has been set to me.  I'll summarize to the net.

Doug Leary
REDARS Software Development
Boeing Computer Services
dcl@luey.ca.Boeing.COM


-- 
    Tim Gentry   Boeing Computer Services   gentry@bcstec.ca.boeing.com
 This posting in no way officially represents the opinions of Boeing, Boeing
     Computer Services -- or possibly even the poster, for that matter.

Newsgroup: comp.windows.x
document_id: 67470
From: sti@cs.hut.fi (Sami-Jaakko Tikka)
Subject: Re: finding out state of state keys (eg, CapsLock and NumLock)

In <9304211637.AA03386@blue.arbortext.com> rps@arbortext.COM (Ralph Seguin) writes:

>My question is this:  Is there a means of determining what the state
>of CapsLock and/or NumLock is?

I don't know any way except to see what modifiers are on in th
Keypress event.  Of course if there is some reason why you need to
always know the state of modifiers even if your windows don't have the
keyborads focus you can always ask for KeyPress events from the root
window.  Then you get all the KeyPresses and you always know what have
been pressed.

>An even more pointed question: Is there an easy means of making an X
>keyboard act like a PC keyboard?  ie, CapsLock is active, and the user
>presses shift-a, I'd like to get a lowercase 'a' instead of 'A'.

I think this is just a question of how to implement XLookupString.
You can always write another function that interprets the KeyPresses
as you like.  You can look at the implementation of XLookupString from
the Xlib sources and then modify it a little bit.
-- 
        Sami.Tikka@hut.fi | /G=Sami/S=Tikka/O=hut/ADMD=fumail/C=fi/
                           "Live Long and Prosper!"

Newsgroup: comp.windows.x
document_id: 67471
From: probert@ucsb.edu (Dave Probert)
Subject: image data format question

** I am posting this for a friend **
** please respond to vaughn%sonatech@hub.ucsb.edu **

I'm working on an application where we are creating a dither pattern 
and rendering it in a window by applying it to the stipple pattern 
of the GC.  The following code segment almost works if the window width 
is an even multiple of 8.  If it is not an even multiple it skews the 
pattern towards the right.  Another problem, whether it is an even 
multiple of 8 or not, is a series of vertical lines spaced 8 pixels 
apart.


extern	Display	       *dpy;
extern	Window		xid;
extern	GC		gc;

extern	int	Max_X, Max_Y;		/* set in resize handler	*/

dither(pixels)

	char	*pixels;		/* dither pattern data		*/

	{
	char	*bm;			/* bitmap data			*/
	char    *bmp;
	long	 I, arraymax;


	arraymax = Max_X*Max_Y;

	bm  = (char *)malloc(arraymax);
	bmp = bm;

	for (I=j=0; I<arraymax; I++)
		{
		if (pixels[I] & DITHER_BIT)
			*bmp |=   2<<j;		/* pixel on		*/
		else
			*bmp &= ~(2<<j);	/* pixel off		*/

		if (++j > 7)
			{
			bmp++;
			j = 0;
			}
		}

	stipple = XCreateBitmapFromData(dpy, xid, bm, Max_X, Max_Y);
	free(bm);

	XClearWindow(dpy, xid);

	XSetStipple(dpy, gc, stipple);
	XSetFillStyle(dpy, gc, FillStippled);
	XFillRectangle(dpy, xid, gc, 0, 0, Max_X, Max_Y);
	XSetFillStyle(dpy, gc, FillSolid);
	}

I suspect the answer is to pad the data.

--
Mike Vaughn
Sonatech

Newsgroup: comp.windows.x
document_id: 67472
From: adrian@ora.COM (Adrian Nye)
Subject: Re: Keyboard mapping and window placement questions


> If I use Xt, all 
> O'Reilly has to say is '...is automatically handled by Xt...'.  If I use Xlib, ala XNextEvent(), I get nothing.  This all stems from problems with users of 
> the Sun 4/5 keyboard and the NumLock; plus various Alt/Meta/etc. modifier 
> requirements.

That's not all it says.  The coverage of modifiers is in Chapter 8
of Volume Four (or chap 7 in older Athena editions), where there is about 
10 pages on how to specify translations to capture
various combinations of keys or buttons.

The Xlib route uses XLookupString and there is a lot of coverage
of how that works in Volume One,  chapter 9.  You should read this
to understand how all the mappings work before trying to do anything
complicated.

Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
document_id: 67473
From: dips@aurora (Deeptendu Majumder)
Subject: Re: XV 3.00 has escaped!

Julian G. Self (julian@comp.lancs.ac.uk) wrote:
: Wasn't the shareware fee a "suggestion" by John?
: Is so then it's up to the individual to make the choice whether or not to
: honour it and part with money.  Personally if I was in his position I would
: do exactly the same thing, John has obviously put in lot of time and effort
: into xv and why shouldn't he receive some money for it.

: Just my pennies worth

: (Keep up the good work John)

Yeah I agree..I am very impressed by the kind of effort that has gone into
the lastest release...some people are just looking for excuses to gripe..
I personally feel that the work is worth much more that $25...after seeing
the kind of things people get paid for..

d.



Newsgroup: comp.windows.x
document_id: 67474
From: moose@orb.utc.com (Bruce Trvalik)
Subject: GUI tools

We are making a transition from NextStep to X-windows. I am trying to find the best GUI tool for our needs.  I have looked at several tools but they all seem basically the same (each salesman will beg to differ). I realize that there are differences but I don't have an infinate amount of time to discover what they are. The tools I have looked at so far are UIM/X, X-designer, Tele-Use, tcl/tk,Interviews, and SUIT. 
So far I've drawn the following conclusions:

1) The builder for Interviews is not very mature, bad docs
2) Tele-Use is very expensive and uses a proprietary toolkit
3) UIM/X & X-designer seem about the same, even though X-designer does not have a interpreter (I'll by Centerline if I need one)
4) tcl/tk is a little buggy
5) I know very little about the ICS Builder (just have the sales info)
6) Due to a corporate agreement X-designer is much cheeper than any other comercial product.
7) For the time I'm spending I could have bought all of them (well different money)
8) We will have to live with any shortcomings and make it work
9) this type of tool seems great, but noone seems to talk about them on the net. Is there another news group for this ?
10) SUIT cost too much for comercial development.

I'm hoping someone out there has a strong opinion on at least one of these products.

thanks 

---
*	Bruce Trvalik  AOA-----------------*
*       (617)864-0201   check your mind at the door - The Band That Time Forgot
*	moose@aoa.utc.com
*       aoa!moose@bbn.com

Newsgroup: comp.windows.x
document_id: 67475
From: bglenden@colobus.cv.nrao.edu (Brian Glendenning)
Subject: Re: XV 3.00 has escaped!


Alas, we too will have to stop using it.

Brian
--
       Brian Glendenning - National Radio Astronomy Observatory
bglenden@nrao.edu          Charlottesville Va.           (804) 296-0286

Newsgroup: comp.windows.x
document_id: 67476
From: david@pop (David E. Smyth)
Subject: Re: R5 table widget causing trouble with XtQueryGeometry

I just got a bug report and a fix for this exact problem from
fisher@iscp.bellcore.com (Greg Fisher):

> ... the most serious problem I have identified has not
> been incorporated.  This problem occurs when the Table widget's
> GeometryManager is invoked by a child.  This will work correctly if
> the table widgets parent complies with the Xt protocols.  However, if
> they do not, as is the case for some Motif widgets, and they ignore
> XtCWQueryOnly, then the sizing will be incorrect.
>         In order to see this problem, the following events must
> happen:
> 1. A child of the table widget must request a new size.
> 2. The table widget must query its parent for a new size having set
>    XtCWQueryOnly.
> 3. The parent must ignore the XtCWQueryOnly bit and resize the table
>    widget.  As part of the resize, XmpTableForgetProposedLayout is
>    called.  This will set tw->table.current_cols and
>    tw->table.current_rows to zero.
> 4. The table will continue setting up the new size, working under the
>    assumption that it is working with a proposed and not actual
>    layout.  At the end, it will call XmpTableSaveProposedLayout.  This
>    will save tw->table.cols and tw->table.rows and restore their
>    values from tw->table.current_cols and tw->table.current_rows.
>    However, these have already been set to zero.
> 5. Since the table widget has already been resized, it will not need a
>    second resize.
> 6. Next, another widget managed by some ancestor of the table is
>    resized.  This results in the parent of the table requesting the
>    tables preferred size.  Since tw->table.cols and tw->table.rows are
>    zero, this will return 0x0 as the preferred size.
> 7. The parent is very likely to grant this request, resulting in a
>    loss of the whole table from the display.
> 

He isolated the problem a proposed a workaround which seems precisely
correct.  Here is the new implementation of XmpTableNewProposedLayout
which will be released with the next update in 5 weeks:

Xmp/Table.c:

void XmpTableNewProposedLayout( tw )
    XmpTableWidget tw;
{
    XmpTableConsiderSameSize(       tw );
    XmpTableProposedColsAndRows(    tw );
    XmpTableQueryParentForResize(   tw );    /* query only, no resize */

    /*
     * Since we only made a query, we *should* still need to continue.
     * However, Motif is broken so that we actually may already have
     * been resized.  In that case, the proposed layout is already
     * forgotten, so we should just quietly exit.
     */
    if ( tw->table.resize_status == RSdueToRequest )
    {
        XmpTableMakeColsFitQueryWidth(  tw );
        XmpTableMakeRowsFitQueryHeight( tw );
        XmpTableGetProposedChildSize(   tw );
        XmpTableSaveProposedLayout(     tw );
    }
    /* else the resize has already been done.  Our proposed layout would
     * have been forgotten in the process.
     */
}

The XpTable the fix is identical, except of course for the names:

Xp/Table.c:

void XpTableNewProposedLayout(  tw )
    XpTableWidget  tw;
{
    XpTableConsiderSameSize(       tw );
    XpTableProposedColsAndRows(    tw );
    XpTableQueryParentForResize(   tw );    /* query only, no resize */
    /*
     * Since we only made a query, we *should* still need to continue.
     * However, some manager widgets are broken so that we actually may
     * already have * been resized.  In that case, the proposed layout
     * is already forgotten, so we should just quietly exit.
     */
    if ( tw->table.resize_status == RSdueToRequest )
    {
        XpTableMakeColsFitQueryWidth(  tw );
        XpTableMakeRowsFitQueryHeight( tw );
        XpTableGetProposedChildSize(   tw );
        XpTableSaveProposedLayout(     tw );
    }
    /* else the resize has already been done.  Our proposed layout would
     * have been forgotten in the process.
     */
}

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6193 (do NOT use v-mail yet!)
CCCP, X and Object Guru.		office: 525/C165
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
	"That Sun Windows thingy, what's it called?  You know, its
	really awful.  X?  Motif?  That's it - Motif! Yuck!"
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67477
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Subject: Re: Overriding default WM Behaviour


Just create the window in the place you want it and set the program
position field in the WM_NORMAL_HINTS property, then map it.

Then, assuming they have a non brain dead window manager, the user can
say whether they want to us program specified positions or not. For
tvtwm the UsePPosition command in the .tvtwmrc will do this.

Now, I'm sure that by the time this message gets out of our local news
timewarp someone will have advised you to set the user position bit in
the WM_NORMAL_HINTS. _Do_not_ do this. It's evil. It's a disservice to
your users. Offler the tusked crocodile god will come in the night and
remove your vital organs with a blunt spoon if you even contemplate
it.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

Newsgroup: comp.windows.x
document_id: 67478
From: fwr8bv@fin.af.MIL
Subject: xdm and env. vars

Hi,

I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
the .login file doesn't get executed and therefore neither the olwm
root-window nor my applications know about these variables.

I used the "DisplayManager._0.userPath" resource in /usr/lib/X11/xdm/xdm-config
to succesfully pass the PATH variable.  But I am having problems passing anything else!!!  I tried execing $HOME/.login in /usr/lib/X11/xdm/Xsession
but that didn't help.  I also tried using
	"DisplayManager.exportList: HELPPATH MANPATH ARCH"
which didn't work either.

I would appreciate any help on this matter.

Thanks in advance,
Shash

+-----------------------------------------------------------------------------+
+ Shash Chatterjee                           EMAIL:  fwr8bv@fin.af.mil        +
+ EC Software                                PHONE:  (817) 763-1495           +
+ Lockheed Fort Worth Company                FAX:    (817) 777-2115           +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+


Newsgroup: comp.windows.x
document_id: 67479
From: hannguye@nosc.mil (Han N. Nguyen)
Subject: Action Translation Table implementation


Hello,


Our application requires us to capture keypad presses for all windows
in a number of applications.  We are trying to use action translation
tables to implement this.  We have only succeeded by assigning the
translation table to every individual widget in all windows in a single
application.  The Xt calls we make are included below.

It would be much more convenient if we could assign the translation
table to a class of widgets rather than individual widget instantiations,
and also accomplish it for MULTIPLE applications.  If someone could
describe how do this it would be greatly appreciated.

Platform: Sun Sparc w/ X11R4 & Motif 1.1.4

***********************************************************************

static XtActionsRec actionsTable[] = {
        {"up", do_up},
        {"right", do_right},
        {"middle", do_middle},
        {"left", do_left},
        {"down", do_down},
	{"bye", quit},
};

static char defaultTranslations[] = 
		"<Key>KP_8: up() \n\
		 <Key>KP_6: right() \n\
		 <Key>KP_5: middle() \n\
		 <Key>KP_4: left() \n\
		 <Key>KP_2: down() \n\
		 <Key>KP_1: bye()"; 

XtTranslations	trans_table, trans_table2;

(. . .)

    XtAddActions(actionsTable, XtNumber(actionsTable));
    trans_table = XtParseTranslationTable(defaultTranslations);

    widget = XtCreateManagedWidget("msg", xmPushButtonWidgetClass,
		form, wargs, n);

    XtOverrideTranslations(widget, trans_table);

***********************************************************************



Newsgroup: comp.windows.x
document_id: 67480
From: garyrich@qdeck.com (Gary Rich)
Subject: Re: DESQview/X on a PC and network Traffic

In article <1rkloc$k49@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>
>In article 1369@qdeck.com, support@qdeck.com (Technical Support) writes:
>>In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>>
>>>What sort of traffic is generated with the X-calls?  I am curious to find
>>>out the required bandwidth that a link must have  if one machine running
>>>DV/X is supporting multiple users (clients) and we require adequate response
>>>time.  Anyone have any ideas ??  
>>
>>I expect the limiting factor will be your server machine, not the network
>>itself. To give you a real-world example, here at Quarterdeck we have
>>roughly 100 people using DVX to talk to a bunch of unix boxes, novell
>>file servers, and each other. It's not _too_ much of a load on our
>>Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
>>segment). If you had a badly loaded net, or the apps you wanted to run
>>were very network intensive, you could run into some slowdowns.
>>
>>But the biggest problem would be the machine itself. Say you have a 486
>>33 with plenty of ram and a fast hard disk and network card. If you have
>>10 people running programs off it, you're going to see some slowdowns
>>because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
>>attempt to see if tasks are idle and make sure they give up their time
>>slice, but if you have 10 working programs running, you'll know it.
>>
>
>Well I can buy a bigger and more powerful server machine because of the 
>significant drop in price year after year.  The link I want to use 
>though (ISDN 64K) is costly and the bandwidth limited.  That's why my
>interest lies in seeing if such a link can be used and see what traffic 
>goes through it.

Since I don't think Tom always gets time to read this group, I'll take the
liberty of responding to some of this.  If you really want Tom to reply
you should send mail to support@qdeck.com.

A 64k line is certainly going to restrict you far more than the 10mbps
ethernet that we typically run.  How restrictive it will be depends on 
what you run and how you run it.  I would think that a couple of instances
of some really nasty program like "Smoking Clover" would make the link 
useless for anyone else.  On the other hand, probably 50 xclocks quietly
updating every 10 seconds or so wouldn't impact it too much.  In the real
world, you will be somewhere in between these two extremes.

Going by the way I personally use X on a daily basis, I wouldn't want to have
to share that 64k link with more than 3-4 other people.

>>Having said that, if you can tweak the programs being run (by adding
>>in calls to give up time slices when idle and that sort of
>>thing), you could probably run 15-20 people on a given machine before
>>you started seeing slowdowns again (this time from network bandwidth).
>
>Hmmm.  Has anyone at your centre monitored the traffic at all?  Are you
>running any standard MS-Windows programs like Word ?  What sort of 
>packets go blazing through? What size link do you have (2Mb or 10Mb ?).
>What is the average traffic flow going through your network or do you
>have few high peaks and then many low points?

Our corporate WAN is as unique as any other.  The usage patterns are not very
good predictors of how yours will behave.  The only one of our low bandwidth
links that normally get used in this way is a 56k link to Ireland that they
often use to run a DOS text based client end of a client-server database 
remotely from the DVX machine behind me. Since the server end is (or was) always
at this end (California) it is faster to remotely run the client via DESQview
X and have a short hop to the server than running the client locally and having
a long hop to the server.  As I warned you, this tells us very little about
how you usage pattern will fill a 64k ISDN link.

Running Word for Windows remotely is going to itself be very usage dependent.
Let's break it into pieces and look at it.  Tracking the mouse pointer is easy
and efficient to translate from Windows calls into X. Popping up a menu is a
little more involved and will generate some traffic.  Restoring the screen
that was covered by that menu may be easy and may not be.  Does the server
that it's displaying on have backing store?  If so and the server had enough
memory the display can be updated locally and will generate little network
traffic. If no backing store, then what was being covered up?  If it was a 
solid colored rectangle of space we can tell your xserver to draw that quite
easily.  If it was a full color backdrop of Ren & Stimpy we may have to send
it back to the X server bit by bit.  DVX will do its level best to only redraw
that small area, but in some unusual cases the entire screen may need to be 
repainted.  Assuning a 1024x768 screen with 4 bits per pixel that's 3145728 bits
that has to be sent.  Worst possible case you're looking at about 50 seconds.
In reality it would never be this bad since the screen will always have parts 
that will be tranlatable into higher level X calls.

>
>
>>It all really depends on what the programs are doing (ie. you're going
>>to see a slowdown from X-bandwidth a lot sooner if your apps are all
>>doing network things also...)
>>-- 
>
>What do you mean by network things?  I vision using MS Windows and other
>Windows applications over the network were the processes are running on
>the server and all I am getting are the displays.  I am wondering how 
>good is the X and subsequently DV/X protocol in transferring these 
>images with X-calls and displaying them on a client's machine.

X was designed from the ground up to be efficient across a network.  It's 
pretty good for this.  X programs are best, DOS text programs are almost
as good (since we conert them to X easily).  Something like WinX is a hybrid.
We intercept the calls Windows makes to it's graphics driver/ mouse driver
keyboard driver and convert them to X.  The calls Windows is making are in
no way designed to be efficient on a packet switched network.  We go to a 
lot of trouble to convert them to the highes level Xlib calls we can, but
we are somewhat limited because we only know what Windows and its applications
tell us.

+--------------------------------------------------------------------------+
|   Quarterdeck Office Systems                    ____________________/_   |
|         Gary Rich - Problem Resolution Dept.    _________________///__\  |
|  _____________________________________________  ______________/////___\  |
|   Anonymous FTP site = qdeck.com                ___________///////____\  |
|          ---For---          ---Write to---      ________/////////_____\  |
|    Pricing/Ordering info :  info@qdeck.com      _____///////////______\  |
|     Technical Questions  : support@qdeck.com    __/////////////_______\  |
|         Quarterdeck BBS - (310) 314-3227        \\\\\\\\\\\\\\\\\\\\\\\  |
+--------------------------------------------------------------------------+


Newsgroup: comp.windows.x
document_id: 67481
From: william@lanai.cs.ucla.edu (William Cheng)
Subject: Re: Wanted: diagram drawing program

In article <1roouu$gdj@tuegate.tue.nl> lennart@blade.stack.urc.tue.nl (Lennart Benschop) writes:
>
>I am looking for a  program to draw various kinds of diagrams on my Linux
>system.
>
>- It must be free.
>- It must run on standard (monochrome) X with a small screen size (800x600)
>  No motif/openlook etc.
>- It must compile under Linux with gcc/g++. Most generic unix software
>  works ok.
>- It must produce postscript files that I can include into LaTeX documents
>  with dvips. Or just tell me another free program that converts one
>  of the supported formats to ps.
>- It must produce drawings that are larger than the window size (scrollable).
>
>I know of several such programs, idraw, xfig. tgif. I have
>no experience with any of them. Features I would like in the programs are.
>
>- ability to draw circles, arcs, straight lines, boxes and arrows.
>- support for both dashed and solid line styles for all of these objects.
>- support for texts in any size.
>- ability to move/copy/resize/rotate any part of the drawing.
>- ability to turn any part of the drawing into a library component
>  (e.g. a transistor symbol composed of three lines, an arrow and a circle)
>- any aid (numeric coordinates, screen grid) to align parts of the drawing.
>- less essential, but in fact very handy: preservation of connection.
>  If I move one part of the drawing, the lines that connect that part to the
>  rest of the drawing, stay connected.
>
>Ideally I want the tool so general and flexible that it is comfortable to
>draw electronic schematics, flow charts, logic diagrams, data flow diagrams
>and block diagrams with it. 
>
>I just want to know which of the programs offer which of the features on my
>whishlist and are there any other programs? How demanding are the programs
>with respect to disk space, memory and CPU usage? Are any of the programs
>known to work on Linux with monochrome X?

In the list you mentioned, tgif handles everything except rotation and
any size text.  It only supports 90 degrees rotation.  Currently, it
supports 11 (X11R4 standard) font sizes.  However, it allows arbitrary
scaling of the entire drawing.  Effectively, it allows any font sizes, but
you can only have 11 different sizes per drawing.

Tgif takes up 850K (compiled with -O option) on a SPARCstation.  I was told
that it compiles under Linux, but I haven't tried it yet.  It works with
both color and monochrome X.
-- 
Bill Cheng // UCLA Computer Science Department // (310) 645-8328
3564-C Boelter Hall // Los Angeles, California 90024 // USA
william@CS.UCLA.EDU      ...!{uunet|ucbvax}!cs.ucla.edu!william

Newsgroup: comp.windows.x
document_id: 67482
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: XDM, Xkernel, and olwm


	Greetings,
	We have a network of ~20 Sun Workstations, running SunOS 4.1.1
and Openwindows 3.  7 of these are Sun 3's that we have modified to
run Seth Robertson's xkernel image, effectively turning them into
xterminals.  We use xdm (X11R4) to manage the displays.

	When we had 3 xkernel machines, things worked fine, but when
we installed 4 more last weekend, we appear to have found a weakness.
With 7 clients to 1 Sparc 2, the Sparc 2 window manager is eventually
getting munged.  

	Let me try to be precise:  The user sitting at the machine
that does all the actual processing for these xterminals is having
control of his keyboard and screen yanked away.  (When this was the
department chair, it was kind of cute).  We poked at xdm for a few
days and are satisfied that it is not at fault.  Our current theory is
that olwm (the Sun version) was not meant for running multiple copies
on one machine (which is what happens -- the console user runs olwm,
and every xterminal logged in has olwm running on the xterminal
server). 

	Has anyone had any prior experience with this sort of behavior?
	Can anyone shoot obvious holes in this theory?
	How about obvious gimmes?
	And, of course, any ideas on how to solve it?

	Any ideas are greatly appreciated.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d++ -p+ c+++ m*/m- s++/- g+ w+/w-- x+
  email for explanation if interested...

Newsgroup: comp.windows.x
document_id: 67483
From: euamol@eua.ericsson.se (Mats Larsson)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

In article 28858@cas.org, lwv26@cas.org (Larry W. Virden) writes:
>In article <0frolV200awVI3IV4s@andrew.cmu.edu> "Derrick J. Brashear" <db74+@andrew.cmu.edu> writes:
>:
>:I got the following today from Gary Risebrough and it worked fine:
>:
>:Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
>:ITO2@aodc.gov.au (554)
>:
>
>:> I have :
>:> > OpenWindows.KeyboardCommands:   Full
>:> > OpenWindows.VirtualGrabKeys :   False
>:
>:> which seems to work.
>:
>
>Where can I find man pages about VirtualGrabKeys resource - it doesn't
>show up in my OpenWindows 3.0 man pages...

VirtualGrabKeys is not an OW resource. It belongs to
olvwm(1).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mats Larsson                   | Email: Mats.Larsson@eua.ericsson.se
ELLEMTEL Telecom Systems Labs  | Phone: +46 8 727 3658
S-125 25 Alvsjo, SWEDEN        | Fax:   +46 8 727 4168
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
document_id: 67484
From: manli@cs.uh.edu (Man Lung Li)
Subject: malloc problem

How do you solve the problem when the message "Cannot perform malloc"
shows for XtCreateManagedWidget call?

I have the application written in X11R5 running on DECstation using
Athena widgets.  As soon as I added codes to do Remote Procedure Call,
the program refused to work.  I also have my program working using
just Xlib calls with RPC.  My executable code is about 1.4M and I don't
have any idea how much memory is the DECstation 3100/5100.

Any help will be appreciated.  Thanks.

-- 
----------------------------------------------------------------------
Man L. Li (manli@cs.uh.edu)
Dept. of Computer Science
Univ. of Houston, Houston,TX 77204-3475

Newsgroup: comp.windows.x
document_id: 67485
From: uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607)
Subject: xdm configuration

---
Hello!

We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
comming up with a chooser menu with different machines on it (works) an then
connect to them. But the only connection works is localhost!
An 'X -indirect <machine>' works very well!
The configuration:

		- starting the 'xdm' at boot time with no servers specified
		   in Xservers
		- starting the X-server at boot time with X -indirect localhost

	     ---> the chooser menu appears with the machines named in
		  Xacces bye
			'*	CHOOSER <machine1> <machine2> ... BROADCAST	
		- the number of users on this machines and the load is 
		    displayed correct

		- selecting an other machine than my own host the X-server
		   starts and nothing happens, after a time out the CHOOSER menu
		   appears again.

I know the xdm bug in X11R4, but all machines running X11R5

Please help
			Lars


-------------------------------------------------------------------------------

Lars Koeller			    E-Mail: uphya001@odie.Uni-Bielefeld.de
Universitaet Bielefeld (Germany)	    uphya001@dave.hrz.Uni-Bielefeld.de
Fakultaet fuer Physik / D0-231	    Phone:  +49 521-106-5375
Universitaetsstr. 25		    Fax:    +49 521-106-5244
4800 Bielefeld 1		    Telex:  932 362



Newsgroup: comp.windows.x
document_id: 67486
From: uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607)
Subject: xdm configuration

---
Hello!

We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
comming up with a chooser menu with different machines on it (works) an then
connect to them. But the only connection works is localhost!
An 'X -indirect <machine>' works very well!
The configuration:

		- starting the 'xdm' at boot time with no servers specified
		   in Xservers
		- starting the X-server at boot time with X -indirect localhost

	     ---> the chooser menu appears with the machines named in
		  Xacces bye
			'*	CHOOSER <machine1> <machine2> ... BROADCAST	
		- the number of users on this machines and the load is 
		    displayed correct

		- selecting an other machine than my own host the X-server
		   starts and nothing happens, after a time out the CHOOSER menu
		   appears again.

I know the xdm bug in X11R4, but all machines running X11R5

Please help
			Lars


-------------------------------------------------------------------------------

Lars Koeller			    E-Mail: uphya001@odie.Uni-Bielefeld.de
Universitaet Bielefeld (Germany)	    uphya001@dave.hrz.Uni-Bielefeld.de
Fakultaet fuer Physik / D0-231	    Phone:  +49 521-106-5375
Universitaetsstr. 25		    Fax:    +49 521-106-5244
4800 Bielefeld 1		    Telex:  932 362





Newsgroup: comp.windows.x
document_id: 67487
From: rryan@panix.com (Rob Ryan)
Subject: Efficient PC Clients

We're looking at various X11 clients for PC's and we're looking for some
information about the relative efficiency of different products.  Are any
notably efficient (fast)?  Are any notably inefficient?  I assume that a
Graphics Accelerator makes them significantly faster (right now I'm looking
at ico running on Xoftware/32 for Windows sitting on the Distinct TCP/IP
platform, and it's (not surprisingly) much slower than ico running on the
Sparc10's console.  What are the key ways of improving performance for
PC (presumably Windows) clients?

Also, what about async solutions?  (Yes, I appreciate that it will be 
*much* slower even with V.42bis.)  I'm in the process of installing PPP
(with header compression).  How does that compare to cslip?  I've seen
a product called XRemote by NCD that promises to be pretty efficient, but
are there comparable products out there?  If we're looking for efficiency
for async, PC clients, what should we be looking at in addition to standard
PPP w/ compression and XRemote?

Any information would be greatly appreciated.  I'm still taking in all
the information in the faq, but any tips about the relative efficiency
of various product offerings would be great.  (I get the impression
that discussions about speed are largely application specific, but
that not withstanding, any comments would be appreciated.)  Thanks.

-- Rob
-- 
Rob Ryan, System Constructs Inc.
    rryan@panix.com

Newsgroup: comp.windows.x
document_id: 67488
From: sirosh@cs.utexas.edu (Joseph Sirosh)
Subject: X Design choice for color handling: question

Most graphics systems I have seen have drawing routines that also specify
a color for drawing, like

Drawpoint(x,y,color) or Drawline(x1,y1,x2,y2,color) or
Fillrectangle(x1,y1,x2,y2,color) 

With X, I have to do something like 
XSetForeground(current_color)
XDrawPoint(d,w,x,y)

Why split this into two functions? Why did X designers decide to not associate
the color with the object being drawn, and instead associate it with the
display it is being drawn on?

Joseph Sirosh


Newsgroup: comp.windows.x
document_id: 67489
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk>
julian@comp.lancs.ac.uk (Julian G. Self) writes:
|> Wasn't the shareware fee a "suggestion" by John?
|> Is so then it's up to the individual to make the choice whether or not to
|> honour it and part with money.  Personally if I was in his position I would
|> do exactly the same thing, John has obviously put in lot of time and effort
|> into xv and why shouldn't he receive some money for it.
|> 
|> Just my pennies worth
|> 
|> (Keep up the good work John)

The fee is a suggestion for an individual but licensing is mandatory
for commercial, government, and institutional users. I wonder how many
users of xv own the system that it runs on.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
document_id: 67490
From: sirosh@cs.utexas.edu (Joseph Sirosh)
Subject: Encapsulated Postscript and X

How do I view .eps files on X? I have an image in color encapsulated
postscript, and need to view it on my screen.

Are there any utilities that will let me convert between encapsulated
postscript and plain postscript?

Joseph Sirosh

Newsgroup: comp.windows.x
document_id: 67491
From: rvloon@cv.ruu.nl (Ronald van Loon)
Subject: Re: XV 3.00 has escaped!

In <46464@sophia.inria.fr> muller@mafalda.inria.fr (Christophe Muller) writes:


|"> It is interesting to look at the change(s) of mind that John has had.
|"
|"Very interested indeed! This is against this kind of "changes" that the GNU
|"COPYLEFT is protecting us.
|"
|"Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
|"shows because of its "-loop" feature that display does not have (display
|"from the *wonderful* ImageMagick package! :-D), but I think I will implement
|"it myself (even a shell-script should do the job) and forget xv.
|"
|"Cheers,
|"Christophe.
|"-- muller@simulog.fr
|"
|"     =    Are you the police?  --  No ma'am, we're musicians.    =

JUst use xloadimage instead (or xli).
-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

Newsgroup: comp.windows.x
document_id: 67492
From: bnoble+@cs.cmu.edu (Brian Noble)
Subject: Re: X Server scanline padding question


Figured it out.  The answer lies in mit/server/ddx/mfb/mfbcustom.h.

Brian

Newsgroup: comp.windows.x
document_id: 67493
From: gdmr@dcs.ed.ac.uk (George Ross)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun>, fwr8bv@fin.af.MIL writes:
> I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
> SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
> variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
> the .login file doesn't get executed and therefore neither the olwm
> root-window nor my applications know about these variables.

One usual suggestion is to put everything into your every-time shell rc-file
instead of your login-only one, which is fair enough if you only have a few
users who know what they're doing.  If you have several hundred users who do
what the books tell them, though, then it's confusing at best.  Another is to
have your xterms run login shells, but that still leaves the window manager
and the things that get started from its menus with the wrong environment.

Our alternative is that instead of having xdm run the client startup scripts,
it runs the user's favourite shell as a login shell, and has *it* then run the
rest of the startup scripts.  That way the user's usual environment gets set
up as normal and inherited by everything.  You can find an almost-current copy
of our scripts and things in contrib/edinburgh-environment.tar.Z, available
from the usual places. 
-- 
George D M Ross, Department of Computer Science, University of Edinburgh
     Kings Buildings, Mayfield Road, Edinburgh, Scotland, EH9 3JZ
Mail: gdmr@dcs.ed.ac.uk      Voice: 031-650 5147      Fax: 031-667 7209

Newsgroup: comp.windows.x
document_id: 67494
From: greg@Software.Mitel.COM (Gregory Lehman)
Subject: Looking for drawing packages

Greetings.

I am developing an application that allows a *user* to interactively
create/edit/view a visual "model" (i.e. topology) of their network, and
I was wondering if anyone knew of any builder tools that exist to
simplify this task.

In the past I have used Visual Edge's UIM/X product to develop other
GUIs, so I am familiar with UIMSs in general.

The topology will support objects and connecting links.  Once the
topology is created, I want to provide the user with capabilities to
support grouping, zooming, etc.

I am looking for some form of a higher abstraction other than X drawing
routines to accomplish this.  Specifically, the zooming and grouping
aspects may prove difficult, and certainly time consuming,  if I have
to "roll my own".

Suggestions?

-greg

greg@software.mitel.com

Newsgroup: comp.windows.x
document_id: 67495
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: xvertext version 5.0 released

Now available: xvertext 5.0 
---------------------------

Another day, another xvertext release...

Summary                                  
-------
xvertext provides you with several functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). 

What's new since 4.0?
---------------------
o Existing bitmap fonts can be magnified to give reasonable fonts at large
  sizes.
o Bounding boxes can be obtained.
o The GC's stipple bitmap is honoured.
o Font IDs can be cached when font names are unavailable.
o An Imakefile is present.
o The demos are better (including a ransom note like the 
  comp.sources.postscript one)

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.5.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
document_id: 67496
From: hwn@cci.dk (Henrik W. Nielsen)
Subject: Help. BadMatch making 24bit win on 8bit server !!



I'm trying to make a 24 bit window using XCreateWindow on a 8 bit
PseudoColor server. As far as I know this should be possible if you
server supports a TrueColor or DirectColor visual. I'm using a
Sun IPC with a RasterFLEX card.

Running xdpyinfo gives:
...
screen #0:
  dimensions:    1152x900 pixels (352x275 millimeters)
  resolution:    83x83 dots per inch
  depths (4):    1, 5, 8, 24
  root window id:    0x80083
  depth of root window:    8 planes
  number of colormaps:    minimum 1, maximum 6
  default colormap:    0x80080
...
  number of visuals:    8
  default visual id:  0x80079
...
  visual:
    visual id:    0x80079
    class:    PseudoColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x8007a
    class:    TrueColor
    depth:    24 planes
    size of colormap:    256 entries
    red, green, blue masks:    0xff, 0xff00, 0xff0000
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x8007b
    class:    DirectColor
    depth:    24 planes
    size of colormap:    256 entries
    red, green, blue masks:    0xff, 0xff00, 0xff0000
    significant bits in color specification:    8 bits


My code looks like this:

if ((Xio.DspPtr = XOpenDisplay(NULL)) == NULL)
    logexit(1, "Cannot connect to X server %s", XDisplayName(NULL));

Xio.Scr = DefaultScreen(Xio.DspPtr);   /* use this screen                 */

if (XMatchVisualInfo(Xio.DspPtr, Xio.Scr, 24,
		     DirectColor, &Xtern.ColorInfo))
{
   memset(&SetWinAttrib, 0, sizeof(XSetWindowAttributes));
   Xio.GSwin = XCreateWindow(Xio.DspPtr, RootWindow(Xio.DspPtr, Xio.Scr),
			     x, y, w, h, 0, 24, InputOutput,
			     Xtern.ColorInfo, 0, &SetWinAttrib);
}


This results in a BadMatch error. Can anyone please tell me why ?


------------------------------------------------------------------------------
| Henrik Winther Nielsen                                     CCCCCCC  II  
| Basic Development                                         CC  CCCC      
| CCI Europe                   Mail:  hwn@cci.dk            CC CC     II  
| Oester Parkvej 9             Phone: 86295588 (361)        CC  CCCC  II  
| DK-8270 Hoejbjerg                                          CCCCCCC  II  
| Denmark                                                    e u r o p e       
 ------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67497
From: oj@world.std.com (Oliver Jones)
Subject: Re: X Design choice for color handling: question

In article <lu1oftINNnfk@cascais.cs.utexas.edu> sirosh@cs.utexas.edu (Joseph Sirosh) writes:
>
>...Why did X designers decide to not associate
>the color with the object being drawn, and instead associate it with the
>display it is being drawn on?

In X10, the drawing attributes were bundled into drawing
requests;  that is, the server's drawing model was stateless.

This caused problems with performance and network traffic,
so the X11 redesign included the graphic context to codify
the drawing state.  Most application designers who want to
draw things in several different colors create a GC for
each color during initialization, then pass the GC id in
each drawing request.

For more information see Scheifler and Gettys's article
in the 1986 ACM Transactions on Graphics.



Newsgroup: comp.windows.x
document_id: 67498
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: x11perfcomp visualization ?


Hi,

is there any script/program/thelike already existing which could transform
the output of x11perfcomp (a huge table) into a nice 3d'ish diagram or
graph by producing postscript output from x11perfcomp input ?

Maybe someone has already written such beast ...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67499
From: sjg@phlim.ph.kcl.ac.uk (Simon Gornall)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr30.084145.20953@cv.ruu.nl>, rvloon@cv.ruu.nl (Ronald van Loon) writes:
} In <46464@sophia.inria.fr> muller@mafalda.inria.fr (Christophe Muller) writes:
} 
} 
} |"> It is interesting to look at the change(s) of mind that John has had.
} |"
} |"Very interested indeed! This is against this kind of "changes" that the GNU
} |"COPYLEFT is protecting us.
} |"
} |"Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
} |"shows because of its "-loop" feature that display does not have (display
} |"from the *wonderful* ImageMagick package! :-D), but I think I will implement
} |"it myself (even a shell-script should do the job) and forget xv.

We too will have to stop using it. Shame really - it was rather nice.
Still, I have no objection to the owner claiming money for legit. 
work he's put in. We'll just go back to the older versions of Xv.

Simon.

Newsgroup: comp.windows.x
document_id: 67500
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: XV 3.00 has escaped!



Will there be no chance to get the Author of this _REALLY_ superb program
to remove the 'institutional' point in his license statement ?
Or at least to say 'except educational ones' at this ?

I understand that use of this software by either commercial or governmental
users should be result in a donation to its creator, but the everytime
rare on money universities, schools or whatever else institutions should
not be restricted.

If the situation stays as is and the Author explicitely states that
he treats universities and schools as institutions in this context,
i'll have to fallback to xv 2.21 here. Maybe our disk capacity will
soon be dead, when every user has a copy of xv-3.00 in his home dir...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67501
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: Encapsulated Postscript and X


> How do I view .eps files on X? I have an image in color encapsulated
> postscript, and need to view it on my screen.

	Several ways are available -- pageview (which I think came
with our system, so I can't point), ghostview (with ghostscript), and
the new xv 3.00 package all do so.  I recommend the latter two,
especially xv if you want to do any conversion.

> Are there any utilities that will let me convert between encapsulated
> postscript and plain postscript?
	I'm not sure offhand, but I will attempt to mail you the
comp.lang.postscript FAQ, which has a list of utilities.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d++ -p+ c+++ m*/m- s++/- g+ w+/w-- x+
  email for explanation if interested...

Newsgroup: comp.windows.x
document_id: 67502
From: aep@world.std.com (Andrew E Page)
Subject: Encyclopedia/Directory of Widgets?

  Is there such a document either in the Bookstores or possible
on an ftp site somewhere?  Nothing really fancy, just something
that gives a listing of the available widgets, and the resources
that are pertinant to them, and what flavors of Motif they
occur in.



-- 
Andrew E. Page   (Warrior Poet) |   Decision and Effort The Archer and Arrow
Mac Consultant                  |     The difference between what we are
Macintosh and DSP Technology    |           and what we want to be.

Newsgroup: comp.windows.x
document_id: 67503
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: chars of big fonts are shown partially

Hi all,

I wrote a small application which uses pixmaps copied into a window
to show some drawings. This works perfectly for all kind of objects
expect large fonts. What happens on the screen is that the right
half of the font is not shown. The way I create these things is
quite simple; some aggregated code:

XFillRectangle(Disp, Pixs, AnyColor, 0, 0, Width, Height);
XDraw[Line|Rect|String](...);
XCopyArea(Disp, Pixs, Win, 0, 0, Width, Height, 0, 0);

I am using a RS6K 340 with BOS 3.2.

The question is:
  is this a bug in the AIX X-server (may be some PTFs), or did I do
  something wrong within my code??

Sorry for the cross-posting, but I really do not know what kind of
error it is.


Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1 (Germany)

Tel: +49 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
document_id: 67504
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: extension to damaged chars of big fonts

Sorry about the garbage code, the following is used of course:

XSetForeground(Disp, PixGC, BackgroundColor);
XFillRectangle(Disp, Pixs, PixGC, 0, 0, Scr_width, Scr_height);
XSetForeground(Disp, PixGC, ForegroundColor);
XDraw[Line|String|Rectangle](Disp, Pixs, PixGC, ...);
XCopyArea(Disp, Pixs, Win, PixGC, 0, 0, Win_width, Win_height, 0, 0);

Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1

Tel: (+49) 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
document_id: 67505
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Re: XV 3.00 has escaped!

In article <BGLENDEN.93Apr29182711@colobus.cv.nrao.edu>, bglenden@colobus.cv.nrao.edu (Brian Glendenning) writes:
-| 
-| Alas, we too will have to stop using it.
-| 
-| Brian
-| --
-|        Brian Glendenning - National Radio Astronomy Observatory
-| bglenden@nrao.edu          Charlottesville Va.           (804) 296-0286

It says in the licence that non-profit organisations have the rights to
copy, use, distribute etc.. Does that not cover NRAO ? I sure hope it
covers us. Please someone let me know if I have to buy a licence.

	best regards
		Ata <(|)>.
-- 
| Mail          Dr Ata Etemadi, Blackett Laboratory,                          |
|               Space and Atmospheric Physics Group,                          |
|               Imperial College of Science, Technology, and Medicine,        |
|               Prince Consort Road, London SW7 2BZ, ENGLAND                  |
| Internet/Arpanet/Earn/Bitnet atae@spva.ph.ic.ac.uk or ata@c.mssl.ucl.ac.uk  |
| Span                              SPVA::atae       or     MSSLC:atae        |
| UUCP/Usenet                       atae%spva.ph.ic@nsfnet-relay.ac.uk        |

Newsgroup: comp.windows.x
document_id: 67506
From: glb@uvacs.cs.Virginia.EDU (Gina Bull)
Subject: Need patches to use /dev/cgtwelve0

The good news is we just got two Sparc10's. The bad news is
that /dev/cgtwelve0 is apparently not supported in X11R4 or
X11R5. Does anyone know of a patch (and how I can obtain it)
to either X version that will enable us to use X11 on our
Sparc10's? 

adTHANKSvance
Gina

Newsgroup: comp.windows.x
document_id: 67507
From: mdb@rossby.colorado.edu (Mark Borges)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

>>>>> Regarding Re: SUMMARY: virtual mouse in ol{v}wm;
>>>>> euamol@eua.ericsson.se (Mats Larsson) adds:
: VirtualGrabKeys is not an OW resource. It belongs to olvwm(1).

Not only that, the olvwm(1) (version3.3) man-page says it's called

     GrabVirtualKeys " (Boolean)"
          This resource controls whether the keys below marked as
          involving  grabs  will  be  active  or  not.   If  this
          resource is set to False, then  none  of  the  bindings
          marked  below  with  an  asterisk  will ever be active.
          Default value:  True



Newsgroup: comp.windows.x
document_id: 67508
From: dulimart@podunk.cps.msu.edu (Hansye S. Dulimarta)
Subject: -geometry option.


Greetings,
  I need some help with the detail of geometry specification.  I have a
program that uses Xlib to create a simple window.  I tried to hard code
the x,y location in XCreateWindow but it didn't work.  I also tried
XSetStandardProperties, XSetWMHints with no luck.  Could somebody
enlighten me on this subject.

Hans.
--
 Hans Dulimarta [dulimart@cps.msu.edu]
 Pattern Recognition & Image Processing Laboratory
 Department of Computer Science
 Michigan State University


Newsgroup: comp.windows.x
document_id: 67509
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: X Design choice for color handling: question


In article <lu1oftINNnfk@cascais.cs.utexas.edu>, sirosh@cs.utexas.edu (Joseph Sirosh) writes:
|> Most graphics systems I have seen have drawing routines that also specify
|> a color for drawing, like
|> 
|> Drawpoint(x,y,color) or Drawline(x1,y1,x2,y2,color) or
|> Fillrectangle(x1,y1,x2,y2,color) 
|> 
|> With X, I have to do something like 
|> XSetForeground(current_color)
|> XDrawPoint(d,w,x,y)
|> 
|> Why split this into two functions? Why did X designers decide to not associate
|> the color with the object being drawn, and instead associate it with the
|> display it is being drawn on?

For flexibility. Anyway, what you say is not really true. The color information
is associated with a GraphicsContext, not with a display, and the GC _IS_
a parameter to the drawing routines.

So, if you need to fast switch between green dotted lines and blue ones of
width 2, you can make 2 GCs for those cases and then simply do

XDrawLine(dpy,win,gc_red,x1,y1,x2,y2);
XDrawLine(dpy,win,gc_blue,x3,y3,x4,y4);

for this effect.

This is eventually more complicated to do for the programmer, but also much
more efficient and flexible. You would not include all the other parameters
like line pattern, with, cap and joinstyle, drawmode and so on in every
drawing call, so why do it for color ? BTW, stay away from XDrawPoint()
if you don't really need it (to draw RANDOM points), for image transfers
there are Image routines.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67510
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Encapsulated Postscript and X


EPS _IS_ plain postscript. It is only wrapped by some comments and stripped
of any dubious commands for compatibility. You can simply do

%!

save gsave
/showpage {} def

% Include eps file here

grestore restore

showpage

% end of file

and this way show it on it's natural page position and size.

Programs may use the %%BoundingBox: comment in the EPS file to do
arbitrary scale, rotate and translate to include it in more complicated
ways than above.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 67511
From: soenke@wiwi12.uni-bielefeld.de (Soenke Voss)
Subject: How can I get a window to draw in ?


I have the task to program a X application for the first time and have some severe difficulties creating a window in which I can draw something.
Unfortunately some basic books on the topic of X application programming are not available to me for the moment.

I am running a hp720 with hpux 8.07, VUE and X11R4 using Xt anbd Xaw.

What I did until now:
I initialized the X Intrinsics cxreating a top level widget with XtAppInitialize. I passed as a application_class name 'commandWidgetClass'.
Then I set the argument values for window height and width using XtSetArg and
passed it to the toplevel widget with XtSetValues.
When I call XtRealizeWidget, I get a window of the specified size, but I have no idea how I can draw something in it.

Can anybody send me some help and perhaps some basic information how to use the widgets ?
In which situation it is useful to use them and in which not ?

Thanks very much in advance

Soenke

--------------------------------------------------------------------------------Soenke Voss                                                 Faculty of Economics
soenke@wiwi12.uni-bielefeld.de                           University of Bielefeld
                                                                         Germany  
--------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67512
From: meunier@inf.enst.fr (Sylvain Meunier)
Subject: Re: XV 3.00 has escaped!

In article <BGLENDEN.93Apr29182711@colobus.cv.nrao.edu>, bglenden@colobus.cv.nrao.edu (Brian Glendenning) writes:
|> 
|> Alas, we too will have to stop using it.
|> 
|> Brian
We where following version of xv and I have been very surprise to discover that
the new version is a shareware: What a pitty !!! :-( .
What I found on the Inthernet was the freeware. I make myself a freeware and
I spent long time on it but I don't plain to make paid to use it. I think
if evrybody spent some time to make freeware, evrybody will be paid by the use
of other freeware.

Here we will stay with XV 2 and drop XV 3.

-- 
	S. Meunier		E-Mail: meunier@inf.enst.fr

Newsgroup: comp.windows.x
document_id: 67513
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Encyclopedia/Directory of Widgets?


The Only directory I know of that lists commercial and non-commercial
widgets is the ICS Widget Data book.  ICS sells the widgets for various
prices.  There are also some public domain widgets in the delivery. 

The ICS Widget databook is a subscription kind of thing, where 
you pay some nominal fee, get a cd with the widgets and then you 
can use the public domain widgets freely, and selectively activate 
widgets which you want to purchase the right to use from them. 
The nice thing about this is that you can purchase whole sets of widgets
such as those used in dataviews.  I dont know there pricing schemes
but It is often better to buy than to redevelop the more complex 
widgets, especially if you only one customer to distribute to. 

This is the extent that I know about them except that I got their 
databook catalog  and it looked impressive (lots o' widgets there)

I dont work for ICS or have any widgets being sold by them.
hope this helps you.
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 67514
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

I'm trying to get MH compiled (and then xmh) and I'm having some problems.
I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
anyone have any suggestions on what I can add to get it to compile??

===========

bin             /usr/local/bin
debug           off
etc             /usr/local/lib/mh
mail            /usr/mail
mailgroup       mail
mandir          /usr/man
manuals         gen
chown           /bin/chown
editor          prompter
remove          /bin/mv -f
# if no TCP/IP sendmail is available: change mts entry to sendmail
mts             sendmail/smtp
bboards         off
bbdelivery      off
bbhome          /usr/spool/bboards
mf              off
pop             off
# options       SEE BELOW
cc              gcc
ccoptions       -O -ansi -D__STDC__=0 -DSYSV -DSYSV386 -DSCO -D_SVID
curses          -lcurses
ldoptions       -s
ldoptlibs
lex             lex
sprintf         int
sharedlib       off
slibdir         /usr/local/lib
oldload         off
ranlib          off

# define BIND only of the BSD4.3 named (TCP/IP) is used
# define SOCKETS only if the system has BSD4.3 sockets (TCP/IP)
options         ATZ BIND DUMB MHE MHRC MORE='"/usr/bin/more"'
options         OVERHEAD SHADOW SOCKETS SYS5 SYS5DIR
options         TZNAME WHATNOW

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
document_id: 67515
From: paw@coos.dartmouth.edu (Pat Wilson)
Subject: Re: XV 3.00 has escaped!


> * Commercial, government, and institutional users MUST register their
> * copies of XV, for the exceedingly REASONABLE price of just $25 per
> * workstation/X terminal.  Site licenses are available for those who
> * wish to run XV on a large number of machines.  Contact the author
> * for more details.
>...

I would have appreciated an announcement of the policy change - 
Dartmouth will not be able to run xv 3.0, and I'm probably going 
to have to take v2 off line (I somehow missed the "shareware"
designation in the README of v2, and didn't realize that we were
supposed to register).

I also debate whether this, with the new "institutions must pay"
policy belongs in the contrib directory on export - to me, "contrib"
means "contributed" (i.e. no strings, except copyright) attached.

--
Pat Wilson
Systems Manager, Project NORTHSTAR
paw@northstar.dartmouth.edu

Newsgroup: comp.windows.x
document_id: 67516
From: jbrandt@hns.com (Jim Brandt)
Subject: Multiple Heads on Sparc-2

I have a SPARC-2 with 2 CGSIX cards in it.  I'd like
to have the R5 server recognize the second card.


I mknod created a /dev/cgsix1 device, but when I brought up the
server, the second device was ignored.  

How do I setup the second card?


Note:  If I borrow a cgthree card, and put a cgthree and
a cgsix card in the same SPARC-2 box, the R5 server finds
the second card. I then set the DISPLAY to the
second card, and start a second window manager.  

Worse case is I trade cards with someone, but maybe someone
out there has seen this problem already...


email is preferred... post if you must...

Thanks in advance....


Jim

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jim Brandt
Hughes LAN Systems/Hughes Network Systems
550 South Winchester Blvd         
Suite 406                          
San Jose, CA 95128                /-----------------------
_________________________________/ email: jbrandt@hns.com
                                   email: jbrandt@hls.com
_________________________________  Voice: (408) 246-5590
                                 \ Fax:   (408) 246-2306
                                  \-----------------------
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

Newsgroup: comp.windows.x
document_id: 67517
From: pv@semt1.smts.cea.fr (Pierre Verpeaux)
Subject: Re: xdm configuration

In article <C6ADru.JpF@hermes.hrz.uni-bielefeld.de>, uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607) writes:
|> ---
|> Hello!
|> 
|> We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
|> comming up with a chooser menu with different machines on it (works) an then
|> connect to them. But the only connection works is localhost!
|> An 'X -indirect <machine>' works very well!
|> The configuration:
|> 
|> 		- starting the 'xdm' at boot time with no servers specified
|> 		   in Xservers
|> 		- starting the X-server at boot time with X -indirect localhost
|> 
         ...........   more deleted


You need to start the X-server with -indirect its_name.

If you start it with -indirect localhost, it use the loopback adress as
it's adress. So when it try to contact another host, this one try to answer
on its loopback adress. Not good.

Remember that every machine has the adress 127.0.0.1 on the loopback network.

-- 
Pierre Verpeaux 	DMT/SEMT/LAMS		(1)69.08.65.42	

Newsgroup: comp.windows.x
document_id: 67518
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Encyclopedia/Directory of Widgets?


I forot to mention the free widget foundation which maintains a freely
available set of widgets.  Info on this group can be gotten from 
free-widgets-request@kazoo.cs.uiuc.edu   this list is maintained by volunteers
and you may subscribe to a mailing list which discusses various 
aspects of using and abusing these widgets

Brian
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 67519
From: rgb@roadnet.ups.com (Rudy Bonefas)
Subject: Need X Win PopUp Menu package


Rather than write my own, can anyone direct me to a package that will let me create
cascaded popup menus in X windows.  For reasons of portability, the package should 
not rely on any X toolkit other than XLib and the XT Intrinsics.  Something written
in C++ would be nice, too.

Thanks



Newsgroup: comp.windows.x
document_id: 67520
From: adrian@ora.COM (Adrian Nye)
Subject: Re: Cannot create 24 plane window (summary)


> I got several answers, the most complete was from Errol Crary 
> (errolc@tv.tv.Tek.com):
> >I have just looked at the R4 server listings (.../mit/server/dix/window.c )
> >and there are several ways in which you can get a BadMatch error, even
> >though my O'Reilly book only says "BorderWidth is nonzero for InputOnly".

As of the third edition (June 92) the O'Reilly book (Vol 2) under
XCreateWindow says:

BadMatch
	Any invalid setting of a window attribute
	Attribute besides win_gravity, event_mask, do_not_propogate+mask,
	    override_redirect, or cursor specified for InputOnly window
	depth non-zero for InputOnly
	Parent of InputOutput is InputOnly
	border_width is non-zero for InputOnly
	depth or visual invalid for screen
	width or height is 0


Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
document_id: 67521
From: gilley@decvaxrobins.af.mil
Subject: Re: Looking for drawing packages


In article <14569@greg>, greg@Software.Mitel.COM (Gregory Lehman) writes:
|>Path: wrdis01!gatech!howland.reston.ans.net!usc!cs.utexas.edu!utnut!torn!nott!uotcsi2!geovision!software.mitel.com!greg
|>From: greg@Software.Mitel.COM (Gregory Lehman)
|>Newsgroups: comp.windows.x,comp.windows.x.motif
|>Subject: Looking for drawing packages
|>Message-ID: <14569@greg>
|>Date: 27 Apr 93 20:08:10 GMT
|>Organization: Mitel. Kanata (Ontario). Canada.
|>Lines: 24
|>Xref: wrdis01 comp.windows.x:36152 comp.windows.x.motif:13750
|>
|>Greetings.
|>
|>I am developing an application that allows a *user* to interactively
|>create/edit/view a visual "model" (i.e. topology) of their network, and
|>I was wondering if anyone knew of any builder tools that exist to
|>simplify this task.
|>
|>In the past I have used Visual Edge's UIM/X product to develop other
|>GUIs, so I am familiar with UIMSs in general.
|>
|>The topology will support objects and connecting links.  Once the
|>topology is created, I want to provide the user with capabilities to
|>support grouping, zooming, etc.
|>
|>I am looking for some form of a higher abstraction other than X drawing
|>routines to accomplish this.  Specifically, the zooming and grouping
|>aspects may prove difficult, and certainly time consuming,  if I have
|>to "roll my own".
|>
|>Suggestions?
|>
|>-greg
|>
|>greg@software.mitel.com
|>


You don't mention your platform but Digital has a custom widget, NetEd, 
which does exactly what you want to do. Cost is nominal 300 or so - call your
local office.  The widget is supported on a variety of platforms and I heard
rumblings of porting to Sun, etc. so it may be worth the check.

Charlie Gilley
Digital Equipment Corp.

Newsgroup: comp.windows.x
document_id: 67522
From: Sean Michael Goller <wipeout+@CMU.EDU>
Subject: Porting Athena Widgets to Xview?

I checked the FAQ on this first, and no luck..


I need to convert the R5 Tree widget for use with xview v3.0. The
problem is the fact that xview uses their own event loop system, and I
was wondering if anyone had any tips (or converted source) on converting
these pups.


Thanks,
    Sean. (wipeout+@cmu.edu)


Newsgroup: comp.windows.x
document_id: 67523
From: ajaffe@oddjob.uchicago.edu (Andrew Jaffe)
Subject: XArchie 2.0.1 Icon problems


Hi! I've just installed the new XArchie 2.0.1 and it all works
fine, except:

on our grayscale xterm the custom icons compiled into the
program don't work at all, but on the BW terminal it works fine.
I can set the icon to an xbm file with .twmrc, but that doesn't
give the neat-o change when busy action. (Other programs with
similar actions, e.g. xmail, xbiff, work fine.)

The X-interface author, George Ferguson, suggests it might be a
problem with the X intrinsics, but isn't willing to hack around
to fix it himself. But I know zero about X programming, so I
don't think I can find it. 

Does anyone out there know an obvious fix for the problem?

Andrew

-- 
Andrew Jaffe                                     ajaffe@oddjob.uchicago.edu
Dep't of Astronomy and Astrophysics, U. Chicago
5640 S. Ellis Ave                                (312) 702-6041
Chicago, IL 60637-1433                           (312) 702-8212 FAX

Newsgroup: comp.windows.x
document_id: 67524
From: gml4410@ggr.co.UK (Lack Mr G M)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun>, fwr8bv@fin.af.MIL writes:
> I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
> SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
> variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
> the .login file doesn't get executed and therefore neither the olwm
> root-window nor my applications know about these variables.

     You  should  try  having  a  .xsession  script in $HOME to do these
things.  xdm will  start  up  your  process  using  the  system  version
(usually /usr/lib/X11/xdm/Xsession), which should check whether you have
your won and change to that if you do.  (Take a copy of the  system  one
and edit it). 

     Note, that this file requires "x" access to be set.

-------------------------- Gordon Lack ----------------------------------
The contents of this message *may* reflect my personal opinion.  They are
*not* intended to reflect those of my employer, or anyone else.

Newsgroup: comp.windows.x
document_id: 67525
From: gperez@cec.uchile.cl (GonZaLo Perez C.)
Subject: Re: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

Jesse W. Asher (jessea@u013.me.vp.com) wrote:
>I'm trying to get MH compiled (and then xmh) and I'm having some problems.
>I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
>anyone have any suggestions on what I can add to get it to compile??

>===========

>bin             /usr/local/bin
..
>cc              gcc
>ccoptions       -O -ansi -D__STDC__=0 -DSYSV -DSYSV386 -DSCO -D_SVID

	I think the -traditional option to gcc would help.
	personally I used -traditional -O2 -funroll-loops to compile it
	on SUN4.1.1.

	hope this helps...

gonzalo
gperez@dcc.uchile.cl

Newsgroup: comp.windows.x
document_id: 67526
From: rick@ee.uwm.edu (Rick Miller)
Subject: How to Make Your Own X-Face: in 0x000C Easy Steps!

Will someone who can 'see' the X-Face included in this header please reply
and tell me if it turned out okay?

I'm not all too sure about my viewing software.  I *hand*-converted this
thing in "vi" from a Sun rasterfile... what a pain!

For folks who haven't the slightest, it went like this:

-------------------------------------------------------------

		How to Make Your Own X-Face:
		   in 0x000F Easy Steps!

	1. Scan my Drivers' License into a *.PCX file.
	2. Use WinGIF to 'trim' my face out of the license,
		'reduce' it by half, and
		convert it to *.BMP.
	3. Use Paintbrush to touch up manually.
	4. Use WinGIF to 'reduce' it by half again.
	5. Use Paintbrush to touch up again.
	6. Use WinGIF to 'reduce' it by half *again*
		and convert it to *.GIF.

		[now over to the UNIX side...]

	7. Use Snapshot to convert the *.GIF to a Sun rasterfile.
	8. Use IconEdit to touch it up and
		convert it to an X bitmap.
	9. Use "vi" (yes, a *text* editor) to manually convert
		the rasterfile into the "Uncompressed X-Face" format.
		(Lots of global "ed" commands, and by the time you're
		 done you'll mirror hex bytewise in your sleep!!)

		[now over to the *Linux* side...]

	A. Use "compface" to convert it to what you see here:

 %:A<m@Dob}BO"'E",EEQGbn7qy(En7aS5U([k//"G{6^HIbY9X8~+PD($}6szF"&vVxCXSn
 8mw^0G#nVHE%W,`X"[j0s{r.~%zs:O|HFU=LwzYgH

	B. Try viewing it by whatever means you have available.
	C. Go back to step 9, but do it *right* this time.

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
document_id: 67528
From: sigler@hp750.itg.ti.com (John Sigler)
Subject: Pixmap standard?


Our group is interested in using a 'pixmap' format for multi-colored
icons/buttons etc that is easily converted to and from other format from
'resource' files. Using pbmplus we can easily move to/from Xpm to our other
environments of MS-Windows and OS/2 PM :-(. We were wondering if Xpm or some
other format is under consideration to be used as a standard by the X
consortium for R6 as we would prefer to use whatever will be best supported by
X. 

Along the same subject line, is the reason the standard X pixmap is not used
because it doesn't have an associated colormap and other attributes? or is it
more involved? just wondering why there aren't editors for pixmaps out there
for the 'original' format.

Email replies preferred. Thanks in advance.
--
John Sigler     
Texas Instruments
email: sigler@hp750.itg.ti.com
Standard disclaimers go here.

Newsgroup: comp.windows.x
document_id: 67529
From: Ed Hew <edhew@xenitec.on.ca>
Subject: biz.sco.* newsgroups/mlists FAQ (periodic posting)


              Evolution of SCO newsgroups and Mailing Lists
              ---------------------------------------------
   
   Many readers enjoyed the opportunity to obtain and contribute useful
   information on SCO Open Desktop since 1990 through the ancestral USENET
   newsgroup sco.opendesktop or it's companion mailing list.  Similarly,
   there was a demonstrated need for an information and discussion forum
   for SCO products in general.
   
   With the increasing demand for accessibility and for additional SCO
   newsgroups, many current contributors including those who have been
   active in circulating SCO related newsgroups and mailing lists felt
   that the readership would be best served by creating a biz.sco.*
   hierarchy to improve propagation (and hence availability) worldwide.

   biz.sco.{opendesktop,general,announce} were newgrouped May 1, 1991 in
   accordance with accepted procedure within "biz".  Given the content,
   this change relocated the "opendesktop" newsgroup to a more proper place
   within the established usenet news hierarchy and adds the new "announce"
   and "general" groups.  On Aug 1, 1991, the former "sco-list@uunet.uu.net"
   became "scogen" in keeping with established biz.sco.* naming conventions.

   biz.sco.binaries and biz.sco.sources were newgrouped on June 1, 1992
   to respectively accommodate SCO Xenix, UNIX and OpenDesktop specific
   binaries and source code.  The binaries and sources news groups are
   moderated, with moderator and submissions information and policy
   outlined in the periodic imformational postings in those newsgroups.
   Respecting USENET etiquite, these newsgroups are _not_ gated to
   mailing lists, but are archived on several nuucp and ftp hosts.

   biz.sco.magazine was newgrouped Dec 14, 1992, to provide a discussion
   area for the readers, writers and publishers of SCO Magazine.
   
   Subject to the USENET NEWS hierarchies carried by your upstream feed,
   you are now able to subscribe to the following:
   
        Newsgroup                    mailing list subscription
        ---------                    -------------------------
        biz.sco.opendesktop          scoodt-request@xenitec.on.ca
        biz.sco.general              scogen-request@xenitec.on.ca
        biz.sco.announce             scoann-request@xenitec.on.ca
	biz.sco.sources			<none>
	biz.sco.binaries		<none>
	biz.sco.magazine	     scomag-request@xenitec.on.ca

   You are _strongly_ encouraged to obtain these newsgroups via USENET
   NEWS mechanisms vrs mail.  Anyone having difficulty arranging a news
   feed for these newsgroups is welcome to email the undersigned and
   I'll do my best to help.  We also offer all required software in
   source code form via anonymous FTP and UUCP, as do many archive sites.
   If, after having explored all options, you are still unable to receive
   biz.sco.* as news, you may subscribe to the mailing lists.
   
   The 4 discussion newsgroups are bi-directionally gated to companion
   mailing lists, so anyone not having access to NEWS but who does have a
   UUCP or Internet mail feed can still participate fully using email.
   Mailing list subscribers should send their request to the appropriate
   "mailing list subscription" address above, including in the message body:

	Add: subscriber_address		-eg-
	Add: your_logname@site.do.main  -or-
	Add: up!stream!yoursite!your_logname

   Inclusion of an alternative working bang-path relative to a well know
   major functional site might prove beneficial.  Deletions are handled
   the same way, simply substitute "Delete:" for "Add:", ensuring that
   you use the exact same address you subscribed with.  Mailing list
   subscribers receive "how to post to the mlist" article submission
   information when their request is processed.  If you don't receive
   an acknowledgement within a few days, check your routing and try a test
   message via xenitec.on.ca back to your host.  In such cases, it's likely
   that someone, somewhere, is bouncing mail replies to you (and would do
   the same with mailing list traffic), and you'll want to resolve your
   connectivity problem before trying to subscribe again.  Mailing list
   subscriptions are free, subject to whatever arrangements you may have
   with the site(s) feeding you.
   
   Should you receive no response or experience a sudden and prolonged
   drop to zero volume on one of the mailing lists, this indicates that we
   are no longer able to find a working route to your site.  We loose a
   handful of subscribers this way each month.  If this happens to you,
   please email us your known working bang-path relative to a major site.

   What's in the newsgroups (and mailing_lists where applicable):
   
   biz.sco.opendesktop: Technical questions and answers and informative
                        postings relating to past, present, and future
                        implementations of the SCO OpenDeskTop operating
                        environment and it's various bundled components.
   
   biz.sco.general:     Questions, answers and comments on SCO products
                        in general, and of course resulting discussions.
   
   biz.sco.announce:    SCO and SCO Developer product announcements of
			interest to current and future users of SCO products,
			and to SCO developers, resellers and distributors.
                        (moderated, followups directed to biz.sco.general).

   biz.sco.sources:	SysV or BSD source code for useful programs and
			utilities, modified to compile and run with various
			incarnations of SCO Xenix, UNIX, and/or OpenDesktop.

   biz.sco.binaries:	Binary packages compiled from SCO compatible source
			code, often from source posted in biz.sco.sources
			and often installable using the SCO "custom" utility.

   biz.sco.magazine:	Interaction between the SCO Magazine readers, 
			writers and publishers.

   You should always endeavour to post your article to the most applicable
   newsgroup.  For example, posting your ODT question to the "general"
   newsgroup will preclude your question and answers to it from being
   saved in the public ODT archives.  Appropriate crossposting is allowed.

   The undersigned is solely responsible for administration of the biz.sco
   namespace.  Suggestions for additional biz.sco.* newsgroups and/or
   mailing lists should be emailed to the address below.
--
  Ed. A. Hew,    <edhew@xenitec.on.ca>    ....!uunet.ca!xenitec!eah
  XeniTec Consulting Services, Kitchener ON, Canada +1 519 570 9848
  triOS Training Centres Ltd. Mississauga ON Canada +1 800-387-8649
          [biz.sco.* newsgroups and mailing lists godfather]

Newsgroup: comp.windows.x
document_id: 67530
From: schlotz@kestrel.unx.sas.com (David Schlotzhauer)
Subject: xcutsel or xcb question


i want to do something like this:

  date | xcb -s 0 | xcutsel

to get the output of the date command put into the XPRIMARY selection.
unfortunately, xcutsel is an interactive little bugger and there isn't a
command argument to tell it to just do it and not put up its little
window.  so, is there some other command that i CAN use like this?  or,
is there an analog to xcb that will put stuff in XPRIMARY instead of cut
buffer 0?

-- 
David Schlotzhauer                    Phone: (919) 677-8000
SAS Institute Inc.                   E-Mail: schlotz@unx.sas.com

Newsgroup: comp.windows.x
document_id: 67532
From: rtparies@b8.b8.ingr.com (Randy Paries)
Subject: :Help with XClearArea

Hi, 
	Could some please tell me the errors of my ways. 
	I am trying to update a drawable. This drawable 
	happens to be a Pixmap on a button. 
	
	The problem is that after I do the :
XClearArea(XtDisplay(m_usr[0]),XtWindow(m_usr[0]), 80, 8, 40, 40, True);

	This appears to work. I then do

sprintf(tmp_str,"R=%d",++fun);
XDrawString(XtDisplay(m_usr[0]), bmaps[0] ,my_gc, 78, 10, tmp_str, (strlen(tmp_str)) );

	The problem is that the new info is drawn but the old info is
	still there. Even if I pass XClearArea a False and see it clear
	when it redraws the new info, the old info is still there.


Help Please!!!
        Thanks
-- 
------------------------------------------------------------------------     
Randy Paries           rtparies@turq.b8.ingr.com
x6191  cr041           Intergraph, Huntsville Alabama
------------------------------------------------------------------------     



	
	

Newsgroup: comp.windows.x
document_id: 67533
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: X-windows extensions for Perl???

Using the usersub stuff in perl, you can incorporate things like curses for
use in perl.  I was wondering if anyone had done this with X (preferably
Motif), and if so, where I could get the source for it?

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
document_id: 67534
From: stevea@lachman.com (Steve Alexander)
Subject: Re: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

In article <1993Apr30.132044.15762@vpbuild.vp.com> jessea@u013.me.vp.com (Jesse W. Asher) writes:
>I'm trying to get MH compiled (and then xmh) and I'm having some problems.
>I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
>anyone have any suggestions on what I can add to get it to compile??

Here's the one that I used:

# @(#)$Id: MH,v 1.7 90/04/06 09:44:31 sources Exp $
# SCO 3.2.4v2
bin	/usr/local/bin
bboards	on
etc	/usr/local/lib/mh
mail	/usr/spool/mail
mailgroup	mail
ldoptlibs	-lsocket -lcrypt_i
mandir	/usr/man
cc	gcc
ccoptions	-traditional
manuals	none
chown	/bin/chown
mts	sendmail/smtp
pop	on
debug	off
sharedlib	off
signal	void
sprintf int
options	ATTVIBUG BIND DPOP DUMB RENAME SOCKETS SYS5 SYS5DIR VSPRINTF FCNTL MHE MHRC MIME MORE='"/usr/bin/more"' POPSERVICE='"pop3"' RPATHS FOLDPROT='"700"' MSGPROT='"600"' SBACKUP='"\\043"' SHADOW
curses	-lcurses -ltermcap
ranlib	off

You may want to use a different locking style; my mailbox is mounted over NFS
so I use fcntl-style locking.

I also applied the following tweak to sbr/makedir.c:

*** /src/public/mh-6.8/sbr/makedir.c    Tue Dec 15 10:55:22 1992
--- sbr/makedir.c       Tue Apr 13 14:02:04 1993
***************
*** 24,30 ****
  #include <sys/types.h>
  #include <sys/stat.h>
  #endif        /* SYS5DIR */
! #if defined(SVR4) || defined(ncr)
  #include <unistd.h>
  #endif

--- 24,31 ----
  #include <sys/types.h>
  #include <sys/stat.h>
  #endif        /* SYS5DIR */
! #if defined(SVR4) || defined(ncr) || defined(SYS5)
! #define MAXPATHLEN 1024
  #include <unistd.h>
  #endif

That took care of everything but the man pages, which I installed by hand.

Good luck,
-- Steve
-- 
Steve Alexander, Lachman Technology, Inc. | stevea@lachman.com
(708) 505-9555 x256 FAX: (708) 505-9574	  | ...!{sun,ico}!laidbak!stevea

Newsgroup: comp.windows.x
document_id: 67535
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Desqview/X over TCP/IP: how reliable? how is it implemented?


	Three q's:

1) is it reliable?

2) how does it send the information from a MS Windows app over
the X11 protocol? Does it just draw everything as graphics into
one window, or does it use multiple windows and essentially work
more cleverly?

3) If I want to run MS Word, for example, remotely, do I have to
run a separate copy of MS Windows remotely, and then start MS
Word from that, or can MS Word be started remotely on its own?

	Thanks a lot!
	-- Ethan



Newsgroup: comp.windows.x
document_id: 67536
From: morris@sg25.npt.nuwc.navy.MIL (morris hirsch)
Subject: (none)

We are adding a Motif wrapper to a family of data display programs.

These programs are each written as a 'main loop' with these steps:
- use semop to check a semaphore and if true access new data
  otherwise block (new data comes quite often)
- use msgop to check for messages and if true read them
  otherwise continue (messages are user commands and not often)
- update the display according to latest data and messages.

We typically have several of these running in windows,
plus a data producer serving some device and setting the flag.
Everyone blocking makes sure the device server gets to run.

Xt and Xm also have a 'main loop' model that we must fit into.
O'Reilly Vol IV Ch 9 discusses adding a file-watcher and also
how to add workprocs that are run during idle time.

We can 'open-up' our existing main loop and call it as a workproc.
The problem is our blocking until new data is no longer appropriate.
Neither is letting the program free-run because others are hurt.

The unix select call lets you block until any of several i/o are ready.
We want that for the X main loop except not file i/o.
Any suggestions or examples most welcome!

We run SGI Personal Iris and Indigo systems.

Morris Hirsch aka morris@sg25.nusc.navy.mil or 401 841 7800



Newsgroup: comp.windows.x
document_id: 67537
From: stellr@smyrna.cc.vt.edu (Ray Stell)
Subject: Prereq: public-patch-0



-- 
In the R5 file fix-01 there is the line that reads as the subject
line here.  I don't see a file fix-00.  When I got a few Hmmm...
lines putting on fix-01, it made me wonder if I has missed 00.
Am I off the mark?

Thank you.  
======================================================================
Ray Stell		stellr@smyrna.cc.vt.edu		(703) 231-4109

They call Stephen the first martyr.  
Hadn't Lazarus the rawer deal? - C. S. Lewis

Newsgroup: comp.windows.x
document_id: 67538
From: styx@eurom.rhein-main.de (Ruediger Merz)
Subject: Re: preventing user from hitting CTRL-ALT-BKSP to exit X

hi,
> Hello,
> 
> 	I am admin for an RS/6000 running AIX 3.2, X11R5, Motif, and xdt3.
> 	I want to prevent the user from hitting CNTL-ALT-BKSPC to exit X.

try DontZap in /usr/lib/X11/Xconfig

cu
	styx

-----
                ** Free Software Association of Germany **
                  Great software should be free software
                 Phone: 069 - 6312083 Data: 069 - 6312934

Newsgroup: comp.windows.x
document_id: 67539
From: ma201rs@prism.gatech.EDU (SHONKWILER R W)
Subject: scrollbar in xterm

Is it possible to get an xterm scrollbar to come out on the right
side instead of the left?

Ron Shenk

-- 
SHONKWILER R W
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{allegra,amd,hplabs,seismo,ut-ngp}!gatech!prism!ma201rs
ARPA: ma201rs@prism.gatech.edu

Newsgroup: comp.windows.x
document_id: 67540
From: vinod@sommerfeld.WPI.EDU (Vinod K Nair)
Subject: using XTERM to display output {?}

Hello, I am writing a program which forks of a number of child processes
and each of the children printing things on the screen (quite messy in
one window)... 

The "xterm  -Sxxd"  option seems to be the solution to opening up
slave windows only to display output and I use the following code to
open up a pty (taken from Stevens)...and manage to open up an x-term
successfully.... 

The problem however is how do I write into this x-term ? Please help!


static char pty_name[12];
int pty_master( void );

int pty_master( void )
{
  int i,fd;
  char* ptr;
  struct stat statbuff;
  static char ptychar[] = "pqrs";
  static char hexdigit[] = "0123456789abcdef";
  
  for( ptr = ptychar; *ptr!=0; ptr++ ) {
    strcpy( pty_name, "/dev/ttyXY" );
    pty_name[8] = *ptr;
    pty_name[9] = '0';
    
    if( stat( pty_name, &statbuff) < 0 )
      break;

    for( i=0; i < 16; i++ ) {
      pty_name[9] = hexdigit[i];
      if( (fd = open( pty_name, O_RDWR )) >= 0 )
	return( fd );
    }
  }
  return(-1);
}

  

-- 
Vinod  						   email : vinod@ee.wpi.edu
An eye for an eye makes the whole world blind
			-Mohandas Karamchand Gandhi

Newsgroup: comp.windows.x
document_id: 67541
From: mcgary@intellection.com (Mike McGary)
Subject: Re: Keyboard mapping and window placement questions

In article <1993Apr27.182912.3388@news.mentorg.com> darcym@fpddet4.mentorg.com (Darcy McCallum) writes:

>   These are two common subjects so I hope someone has had to deal with these
>   specific questions.
>
>   1.  [....question 1 deleted.....]
>
>   2.  I would like to place a popup so that it will be to the immediate right
>   of my main window.  I want it at the same y coord, and their right/left
>   sides touching.  What I need to ask for is the x,y coord of the window 
>   manager's border for the main window.  This should ring a bell with anyone
>   who has called XtMoveWidget(), immediately checking the x,y after the move
>   and seeing that it is right, and in their next callback asking for the x,y
>   and seeing that it is now offset by the WM border.
>
>   Any help would be most appreciated.
>
>   Darcy
>   darcy_mccallum@mentorg.com

I have done this before, but I'm not sure I used the best approach (although
I tried several methods...).

You have to run up the window heirarchy (using XQueryTree()) until you get
to the root window.  Now, this is not so simple because some window managers
slap a window over the root window that is the same size as the root window,
so be sure to take that into account for further calculations.

Calculate the position and width/height offsets for each window using
XGetGeometry().  BE SURE TO TAKE THE BORDER_WIDTH INTO CONSIDERATION.
Remember a windows border_width IS ON THE OUTSIDE of a window, so the
windows x,y,width,height must be adjusted accordingly.

All of this should give you pretty good numbers for how much space the
window-manager is using.

Now, to place the new window, you have to use the same numbers to calculate 
where you want to place it, because the window-manager will re-parent it on
the OUTSIDE of where you place your window (if I remember correctly).

DISCLAIMER: All of this is from memory, and I no longer have the code.  But
I did get it working under several window managers correctly.  Feel free to
call or e-mail for further info.

              -McGary

-- 
Mike D. McGary                VOICE: (214) 620-2100
Intellection                  FAX:   (214) 484-8110
1603 LBJ Freeway, Suite 780   ARPA:  mcgary@intellection.com
Dallas, Texas 75234           UUCP:  intellection.com!mcgary@cs.utexas.edu

Newsgroup: comp.windows.x
document_id: 67542
From: scott@shuksan.ds.boeing.com (Scott Moody)
Subject: X server only on Sun?

I have been using a HDS X-terminal, and really like it. What
is really powerful is that it can run the X server without
running a window manager. One can then run a special client
X program called a window manager, either (1) run 
motif or openlook from it's own firmware (limiting the network
traffic - but having no HOME). or (2) run motif or openlook
from some home place (like a sparc, or vms).

This is powerful, especially since I can exit one window manager
(without killing windows) and then start up another manager.
(Some of my VMS tools need special meta-mouse combos that work in
one manager and not the other).

Well the question is:

  On a sparcstation running openlook, does anyone know how to
  break apart olwm from the olwm_slave program? Basically I
  want to run only the server, and go somewhere else to run
  the window manager.

---
Please respond my e-mail (as well as posting) because of the
large volumes in window.X)

Thanks.



-- 
Scott Moody   (206) 773-4313   "There are no answers .. just cross references"
     scott@shuksan.boeing.com  
     uunet!bcstec!shuksan!scott

Newsgroup: comp.windows.x
document_id: 67543
From: support@qdeck.com (Technical Support)
Subject: Re: Desqview/X over TCP/IP: how reliable? how is it implemented?

In article <C6BFLB.KEM@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
>
>	Three q's:
>
>1) is it reliable?

I use it all day every day (maintaining our ftp site and answering mail
via support@qdeck.com), and I can honestly say that in the last few
months I've never had my machine go down due to any sort of tcpip network
manager instability. (Of course, I've crashed my machine quite a few times
on purpose, during beta testing and that sort of thing, but the tcpip
portion is quite stable...)

However, keep in mind that DVX and the network managers are only going
to be as stable as the software they sit on top of (so if your underlying
network kernel is flakey, you can't expect DVX to be terribly stable...)

>2) how does it send the information from a MS Windows app over
>the X11 protocol? Does it just draw everything as graphics into
>one window, or does it use multiple windows and essentially work
>more cleverly?

It just goes as a window that has graphics drawn into it. (To vastly
over-simplify what goes on, we just take the windows graphics API calls,
and translate them directly to X-protocol; unfortunately, windows was
not really written to be network-aware, so sometimes we see a speed
penalty when an app does something stupid, like sending a big white bitmap
to erase something rather than just drawing a white box; fortunately,
that sort of thing is rare...)

>3) If I want to run MS Word, for example, remotely, do I have to
>run a separate copy of MS Windows remotely, and then start MS
>Word from that, or can MS Word be started remotely on its own?

You need to run MS windows, which Word then runs inside. You could run
multiple windows programs within the one WinX window, and windows has
ways to automagically start winapps when you start windows, so in practice
it's not really a major problem. I have my system set up so that I can
run WinX, which automatically starts Word Full-screen (for windows), so
I never see any part of windows but word...)

-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
anonymous ftp: qdeck.com (149.17.8.10), leave your email address as password

Newsgroup: comp.windows.x
document_id: 67544
From: bernward@moepi.do.open.de (Bernward Averwald)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun> fwr8bv@fin.af.MIL writes:
>Hi,
>
>I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
>SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
>variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
>the .login file doesn't get executed and therefore neither the olwm
>root-window nor my applications know about these variables.

I always use the following in my .[t]cshrc:

...
f ( $?LOGIN == 0 ) then
   source $home/.login
endif
...

and in .login:

...
setenv LOGIN 1
...

So I don't need to set all environment variables in my .cshrc, but they get
set if I login via xdm or xon | xrsh | rx and so on.

Hope this helps,

Bernward
-- 
Bernward Averwald, Heinrichstr. 42, D-4600 Dortmund 1, Voice: +49 231 144048
FAX: +49 231 144047, e-mail: bernward@moepi.do.open.de            (b@rcc.de)
                     I think I need a Lear Jet

Newsgroup: comp.windows.x
document_id: 67545
From: hps@jach.hawaii.edu (Henry Stilmack - JAC Hawaii SysMgr)
Subject: Help building XView on SPARC Classic


Can anyone help with this?

System: SPARC Classic, Solaris 2.1, gcc 2.3.3, X11R5

When I try to build the XView libraries (xview3, patched with the patch from
the X11R5-Solaris kit), I get the following error:

rm -f ndet_loop.o shared/ndet_loop.o
gcc -fpcc-struct-return -E   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   ndet_loop.c \
| xstr -l _libxview_xstr -c -
gcc -fpcc-struct-return -fPIC   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   -c x.c \
-o shared/ndet_loop.o
In file included from ../../.././build/include/xview/notify.h:29, from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
/usr/include/sys/ucontext.h:25: parse error before `sigset_t'
/usr/include/sys/ucontext.h:25: warning: no semicolon at end of struct or union
/usr/include/sys/ucontext.h:26: warning: data definition has no type or storage class
/usr/include/sys/ucontext.h:29: parse error before `}'
/usr/include/sys/ucontext.h:29: warning: data definition has no type or storage class
In file included from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
./../.././build/include/xview/notify.h:286: parse error before `*'
./../.././build/include/xview/notify.h:286: warning: data definition has no type or storage class
In file included from x.c:35:
/usr/include/sys/user.h:226: `MAXSIG' undeclared, outside of functions
ndet_loop.c:71: `NSIG' undeclared, outside of functions
ndet_loop.c:85: variable `ndet_sigvec' has initializer but incomplete type
ndet_loop.c:88: parse error before `*'
ndet_loop.c:88: warning: data definition has no type or storage class
ndet_loop.c: In function `ndet_fig_sig_change':
ndet_loop.c:687: `NSIG' undeclared (first use this function)
ndet_loop.c:687: (Each undeclared identifier is reported only once
ndet_loop.c:687: for each function it appears in.)
ndet_loop.c: In function `ndet_signal_catcher':
ndet_loop.c:751: parse error before `ucontext_t'
ndet_loop.c:764: `sigset_t' undeclared (first use this function)
ndet_loop.c:764: parse error before `newmask'
ndet_loop.c:766: `newmask' undeclared (first use this function)
ndet_loop.c:769: `oldmask' undeclared (first use this function)
ndet_loop.c:777: parse error before `)'
ndet_loop.c:795: warning: assignment makes pointer from integer without a cast
ndet_loop.c:798: parse error before `)'
ndet_loop.c: In function `ndet_send_delayed_sigs':
ndet_loop.c:825: `sigset_t' undeclared (first use this function)
ndet_loop.c:825: parse error before `newmask'
ndet_loop.c:837: `newmask' undeclared (first use this function)
ndet_loop.c:839: `oldmask' undeclared (first use this function)
ndet_loop.c:848: parse error before `)'
ndet_loop.c: At top level:
ndet_loop.c:1022: parse error before `*'
ndet_loop.c:85: storage size of `ndet_sigvec' isn't known
*** Error code 1
make: Fatal error: Command failed for target `ndet_loop.o'
rm -f ndet_loop.o shared/ndet_loop.o
gcc -fpcc-struct-return -E   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   ndet_loop.c \
| xstr -l _libxview_xstr -c -
gcc -fpcc-struct-return -fPIC   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   -c x.c \
-o shared/ndet_loop.o
In file included from ../../.././build/include/xview/notify.h:29, from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
/usr/include/sys/ucontext.h:25: parse error before `sigset_t'
/usr/include/sys/ucontext.h:25: warning: no semicolon at end of struct or union
/usr/include/sys/ucontext.h:26: warning: data definition has no type or storage class
/usr/include/sys/ucontext.h:29: parse error before `}'
/usr/include/sys/ucontext.h:29: warning: data definition has no type or storage class
In file included from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
./../.././build/include/xview/notify.h:286: parse error before `*'
./../.././build/include/xview/notify.h:286: warning: data definition has no type or storage class
In file included from x.c:35:
/usr/include/sys/user.h:226: `MAXSIG' undeclared, outside of functions
ndet_loop.c:71: `NSIG' undeclared, outside of functions
ndet_loop.c:85: variable `ndet_sigvec' has initializer but incomplete type
ndet_loop.c:88: parse error before `*'
ndet_loop.c:88: warning: data definition has no type or storage class
ndet_loop.c: In function `ndet_fig_sig_change':
ndet_loop.c:687: `NSIG' undeclared (first use this function)
ndet_loop.c:687: (Each undeclared identifier is reported only once
ndet_loop.c:687: for each function it appears in.)
ndet_loop.c: In function `ndet_signal_catcher':
ndet_loop.c:751: parse error before `ucontext_t'
ndet_loop.c:764: `sigset_t' undeclared (first use this function)
ndet_loop.c:764: parse error before `newmask'
ndet_loop.c:766: `newmask' undeclared (first use this function)
ndet_loop.c:769: `oldmask' undeclared (first use this function)
ndet_loop.c:777: parse error before `)'
ndet_loop.c:795: warning: assignment makes pointer from integer without a cast
ndet_loop.c:798: parse error before `)'
ndet_loop.c: In function `ndet_send_delayed_sigs':
ndet_loop.c:825: `sigset_t' undeclared (first use this function)
ndet_loop.c:825: parse error before `newmask'
ndet_loop.c:837: `newmask' undeclared (first use this function)
ndet_loop.c:839: `oldmask' undeclared (first use this function)
ndet_loop.c:848: parse error before `)'
ndet_loop.c: At top level:
ndet_loop.c:1022: parse error before `*'
ndet_loop.c:85: storage size of `ndet_sigvec' isn't known
*** Error code 1
make: Fatal error: Command failed for target `ndet_loop.o'

Obviously, most of this is due to the problem encountered while including 
<sys/ucontext.h> - I've tried several approaches, but can't get past this point.
Any help would be greatly appreciated.

Mahalo nui o kakou,
_______________________________________________________________________________
Henry Stilmack                               )  
Computing Systems Manager                    ) Perform random kindnesses 
UK/Netherlands/Canada Joint Astronomy Centre )   and senseless acts of beauty
660 N. A'ohoku Place, Hilo, HI 96720         )   
hps@jach.Hawaii.Edu       808-969-6530       )    
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67546
From: rbroders@oracle.com (Robert Brodersen)
Subject: Resolution, bitmapped fonts, device independence...

I recently corrected the resolution on my Sparcstation by changing
/usr/lib/X11/xdm/Xservers from:
:0 local /usr/bin/X11/X :0 -ar1 500 -dpi 100
to:
:0 local /usr/bin/X11/X :0 -ar1 500 -dpi 85

I determined that my 19" 1152x900 monitor was 85 dpi by measuring the
active screen area and dividing by resolution.

However, this has caused my application fonts to behave strangely.
After some research, I believe this is caused by my applications
requesting fonts by Family, Weight, Slant, and Pointsize.  I believe
that X is grabbing the first font on the path with these characteristics
and displaying it.  Since I have only 75dpi and 100dpi fonts on my
path, the results are inaccurate.  I do have some Speedo fonts, but
not for the family I am using (Helvetica).

I think this is incorrect.  The fonts should always be provided in the
resolution of the display.  This never seems to happen unless you
explicitly request fonts by xres and yres!  This is true of both the
scaleable and bitmapped fonts!  For instance, the command

xfd -fn '-bitstream-charter-*-*-*-*-*-240-*-*-*-*-*-*'

Will invoke a 75dpi font (despite the fact that this is a Speedo font).

The command  

xfd -fn '-adobe-courier-*-*-*-*-*-240-*-*-*-*-*-*'

Will invoke a 75dpi font or a 100dpi font (depending on my font path).
Despite the fact that X knows my display is 85 dpi, and that it can
generate an 85dpi font for me!  Unless I my applications specifies a
resolution, X appears to pick a stupid default.

Is this a bug?  Is it a feature?  If so, why?  Is there anything I can
do to get around this problem?  People have suggested that I lie about
my resolution, and specify a single font path (75 or 100, not both).
This would at least make my app consistent, but I like being able to
look at rulers that appear in my paint application and say: "Yup, thats
an inch".  Anyone have a set of 85dpi bitmapped fonts I can use?

System info:
Sun Sparc 10/41 w/32 MB, SunOS 4.1.3.

xdpyinfo:
version number:    11.0
vendor string:    MIT X Consortium
vendor release number:    5000
screen #0:
  dimensions:    1152x900 pixels (348x272 millimeters)
  resolution:    85x85 dots per inch

xset q font path:
  /usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/Speedo/,/usr/lib/X11/fonts/100dpi/,/usr/lib/X11/fonts/75dpi/

--
Thanks-           rbroders@oracle.com       -Bob Brodersen (415)-506-2189
Applications Architect, Applications Technology Group, Applications Division
                  Oracle Corporation, Redwood Shores, CA 94065

Newsgroup: comp.windows.x
document_id: 67547
From: barnettj@pookie.crd.ge.com (Janet A Barnett)
Subject: Re: Help. BadMatch making 24bit win on 8bit server !!

In article <1993Apr30.120234.15637@cci.dk> hwn@cci.dk (Henrik W. Nielsen) writes:
>
>
>I'm trying to make a 24 bit window using XCreateWindow on a 8 bit
>PseudoColor server. As far as I know this should be possible if you
[stuff deleted]
>   Xio.GSwin = XCreateWindow(Xio.DspPtr, RootWindow(Xio.DspPtr, Xio.Scr),
>			     x, y, w, h, 0, 24, InputOutput,
>			     Xtern.ColorInfo, 0, &SetWinAttrib);
>}
>
>
>This results in a BadMatch error. Can anyone please tell me why ?
>
>

The colormap element of SetWinAttrib must be a legitimate TrueColor
colormap. So, use XCreateColormap() with the proper visual and use it
in SetWinAttrib (and don't forget the mask!).

And the inevitable caveat: I usually use widgets, setting the visual
and colormap resources rather than direct X routines, so I could be
wrong. But, I think this is the general difficulty.

Allen Barnett
(whose wife graciously allowed to use her account)



Newsgroup: comp.windows.x
document_id: 67548
From: Wilfred.Hansen@cs.cmu.EDU
Subject: The Andrew View V. 2  No. 1

The latest issue of The Andrew View, newsletter of the Andrew Consortium
is available.  The simplest way to get it is via ftp from
emsworth.andrew.cmu.edu (128.2.45.40) in directory ./newsletters; 
subdirectories ASCII and PostScript contain the newsletter in those
formats.  

If you have requested it in the past, you will receive an email copy. 
You may request to be placed on the mailing list by sending your request
to info-andrew-request@andrew.cmu.edu.

Fred Hansen

Newsgroup: comp.windows.x
document_id: 67550
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: Xw widget set ported to X11R5??

I'm trying to compile xftp which uses the Xw widget set and I'm having
problems.  We're using Motif and X11R5 and it seems that my version of the
Xw stuff was only ported to R3.  Are there patches out to port this to R5
(or a newer port altogether)??

Or perhaps a newer port of xftp for use with R5??
Thanks in advance.


-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
document_id: 67551
From: Jim Ennis <JIM@UCF1VM.BITNET>
Subject: Hummingbird Software Query

Hello,

  I am considering buying the Hummingbird X-Windows software for a MS-Windows
3.1 PC (386-40MHZ, NE2000 Ethernet board).  Would anyone tell me if they
are using this package in a similar environment and if they are happy with
it?  I will be connecting to Sun SparcStation 10 running Sun OS 4.1.3.

Thanks very much,

Jim Ennis
University of Central Florida

Newsgroup: comp.windows.x
document_id: 67552
From: min@stella.skku.ac.KR
Subject: (none)

ubject: subscrive


please subscribe me.

e-mail: min@stella.skku.ac.kr


Newsgroup: comp.windows.x
document_id: 67553
From: barr@pop.psu.edu (David Barr)
Subject: Re: XV 3.00 has escaped!

In article <C6C39r.5so.2@cs.cmu.edu> tgl+@cs.cmu.edu (Tom Lane) writes:
>"Commercial"?  There's a big difference between a polite request
>for a voluntary donation and commercial, it's-illegal-to-copy-this-
>and-we'll-sic-our-lawyers-on-you software.

There is?  Then why does the documentation say:

}Commercial, government, and institutional users MUST register their
}copies of XV, for the exceedingly REASONABLE price of just $25 per
}workstation/X terminal.

It doesn't sound like a "voluntary donation" to me.

--Dave
-- 
System Administrator, Penn State Population Research Institute
#define ENOTTY          25              /* Not a typewriter */

Newsgroup: comp.windows.x
document_id: 67554
From: deepak@expert.cc.purdue.edu (Deepak Mulchandani)
Subject: Redirecting stdout/stderr of a program


Hi,

    Does anyone know how to redirect the stdout and stderr of a program to
    a callback function in X ? The program does not fork() a child process
    so I guess I can't use pipes.

    Can anyone help ?

    Thanks,

    Deepak


Newsgroup: comp.windows.x
document_id: 67555
From: bamboroughp@logica.co.uk
Subject: Wanted: Rolling Demo Creator

WANTED:
 I have to produce a "Rolling Demonstration" of some X Window/Motif software.
Does anybody know if there is some Public Domain software to record/playback X
Window events or similar ?

Thanks in advance ...

Paul Bamborough bamboroughp@logica.co.uk

I must protest captain - I am NOT a merry Man !!!! - Worf STTNG

Newsgroup: comp.windows.x
document_id: 67556
From: slayer@b64743.student.cwru.edu (Chad Dougherty)
Subject: NetVis for Xfree86??



--
| Chad Dougherty                  | "TV sucks"---                           |
| Case Western Reserve Univ.      | "I know you're upset right now, boy,    |
| crd6@po.cwru.edu                | so I'll PRETEND you didn't say that!!"  |
| slayer@b64743.student.cwru.edu  |                -Homer Simpson to Bart   |


Newsgroup: comp.windows.x
document_id: 67557
From: hps@KEKOA.JACH.HAWAII.EDU (Henry Stilmack - JAC System Mgr.)
Subject: Choosing a window manager

A while back (i.e., several months) someone posted a method for allowing 
a user to choose (via XMenu and something else??) a window manager 
interactively at X startup time. Could the original poster (or anyone 
else) please Email a copy of the method to me, as I have lost the 
original posting? Thanks.

______________________________________________________________________________
Henry Stilmack                               )  
Computing Systems Manager                    ) Perform random kindnesses 
UK/Netherlands/Canada Joint Astronomy Centre )   and senseless acts of beauty
660 N. A'ohoku Place, Hilo, HI 96720         )   
hps@jach.Hawaii.Edu       808-969-6530       )    
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67558
From: joe@islandsw.com (Joe McGuckin)
Subject: Vitex rasterflex32 experience?

I'm going to be purchasing one of these soom for my SS2.

Does anyone have any experience with this card?

Positive or negative comments welcome!

Please respond immediately.

Thanks,

  Joe


---------------------------------------
Joe McGuckin             joe@islandsw.com
Island Software    	 oilean!joe@sgi.com
(415) 969-5453



Newsgroup: comp.windows.x
document_id: 67559
From: dean@gene.med.umn.edu (Dean Flanders (IHG))
Subject: Planet X

Does any one out there have experience with Planet X, I am
considering buying it to use on a SPARCstation IPC, in this
way I can run Mac programs from the SPARC.

Would you recommend buying this piece of Software and what is
the emulation on the SPARC like?  Does it give a window of a
Mac or does it give a window of just the individual programs?

Any information would be greatly appreciated.

Thanks,

Dean

=========================================================================
Institute of Human Genetics           I
University of Minnesota               I
Box 206 UMHC                          I    "If all you have is a hammer,
Harvard Street at East River Road     I     you tend to look at every
Minneapolis, MN  55455                I     problem as a nail."
                                      I
Voice (612) 625-5128                  I                      -Maslow
Fax (612) 626-7031                    I
Email dean@lenti.med.umn.edu          I
==========================================================================




Newsgroup: comp.windows.x
document_id: 67560
From: sriram@tcs.com (Sriram Srinivasah)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
|> Hi, I'm new to this group so please bear with me!
|> 
|> Two years ago I wrote a Sunview application for fast animation
|> of raster files. With Sunview becoming rapidly obselete, I've
|> finally decided to rewrite everything from scratch in XView.
|> I put together a quick test, and I've found that XPutImage()
|> is considerably slower (factor of 2 on average?) than the
|> Sunview command pw_rop() which moves image data from memory
|> pixrects to a canvas. This was on a Sparc IPX. It seems that:
|> (1) the X protocol communication is slowing things down; or
|> (2) XPutImage is inefficient...or both! My question is, what
|> is the fastest way in X11R5 to dump 8 plane image data to
|> a window? Can I take advantage of the fact that the client is
|> running on the same machine as the server? Or am I stuck with
|> XPutImage() (in which case I might as well give up now...)?
|> 
|> All help appreciated...thanks!
|> 
|> Derek
|> 

The *fastest* way is to use an X server with shared memory extension. It uses
shared memory if it is a local X server (hence images don't have to be duplicated),
and defaults to the regular image routines if either the shared mem extension
is not available, or if it's  not the localhost.

Sriram

Newsgroup: comp.windows.x
document_id: 67561
From: Thomas_Richard_Stevenson@mts.cc.wayne.edu (Thomas R. Stevenson)
Subject: XCOMM in Imakefile files

I've installed many X apps, and have that many of them Imakefiles that have
lines startingwith XCOMM in them. When I do a xmkmf to create the Makefile,
the Makefile also has the XCOMM (comment?) lines in them. I always have
to edit out these lines because the make command barfs on them. I was
wondering what these lines were for, and what I might be doing wrong that
causes the make command to dislike them. Thanks!

Newsgroup: comp.windows.x
document_id: 67562
From: axel@hpcvlx (Axel Deininger)
Subject: X Meta File, Anyone?

Hi,

I'm working on a project that involves storing an application's rendering
to an X display and then playing it back again.  Rather than 
"reinvent the wheel", it like to find:
	* a file format for saving X protocol.
	* software that saves and replays such a session.

Any ideas out there?  I've heard that there is a version of Xscope
that will save and replay sessions.

I'd be willing to share much of the code I develop back to the X community.


Axel............

axel@cv.hp.com



Newsgroup: comp.windows.x
document_id: 67564
From: amir@matis.INgr.COM (Amir J. Katz)
Subject: XV 3.0 author is on vacation till May 10 or so

For all those people flaming John Bradley, the author of xv - he's on
vacation till May 10 (or 15, I don't remember). Maybe we all should slow
down and wait to hear his side wrt copyrights, fees, etc.
-- 
/* ----------------------------------------------------------------- */
/*  Amir J. Katz         | amir@matis.ingr.COM  (or ingr!matis!amir) */
/*  System Specialist    | Voice:  +972 52-584684                    */
/*  SEE Technologies Ltd.| Fax:    +972 52-543917                    */
/*  ......... To Boldly Go Where No One Has Hacked Before .......... */

Newsgroup: comp.windows.x
document_id: 67565
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: XView 3.0 question

Yet another XView question: is there an (easy) way of detecting when a user
has resized a frame _externally_ by way of the window manager (e.g. grabbing
and letting go of the frame resize corners under olwm)? If so, please let me
know!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 67566
From: <CHANGJ@QUCDN.QueensU.CA>
Subject: tn3270 support for xterm?

Is there a tn3270 program which support xterm? I don't like x3270 at all. You
can't copy with other windows. Thanks.

Newsgroup: comp.windows.x
document_id: 67567
From: barr@pop.psu.edu (David Barr)
Subject: Re: tn3270 support for xterm?

In article <93122.142712CHANGJ@QUCDN.QueensU.CA> <CHANGJ@QUCDN.QueensU.CA> writes:
>Is there a tn3270 program which support xterm? I don't like x3270 at all. You
>can't copy with other windows. Thanks.

The x3270 at export.lcs.mit.edu supposedly does.  I use another x3270
that was cleaned up by Brian Ward <ward@math.psu.edu> which adds better
color support, and cleans up _lots_ of bugs, as well as cut&paste.
I just put it on export.lcs.mit.edu, as x3270v2.65beta.tar.Z.

--Dave
-- 
System Administrator, Penn State Population Research Institute
End of article 2565 (of 2565)--what next? [npq]

Newsgroup: comp.windows.x
document_id: 67568
From: dbrooks@osf.org (David Brooks)
Subject: Re: XV 3.0 author is on vacation till May 10 or so

amir@matis.ingr.com writes:
>For all those people flaming John Bradley, the author of xv - he's on
>vacation till May 10 (or 15, I don't remember). Maybe we all should slow
>down and wait to hear his side wrt copyrights, fees, etc.

While I have respect for John's ability and integrity, I really regret his
leaving just after a major release (or, more accurately, making the release
just before leaving).  Several of us are having problems with xv-3.00, and
in particular I have issues with all the fixes that have so far been made
to the Imakefiles and xv.h.  Without John to adjudicate, and everybody
posting fixes that work for *them*, chaos is inevitable; let's hope it is
temporary.
-- 
John "Guile Skywalker" Brooks using his Dad's account

Newsgroup: comp.windows.x
document_id: 67571
From: qizeng@acsu.buffalo.edu (Qi Y. Zeng)
Subject: source code of x

Dear Netters:
    Could you mail the source code of the book:
    "Advanced X window application programming"
by Johnson and Reichard 
    TO ME?

    If you need any source code, just ask me.

    Thank you very much!


                                    Sincerely,

                                    Zeng, Qiyong.
-- 
Zeng,Qiyong. SUNY at Buffulo

Newsgroup: comp.windows.x
document_id: 67572
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: XV 3.00 has escaped!

Given that all the source code contains explicit permission to use or
modify the code without fee in addition to the shareware notice, I would
say that the shareware notice is unenforceable.  All you need to do is
make minor changes to create a derivative work which is explicitly allowed
under the first part of the copyright notice.  Of course, this would be
circumventing the author's wishes on the subject, but I'd say if you're
not going to pay him no matter what, you'd be on relatively safe ground
with that approach...  In fact, given the internal contradictions of the
copyright notices, I'd guess none of it could ever be enforced, but not being
a lawyer, I can't be positive.

Regardless, the fees he's asking are not excessive, and I would encourage
anyone who wants to use the program to pay them if at all possible.  Even
though it is unlikely that you have actual legal obligations to pay the
author, it would be reasonable to do so, to support his efforts if nothing
else.

- Brad

-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
document_id: 67573
From: graeme@labtam.labtam.oz.au (Graeme Gill)
Subject: Re: XV 3.00 has escaped!

In article <46464@sophia.inria.fr>, muller@mafalda.inria.fr (Christophe Muller) writes:
> Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
> shows because of its "-loop" feature that display does not have (display
> from the *wonderful* ImageMagick package! :-D), but I think I will implement
> it myself (even a shell-script should do the job) and forget xv.

xli and xloadimage have a -goto flag.

	Graeme Gill.

Newsgroup: comp.windows.x
document_id: 67882
From: lee@sq.sq.com (Liam R. E. Quin)
Subject: OPEN LOOK GUI frequently asked questions


Frequently-asked questions about the OPEN LOOK Graphical User Interface.

If your question isn't here, please try (at *least*)
	man openwin
	man xnews
	man 7 xview
and looking in the appropriate manuals listed in the Bibliography below
before posting to the comp.windows.open-look, comp.windows.x or
alt.toolkits.xview newsgroups and/or their corresponding mailing lists.

Special Notes:
    * I have not updated this FAQ for the recently-announced OpenWindows 4,
      due to ship later this year.
    * Yes, Sun is moving to Motif, along with all of COSE.  But the Motif to
      which they move will be a new Motif, with some of the OPEN LOOK UI
      features added.
    * Yes, OpenWindows 4 will use DPS instead of NeWS.  NeWS is dead.
      This means TNT is dead, too.
    * XView and OLIT will be supported, but probably not enhanced after the
      next release.  I don't know if there will be a source release of
      XView 3.1 or not.
    * The COSE Environment will include at least some of Sun's DeskSet,
      ported to Motif.  Look for Calendar Manager and Mailtool, at least.
    * Yes, the new Mailtool will be MIME-compliant.

Frequently Asked Questions for X11 are posted to comp.windows.x monthly.

This is version: $Revision: 1.48 $; Last posted version:  1.46

Contents: (in rn and trn you can use control-G to go to the next topic)

    Subject: Terminology: OPEN LOOK, OpenWindows, X11, XView, (MO)OLIT, Motif
    Subject: Window Managers -- olwm, olvwm
    Subject: OpenWindows, Terminals, and Other Displays
    Subject: Configuration Files: Getting started with OpenWindows
    Subject: Key Bindings, Cut and Paste
    Subject: Applications: Finding Out...
    Subject: DeskSet, Calendar Manager, etc.
    Subject: Trouble Shooting: Strange Error Messages
    Subject: Trouble Shooting: It Won't Let Me Type
    Subject: Trouble Shooting: Not authorized to use display
    Subject: Trouble Shooting: other common problems
    Subject: Trouble Shooting: XView problems
    Subject: Fonts
    Subject: Environment Variables
    Subject: Where Can I get It? Ftp, implementations, etc...
    Subject: Bibliography -- books, manuals, journals, papers, beer-mats
    Subject: Getting this File, Revision History, Recent Changes


Subject: Terminology: OPEN LOOK, OpenWindows, X11, XView, OLIT, MOOLIT, Motif

@ What is OPEN LOOK?
    OPEN LOOK is a specification of a Graphical User Interface (GUI).
    A GUI determines the `look and feel' of a system -- the shape of
    windows, buttons and scroll-bars, how you resize things, how you
    edit files, etc.

    The OPEN LOOK GUI is specified, developed and maintained jointly by
    Sun Microsystems and AT&T (or USL?).

    See Also:
	Bibliography

@ What is OpenWindows?
    OpenWindows is a windowing environment that conforms to the OPEN LOOK
    Graphical User Interface Specifications.  It's compatible with the
    X11 window system from MIT as well as (currently) Sun's NeWS and SunView,
    so you can intermix programs written for any of those systems.
    It comes from Sun and also with System V Release 4 from certain vendors.
    OpenWindows is sometimes also called openwin or xnews, after the
    program used to start it and the main executable itself, respectively.
    It should not be called `Windows' or 'OPEN LOOK' or `OpenLook', as
    these terms are either wrong or apply to something else.
    A commerical OpenWindows source licence costs about $5,000 for the server,
    plus about $25,000 for DeskSet, and another $40,000 for ToolTalk.
    The current versions of OpenWindows for various platforms are:
	SunOS 4.1.1 on Sun 3: 2.0
	Solaris 1.x (SunOS 4.1.x) on SPARC: 3.0
	Solaris 2.0 (SunOS 5) on SPARC: 3.0.1

    See Also:
	Mixing X11 and OpenWindows
	Where can I get it?

@ What are OLIT, XView and TNT?
    These are all toolkits for programmers to use in developing programs
    that conform to the OPEN LOOK specifications.  See the Bibliography
    for documentation on the individual toolkits.  Here's a brief summary:

    OLIT was AT&T's OPEN LOOK Intrinsics Toolkit for the X Window system;
    it used a widget set, and was probably the easiest for people who were
    already X11/Xt programmers to learn.  You could buy the source from AT&T,
    although you didn't get the same version tht Sun ship.  Sun includes the
    OLIT library in OpenWindows (q.v.); it is also often included in
    System V Release 4.  It was written in C.  The release of OLIT in
    OpenWindows 3.0 was OLIT 3.0.  OLIT support passed to USL (then a
    division of AT&T, now owned by Novell), who replaced it with MoOLIT (q.v.).
    Note that because of the nature of Xt subclassing, you will probably
    want or need OLIT source in order to develop a large application or
    anything else that uses subclasses.
    [see the proceedings of the 1991 X Technical Conference]

    XView is Sun's toolkit for X11, written in C.  XView is similar in
    programmer interface to SunView.  There's even a shell script to help
    migrate source code from SunView to XView.	 XView is often said to be
    the easiest toolkit to learn if you are not familiar with X Windows.
    The XView toolkit is included in OpenWindows, and full source is
    available by anonymous ftp from export.lcs.mit.edu (and elsewhere).
    The current version of XView from Sun is 3.0.
    Despite rumours to the contrary -- some even from within Sun -- the
    XView toolkit is *NOT* about to be dropped by Sun.  XView *will* be
    included in the next release of OpenWindows, unlike NeWS.
    On the other hand, the XView toolkit is not likely to receive as much
    attention from Sun in the future as OLIT.

    The NeWS Toolkit (TNT) was an object-oriented programming system based
    on the PostScript language and NeWS.  TNT implements many of the
    OPEN LOOK interface components required to build the user interface of
    an application.  It's currently included in OpenWindows.

    The current version of TNT from Sun is 3.1; Release 3 contains some
    incompatibilities with `tNt' 1.0 and TNT 2.0, but Sun are committed to
    supporting the API, at least until they stop NeWS support some time
    later this year and replace it with Display PostScript.  Wail.
    You might ask what `is committed to' means in this context; the
    answer seems to be that it means absolutely nothing.
    Sun currently asserts that it is committed to OLIT, however.

    The C++ User Interface Toolkit (UIT) consists of an object-oriented C++
    class library layered on top of XView and a tool to generate code from
    DevGuide 3 GIL files.  The UIT also includes features that simplify
    event management and the use of PostScript and color.  It is said to be
    compatible with OpenWindows V2 and V3, and presumably V3.0.1, since the
    release mentions that it works on Solaris 2.
    UIT is not an official Sun-supported product but an ongoing project of
    various people within Sun.  It can be found on export.lcs.mit.edu in
    the MIT contrib directory as UITV2.tar.Z (use binary mode!).

@ Where does Motif fit in?
    It doesn't :-).  Motif is an alternative Graphical User Interface that
    is being developed by OSF.	It has a `look and feel' reminiscent of
    Microsoft Windows and the OS/2 Presentation Manager.  There are no non-
    commercial Motif toolkits available, although the Motif source is sold
    reasonably cheaply by OSF.	Although Motif is currently available on
    more platforms than OpenWindows, the OPEN LOOK GUI is almost certainly
    used on many more machines, simply because Sun (and SysVR4) have such a
    large installed base.
    Sun's CD/WARE Volume 2 contains a roadmap for improving Motif
    applications by converting them to OLIT [:-)]; there are also notes in
    the `Periodic Table' OLIT demo, $OPENWINHOME/demo/olittable.

@ What is MoOLIT?
    MoOLIT is a version of OLIT from AT&T/USL that lets users choose between
    a Motif and an OPEN LOOK UI feel at run-time.  It will be part of System V
    Release 4.2.
    Contact: Joanne Newbauer, jo@usl.com, (908) 522-6677

@ What about that Display PostScript thing?
    Sun and Adobe have agreed that Sun will include the DPS extension to X
    in the next release of OpenWindows.  DPS is essentially a badly designed
    hack on top of a slow Level 2 PostScript interpreter intended to give a
    very small subset of the functionality of NeWS whilst simultaneously
    being harder to use, as I understand it.  The only real advantage it
    has over NeWS is that the manual is much smaller, being generally less
    complete; DPS is also available on more kinds of machine.
    Performance on our RS/6000 is not suitable for interactive work;
    what it will be like on the SPARCStation remains to be seen.
    Note that whereas X/NeWS fonts are shared by both subsystems, the DPS
    extension to X does _not_ make Type 1 PostScript fonts available to
    ordinary X11 programs.  It is not like ATM on a PC in this regard.
    (there is at least one third-party version which does make fonts
    available, however)

Subject: Window Managers -- olwm, olvwm

@ What are olwm and olvwm?
    They are window managers.  A window manager is the part of the X Window
    system (e.g. X11) that is responsible for deciding how to lay out windows
    on the screen, and for managing the user's interaction with the windows.

    Olwm is the standard OPEN LOOK window manager.
    It's included with all of the OpenWindows (q.v.) implementations, and
    you can also get the source by ftp, since Sun donated it.

    Olvwm is a version of olwm that manages a `virtual desktop' (hence the
    `v' in its name).  It shows a little map on the screen, with the
    currently displayed area represented by a little rectangle.	 You can
    move around by dragging the rectangle or with the arrow keys.  This
    lets you run several clients (applications) and move the display around
    from one to the other.  Olvwm was derived from the OpenWindows 3.0 olwm
    by Scott Oaks; you need to have XView 3.0 to compile it.
    Get olvwm from an ftp site such as export.lcs.mit.edu (in the contrib
    directory; there are three patches).

@ Can I use my favorite window manager with OpenWindows instead of olwm?
    Yes.  If you use twm, for example, or mwm, you won't be able to use
    the Pin and Unpin feature of olwm, and you (probably) won't see the
    footers some windows use to display certain messages.

    If you use twm, you'll want to use the f.delete function to unpin menus
    and get rid of programs that don't have a `quit' button when not run
    under olwm.
    For twm, put this in your $HOME/.twmrc:
	LeftTitleButton "target" = f.delete
    where "target" is a 16x16 icon from /usr/include/X11/bitmaps.
    Alternatively, try
	# Add a menu to each window managed by twm or tvtwm
	LeftTitleButton ":menu" = f.menu "OL.menu"

	menu "OL.menu" {
	    "Quit"         f.delete
	}

    For mwm, you can double-click on the menu icon on the left of the title
    bar to dismiss a pop-up window (I am told).

    See the manual page for your window manager (twm, etc).

Subject: OpenWindows, Terminals, and Other Displays

@ Can I use olwm and olvwm without OpenWindows or on an X Terminal?
    The OpenWindows xnews server combines SunView, NeWS (PostScript) and X11.
    This means that it can run programs compiled for any of those systems.
    Unfortunately, it means that some OpenWindows programs need either NeWS
    or SunView support, and thus won't run on an X terminal.  This includes
    pageview in particular.

    You can use olwm or olvwm (see above) on an X terminal or a non-Open-
    Windows display, and most OPEN LOOK clients (e.g. OLIT or XView ones)
    will work perfectly well.  You may find that you get complaints about
    fonts not being found.  If so, see the Fonts section below.
    If you are running the window manager built-in to an NCD terminal, you
    may have problems with input focus; setting *Input: True in the terminal's
    XDefault file in /usr/lib/X11/xdm may or may not help.


Subject: Configuration Files: Getting started with OpenWindows
     
@ What configuration files do I need to know about?

    .xinitrc and .xsessionrc

    The first time you run OpenWindows, a .xinitrc file will be created in
    your login directory ($HOME).  If it already exists, you might have to
    edit it somewhat; it's simplest to move it and any other old X11 files
    you have to another directory, and then merge the old and new files.

    If your site uses xdm, you should use .xsession instead of .xinitrc,
    since xdm doesn't look at your .xinitrc file.

    .openwin-init, .openwin-menu and .openwin-sys

    These are optional files you can create in your $HOME directory,
    depending on which version of olwm or olvwm you use.
    Look in $OPENWINHOME/lib (normally /usr/openwin/lib) for these files
    without the leading . and copy any you want to change.  You may need
    to edit your .xinitrc to get them recognized.  If you are not on an
    X terminal, you will want to run a console window (such as cmdtool -C,
    shelltool -C, xterm -C) or Chuck Musciano's "contool" program so that
    system output will be directed there instead of writing over your screen.
    Note that .openwin-sys is not executed unless you edit .xinitrc.

    .Xdefaults

    You can put X Windows resource specifications in here.  In particular,
    it is a good idea to include at least:
	OpenWindows.FocusLenience:	true
	*Input: TRUE
    These allow non-ICCCM-compliant programs to receive input even if they
    forget to ask for it.

    Props, the program that runs when you select `properties' from the default
    root menu under olwm or olvwm, writes your choices into .Xdefaults.
    Don't put comments in .Xdefaults, since `props' deletes them.

    .startup.ps

    This is the NeWS user profile file, read by OpenWindows (actually xnews)
    on startup.	 This is documented in the NeWS programming manual, near the
    back.  The most useful thing to put here is PostScript code to change
    the keyboard repeat rate, although you must be very careful, since a
    syntax error in the PostScript means that xnews will either not start up
    at all or will get broken in strange ways.	The NeWS manual gives code
    that is both incorrect and insufficient.
    WARNING: things in this file rarely work on both OpenWindows 2 and 3.

    Note that the mouse speed is best set in your .xinitrc with xset m; see
    the man page for xset ("man xset", and "xset -help") for more information.

    Here's what $HOME/.startup.ps  should look like if you want a delay of
    about a third of a second (300000 microseconds), and a repeat rate of
    twenty or so keys per second (30000 microseconds between repeats) for
    OpenWindows 3.  You'll have to experiment a bit because the RepeatTime
    is the delay between keys sent, and thus doesn't include the time to
    process each key, which is probably higher on my 4/110 than on your
    SuperSPARC 10/51 GTi injection :-)  Again, this is for OpenWindows 3...

	% don't want the demos - see p. xxxii of NeWS Toolkit Reference Manual
	% /IncludeDemos? false def

	UserProfile begin
	    /KeyRepeatThresh 0 300000 timeval storetimeval def
	    /KeyRepeatTime 0 30000 timeval storetimeval def
	    % Note: 300000 and 30000 differ greatly...
	end

    You must also have a .user.ps file in the same directory, like this:

	/NeWS 3 0 findpackage beginpackage
	/TNTCore 3 0 findpackage beginpackage
	/TNT 3 0 findpackage beginpackage

	ClassRepeatKeys pop	% force repeat.ps to autoload

	endpackage endpackage endpackage

    If you change these parameters, you can test them without restarting the
    OpenWindows server like this:
	$ psh -i .startup.ps
	Welcome to X11/NeWS Version3
	$ psh -i
	Welcome to X11/NeWS Version3
	/classinit ClassRepeatKeys send
	%%% now press control-D

    You can also either of these two files (.startup.ps and .user.ps) to make
    the root window be "retained", so that a PostScript drawing on the
    background won't be erased when you move windows:
	frambuffer /Retained true put
    will do this.  Note that this may increase the amount of memory used
    by the NeWS server (xnews) dramatically.
    
    See also:
	Trouble Shooting: It Won't Let Me Type
	Trouble Shooting: Is there an easy way to edit Xdefaults?
	Environment Variables

@ How can I configure OPEN LOOK for a left-handed mouse and keyboard?
    You can use xmodmap to change the mouse buttons, but be prepared for one
    or two occasional surprises.  See also "man 7 xview" for a list of
    keybindings you can change, at least for XView programs.

    With OpenWindows 2.0, you can use defaultsedit to set the mouse mappings
    and then let SunView handle them.  The status returned by svenv should
    tell you whether your server is running under SunView or not; put this
    in your .xinitrc:

    if eval `svenv -env`
    then
	xmodmap -e "pointer = 1 2 3"
	input_from_defaults
    else
	xmodmap -e "pointer = 3 2 1"
    fi


@ How can I get the screen to go blank when the system is idle?

    Run screenblank from /etc/rc.local if you can; it's a boring but
    effective screen saver.  See `man screenblank'.
    Under Solaris 2 you'll need to copy screenblank from an older system, as
    it's not supplied.  Then add a new file in /etc/rc2.d to make the system
    run screenblank automatically.

Subject: Key Bindings, Cut and Paste

@ How do I cut and paste between XTerm and OpenWindows programs?

    To go from XTerm to textedit (say):
    * Select the text you want to copy by dragging the SELECT mouse button
      in xterm
    * Press COPY in the XTerm (this key is L6, or Meta+c (the O'Reilly
      XView manual gets this wrong)
    * Move to the textedit window, and press PASTE (L8 or Meta+v)

    If this doesn't work, see Trouble Shooting: Cut and Paste

   To go the other way, from textedit to XTerm:
    * Select the text in textedit.  No need to use COPY
    * Move to the XTerm window and press ADJUST (the middle mouse button).
    * You can also use the COPY/CUT and PASTE buttons.

@ COPY/PASTE is boring.	 What short-cuts are available?

    Quick Copy within textedit, mailtool, etc:
    * Click SELECT to get a text caret where you want the copied text to go
    * Press and HOLD DOWN the PASTE (or CUT) button
    * Select the text you want to copy/move.  You'll see that it's underlined
      or crossed out, as appropriate.  (In the jed demo it goes grey)
    * Let go of the PASTE (or CUT) button.
    * The text you underlined or crossed out appears at the insert caret.

    Drag and Drop to Move a Selection
    * Select the text you want to copy or move, by dragging or multiple-
      clicking the SELECT or ADJUST mouse button
    * Put the mouse pointer anywhere within the selection
    * Press and HOLD DOWN down the SELECT mouse button, and move the mouse
      pointer a little to the right; you'll see the cursor changes to be the
      first 3 letters of the text (or some other icon).
    * Still holding SELECT down, move the mouse over the point where you want
      to drop the text
    * You may see the mouse pointer change to a rifle-sight or target, to show
      that it's OK to drop things here
    * Let go of SELECT, and the text is moved.	This works in text fields of
      dialogue boxes as well as in text subwindows.

    Drag and Drop to Copy a Selection
    * This is the same as using Drag and Drop to Move a Selection, except that
      you must hold the CONTROL key down as well as the SELECT mouse button.

@ What are the default key bindings in textedit and elsewhere?

    See the man page for textedit(1) for some of them.
    In general, the editing/moving commands go in the opposite direction when
    shifted - e.g. Ctrl+w deletes a word, and Ctrl+W deletes the word to the
    right of the insert point.

	Meta-i - include file	    Meta-f - find selection (forward/backward)

	Ctrl-a - start of line	    Ctrl-< - back word
	Ctrl-e - end of line	    Ctrl-> - forward word
	Ctrl-w - delete word	    Ctrl-u - delete to start/END of line
	Ctrl-Return - move to end/START of document

    See the O'Reilly XView Reference Manual for a list of some of the default
    keys; see also the olwm or olvwm manual page.

@ What can I put in my .ttysrc?	 Where is it documented?

    See the manual page for shelltool.

Subject: Applications: Finding Out...
    Contact SunSoft (or Sun) and ask for the Catalyst OPEN LOOK guide,
    which lists over 200 pages of applications, and also the _huge_
    Catalyst listing of products for Suns, updated six-monthly.

    Sun's free CDWare CD/ROMs each contain demo versions of several popular
    OPEN LOOK applications.  Often you can simply contact the vendor
    concerned to have the license upgraded from demo, and receive the full
    product documentation.

    SunPICS produces a CD/ROM for NeWSPrint users, Printer's Pallate, which
    contains NeWSprint drivers for a variety of printers and plotters, as
    well as 600 scaleable fonts that you can license.

    There is a separate FAQ posting in comp.windows.open-look that lists
    a number of free and commercial aplications; mail lee@sq.com for a
    copy, including OPEN LOOK UI Application List in the Subject for a
    faster reply.

Subject: DeskSet, Mailtool, Calendar Manager, etc.

@ Is there a tty-based interface to cm (Calendar Manager)?
    Yes, cm_delete, cm_insert and cm_lookup; these all have manual pages.
    If "man cm_delete" doesn't work or gives strange messages, see under
    Trouble Shooting: Strange Error Messages, below.

@ How can I arrange to have my .signature included in my outgoing mail?
    The best way is:
    $ cd
    $ cp /usr/lib/.textswrc .
    $ chmod +w .textswrc
    edit .textswrc (use vi, textedit, or whatever you prefer)
    add the follwing:
	KEY_RIGHT(3)    FILTER
	cat ~/.signature
    (you might need to change ~ to $HOME)

    Now pressing R3 will insert your .signature file.



Subject: Fonts

@ Does OpenWindows support Type 1 PostScript fonts?
    Yes, under either Solaris 2.0 or 2.1 (I'm not sure which).
    Or, Not Yet, in other words.

    If you have FrameMaker there is a utility to import them, I'm told.
    The 57 fonts supplied with OpenWindows are fully hinted, though, and
    comparing them to the Microsoft Windows and Apple TrueType fonts is
    interesting...  The F3 font format is described in a publication from the
    Sun OpenFonts group, listed in the Bibliography below.  Documentation on
    the unbundled version of TypeScaler is also available from Sun OpenFonts.

    You can buy F3 fonts from SunPICS, Monotype, Linotype, URW and probably
    other major foundries.

    SunPICS' NeWSPrint software supports Type 1 fonts.

@ Improving font rendering time
    Although the Sun type renderer (TypeScaler) is pretty fast, it's not as
    fast as loading a bitmap :-).  You can pre-generate bitmap fonts for sizes
    that you use a lot, and you can also alter and access the font cache
    parameters.	 If you have a lot of memory you might want to increase the
    font cache size.
	$ psh -i
	Welcome to X11/NeWS Version3 <--- psh will say this at you
	currentfontmem =	% type this line ...
	300	% and here's whai my server was using -- 300 Kbytes
	1024 setfontmem
	% Just to check:
	currentfontmem =
	1024
    See pp. 328ff of the NeWS 3.0 Programmer's Guide.  You need to say psh -i
    so that the PostScript packages are loaded - see the psh man page.

@ Making bitmap fonts for faster startup:
	$ mkdir $HOME/myfonts
	$ cd $HOME/myfonts
	$ makeafb -20 -M $OPENWINHOME/lib/fonts/Bembo.f3b
	Creating Bembo20.afb
	$ convertfont -b Bembo20.afb
	Bembo20.afb->./Bembo20.fb
	Chars parameter greater than number of characters supplied.
	$ ls
	Bembo20.afb	Bembo20.fb	Synonyms.list
	$ bldfamily
	* Bembo		       ./Bembo.ff (Encoding: latin)
	cat: ./Compat.list: No such file or directory
	$ xset +fp `pwd`
	$ xset fp rehash

    If you want the server to see your new font directory every time,
    add this directory to your FONTPATH environment variable in one
    of your start-up files, e.g. .login or .profile.

@ Converting between font formats (convertfont, etc.)
    You can also use Folio fonts with an X11 server, by converting them to a
    bitmap (X11 bdf format) first.  Your licence forbids you from using the
    fonts on another machine, and unless you have NeWSPrint you shouldn't
    use them for printing.  Having said all that...  you can use makeafb and
    convertfont to generate bdf files that you can compile with bdftosnf or
    bdftopcf.

    Use mftobdf (from the SeeTeX distribution) to convert TeX pk fonts to
    X11 bdf format, which you can then use with either X11 or OenWindows.

    You can also use der Mouse's "getbdf" to get bdf fonts from a running
    X display server -- ftp: larry.mcrcim.mcgill.edu (132.206.1.1) /X/getbdf

@ Xview/OLIT fonts at 100 dpi
    There aren't any.  More precisely, the various text fonts, such as
    Lucida Typewriter Sans, are available at 100 dpi, and in fact are
    scalable under OpenWindows.	 The glyph fonts are bitmaps, and don't
    scale very well.

Subject: Trouble Shooting: Strange Error Messages

@ No manual entry for cm_lookup

    If man doesn't seem to find OpenWindows commands, even though you are
    running OpenWindows, try setting the MANPATH environment variable:
	MANPATH=$OPENWINHOME/share/man:/usr/man; export MANPATH
    or
	setenv MANPATH $OPENWINHOME/share/man:/usr/man
    for csh users.  $OPENWINHOME should be /usr/openwin on most systems.

@ window: Window creation failed to get new fd 
@ window: Base frame not passed parent window in environment 
@ Cannot create base frame.  Process aborted. 

    These messages all come from SunView programs.  SunView was an
    earlier windowing system for Suns, and was not networked.  Some of
    the SunView programs are still around in /usr/bin, and have names
    that are the same as their OpenWindows counterparts.  You almost
    certainly want to run the programs in $OPENWINHOME instead.

    Set your path so that $OPENWINHOME/bin (and $OPENWIN/bin/xview for
    OpenWindows 2) come before /bin (or /usr/bin, they're the same), or
    you'll get the SunView versions of mailtool, cmdtool, shelltool, etc.

@ memory fault - core dumped
    If you get this from the binder, or if binder vanishes suddenly,
    get the following patches:
	100493-02 Binder
	100524-03 Cetables
	100626-03 Tooltalk

@ Trouble compiling Xt, Xmu or OLIT programs: _get_wmShellWidgetClass
 
    If you are using OpenWindows 3.0 (X11R4-based Xt), contact your local
    Sun office and request the following patches:
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

    If you can't install the patch, a workaround is to add 
	-u get_wmShellWidgetClass -u get_applicationShellWidgetClass
    on the link (ld or cc ... -o ...) line.  An alternative is to add
	-assert nodefinitions
    to CFLAGS in your Makefile, or even in Imake.tmpl.


Subject: Trouble Shooting: It Won't Let Me Type

@ When I try to type into some programs, I just get beeps or nothing happens
    It is a good idea to include at least:
	OpenWindows.FocusLenience:	true
	*Input: TRUE
    in your .Xdefaults file, as these allow non-ICCCM-compliant programs to
    receive input even if they forget to ask for it.
    See the next item for editing .Xdefaults

Subject: Trouble Shooting: Cut and Paste not working

@ I can't paste from xterm to XView (including Sun DeskSet) programs
    Under OpenWindows 2, you need to add the following either to your
    $HOME/.Xdefaults file, or to $OPENWINHOME/lib/app-defaults/XTerm instead:

	XTerm*VT100.Translations: #override \
		<Key>L6:select-set(CLIPBOARD)\n\
		<Key>L8:insert-selection(CLIPBOARD)
  
    You must not move the mouse between ending the selection and pressing
    L8 (the Paste key)!

    Under OpenWindows 3, this is already in the app-defaults file, so if it
    isn't working, check that XFILESEARCHPATH is set to
	/usr/openwin/lib/%T/%N%S
    and if it isn't, either set it or copy/merge the above lines from
    $OPENWINHOME/lib/app-defaults/XTerm into /usr/lib/X11/app-defaults/XTerm.
    [See also: Environment Variables]

    This version automatically puts each xterm selection onto the clipboard:
	XTerm*VT100.translations: #override\n\
	    ~Ctrl ~Meta<Btn2Up>: insert-selection(PRIMARY,CUT_BUFFER0)\n\
	    ~Ctrl ~Meta<BtnUp>: select-end(PRIMARY,CUT_BUFFER0,CLIPBOARD)\n\
	    <KeyPress>L8: insert-selection(CLIPBOARD)
    [Note: be sure that the \n\ is at the very end of the line, there must
     be no following spaces, and any + or | signs showing that this FAQ file
     was altered must also be removed!]

    If you are using X11R5, you may find that adding the lines
<Key>L10: start-extend() select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0)\n\
       <KeyRelease>L10: kill-selection() \n
    before the <KeyPress>L8 line will make L10 (CUT) work as a cut key!

    If you alter $HOME/.Xdefaults instead, you must use what X calls a
    `more specific' resource name:
	xterm.vt100.translations
    will do.

@ I can't paste from XView (including Sun DeskSet) programs to xterm

    If you don't have the Sun L keys on the left of your keyboard, you can
    use Meta-x, Meta-c and Meta-v for cut, coy and paste respectively.
    You can change the keys by adding the following two lines to
    your .Xdefaults file, edited as you wish (the values shown here are the
    defaults):

	Openwindows.KeyboardCommand.Copy: c+Meta,L6
	OpenWindows.KeyboardCommand.Paste", "v+Meta,L8
    
    Lists of resources are in the manual page for xview, and also in the
    thinnish blue book `Companion to Volume 7, XView Reference Manual' from
    O'Reilly, and also in the olwm and olvwm manual pages.

@ I always get the same piece of text when I press PASTE (L8, Meta+v)
    Remove the file /tmp/textsw_shelf and see if that helps; see also the
    next item.

@ Cut Copy and Paste don't work at all (OpenWindows only)
    Oh dear.  Use ps -xuaww | grep xv  to check that sv_xv_sel_svc is running
    and that either you or root started it, depending on whether you started
    OpenWindows with "openwin" or by logging in through xdm.
    If not, start it.  If it dies, check that there is no /tmp/.sv_xv_sel_svc
    before restarting it - you may need to be root to remove it, or you can
    reboot your workstation.
    Check that there is space in /tmp (use "df /tmp"), and also see if there
    are a lot of files there with names like /tmp/tty.txt.a01246; if there are
    several hundred of them, cut and paste may take so long that it times out.

    Quit any deskset tools such as mailtool, filemgr and cm (calendar), start
    a terminal emulator and remove and /tmp/tty.txt* and /tmp/Text* files
    that are still there.  It's simplest to quit openwin and start it again
    after doing that, if cut and paste was broken, but if it starts working
    again you can just carry on.  Note that files in /tmp not owned by you
    might be in use by another worker comrade, so don't remove those without
    checking first!

Subject: Trouble Shooting: Not authorized to use display

    If you get error messages that look like
	Xlib:  connection to ":0.0" refused by server
	Xlib:  Internal error during connection authorization check
	Error: Can't Open display
    try, on the machine running OpenWindows or X11,
	xhost +machine
    where "machine" is the computer on which you ran the command that failed.
    If you want to let other users run programs on the same machine as you,
    using your display, you will have to type the bizarre-looking
	xhost +`hostname`
    (or xhost +happyboy, if happyboy is the name of your workstation).
    This lets ANY user on `happyboy' access your display.

    With OpenWindows 3.0 you can also use xauth, and the Programmer's Guide 
    describes how to do this in Chapter 8, p. 101.  This is more secure.
    Also check the man page for fbtab(5) to stop other users accessing the
    framebuffer directly!

    Also note that there is a Sun patch for OpenWindows 3.0 under SunOS 4.1.1
    to fix a serious security problem.  It is available through your local
    Sun Answer Center as well as through anonymous ftp from ftp.uu.net
    [192.48.96.2] system in /sun-dist:
    Fix                     PatchID        Filename            Checksum
    loadmodule              1076118        100448-01.tar.Z     04354  5


    On an X Terminal, there may be a setup menu that lets you change or
    disable the list of hosts that can access the display.

    If you start getting this message after you've been logged in overnight,
    there might be a cron job that's removing the Unix sockets in /tmp
    that are used to communicate with the server when $DISPLAY doesn't have
    a hostname before the :, or is empty.  Have the system administrator
    change the cron script to skip sockets.

Subject: Trouble Shooting: other common problems

@ I get console error messages on my screen and they don't go away (Sun 3 or 4)
    If "refresh" makes the messages vanish, but new ones come along later,
	you need to run "xterm -C" from your .xinitrc, or start one up in
	the background and then  choose Save Workspace from the
	Workspace->Utilities menu.  Better still, pick up "contool" and run
	that.  Get it from export.lcs.mit.edu in the contrib directory.  It
	will monitor the console and open, flash its icon or beep when a
	message appears; it's very easy to configure.

    If "refresh" from the Workspace->Utilities menu doesn't make the messages,
    go away...
	a Sun with a cg4 frame buffer has two screens - you can move the
	mouse off the right-hand (by default) edge of the screen and onto
	a whole new (but monochrome) display, called ":0.1".  See the man.
	page for openwin; I have a shell script that checks for this and,
	if there's a /dev/cgfour0, does
		openwin -dev /dev/cgfour0 -dev /dev/bwtwo0
	If you are running X11 or OpenWindows 2, you might need to add this
	to your .xinitrc or other startup file:
	(
	    eval `svenv -display unix:0.1 -env`
	    olvwm -display unix:0.1
	) &
	Later releases of olwm and olvwm do this automatically.
	You can also run switcher -e 0 to get rid of the messages.  Also, see
	the note about contool, above.

@ Is there an easy way of editing .Xdefaults?
    Use `props', which appears in the default root menu as `properties'.
    This starts `props', a property editor which will re-write your
    .Xdefaults after removing comments.  It then applies any changes.
    Keep comments by using "comment." instead of "!", for example,
	comment.*.font: Palatino-Italic-37

@ How do I get the File manager to use emacs instead of textedit?
    set the default editor to
	sh -c "exec emacs -font lucidasanstypewriter-18 \"$FILE\""
    (you can change the font if you prefer a smaller one)

@ How do I run OpenWindows in inverse video?
    This tends not to work under OpenWindows 2.	 With OpwnWindows 3.0,
    there are various ways, including using -bg and -fg options.  If you're
    using OpenWindows 2 on a Sun 3 , probably the best you can do (short of
    upgrading the workstation to a SPARC!) is to use xterm instead of cmdtool.

@ Why don't flat check-boxes work?
    A known bug may make Guide's output dump core if you use these.
    A workaround is to edit the Guide output, as it's only Guide's output
    that's broken, not the actual check-box code.
    This applies only to versions of DevGuide before Devguide 3.0.  If you're
    still using an ancient DevGuide, you should upgrade as soon as possible;
    the new one is fantastic!

@ When I leave OpenWindows, my screen goes blank or my mouse cursor stays
  on the screen.
    Try running clear_colormap; if this helps, put it as the last line in
    the shell script you use to start OpenWindows (e.g. `openwin').

@ When I use snapshot, the system crashes, or the server hangs, or something.
    This was a bug related to some systems only.  The only work-round was to
    use some other screen dump program, such as xwd, xv 2.21 or xgrabsc.
    
@ Why have some of my function keys stopped working?
    Keys F11 and F12 changed from SunF36 and SunF37 to SunXK_F36 and SunXK_F37
    respectively in OpenWindows 3.  Applications must be recompiled, or you
    might be able to use xmodmap or the public domain xkeycaps program to
    change your keyboard layout back again.

@ When I type shelltool or cmdtool or textedit, I get the Sunview version
    See under "Trouble Shooting: Strange Error Messages" below.

    (see also next item)

@ Mixing X11 and OpenWindows
    (see also next item)

    Note that OpenWindows 3.0 includes the X11R4 core distribution (to patch
    level 18), but not the contrib directory.  These notes apply to
    OpenWindows 2.0, although you could also the do same sort of thing with
    OpenWindows 3.0 and X11R5.

    Install the X11 libraries in /usr/lib/X11.	You can intermix OpenWindows
    and X11R4 or X11R5, they're all compatible in this respect.
    Put the X11 binaries in (for example) /usr/bin/X11.

    Put /usr/bin/X11 last in your PATH, so that you get OpenWindows versions
    of programs instead of X11 ones where appropriate, although this is a
    matter of preference.  In any event, put the OpenWindows bin directory
    first -- see the preceding item for more details on that.  If you have
    /bin (or /usr/bin, they're the same directory on SunOS) earlier in
    your PATH than $OPENWINHOME/bin/xview, you'll get SunView programs instead
    of OpenWindows ones!

    Set LD_LIBRARY_PATH so that /usr/openwin/lib is last, after the X11
    library directory.	This doesn't matter with OpenWindows 3.0, but with
    older versions you'll get error messages from X11 programs if you don't
    do this.  The messages are generally harmless (see next item), although
    xdm core dumps if this isn't right.

    Set OPENWINHOME to the directory containing OpenWindows if it isn't
    /usr/openwin.

    See Also:
	Environment Variables (especially XFILESEARCHPATH).

@ I get error messages on my screen about ld.so: libX11.so.4 not found
    set LD_LIBRARY_PATH to be /usr/openwin.  If you also use X11, use
	     /usr/lib:/usr/5lib:/usr/openwin/lib
    If you put this in a shell script or your .profile, use
    ${OPENWINHOME-/usr/openwin}/lib instead of /usr/openwin; this is for
    /bin/sh; for csh it is different.

@ I launch my filemgr and I get ld.so:map heap error (9) at /dev/zero
    Your system needs to be patched.  Look in $OPENWINHOME/lib/OSpatches
    and install the patch.

@ Why doesn't AnswerBook run for me?
    You must be running OpenWindows to use AnswerBook.	It won't run under
    X11 (on an X terminal or on anything else) because it uses NeWS to draw
    the PostScript text and pictures.
    If you are using OpenWindows 3.0, you need to use the OpenWindows 3.0
    compatible navigator; it's called .navigator.ow3 on the AnswerBook CD/ROM.
    If all AnswerBook users are using OpenWindows 3.0, you can replace
    navigator wih .navigator.ow3 altogether (rename the old one first to
    satisfy your sense of paranoia!)
    The navigator.ow3 binary is also on CD/Ware Vol 2.
    Note that the data files are in PostScript, so you can look at them with
    a PostSript viewer (q.v.).

@ Why aren't there any fish in realxfishdb?
    A fixed version of realxfishdb is available by ftp from
    ftp.eng.auburn.edu [131.204.10.91] as /pub/realxfishdb.Z

@ Why is the Properties choice disabled in the Window menu?
    It isn't implemented yet.  Many programs do respond to the Properties
    Key (L3), though, or have a pop-up menu with Properties on it.

@ File completion in the C-shell is broken in cmdtool
    Sadly true, but use shelltool or xterm instead and it's fine.  It also
    works if you run command tool on a remote machine.
    Fixed in OpenWindows 3.0.1 shipped with Solaris 2.

@ When I run OLIT programs, some of the widgets are red!
    Release 3 of OLIT added mouseless operation; action widgets can be
    selected via the keyboard.  The currently selected item is highlighted
    in red (the `Red Stain') to show that it has the input focus.
    To disable it in most places, add this to your $HOME/.Xdefaults file:
	*traversalOn: off
	*TextEdit.traversalOn: on
	*TextField.traversalOn: on
    You can change the color using (for example)
	*InputFocusColor: grey50
	*input*FocusColor: green
	*List*inputFocusColor: <your background color>
    See the man page resources(3w), at the start of the OLIT 3 Widget Set
    Reference Manual included in the OpenWindows 3 programmer documentation.
    Meanwhile contact your distributor and ask for patch id 100451-30, the
    OLIT/3.0 CTE Jumbo Patch.

@ When I run several programs, the colors on the screen all change when
  I move into a different window! ("colormap flashing")
    
    This is becasue most hardware can only display a few colors at a time.
    However, you can minimise the effect with the following procedure:
    *  Start all the applications with colors that you wish to reserve.
    *  Run
	cmap_compact save
       to create the .owcolors file
    *  Put the line
	cmap_compact init
       near the start of your start-up file (.xinitrc)
    *  Exit and then restart the window system.
    *  cmap_compact init will push those colors .owcolors to the end of
	the colormap and reserves them.

    Also note that control-L2 locks the colors of the current window, and
    Control-L4 unlocks them -- this is described in the olwm manual page.

@ pageiew uses the wrong colors, or makes the colormap flash (see above):
    This problem was reported by people for some reason running the Motif
    window manager (mwm) with OpenWindows.
    Try running pageview like this:
	$OPENWINHOME/bin/reservecolors -svmono
	$OPENWINHOME/bin/pageview
	$OPENWINHOME/bin/reservecolors -discard

@ XDM breaks things
    Command tool doesn't like being run without a Unix `controlling terminal'.
    Use /etc/setsid to start your command tools and all will be well.
    SunView applications may need to be run with svenv, as in
	svenv -exec /usr/bin/traffic
    because xdm won't set the necessary environment variables.
    Note that the MIT xdm starts up the X server as root, which is a security
    hole for OpenWindows; use the OpenWindows 3.0 xdm or be aware that your
    users can access files and start Unix processes ass root...

@ Function keys 11 and 12 stopped working
    In OpenWindows 3.0, the X11 names ("keysyms") for these keys was changed
    to SunXK_F36 and SunXK_F37.	 Code which uses them should be recompiled,
    or you might be able to get away with
	xmodmap -e 'keysym SunXK_F36 = SunF36'

Subject: Trouble Shooting: XView problems
    This section is here only until an XView FAQ appears, which has been
    promised, but hasn't reached here.	Note that there is also a usenet
    newsgroup, alt.toolkits.xview, although it doesn't sem to have very
    wide distribution and has triffic of the order of one or two articles
    per month.	You should also look at the FAQ in comp.windows.x.

@ how do I set the font of individual Scrolling List items?
    PANEL_LIST_FONT takes an int row_number and an Xv_opaque font_handle.
    PANEL_LIST_FONTS take a NULL terminated list of Xv_opaque font_handles.
    There is no easy way to make an entire list fixed width font.
    You have to make sure that you always specify PANEL_LIST_FONT when you
    insert a new row into that list, or write a convenience function
    insert_row(list, row, string) that hides the nasty bits.

@ how do I keep an XView pop-up window displayed after a button is pressed?
    In the button callback, do
        xv_set(button, PANEL_NOTIFY_STATUS, XV_ERROR, NULL);
    This will keep the window visible.
    You might also need to investigate the MENU_NOTIFY_STATUS attribute.

@ how do I make an XView button look pressed?
    call panel_begin_preview() and panel_cancel_preview(); these are
    documented in -- er -- the XView 3 source...

@ OpenWindows 3 imake doesn't work properly
    Here is Greg Earle's patch, to be applied in $OPENWINHOME; note that you
    should edit lib/config/sun.cf afterwards to get OSName and
    OSMinorVersion right (MinorVersion is 1 in SunOS 4.1.2, for example).
    I have edited the patch a little, so any bugs are mine [lee@sq.com] :-)
 
*** bin/xmkmf.orig	Wed Sep 18 07:02:02 1991
--- bin/xmkmf	Tue Aug  6 00:39:20 1991
***************
*** 30,34 ****
  
  elif [ -n "$OPENWINHOME" ]; then
! 	args="-DUseInstalled $OPENWINHOME/lib/config"
  
  else
--- 30,34 ----
  
  elif [ -n "$OPENWINHOME" ]; then
! 	args="-I$OPENWINHOME/lib/config -DUseInstalled -DXCOMM='/**/#'"
  
  else
*** lib/config/site.def.orig	Wed Sep 18 01:26:19 1991
--- lib/config/site.def	Tue Aug  6 00:44:37 1991
***************
*** 0 ****
--- 1,7 ----
+ #define BinDir $(OPENWINHOME)/bin
+ #define LibDir $(OPENWINHOME)/lib
+ #define IncRoot $(OPENWINHOME)/share/include
+ #define InstallNonExecFile(file,dest)					@@\
+ install:: file								@@\
+ 	$(INSTALL) -c $(INSTDATFLAGS) file dest
+ #define NullParameter

[Note: the patch is new, but I have not marked each line with a "+" -- Liam]

Subject: Environment Variables

    Environment variables, and plausible values to use -- this list doesn't
    take into account any local changes that you might have made, of course.
    This list is for OpenWindows 3.0 -- differences for OpenWindows 2.0 are
    marked, and I've added some comments for users of X11R4 and X11R5, too.

    DISPLAY  The name of the X Windows Display to use
	:0.0 (on the local machine, the one actually running X11 or xnews)
	:0.1 (on some machines for a second, monochrome screen)
	machine-running-unix:0.0 (on other machines)
	(You may need to do "xhost +other-machine" to let programs on other
	machines use your display; see also under Trouble Shooting, and see
	the section on xauth in the OpenWindows Version 3 Programmer's Guide,
	pp. 101ff)
	See also: console messages, under Trouble Shooting
    FONTPATH  Where xnews searches for fonts
	/usr/openwin/lib/fonts
	(you can also use "xset fp+ dir" to add a directory to the font path,
	but you may have to do "xset fp rehash" afterwards.  This is fine
	under OpenWindows, but many X11 servers have font problems)
    HELPPATH  Where XView looks when you press the Help key (or F1)
	/usr/openwin/lib/locale:/usr/openwin/lib/help
	(On SunOS 4.0.*, or with OpenWindows 2.0, omit the first entry, which
	is for sites using a local other than "C" or "USA").
    LD_LIBRARY_PATH   Where to look to find shared C libraries
	/usr/lib:/usr/5lib:/usr/openwin/lib:/usr/CC/`arch`
	(the /usr/CC/`arch`/lib entry is only needed if you use C++ programs)
    OPENWINHOME	 Where OpenWindows lives
	/usr/openwin  
    KEYBOARD, MOUSE -- serial devices to use instead of the console
	(don't set these for normal use; /dev/kbd and /dev/mouse)
    PATH  Where the Shell searches for programs to run
	$(OPENWINHOME)/bin:$(OPENWINHOME)/bin/xview:/usr/local/bin:.\
	$HOME/bin.`arch`:/usr/ucb:/usr/bin:/usr/bin/X11:/usr/hosts:\
	(you will certainly want to change this example!  There is no
	$(OPENWINHOME)/bin/xview in OpenWindows 3.0)
    XFILESEARCHPATH  Where programs look for app-defaults files
	/usr/openwin/lib/%T/%N%S
        (This is set automatically by "openwin" in OpenWindows 3.0)
        You might want to use /usr/lib/X11/%T/%N%S, or perhaps both,
        separated with a :, for example (for sh users)
            XFILESEARCHPATH=$OPENWINHOME/lib/%T/%N%S:/usr/lib/X11/%T/%N%S
	    export XFILESEARCHPATH
	If you use X11R5, you might instead want
	    /usr/lib/X11/%L/%T/%N%C%S:
	    /usr/lib/X11/%l/%T/%N%C%S:
	    /usr/lib/X11/%T/%N%C%S:
	    /usr/lib/X11/%L/%T/%N%S:
	    /usr/lib/X11/%l/%T/%N%S:
	    /usr/lib/X11/%T/%N%S:
	    $OPENWINHOME/lib/%T/%N%S
	(put all this on one line, though, with no spaces!)

	Together with the following in lib/Xinitrc
	xrdb -merge <<'END_XRDB'
	   *customization:
	END_XRDB

	xrdb -merge <<'END_XRDB'
	#ifdef COLOR
	   *customization:  -color
	#endif
	END_XRDB

	you automatically get a color oclock, editres, bitmap, xcalc, and
	xlogo since they use the "*customization" resource appearing as %C in
	the XFILESEARCHPATH. (see oclock (n))
	according to Rainer Sinkwitz <sinkwitz@ifi.unizh.ch>.


Subject: Where Can I get It? Ftp, implementations, etc...

    XView 3.0 is available by anonymous ftp from export.lcs.mit.edu and
    elsewhere.

    MoOLIT can be bought from AT&T in source form.

    OpenWindows can be obtained from Sun, or you can get the source from
    Interactive Systems Inc.  It is also included in some vendors' System V
    Release 4 implementations, although that's not always the latest version.
    The current release of OpenWindows from Sun for supported architectures
    is 3.0; for the Sun 3 series it is frozen at OpenWindows 2.0.
    Note that Sun includes OpenWindows with SunOS, and it is also included as
    the windowing system for Solaris.

    There are said (by Sun) to be over 35 ports of OpenWindows either
    available now or in progress.  Unfortunately, none of them seem to
    be available from anywhere.  Contact anthony@ovi.com for more information.


Subject: Bibliography: books, manuals, journals, papers, beer-mats

    The OPEN LOOK (tm) Graphical Interface is documented in two books:
	Sun Microsystems Inc., `OPEN LOOK Graphical User Interface Application
	Style Guidelines', Addison Wesley, 1989
    and
	Sun Microsystems Inc., `OPEN LOOK Graphical User Interface Functional
	Specification', Addison Wesley

    The Main documentation for the X Window system comes from
    O'Reilly & Associates in about nine or ten volumes.
    The most useful for OPEN LOOK users are:
	Volume 1: XLib Programming Manual
	Volume 2: XLib Reference Manual
	Volume 3: X Window System User's Guide
	    (An OPEN LOOK edition of Volume 3 should appear later this year)
	Volume 7: XView Programmer's Manual [Dan Heller]
	    [make sure you get the 3rd edition for XView 3.0]
	Companion to Volume 7: XView Reference Manual [Ed. Thomas Van Raalte]

	The Companion to Volume 7 is an expanded version of the Attribute
	Summary from the previous edition of the XView Programming Manual,
	together with other reference information, so that in practice you
	have to buy both books.

	O'Reilly also have a thinnish orange book on the differences between
	X11R4 and RX115.

	OLIT programmers will also want the Xt books - volumes 4 and 5.
	There is a new big fat green Vol 5 updated for X11R5.

	A journal, The X Resource, may also be of interest.

	O'Reilly & Associates, 103 Morris Street, Suita A, Sebastopol, CA 95472
	+1 707 829-0515, or, in the USA and Canada only, 1-800-998-9938
	Fax: +1 707-829-0104.
	Email nuts@ora.com or uunet!ora!nuts.
	For other distributors: mail, FAX, or call +1 707-829-0515.

    Some of the O'Reilly examples are available fro ftp from
    export.lcs.mit.edu in the contrib/OReilly directory.

    The System V Release 4 Documentation from Prentice Hall may also include
    a section on OpenWindows.

    David Miller describes programming with OLIT in his
	`An OPEN LOOK At Unix' (M&T press).
    
    Nabajyoti Brkakati gives an excellent introduction to X and to OLIT
    programming, as well as setting up and using X and OpenWindows, in:
	`Unix[R] Desktop Guide to OPEN LOOK'
	SAMS, 1992  ISBN 0-672-30023-0
	You can get the examples from this book as
	    export.lcs.mit.edu:contrib/naba-olguide-examples.tar.Z

    Also about using OLIT, and Xt in particular:
	The X Window System: Programming and Applications with Xt,
	OPEN LOOK Edition,
	Doug Young and John Pew, Prentice Hall, 1992,
	ISBN 0-13-982992-X
    There are also HP Widgets and Motif (ugh) versions of this book.
    The example source code in this book can be obtained by ftp from
    export.lcs.mit.edu, file "contrib/young.pew.olit.Z".

    There is an introduction to XView in
	`Writing Applications For Sun Systems', Vol 1, `A Guide for
	Macintosh(R) Programmers' (Sun Microsystems, pub. Addison Wesley)
    
    To learn more about the NeWS and PostScript languages, see

	The NeWS Book, Springer Verlag, 1989 (sadly, a little out of date)

	PostScript Language Reference Manual, Second Edition,
	Adobe Systems Inc., Addison Wesley, 1990 ["the Red Book"]
	    Note that OpenWindows 3 is a level 1 PostScript implementation,
	    with certain Level 2 features (such as Composite Fonts) to some
	    degree.
	
	PostScript Language Tutorial and Cookbook,
	Adobe Systems Inc., Addison Wesley, 1985 ["The blue book"]
    
    There's at least one book on using Solaris (i.e. SunOS).

    Sun also supplies a large amount of documentation with OpenWindows,
    although you may have to order it separately.  Here's what I have; they
    are each a little over 21 cm square (wider than A4 paper), and vary from
    about 1 cm to about 3cm thick.  They say `User's Guide' or `Programmer's
    Guide' on the front.  The User manuals have a red stripe on the bottom,
    and the Programmer ones have a green stripe.

    800-6006-10 OpenWindows Version 3 Release Manual
    800-6029-10 OpenWindows Version 3 Installation and Start-Up Guide
    800-6231-10 OpenWindows Version 3 DeskSet Reference Guide
    800-6618-10 OpenWindows Version 3 User's Guide
    800-6323-10 Desktop Integration Guide [also available in bookstores?]
    800-6027-10 Programmer's Guide
    800-6005-10 OpenWindows Version 3 Reference Manual [the man pages]
    800-6319-10 The NeWS Toolkit 3.0 Reference Manual
    800-6736-10 NeWS 3.0 Programming Guide
    800-6055-10 OLIT 3.0 Widget Set Reference Manual
    800-6198-10 XView 3.0 Reference Manual: Converting SunView Applications

    800-6854-10 F3 Font Format Specification [order separately]

    There are also some other sets of documentation, including the TypeScaler
    documentation from the OpenFonts group, for example.  There doesn't seem
    to be a complete list anywhere.

    ??????????? ToolTalk 1.0 Setup and Administration Guide (SunSoft, 1991)
    800-6093-10 ToolTalk 1.0 Programmer's Guide (SunSoft, 1991)
    There might be documentation about the Link Manager somewhere, too.

    AT&T includes several large thorny bushes' worth of paper with OLIT.

    Sun's AnswerBook CD/ROM contains a lot of the above documentation,
    including some of the O'Reilly books (not the XView 3 Volume 7, though).

    Volume 8 of the O'Reilly series is about X Administration, and mentions
    OpenWindows, although it is primarily aimed at X11R5.

    Several other books are in the works...


Subject: Getting this File, Revision History, Recent Changes

    Mail lee@sq.com to ask for it.  Douglas N. Arnold (dna@math.psu.edu)
    keeps an up-to-date copy on ftp.math.psu.edu (currently 146.186.131.129)
    in the file ~ftp/pub/FAQ/open-look.
    The net.answers archives and servers may or may not know about this file,
    since they've just changed hands and this file was previously in one
    archive but not the other.

    $Id: open-look.faq,v 1.48 93/05/09 18:03:13 lee Exp $


Acknowledgements:
    Andrei Arkhipov <andr@elvis.sovusa.com> (Feb/binder patch)
    Douglas N Arnold <dna@math.psu.edu> (Feb/various changes)
    Ian Darwin <ian@sq.com>
    Christopher Davis <ckd@eff.org>
    Paul Eggert <eggert@bi.twinsun.com> (Feb/screenblank on Solaris 2.1)
    R.Stewart Ellis <elliss@frith.egr.msu.edu> (Feb/-assert nodefinitions)
    Jeff Fleck <jefff@meaddata.com> (Feb/the colormap stuff)
    Rick Heli <Rick.Heli@Eng.Sun.CO> (Feb/including .signature)
    Nicholas Hounsome <nh@cbnewsg.cb.att.com> (Feb/Xt/OLIT cc workaround)
    Larry Matthias <matthias@artos.larc.nasa.gov> (Feb/NeWS colormap flashing)
    John B. Melby <melby%yk.fujitsu.co.jp@fai.com> (Feb/South Paws)
    Christian Sebeke <sebeke@frodo.lfi.uni-hannover.de> (Feb/Xt jumbo patch)
    Kevin W. Thomas <kwthomas@nsslsun.nssl.uoknor.edu> (Mar/olvwm patches)
    Larry W. Virden <lvirden@cas.org> (Mar/various comments)

    And many others...	You get deleted from this list after a while.

-- 
Liam Quin, Manager of Contracting, SoftQuad Inc, +1 416 239 4801 lee@sq.com
OPEN LOOK UI FAQ; Metafont list; HexSweeper NeWS game; lq-text text retrieval

Newsgroup: comp.windows.x
document_id: 67883
From: lee@sq.sq.com (Liam R. E. Quin)
Subject: List of programs with OPEN LOOK User Interface


$Id: open-look-programs.faq,v 1.17 93/03/21 17:17:55 lee Exp Locker: lee $

Contents:
	Subject: Applications: Application Builders
	Subject: Applications: Graphing Tools
	Subject: Applications: Utilities
	Subject: Applications: Other
	Subject: Tools: Terminal Emulators
	Subject: Other Commercial Applications
	Subject: Applications: toolkit Extensions
	Subject: OpenWindows 3 Ports
	Subject: XView 3 Ports
	Subject: XView 2 Ports
	Subject: Games (free and commercial)


Subject: Applications: Application Builders

Commercial: DevGuide 3.0
Contact: SunPICS
    lets you use Drag and Drop to create an OPEN LOOK application with
    XView, OLIT, UIT or TNT.  Very easy to use.

Free: dirt
    there _might_ be an OLIT port of this UI builder.

Commercial: ExoCode
Contact: Expert Object
    one of the first third-party GUI builders to support OPEN LOOK,
    using the XView toolkit.  It was reviewed in SunExpert magazine
    in 1990.

Commercial: ObjectBuilder
Contact: ParcPlace, Debra Frances debra@ParcPlace.COM, +1 303 440 9991
    uib is a user interface builder which supports building applications
    that support both OPEN LOOK and Motif.	It generates code for
    ParcPlace's OI C++ toolkit and can make use of user created
    subclasses.  Note: `OI' can also display an OSF/Motif GUI at runtime.

Free: wcl
    Uses X resources to specify an Xt widget hierarchy and actions to
    user-defined callbacks.  uses OLIT, Xt or Motif.

Commercial: XVT
Contact: XVT Systems (+1 303-443-4223)
    Lets you write code to a common subset of OPEN LOOK, Motif, Microsoft
    Windows, the Macintosh GUI, and even terminals (using curses).  You buy
    an XVT toolkit for each environment.


Subject: Applications: Graphing Tools

Free: dstool
    XView-based program that plots Lorenz Attractors and other chaotic things
    in real time.  Also includes a mathematical expression interpreter.
    ftp: macomb.tn.cornell.edu

Free: ACE/gr --  graph and analysis program, xvgr
Ftp: ftp.ccalmr.ogi.edu [129.95.72.34]; xvgr-2.09.tar.Z in /CCALMR/pub/acegr
    Handles x-y scatterplots, lineplots, bargraphs, FFT analysis, running
    averages, polynomial fits, etc.

Free: robot - a scientific graph plotting and data analysis tool 
Contact: Robin Corbet <corbet@astro.psu.edu>
Description:
    Graph plotting in various styles & axes; Data manipulation - arithmetic,
    functions, smoothing, folding, sorting; Fitting to data using Gaussians,
    polynomials, Lorentzians, and/or user defined functions; Annotation of
    graphs; log files;  Commands with loops etc.; Colour; PostScript output.
Ftp: astrod.astro.psu.edu (128.118.147.28) in pub/astrod
Ftp: files: robotx0.35.tar.Z - everything
Ftp: files: RobotManual.ps.Z - just the documentation.
Ftp: files: robot.sun4.Z  - binary built on a SPARCstation.
Requirements:
    Robot is XView based. User interface portions of code are written in
    'C'. Data manipulation code is written in FORTRAN. Hence a FORTRAN
    compiler is also required or the public domain f2c package.
    Alternatively, a SPARC binary is available by anonymous ftp.

Subject: Applications: Utilities

Free: boss
Description:
    An OPEN LOOK UI to the Casio BOSS scheduler

Free: props
Ftp: export.lcs.mit.edu /pub/R5untarred/contrib/lib/xview3/clients/props/*
Description:
    This is the OpenWindows properties editor, that appears when you choose
    the Properties... item from the WorkSpace menu.

Free: contool
Ftp: from export.lcs.mit.edu
Description:
    a special-purpose console-window that can filter out or take special
    action on specified console messages; written by Chuck Musciano.
Requirements: XView

Free: faces
Description:
    displays pictures of people who have sent you electronic mail.
    Violates the Data Protection Act in the U.K.

Subject: Applications: Other


Commercial: Bimail 400
Contact: BIM (+32-2-759.59.25) pge@sunbim.be
X.400-address: C=be;A=RTT;P=BIM;O=Horizon;S=Geurts;G=Patrick
Notes:
    Bimail is a complete X.400 electronic mail system.  It consists
    in a user interface which gives access to all X.400 services
    with a consistent look and feel, a message transfer agent (MTA) system
    which can transfer messages over X.25, TP.4 and TCP/IP (using RFC 1006).
    A gateway to SMTP mail is also available.

Free: calentool
Description:
    a day/week/month/year at-a-glance calendar and almanac.
Ftp: export.lcs.mit.edu:/contrib/calentool2.2Xp1.tar.Z
Contact: Bill Randle, Tektronix, Inc. <billr@saab.CNA.TEK.COM>

Free: emacstool
Description:
    a SunView program that was converted to XView, and is included with the
GNU emacs distribution.

Free: Genix
Contact: Ian Darwin <ian@sq.com>
    A genealogy program, written in C using Guide.
    Incomplete as of Jan '93; inquire for details.

Free: WorkMan - Audio CD player for X11 (Sun, Ultrix)
Requirements: XView libraries
Ftp: Ultrix binary: ftp.hyperion.com in /WorkMan
Ftp: ftp.ucsc.edu in "incoming" - database of over 750 CDs
Contact: koreth@hyperion.com (Steven Grimm)

Free: pan - Postit notes

Free: WAIS
Ftp: sunsite.unc.edu
Description:
    Networked, distributed text-retrieval system.  OLIT-based front end.
Notes:
    You might to need to add -lce to the Makefile.

Free: xrolo - Rolodex card index/address book

Free: xv_display
Description:
    An XView program for showing a text file, like more(1).

Commercial:  SearchIt 1.0
Contact: SunSoft or SunExpress 
    US: 1-800-873-7869;  UK: 0800 89 88 88
    Germany: 01 30 81 61 91;  France: 05 90 61 57
Platforms: SPARC, Solaris 1.x
Price: $249
Notes:
    SearchIt is a full text search and retrieval application designed to
    improve individual and group productivity.  It makes an index to files
    and can later retrieve documents by words or phrases, ranking the results
    in relevance order.

Commercial: ShowMe
Contact: SunSoft
Notes:
    Conferencing software that lets multiple connected users share the same
    drawing screen, with bitmap capture and moveable pointer.
Requirements:
    You can only run one ShowMe per computer, so you have to have a CPU per
    conference member.

Free: xvman - Man Pages viewer

Free: xvtdl - ToDo List manager
Ftp: export.lcs.mit.edu /contrib/xvtdl-4.0.tar.Z, /contrib/xvtdl-4.0-README
Requirements: XView libraries
Contact: Mike Jipping jipping@cs.hope.edu  (BITNET: JIPPING@HOPE)
Organisation: Hope College Department of Computer Science
     
Free: name_finder
Contact: richard.elling@eng.auburn.edu     +1 (205) 844-2280
Ftp: ftp.eng.auburn.edu [131.204.10.91] pub/name_finder1.2.tar.Z.
Patches: pub/name_finder1.2.compile.patch1.
Requirements: OpenWindows 3.0, C++ 2.1 or greater to recompile
Description:
    name_finder was orginally designed as a replacement for the name finder
    missing from the OpenWindows Version 3.0 mailtool.  It has since grown
    into a tool for several electronic mail related activities including:
    interaction with local ListServ robots for handling mail lists,
    requesting Full.Name style mail aliases from your local PostMaster, and
    providing mailbox status information ala finger(1).

    name_finder is written in C++ (cfront 2.1) using gxv++ version 1.1.
    If you don't have access to a C++ compiler, a precompiled sparc
    executable is included in the distribution.

Free: bibcard	interface for BiBTeX databases
Requirements: XView
Ftp: iamsun.unibe.ch [130.92.64.10] in /X11/Bibcard-1.11.tar.Z
Ftp: 	includes source and SPARC binary for SunOS 4.1.1.
Version: 1.11
Description:
    GUI for mantaining bibliography databases which can be used with
    LaTeX, TeX and FrameMaker


Free: moxftp -- interface to ftp.
Ftp: ftp.chpc.utexas.edu as file /packages/X/xftp.1.1.tar.Z.
Contact: Bill Jones jones@chpc.utexas.edu
Requirements: X11, OLIT or Motif or Athena widgets
Notes:
    formerly called xftp.
    compiles under (at least) Ultrix, AIX 3.1.5, AIX 3.2, Convex OS, SunOS,
    Unicos 6.1.4, and IRIX.  Uses OLIT.
    BUG: can also use OSF/Motif and Athena widgets.


Free: olvwm -- OPEN LOOK Virtual Window Manager
contact: Scott Oaks
Ftp: export.lcs.mit.edu in the contrib directory
Patches: there are two patches
Requirements: XView 3
Description:
    Olvwm is a version of olwm that manages a `virtual desktop' (hence the
    `v' in its name).  It shows a little map on the screen, with the
    currently displayed area represented by a little rectangle.	 You can
    move around by dragging the rectangle or with the arrow keys.  This
    lets you run several clients (applications) and move the display around
    from one to the other.  Olvwm was derived from the OpenWindows 3.0 olwm.

Free: ftptool -- OPEN LOOK front-end to ftp
Requirements: XView
Ftp: export.lcs.mit.edu in /contrib

Free: Hyperlook
Contact: The Turing Institute
Requirements: OpenWindows 3 (running the xnews server, not X11)
    Hypertext package written entirely in NeWS.  Runtime from turing.com
    in /pub or ftp.uu.net (graphics/NeWS/HyperLook1.5-runtime.tar.Z)

Maestro (ftp from sioux.stanford.edu)
    Multimedia authoring tools, including support for sound, text & video.
xvnews (ftp from export.lcs.mit.edu)
    An xview-based newsreader for netnews.

Free: xvttool
Ftp: cs.dal.ca:/pub/comp.archives
Ftp: nuri.inria.fr:/X/contrib/clients
Ftp: lth.se:/pub/netnews/alt.sources/volume92/dec/xvttool*.Z
Ftp: src.doc.ic.ac.uk:/usenet/comp.archives/x11/terminal/xvttool
Description:
    A vt100/102 emulator, in both XView and SunView versions.  Includes
    buttons for the PF keys, etc.

Subject: PostScript and Graphics Viewers

Commercial: pageview - PostScript previewer
Contact: Included in OpenWindows as part of DeskSet.
Notes:
    Type 1 support only in OpenWindows 3.0.1 under Solaris 2.1.
    Antialiasing support - with colour OpenWindows 3 try pageview -aa -dpi 150
    Note that pageview uses the X11/NeWS server to interpret the PostScript,
    and thus won't run on an X terminal or other non-OpenWindows server.
    It's *not* enough to be runing an OPEN LOOK UI [tm] window manager such
    as olwm.

Commercial: xps - PostScript program editor and previewer
Contact: included with OpenWindows 2.0 under demo and share/src
Notes:
    Only runs under OpenWindows 2.

Commercial: psh
Contact: included with OpenWindows
	simple interface to NeWS and the OpenWindows server

Free: ralpage
Ftp: export.lcs.mit.edu in contrib/clients
Notes:
    Crispin Goswell's PostScript interpreter, much hacked.
    Not OPEN LOOK compliant.  No Type 1 font support.
    There are other versions of this called `xps', `postscript', etc.;
    don't confuse this `xps' with the one mentioned above.

Free: ghostscript
(from the Free Software Foundation)
    Supports Type 1 fonts.  Not OPEN LOOK based.


Subject: Tools: Terminal Emulators

Free: cmdtool, shelltool
Requirements: XView 3 toolkit
Notes:
    These are included in the XView source distribution from
    export.lcs.mit.edu in /contrib; they're also included with Sun's
    OpenWindows.

Commercial: SwitchTerm
Contact: Micro Resources Inc., Columnbus, Ohio, USA, +1 614 766-2335
Notes:
    A version of Xterm with an OPEN LOOK UI, print interface,
    ANSI X3.64 colour escape sequences, etc.

Commercial: IsoTerm
Contact: The Bristol Group Ltd., +1 415 925-9250 and (49) 6105-2945 (Germany)
Requirements: OpenWindows 3 (??)
Other Products: IsoTeX, IsoFax, Power Base
Notes:
    An OLIT-based terminal emulator.  I couldn't get the demo version to
    give me a shell prompt, although it did look like it was a pretty fll
    vt340 emulation, with double-height characters, colour, fonts, grahics
    and so forth.
    With the Union Flag (the British flag) as their logo I somehow expected
    an English address, perhaps in Bristol...

Subject: Other Commercial Applications

    Contact SunSoft (or Sun) and ask for the Catalyst OPEN LOOK guide,
    which lists over 200 pages of applications.

    You can also get the free CDWare CD/ROM, which contains demo versions
    of several popular OPEN LOOK UI applications.  Once you've done this,
    you can often simply contact the vendor concerned to have the license
    upgraded from demo, and receive the full product documentation.


Product Name: Author/Editor - SGML-based text editor/word processor
Company Name: SoftQuad Inc., +1 416 239 4801, mail@sq.com
Description:
    Word processor or text editor that manipulates ISO 8879 SGML documents.
Interfaces: OPEN LOOK UI (XView), OSF/Motif, Mac, MS/Windows
 

Subject: Applications: toolkit Extensions


Product Name:     Xtra XWidgets
Company Name:     Graphical Software Technology
E-Mail:           info@gst.com
Phone:            310-328-9338;    Fax: 310-376-6224
Keywords:         graphics, library, widgets, spreadsheet, help
Interfaces:       OPEN LOOK, Motif
Platforms:        SPARC, HP9000s300/400/700, IBM RS6000, Interactive 386
Requirements:     X11, Xt, Xol (or Xm) libraries and headers; X11
Price:            $795/single user, $3000/network, $5000/source
Support-Price:    $400/30 calls
Source-Available: yes
Description:
    The Xtra XWidget library contains a set of widgets that are subclassed
    from and compatible with either OLIT or Motif widgets.  The library
    includes widgets that implement the following: Spreadsheet, Bar Graph,
    Stacked Bar Graph, Line Graph, Pie Chart, XY Plot, Hypertext, Hypertext
    based Help System, and Data Entry Form.  Widgets have been successfully
    integrated with both TeleUSE from Telesoft and Builder Xcessory from
    ICS.  A free demo is available for any of the supported platforms.

Product Name:     XRT/Graph
Company Name:     KL Group
E-mail: sun.com!suncan!klg!info, info@klg.com
Phone: +1 416 594-1026
Description:
    XRT/graph is a graph object that extends the XView toolkit;  There are
    also Xt versions for OLIT and Motif.  XRT/graph supports line plots,
    scatter-plots, strip-charts, bar charts, stacking bar charts, pie charts
    and filled-area charts, singly and in combination.  It supports real-time
    updates, true Postscript output, and intelligent user feedback.  It comes
    with Builder, a graph prototyping tool, which supports code & resource
    file generation.  A free demo (vmgraph) is available.
    There are free integration kits for UIM/X, TeleUSE, and Builder Xcessory
    (others in progress).
Availability:
    XRT/graph for XView and OLIT are only available on SPARC.
    XRT/graph for Motif is available on a dozen or so platforms.


Free: Slingshot XView extension

    Slingshot provides rectangles (like the Xt Intrinsics' RectObj gadget),
    drag-and-drop support, images, icons and text, trees, lines, arrows...

    Get it by ftp from export.lcs.mit.edu, in /contrib/SlingShot2.0.tar.Z
    (remember to use binary mode in ftp!).
    You can also get it by sending mail to archive-server@gazooch.eng.sun.com
    with the body of each message containing a line like
	send sspkg2.0 Part01 Part02
    going up to
	send sspkg2.0 Part17 Part18
	send sspkg2.0 DocPart01 DocPart02 DocPart03
	send sspkg2.0 DocPart04 DocPart05 DocPart06
    You can ask for one file at a time to reduce the impact on intermediate
    mail sites.	 Ask the mail server for help with the Subject line: "help".
    A human can be reached at archive-manager@gazooch.eng.sun.com.
    Add a line in the message
	path <your-mail-address>
    if you think the normal automatic reply address might not work.


Ada bindings for XView
    Sun Ada 1.1 includes among other things an Ada Source Code Generator
    for Devguide.  It uses the Verdix XView Ada bindings.
    It does not yet [July 1992] support gfm (the guide file manager).

C++ Bindings for XView

Qualix's XV++.

UIT


Subject: OpenWindows 3 Ports

    Sun: SPARC, SunOS 4.1
    Sun: SPARC, Solaris 2 (actually 3.0.1?)
    others: none so far...

There are said (by Sun) to be two or three ports of OpenWindows either
available now or in progress.  Contact Anthony Flynn at Open Vistas
International (anthony@ovi.com) for more information.  (originally they
said 35, but perhaps they meant 3.5)

OpenWindows source is available - commercially, it costs about $5,000 for
the server, including TypeScaler and the toolkits; deskset (filemgr etc) is
another $25,000; ToolTalk is $40,000 or so.


Subject: XView 3 Ports

What: XView 3
System: Apple A/UX
Porter: lmj@uncompaghre.jax.org (Lou Jones)
Ftp: encyclo.jax.org
Notes:
    The libraries and utilities (olwm, cmdtool, etc) are available for
    anonymous ftp from encyclo.jax.org. I used gcc 2.1 to compile the
    sources. If there is enough interest, I can make the diffs
    available.

System: Concurrent 7000 (68040 based)
Porter: sinan@Mtesol.boeing.com (Sinan Karasu)

System: DECStation/Ultrix
Porter: dscott@ittc.wec.com (Dave Scott)
Ftp: media-lab.media.mit.edu:~ftp/xview3-ultrix.4.2-mips.tar.Z
Notes:
    Let me stress that this is *not* fully tested, but seems to work
    pretty well.  Please let me know about any problems you find.
    Problems I already know about:
	Large buttons under *any* non-Sun X server (non-xnews; i.e. any
	standard MIT X11R[45] server) have the bottom of the button
	chopped off.  We're working on this one. :-)
    XView 3 is also available on the DEC Freeware CD, from DECUS.
[actually this seems *not* to be Dave Scott's port; please accept my apologies
 for listing this incorrectly.  A correct entry will appear as soon as I get
 the necessary information.  -- Lee]

System: HP 720
Porter: (?)
Ftp: tesla.ucd.ie [137.43.24.44], /pub
Notes:
    Includes HP 720 build, HP XView patch file, Xvgr.

System: HP9000/300 series
Porter: tjc@ecs.soton.ac.uk (Tim Chown)

System: HP9000/7XX series
Ftp: ftp.csc.liv.ac.uk (138.253.42.172) hpux/X11/xview-3.part[123].tar.Z

System: Intel (SysVR4/i386)
Porter: dawes@physics.su.OZ.AU (David Dawes)
Ftp: ftp.physics.su.oz.au, suphys.physics.su.oz.au  /Esix_4/x11r5 hierarchy
Notes:
    His patches were for Esix 4.0.3 but should work on DELL, ISC and Intel
    SVR4 with no worries. The files are README.xview3 and xview3.diff.Z.
See Also: linux

System: IBM RS/6000
Porter: tmcconne@sedona.intel.com (Tom McConnell)
Compiler: bsdcc
Ftp: export.lcs.mit.edu:contrib/xview3/Fixes/xview3_rs6k_unofficial.patch.Z
Notes:
    There is still a problem with tty support for the RS/6000. For
    instance, the cmdtool will not work. Still, most everything else works.
    For those of you who have already installed my previous patch, I have
    put a separate patch for just the shared library problem. This file is
    contrib/xview3/Fixes/xview3_rs6k_XView_lib.patch.Z.

System: linux
Porter: Kenneth Osterberg <lmfken@lmf.ericsson.se>
ICompiler: gcc 2.3.3, libc4.2
Ftp: tsx-11.mit.edu /pub/linux/binaries/usr.bin.X11/xview3L2
Ftp: sunsite.unc.edu
Notes:
    Inlcudes olvwm, UIT

System: SGI
Porter: Rainer Sinkwitz <sinkwitz@ifi.unizh.ch>
Ftp: export.lcs.mit.edu:/contrib/xview3/Fixes/xview3_sgi_unofficial.patch.tar.Z
Notes:

System: Solbourne Series 5
Porter: tmcconne@sedona.intel.com (Tom McConnell)


Subject: XView 2 Ports

In general, there is no point in using XView 2 if you have XView 3 available;
it's a good idea to look for an XView 3 port first.  Moving from XView 2 to
XView 3 is usually simply a matter of recompiling, unless you've done
"dirty tricks" or used undocumented calls.


System: Stellar GS100 (Stardent 1000) and Stardent 1500 & 3000
Porter: arvai@scripps.edu (Andy Arvai)
Ftp: perutz.scripps.edu (137.131.152.27) in the pub/xview directory
Notes:
    Stardent is now Kubota Pacific (KPC)

System: Harris Nighthawk 4000 system (CX/UX Unix)
Porter: andy@harris.nl (Andy Warner)
Status: Commercial

System: SGI/Iris
Porter: (?)
Ftp: wuarchive.wustl.edu:graphics/graphics/sgi-stuff/XView/xview2

System: VAX/VMS
Porter: TGV Inc (?)
Notes:
    Steven Fenger <svfenge@afterlife.ncsc.mil> wrote:
    A company called TGV makes a product called "XView for VMS".
    They made XView 2.0 libraries.  I haven't seen them advertising
    XView 3.0 libraries yet.

Subject: Games (free and commercial)

Commercial: Aviator - flight simulator for GX-equipped SPARCStations
Contact: Artificial Horizons Inc, aviator-interest@ahi.com;  +1 415 367 5029
Requirements: OpenWindows (2 or 3), SunOS 4.1 or later, SPARC GX or GXplus

Free: hexsweeper - minesweeper game based on hexagons
Contact: lee@sq.com, include HexSweeper in Subject
Requirements: OpenWindows 3.0 or later
Toolkit: TNT 3

Free: 

Free: sidtool - PacMan game
Ftp: ftp.uu.net /usenet/comp.sources.games/volume1/sidtool/*
 

    an OPEN LOOK PacMan(tm) surrogate that
    appears as a debugger - the bad guys are code bugs that
    move around your screen; you (the good guy) chase them
    with a 19" monitor that eats bugs.


Commercial: SimCity
Contact: Dux Software, Los Altos, CA
Price: US$89
Requirements: OpenWindows 3 (uses NeWS).  Doesn't run on a 4/110 with cg4 :-(

Free: Spider (Included in OpenWindows under `demo' and `share/src')
    A patience-style card game with two packs of cards and
    excellent bitmap cards.
    I suggest recompiling to allow the cards to have rounded edges.

Free: Xblackjack (ftp from export.lcs.mi.edu as contrib/xblackjack-2.1.tar.Z)
    A MOTIF/OLIT based tool constructed to get you ready for the casino.

-- 
Liam Quin, Manager of Contracting, SoftQuad Inc, +1 416 239 4801 lee@sq.com
OPEN LOOK UI FAQ; Metafont list; HexSweeper NeWS game; lq-text text retrieval

Newsgroup: comp.windows.x
document_id: 67961
From: art@cs.UAlberta.CA (Art Mulder)
Subject: comp.windows.x: Getting more performance out of X.  FAQ

Archive-name: x-faq/speedups
Last-modified: 1993/4/20

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	HOW TO MAXIMIZE THE PERFORMANCE OF X -- monthly posting
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	    Compiled by Art Mulder (art@cs.ualberta.ca)

  More RAM, Faster CPU's, More disk space, Faster Ethernet...  These
  are the standard responses you hear when you ask how to improve the
  performance of your workstation.

  Well, more hardware isn't always an option, and I wonder if more
  hardware is always even a necessity.

  This "FAQ" list is a collection of suggestions and ideas from different
  people on the net on how you can the best possible performance from X
  Windows on your workstation, WITHOUT PURCHASING MORE HARDWARE.

  Performance is a highly subjective issue.  The individual user must
  balance `speed' versus `features' in order to come to a personal
  decision.  Therefore this document can be be expected to contain many
  subjective opinions in and amongst the objective facts.

  This document is specifically concerned with X.  There are of course
  many other factors that can affect the performance of a workstation.
  However, they are outside the scope of this document.

    [ People seriously interested in the whole area of system
    performance, might want to look at the O'Reilly Nutshell Handbook
    "System Performance Tuning" by Mike Loukides.  IMHO, it contains a
    well-written, comprehensive treatment of system performance.  I'm
    unaware of any other similar books.  --ed.]

-----------------
Table of Contents
-----------------
  0. Introduction & Administrivia
  1. What about the "Other X FAQ"?
  2. Window Managers
  3. The X Server
       Which Server?
       Locking the Server into RAM?
       Starting your Server
       Fonts
       About the Resources File
       Define Your Display Properly
  4. Clients
       A Better Clock for X
       A Better Terminal Emulator for X
       Tuning your client
  5. Miscellaneous Suggestions
       Pretty Pictures
       A Quicker Mouse
       Programming Thoughts
       Say What!?
  6. Other Sources of Information
  7. Author & Notes
  
! = changed since last issue.
* = new since last issue.

-----------------------------
Introduction & Administrivia
-----------------------------

  This document is posted each month, on or around the 15th, to the
  Usenet news groups comp.windows.x, news.answers, and comp.answers.
  If you are reading a copy of this FAQ which is more than a few
  months old (see the "Last-modified" date above) you should probably
  locate the latest edition, since the information may be outdated.

  If you do not know how to get those newsgroups and/or your site does
  not receive them and/or this article has already expired, you can
  retrieve this FAQ from an archive site.

  There exist several usenet FAQ archive sites.  To find out more about
  them and how to access them, please see the "Introduction to the
  news.answers newsgroup" posting in news.answers.

  The main FAQ archive is at rtfm.mit.edu [18.172.1.27].  This document
  can be found there in /pub/usenet/news.answers/x-faq/speedups.  If
  you do not have access to anonymous ftp, you can retrieve it by
  sending a mail message to mail-server@rtfm.mit.edu with the
  command "send usenet/news.answers/x-faq/speedups" in the message body.

-----------------------------
What about the "Other X FAQ"?
-----------------------------

  David B. Lewis (faq%craft@uunet.uu.net) maintains the informative and
  well written "comp.windows.x Frequently Asked Questions" document.
  Its focus is on general X information, while this FAQ concentrates
  on performance.

  The comp.windows.x FAQ does address the issue of speed, but only with
  regards to the X server.  The gist of that topic seems to be:
	"Use X11R5, it is faster than R4".
  (Please see the X FAQ for complete details).

---------------
Window Managers
---------------

  There are a lot of window managers out there, with lots of different
  features and abilities.  The choice of which to use is by necessity a
  balancing act between performance and useful features.  At this
  point, most respondents have agreed upon "twm" as the best candidate
  for a speedy window manager. 

  A couple of generic tricks you can try to soup up your window manger,
  is turning off unnecessary things like "zooming" and "opaque move".
  Also, if you lay out your windows in a tiled manner, you reduce the
  amount of cpu power spent in raising and lowering overlapping
  windows.                           Joe English (joe@trystero.art.com)

  I've found that a good font for tiling is 7x13 (aka:
  -misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1 ). It is
  the biggest font I know of that I can use on my Sun (1152x900 screen)
  and still get two 80 column terminal windows side-by-side on the
  display with no overlap.  Other font suggestions will be accepted.

------------
The X Server
------------

Which Server?
- - - - - - -
  Make sure that your server is a proper match for your hardware.
  If you have a monochrome monitor, use a monochrome X11 server.

  On my Monochrome Sun, I haven't noticed much difference between
  the Xsun (colour) server and XsunMono, however it was pointed out to
  me that XsunMono is about 800k smaller and therefore should contribute
  to less paging.  
         [ thanks to: Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk),
                        Michael Salmon (Michael.Salmon@eos.ericsson.se) ]

  How your server was compiled can also make a difference.  Jeff Law
  (law@schirf.cs.utah.edu) advises us that on a Sun system, X should be
  compiled with gcc (version 2.*) or with the unbundled Sun compiler.
  You can expect to get "*very* large speedups in the server" by not
  using the bundled SunOS compiler.  I assume that similar results
  would occur if you used one of the other high-quality commercial
  compilers on the market.

Locking the Server into RAM?
- - - - - - - - - - - - - - -
  Has anyone tried hacking the X server so that it is locked into RAM and
  does not get paged?  eg: via a call to plock().  Does this help
  performance at all?  I've had one inquiry on this topic, and a few
  pointers to the plock() function call, but no hard evidence from someone
  who's tried it.  I am not in a position to give it a try.  
			  [thanks to: Eric C Claeys (ecc@eperm.att.com),
				      Danny Backx (db@sunbim.be),
				      Juan D. Martin (juando@cnm.us.es) ]
Starting your Server
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    If you start up a lot of clients in your .xsession or whatever, sleep
    for a second or two after launching each one.  After I changed my
    .xclients script to do this, logging in actually took *less* time...
    we have a heavily loaded system without much core, though.

  This sounds crazy, but I have confirmed that it works!  

  Warner Losh (imp@Solbourne.COM) provided me with a good explanation of
  why this works, which I have summarized here:

    When you start up an X server it takes a huge amount of time to
    start accepting connections.  A lot of initialization is done by
    the server when it starts.  This process touches a large number of
    pages.  Any other process running at the same time would fight the
    server for use of the CPU, and more importantly, memory.  If you
    put a sleep in there, you give the Server a chance to get itself
    sorted out before the clients start up.

    Similarly, there is also a lot of initialization whenever an X
    client program starts: toolkits registering widgets, resources
    being fetched, programs initializing state and "databases" and so
    forth.  All this activity is typically memory intensive.  Once this
    initialization is done ("The process has reached a steady state"),
    the memory usage typically settles down to using only a few pages.
    By using sleeps to stagger the launching of your clients in your
    .Xinitrc , you avoid them fighting each other for your
    workstation's limited resources

  This is most definitely a "Your Mileage May Vary" situation, as there
  are so many variables to be considered: available RAM, local swap
  space, load average, number of users on your system, which clients
  you are starting, etc.

  Currently in my .xinitrc I have a situation like:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

  I've experimented with:
	(sleep 1; exec xclock ) &
	(sleep 2; exec xbiff ) &
	(sleep 3; exec xterm ) &
	(sleep 4; exec xterm ) &

  I've even tried:
	(sleep 2; exec start_X_clients_script ) &
  and then in start_X_clients_script I had:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

    [ The idea with this last one was to make sure that xinit had
    completely finished processing my .xinitrc, and had settled down
    into a "steady state" before the sleep expired and all my clients
    were launched. ]

  All of these yielded fairly comparable results, and so I just stuck with
  my current setup, for its simplicity.  You will probably have to
  experiment a bit to find a setup which suits you.

Fonts
- - -
  Loading fonts takes time and RAM.  If you minimize the number of fonts
  your applications use, you'll get speed increases in load-up time.

  One simple strategy is to choose a small number of fonts (one small, one
  large, one roman, whatever suits you) and configure all your clients -- or
  at least all your heavily used clients -- to use only those few fonts.
  Client programs should start up quicker if their font is already loaded
  into the server.  This will also conserve server resources, since fewer
  fonts will be loaded by the server.
			      [ Farrell McKay (fbm@ptcburp.ptcbu.oz.au),
			        Joe English (joe@trystero.art.com) ]

  eg: My main xterm font is 7x13, so I also have twm set up to use 7x13
  in all it's menus and icons etc.  Twm's default font is 8x13.  Since
  I don't normally use 8x13, I've eliminated one font from my server.

  Oliver Jones (oj@roadrunner.pictel.com):
    Keep fonts local to the workstation, rather than loading them over nfs.
    If you will make extensive use of R5 scalable fonts, use a font server.

About the Resources File
- - - - - - - - - - - - -

    Keep your .Xresources / .Xdefaults file small.  Saves RAM and saves
    on server startup time.          Joe English (joe@trystero.art.com)

  One suggestion:

    In your .Xdefaults (.Xresources) file, try putting only the minimum
    number of resources that you want to have available to all of your
    applications.  For example:  *reverseVideo: true

    Then, separate your resources into individual client-specific
    resource files.  For example: $HOME/lib/app-defaults.  In your
    .login file set the environment variable XUSERFILESEARCHPATH:

	setenv XUSERFILESEARCHPATH $HOME/lib/app-defaults/%N

    [ The "comp.windows.x Frequently Asked Questions" FAQ contains
    an excellent explanation of how these environment variables work.
    --ed.]

    So, when xterm launches, it loads its resources from
    .../app-defaults/XTerm.  Xdvi finds them in .../app-defaults/XDvi,
    and so on and so forth.  Note that not all clients follow the same
    XXxxx resource-file naming pattern.  You can check in your system
    app-defaults directory (often: /usr/X11R5/lib/X11/app-defaults/) to
    find the proper name, and then name your personal resource files
    with the same name.

    This is all documented in the Xt Specification (pg 125 & 666).
		    [Thanks to: Kevin Samborn (samborn@mtkgc.com),
		         Michael Urban (urban@cobra.jpl.nasa.gov),
		             and Mike Long (mikel@ee.cornell.edu).
	     Kevin is willing mail his setup files to inquirers.]

  This method of organizing your personal resources has the following
  benefits:

    - Easier to maintain / more usable.

    - Fewer resources are stored in the X server in the RESOURCE_MANAGER
      property.  As a side benefit your server may start fractionally
      quicker, since it doesn`t have to load all your resources.

    - Applications only process their own resources, never have to sort 
      through all of your resources to find the ones that affect them.

  It also has drawbacks:

    - the application that you are interested in has to load an
      additional file every time it starts up.  This doesn't seem to
      make that much of a performance difference, and you might
      consider this a huge boon to usability.  If you are modifying an
      application's resource database, you just need to re-run the
      application without having to "xrdb" again.

    - xrdb will by default run your .Xdefaults file through cpp.  When
      your resources are split out into multiple resource files and
      then loaded by the individual client programs, they will not.
      WATCH OUT FOR THIS!!

      I had C style comments in my .Xdefaults file, which cpp stripped
      out.  When I switched to this method of distributed resource
      files I spent several frustrating days trying to figure out why
      my clients were not finding their resources.  Xt did *NOT*
      provide any error message when it encountered the C style
      comments in the resource files, it simply, silently, aborted
      processing the resource file.

      The loss of preprocessing (which can be very handy, e.g. ``#ifdef
      COLOR'' ...) is enough to cause some people to dismiss this
      method of resource management.

    - You may also run into some clients which break the rules.  For
      example, neither Emacs (18.58.3) nor Xvt (1.0) will find their
      resources if they are anywhere other than in .Xdefaults.

    - when starting up a client on a machine that does not share files
      with the machine where your resources are stored, your client
      will not find its resources.  Loading all your resources into the
      server will guarantee that all of your clients will always find
      their resources.            Casey Leedom (casey@gauss.llnl.gov)

  A possible compromise suggestion that I have (and am planning on trying)
  is to put resources for all my heavily used clients (eg: xterm) into my
  .Xdefaults file, and to use the "separate resources files" method for
  clients that I seldom use.

Define Your Display Properly
- - - - - - - - - - - - - - -

  Client programs are often executed on the same machine as the server.  In
  that situation, rather than setting your DISPLAY environment variable to 
  "<hostname>:0.0", where <hostname> is the name of your workstation, you
  should set your DISPLAY variable to "unix:0.0" or ":0.0".  By doing this
  you access optimized routines that know that the server is on the same
  machine and use a shared memory method of transferring requests.
			[thanks to Patrick J Horgan (pjh70@ras.amdahl.com)]

  See the _DISPLAY NAMES_ section of the X(1) man page for further
  explanation of how to properly set your display name.

  "I don't think it's stock MIT, but (at least) Data General and HP have
  libraries that are smart enough to use local communication even when
  the DISPLAY isn't set specially."
			      Rob Sartin (88opensi!sartin@uunet.UU.NET)

  [Jody Goldberg (jody@algorithmics.com) sent me an Xlib patch to change
  stock R5 to use local communication even if DISPLAY is not properly set.
  I don't want to get in the business of distributing or trying to juggle
  non-MIT patches and so have elected not to include it here.  Hopefully MIT
  will apply this minor (~8 lines) patch themselves.  In the meantime, if
  you want to try it yourself, email Jody.  --ed.]

-------
Clients
-------

  If you only have a few megabytes of Ram then you should think
  carefully about the number of programs you are running.  Think also
  about the _kind_ of programs you are running.  For example:  Is there
  a smaller clock program than xclock?

  Unfortunately, I haven't really noticed that programs advertise how large
  they are, so the onus is on us to do the research and spread the word.

  [ Suggestions on better alternatives to the some of the standard clients
  (eg: Xclock, Xterm, Xbiff) are welcome.  --ed.]

  I've received some contradictory advice from people, on the subject
  of X client programs.  Some advocate the use of programs that are
  strictly Xlib based, since Xt, Xaw and other toolkits are rather
  large.  Others warn us that other applications which you are using
  may have already loaded up one or more of these shared libraries.  In
  this case, using a non-Xt (for example) client program may actually
  _increase_ the amount of RAM consumed.

  The upshot of all this seems to be: Don't mix toolkits.  That is, try
  and use just Athena clients, or just Xview clients (or just Motif
  clients, etc).  If you use more than one, then you're dragging in
  more than one toolkit library.

  Know your environment, and think carefully about which client
  programs would work best together in that environment.

		  [Thanks to: Rob Sartin (88opensi!sartin@uunet.UU.NET),
      Duncan Sinclair (sinclair@dcs.gla.ac.uk | sinclair@uk.ac.gla.dcs) ]

A Better Clock for X
- - - - - - - - - - -

1) xcuckoo
   suggested by: Duncan Sinclair (sinclair@dcs.gla.ac.uk)
   available: on export.lcs.mit.edu

   Xcuckoo displays a clock in the title bar of *another* program.
   Saves screen real estate.

2) mclock
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in /X/mclock.shar

   Non Xt-based.  Extensively configurable.  it can be made to look
   very much like MIT oclock, or mostly like xclock purely by changing
   resources.

  Of course, the ultimate clock --- one that consumes no resources, and 
  takes up no screen real estate --- is the one that hangs on your wall.
  :-) 

A Better Terminal Emulator for X
- - - - - - - - - - - - - - - - -

  From the README file distributed with xterm:

  +-----
  |		 Abandon All Hope, Ye Who Enter Here
  |
  | This is undoubtedly the most ugly program in the distribution.
  | ...
  +-----

  Ugly maybe, but at my site it's still the most used.  I suspect that
  xterm is one of the most used clients at many, if not most sites.
  Laziness?  Isn't there a better terminal emulator available?  See below.

  If you must use xterm, you can try reducing the number of saveLines
  to reduce memory usage.  [ Oliver Jones (oj@roadrunner.pictel.com),
		   Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk) ]

1) Xvt
   suggested by: Richard Hesketh (rlh2@ukc.ac.uk) :
   available: export.lcs.mit.edu in /contrib/xvt-1.0.tar.Z

   "...if you don't need all the esoteric features of xterm, then get
   hold of xvt ...  it was written here just to save swap space as
   xterm is rather a hog! "

   This was written as a partial 'clone' of xterm.  You don't have to
   rename your resources, as xvt pretends to be XTerm.  In it's current
   version, you cannot bind keys as you can in xterm.  I've heard that
   there are versions of xvt with this feature, but I've not found any
   yet.

   UPDATE (March 1993):  I recently had a few email conversations with
   Brian Warkentin (brian.warkentine@eng.sun.com) regarding xvt.  He
   questions whether xvt really is at all faster than xterm.  For
   instance, xvt may initialize slightly faster, but compare scrolling
   speed (try this quickie benchmark: /bin/time dd if=/etc/termcap
   bs=40) and see which program can scroll faster.  Also, while xterm
   may be slightly larger in RAM requirements (We don't have any hard
   numbers here, does anyone else?) shared libraries and shared text
   segments mean that xterm's paging requirements are not that major.

   As an experiment, he ripped out all the tek stuff from xterm, but it
   made little difference, since if you never use it, it never gets
   brought into memory.

   So here we stand with some conflicting reports on the validity of
   xvt over xterm.  In summary?  Caveat Emptor, your mileage may vary.
   If you can provide some hard data, I'd like to see it.
   Specifically: How much RAM each occupies, how much swap each needs,
   relative speed of each

2) mterm
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in
     /X/mterm.src/mterm.ball-o-wax.

   "I also have my own terminal emulator.  Its major lack is
   scrollback, but some people like it anyway."


Tuning your client
- - - - - - - - - -

  Suggestions on how you can tune your client programs to work faster.

  From Scott Barman (scott@asd.com) comes a suggestion regarding Motif
  Text Field Widgets:

    I noticed that during data entry into Motif text field widgets, I
    was getting a slight lag in response to some keystrokes,
    particularly the initial one in the field.  Examining the what was
    going on with xscope I found it.  It seems that when the resource
    XmNblinkRate is non-zero and the focus is on a text field widget
    (or even just a text widget) the I-beam cursor will blink.
    Every time the cursor appears or disappears in those widgets, the
    widget code is making a request to the server (CopyArea).  The user
    can stop this by setting the resource XmNblinkRate to 0.  It is not
    noticeable on a 40MHz SPARC, but it does make a little difference
    on a [slower system].

  This specific suggestion can probably be applied in general to lots
  of areas.  Consider your heavily used clients, are there any minor
  embellishments that can be turned off and thereby save on Server
  requests?

-------------------------
Miscellaneous Suggestions
-------------------------

Pretty Pictures
- - - - - - - -
  Don't use large bitmaps (GIF's, etc) as root window backgrounds.

  - The more complicated your root window bitmap, the slower the server
    is at redrawing your screen when you reposition windows (or redraw, etc)

  - These take up RAM, and CPU power.  I work on a Sun SPARC and I'm
    conscious of performance issues, I can't comprehend it when I see
    people with a 4mb Sun 3/60 running xphoon as their root window.

    I'll let someone else figure out how much RAM would be occupied by
    having a full screen root image on a colour workstation.

  - If you're anything like me, you need all the screen real estate
    that you can get for clients, and so rarely see the root window anyway.

		      [ Thanks to Qiang Alex Zhao (azhao@cs.arizona.edu) 
			for reminding me of this one. --ed.]

A Quicker Mouse
- - - - - - - -
  Using xset, you can adjust how fast your pointer moves on the screen
  when you move your mouse.  I use "xset m 3 10" in my .xinitrc file,
  which lets me send my pointer across the screen with just a flick of
  the wrist.  See the xset man page for further ideas and information.

  Hint: sometimes you may want to *slow down* your mouse tracking for
  fine work.  To cover my options, I have placed a number of different
  mouse setting commands into a menu in my window manager.  

  e.g. (for twm) :
      menu "mouse settings" {
        "Mouse Settings:"			f.title
	"  Very Fast"				! "xset m 7 10 &"
	"  Normal (Fast)"			! "xset m 3 10 &"
	"  System Default (Un-Accelerated)"	! "xset m default &"
	"  Glacial"				! "xset m 0 10 &"
      }

Programming Thoughts
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    To speed up applications that you're developing, there are tons of
    things you can do.  Some that stick out:

    - For Motif programs, don't set XmFontList resources for individual
      buttons, labels, lists, et. al.; use the defaultFontList or
      labelFontList or whatever resource of the highest-level manager
      widget.  Again, stick to as few fonts as possible.

    - Better yet, don't use Motif at all.  It's an absolute pig.

    - Don't create and destroy widgets on the fly.  Try to reuse them.
      (This will avoid many problems with buggy toolkits, too.)

    - Use a line width of 0 in GCs.  On some servers this makes a HUGE
      difference.

    - Compress and collapse multiple Expose events.  This can make the
      difference between a fast application and a completely unusable
      one.

  Francois Staes (frans@kiwi.uia.ac.be) :
    Just a small remark: I once heard that using a better malloc
    function would greatly increase performance of Xt based
    applications since they use malloc heavily. They suggested trying
    out the GNUY malloc, but I didn't find the time yet. I did some
    tests on small programs just doing malloc and free, and the
    differences were indeed very noticeable ( somewhat 5 times faster)

  [ Any confirmation on this from anyone?  --ed.]

  Andre' Beck (Andre_Beck@IRS.Inf.TU-Dresden.de) :

  - Unnecessary NoExpose Events.

    Most people use XCopyArea/XCopyPlane as fastest blit routines, but
    they forget to reset graphics_exposures in the GC used for the
    blits. This will cause a NoExpose Event every blit, that, in most
    cases, only puts load onto the connection and forces the client to
    run through it's event-loop again and again.

  - Thousands of XChangeGC requests.

    This "Gfx Context Switching" is also seen in most handcoded X-Apps,
    where only one or few GCs are created and then heavily changed
    again and again.  Xt uses a definitely better mechanism, by caching
    and sharing a lot of GCs with all needed parameters. This will
    remove the load of subsequent XChangeGC requests from the
    connection (by moving it toward the client startup phase).

Say What!?
- - - - - - 
  Some contributors proposed ideas that seem right off the wall at first:

  David B. Lewis (by day: dbl@osf.org, by night: david%craft@uunet.uu.net) :
    How about this: swap displays with someone else. Run all your programs
    on the other machine and display locally; the other user runs off your
    machine onto the other display. Goal: reduce context switches in the
    same operation between client and server.

  I'm not in a situation where I can easily try this, but I have received
  the following confirmation...

  Michael Salmon (Michael.Salmon@eos.ericsson.se):
    I regularly run programs on other machines and I notice a big
    difference. I try to run on a machine where I will reduce net usage
    and usually with nice to reduce the impact of my intrusion. This
    helps a lot on my poor little SS1+ with only 16 MB, it was
    essential when I only had 8 MB.

  Casey Leedom (casey@gauss.llnl.gov) :
    [The X11 Server and the client are] competing for the same CPU as
    your server when you run it on the same machine.  Not really a
    major problem, except that the X11 client and the server are in
    absolute synchronicity and are context thrashing.

  Timothy H Panton (thp@westhawk.uucp) :
    Firstly it relies on the fact that most CPU's are mostly idle, X's
    cpu usage is bursty.  so the chances of you and your teammate
    doing something cpu-intensive at the same time is small. If they
    are not then you get twice the cpu+memory available for your
    action.

    The second factor is that context switches are expensive, using 2
    cpu's halves them, you pay a price due to the overhead of going
    over the network, but this is offset in most cases by the improved
    buffering of a network (typically 20k vs 4k for a pipe), allowing
    even fewer context switches.

----------------------------
Other Sources of Information
----------------------------

  Volume 8 in O'Reilly's X Window System Series, ``X Window System
  Administrator's Guide'' is a book all X administrator's should read.

  Adrian Nye (adrian@ora.com):
    A lot more tips on performance are in the paper "Improving X
    Application Performance" by Chris D. Peterson and Sharon Chang, in
    Issue 3 of The X Resource.

    An earlier version of this paper appeared in the Xhibition 1992
    conference proceedings.

    This paper is absolutely essential reading for X programmers.

--------------
Author & Notes
--------------
  This list is currently maintained by Art Mulder (art@cs.ualberta.ca)

  Suggestions, corrections, or submission for inclusion in this list
  are gladly accepted.  Layout suggestions and comments (spelling
  mistak's too! :-) are also welcome.

  Currently I have listed all contributors of the various comments and
  suggestions.  If you do not want to be credited, please tell me.

  speedup-x-faq is copyright (c) 1993 by Arthur E. Mulder

  You may copy this document in whole or in part as long as you don't
  try to make money off it, or pretend that you wrote it.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
 ...art mulder ( art@cs.ualberta.ca )    | "Do not be conformed to this world,
 Department of Computing Science         |  but be transformed by the renewal
 University of Alberta, Edmonton, Canada |  of your mind, ..."  Romans 12:2

Newsgroup: comp.windows.x
document_id: 67972
Subject: Re: Resource/Widget toolkit required for X-Windows applications
From: cvadrmes@vmsb.is.csupomona.edu

In article <1sijn0$mi2@werple.apana.org.au>, jamie@zikzak (Jamie Scuglia) writes:
> 
> Does anyone know of any public domain toolkits for creating X-Windows
> applications?  I have used the "Xt toolkit", but I would like to
> create pop-up windows/dialog boxes, etc, using some sort of drawing editor
> instead of trying to specify what I want, sizes, positions, etc,
> within actual source code.  Basically, I am looking for something
> similar to Borland's "WHITEWATER RESOURCE TOOLKIT" for MS-WINDOWS,
> expect I need one for X-Windows instead.
> 
> Any help would be much appreciated.

   
     I recently found an excellent source for X-windows programs. I've seen
quite a few x-windows toolkits up there. The place is:  

                     export.lcs.mit.edu

go to the contrib directory. Its full of x-windows programs.

                                           Hope this Helps!



Newsgroup: comp.windows.x
document_id: 67973
From: perrot@grbb.polymtl.ca (Gildas PERROT)
Subject: Installing xdbx v2.1.2 on SGI 


Did anyone install xdbx v2.1.2 on SGI workstation ?


Thanks for your answer.		Gildas PERROT.
-- 
# Gildas PERROT, Associe de recherche # Ecole Polytechnique	#      
# Institut de Genie Biomedical        # C.P. 6079, Succ. A      # 
# e-mail: perrot@grbb.polymtl.ca      #	Montreal H3C3A7, Canada #
# Tel: (514) 340-4183                 # Fax: (514) 340-4611     #           

Newsgroup: comp.windows.x
document_id: 67974
From: gordons@mon.sps.mot.com (Gordon Sasamori)
Subject: Re: viewing postscript files under X windows

In <C6tGoJ.20J@inmet.camb.inmet.com> gjs@corsica.camb.inmet.com (George Snyder) writes:

>In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:

>> I wonder if anybody know of a X-window-based postscript file
>> viewer that runs under SunOS (prefered), HPUX, or IBM AIX.

>If you are running Sun OpenWindows, you can use "pageview".  This is an
>X Window PostScript previewer like "ghostview", but displays much nicer

Yes, but it's broken on OW 2.0.  It does not handle multiple pages
well.  If you don't have the proper PostScript commands it will
draw the entire document on the same page instead of pausing after
each page.  I haven't tried OW 3.0 yet, though.
-- 
...v....1....v....2....v....3....v....4....v....5....v....6....v....7..
Gordon T. Sasamori
HC05 CSIC MCU Design       (email: gordons@ai.sps.mot.com,
Nippon Motorola Ltd.        voice: 81(3)3280-8339, FAX: 81(3)3440-0033)

Newsgroup: comp.windows.x
document_id: 67975
From: envbvs@epb11.lbl.gov (Brian V. Smith)
Subject: Re: Xfig 2.1pl7 on HP-UX 9.01?

In article <1sp51c$8t3@elroy.jpl.nasa.gov>, urban@sideshow (Michael P Urban) writes:
|> I have compiled xfig 2.1 patchlevel 7 with HP's X11R5 from HP-UX 9.01,
|> augmented by the Athena and Mu libraries from an X11R5 distribution
|> from iworks.ecn.uiowa.edu.  It compiles nicely (although for one file
|> the preprocessor macro definition table size needed to be increased).
|> But when executed, nothing happens at all except for ever-growing
|> memory requirements (eventually climaxing in a core dump).  The binary
|> of the identical program, compiled on 8.07 with X11R4, has no
|> problems.  Other programs like xtpanel compile, link, and run just
|> fine with the same libraries.
|> 
|> Does this sound familiar, or am I going to have to figure this one out
|> on my own...?

Please see the post I made yesterday (May 10) which fixes the problem.
This was posted to comp.windows.x.apps.

-- 
Brian V. Smith    (bvsmith@lbl.gov)
Lawrence Berkeley Laboratory
I don't speak for LBL; they don't pay me enough for that.

Newsgroup: comp.windows.x
document_id: 67976
From: chucks@iplmail.orl.mmc.com (Chuck Strickland)
Subject: X11R5 on aix 3.2.2 using cc.

 I have gotten X11R5 pl 23 to compile on AIX 3.2.2 using cc.
 but the server will not run. it simplys starts and a couple seconds
 later exits. no error are displayed. 
 my defines for compile are
 -DSYSV -DAIXV3 -DSYSV_WAIT   -DMALLOC_0_RETURNS_NULL 

 
   could somewhere share some light, or maybe the ibm.cf file. 

 thanks.
-- 
*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*
Malcolm C. Strickland                 Martin Marietta Missile Systems
chuck-strickland@orl.mmc.com          mail point 170    
Phone: 407-356-7437                   pobox 555837
Fax:   407-356-5482                   orlando florida 32855-5837
*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*

Newsgroup: comp.windows.x
document_id: 67977
From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
Subject: UIMX - A Motif Application Generator

I am looking of information regarding UIMX. I believe this is an application
front end generator tool for Motif (among others). Whould someone given me a
contact? I need to get hold of the programmers' guide, or something like it.
-- 
Paul Mahoney, X-Act Solutions Limited
smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
phone: +44 424 846368

Newsgroup: comp.windows.x
document_id: 67978
From: car@access.digex.net (Mr. Blue)
Subject: Some rookie questions

Im new to Xlib programming. Im having a problem I hope someone here can
help me with. I create a window, and I want it to have some background color,
say red, and draw an oval in it. Further, when I resize the window, I want
to be able to redraw the image so that is fills the new window (whether it
is larger or smaller.) Im using AIXwindows on an RS6000.

My problem is this: when I resize the window, only the "original" part of the
window that was part of the window creation gets drawn into. Everything else
is a grey..the oval "tries" to redraw itself but gets clipped. I can see that
it WOULD be the right size if I could see all of it, but it only shows up in
the region that was the original size of the window when created.

For example, I start out the window at 200x200 in width and height. If I
resize it to 400x400, the only part that has any color drawn into it is
is from the origin out to 200x200..the rest is grey. Further the oval
only shows up in that 200x200 area.

What am I doing wrong?? How can I get a window to resize and redraw a 
re-scaled image in it to take up the full size of the window?

Second question:
Could someone tell me what Xaw and Xmu are???

Thanks,
Chris



Newsgroup: comp.windows.x
document_id: 67979
From: cornhead@netcom.com (Jeff Miller)
Subject: O'Reilly X, Adobe P'Script, Sun OpenLook books cheap

I have some brand new copies of the following books for sale. Some are 
down-rev, don't know which or by how much: look to # of pages, copyright 
date, etc. for clues.

  "PostScript Language Reference Manual", Adobe Sys. Inc., Addison-Wesley,
        copyr. 1986, printed 1990. 299 pages. $22.95.

  "PostScript Language Tutorial and Cookbook", as above, 243 pages, $16.95

I'll sell the above two books as a set for $15 postage paid w/in US.

  "OpenLook GUI Functional Specification", Sun Micro, Addison-W, copyr. 1989,
        564 pages, $34.95.

  "OpenLook GUI Application Style Guidelines", 388 pages, $24.95.

I'll sell the above two books as a set for $15 ppd. w/in US. 

  O'Reilly & Associates Definitive Guides to the X Window System, copyr. 
  1990, "for version 11", "revised and updated for Release 4":

  Vol. 0: "X Protocol Reference Manual," 498 pages $30
  Vol. 1: "Xlib Programming Manual," 672 pages $34.95
  Vol. 2: "Xlib Reference Manual," 792 pages $34.95
  Vol. 7: "XView Programming Manual," 640 pages $30

I'll sell the above four books as a set for $35 ppd. w/in US

Due to the high hassle/$ ratio I am asking for pre-payment by check. I'll 
be queing cashing, packing, and shipping so be prepared to wait 3 weeks 
for your books to show up. 

If you'd like to pick them up, I live in San Francisco. Same prices though. 

E-mail me if you are interested. Thanks!

-cornhead

Newsgroup: comp.windows.x
document_id: 67980
From: rsmith@proteus.ARc.nasa.GOV
Subject: Printing xbm files

Hi

Does anyone know of a direct way to print an image of an .xbm file.

Please reply directly and I'll post a summary.

---------------------------------------------------------------------
Any opinion presented here is my own, and does not reflect the policy
of my employer, NASA, or the Ames Research Center.

Roger Smith
Sterling Software at
NASA-Ames Research Center
rsmith@proteus.arc.nasa.gov
- 
If change is -- inevitable -- predictable -- beneficial -- 
doesn't logic demand that you be a part of it?
One man cannot summon the future. But one man can change the present!
    -- Kirk and the Alternate Spock, "Mirror, Mirror," stardate unknown
+

Newsgroup: comp.windows.x
document_id: 67981
From: dls@Autodesk.COM (Daniel Louis Smith)
Subject: Windows/MFC 2.0 -> Motif tools sought


        I am looking for info on products that can take
Windows source on a Unix box (such as Sparc), and produce a
Motif executable.  Another requirement is that MFC 2.0 should
be supported.  I already know of:

        Wind/U  by Bristol Technologies
        Hunter SDK
        MainWin by MainSoft

        Are there any others?

	I will post a summary if it's wanted.

				Daniel
-- 
		 dls@autodesk.com           dls@netcom.com
     Daniel L Smith, Autodesk, Sausalito, California, (415) 332-2344 x 2580
disclaimer:  accuracy of statements corrrelates somehow to caffeine intake

Newsgroup: comp.windows.x
document_id: 67982
From: dan@igate.c-mols.siu.edu (Dan Ellison)
Subject: Re: Scientific graphing - looking for run-time library

In <1993May10.212110.3980@serval.net.wsu.edu> d3e758@bucky.pnl.gov (JE Pelkey) writes:


>In article <C6IEM6.16xI@hawnews.watson.ibm.com> artg@watson.ibm.com (Art Goldberg) writes:
>>X gurus:
>>I am looking for a scientific graphing run-time X library.  I want my code
>>to open a window, and plot a graph in the window.  The library should
>>manage plotting, scaling of axes, labeling, etc.
>>
>>Can someone recommend a library to do this?  Please respond via e-mail.

>I would also be interested in this information.

Check into the vopl and vogle libraries.  I beleive that I still have
them available on ftp.c-mols.siu.edu but I'm not sure.  I haven't seen
any new announcements for the software but I'm sure it's still around.

I have used it to do real-time data display and analysis as well as
just for producing graphs after the fact.  It works well and supports
numerous graphics output formats (including X.)  I tried it and liked
it.  YOu may as well.

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Dan Ellison, Network Spec 	  -    	Computing Affairs, SIU-C 	| 
| Southern Illinois University 	  - 	Carbondale, IL 62901            |   
| FAX:      (618) 453-3459        -   	PHONE:    (618) 453-6149 	|     

Newsgroup: comp.windows.x
document_id: 67983
From: yonglong@ipi.uni-hannover.de (Yonglong Xu 5556)
Subject: help wanted: display stereo images with a GT-accelerator



Hi, friends,

Our SPARC workstation is now equippied with a GT-accelerator. we want to use
it to display stereo images. The accelerator has double buffers. How can we
access the buffers and switch between them ? With which functions can we do 
that ? with functions from XGL, Phigs, Xlib or Xlib-extension ?

Your help will be highly appreciated.


Yonglong Xu

Uni. of Hannover

10.5.93


Newsgroup: comp.windows.x
document_id: 67984
From: smn@netcom.com (Subodh Nijsure)
Subject: Scaling fonts in X


X/Motif Gurus,

	How do you handling scaling of X text while performing zooming 
operations  on figures? Is restricting user to select scalable fonts too 
restrictive and  a absolute NO NO?
Any books that have discussion on this topic?  Should have really taken more 
of those Computer Graphics courses but, now its too late -:( )

	I will summarize response.
Thanks in advance.

-Subodh ( smn@netcom.com )

Newsgroup: comp.windows.x
document_id: 67985
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Remote X across TCPIP & Decnet

#
# Does anyone know if the following is possible, and if so how do I go about
# doing it.
# 
# I want to be able to display remote X11 applications on a VAXstation 2000 off
# of an Internet node. Here is where the problem comes up, the VAXstation isn't
# connected directly to the Internet but is connected via Decnet to a node that
# does have a connection to the Internet. Does anyone know if it is possible to
# get the display to use TCPIP from the remote Internet node down to my local
# Internet node and then send it via Decnet down to the VAXstation 2000?
#

For the machine that is connected to the InterNet, what is it running?  If it
is running VMS, then if you obtain MultiNet for it, MultiNet comes with a
TCP/IP to DECnet gateway for X11.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
document_id: 67986
From: markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443)
Subject: Looking for X windows on a PC

Hi All,
       This is the first time I've posted to the net, so I hope this is
going to the right people.
  I'm looking for software packages that run on an IBM PC clone that
allows me to display Openlook and motif windows on the PC. 
  The idea is to use the PC as a cheap X windows terminal for use by
process Engineers at work. 

  If anyone can E-Mail me any recommended packages/horror stories/etc
I would be greatful.

		Thanks in advance

			Mark Wilkinson


-- 
 _____________________________________________________________________________
/                               |                                             \
| Mark Wilkinson                |   E-Mail : wilkinson_m@roborough.gpsemi.com |
| Senior Software Engineer      |            markwilk@lincoln.gpsemi.com      |
| GEC Plessey Semiconductors    |                                             |
| Roborough, Plymouth, England  |                                             |
\_______________________________|_____________________________________________/

Newsgroup: comp.windows.x
document_id: 67987
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: xrastool 1.0 part 1/2

Well, thanks largely to subscribers of this group, here's xrastool 1.0,
the animation package I started just over 3 weeks ago. A number of the
solutions provided through discussions here have been incorporated in
the code, so have a look! The full blurb has been posted to
comp.windows.x.announce.

This post is in two parts. To unpack the source code, extract the
articles into file1 and file2 (for example). Use a text editor to
remove leading and trailing text at the "---cut here---" markers
(including the markers themselves). Next type "cat file1 file2 >
file", then "uudecode file" and "zcat xrastool1.0.tar.Z | tar xvf -".
Read the README file for instructions on how to proceed from there.
Enjoy!

Derek

P.S. The source is also available for anon ftp from export.lcs.mit.edu
in the contrib/ directory. If there is enough demand, a static binary
will be provided for those without the XView libraries or include
files.

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------

---cut here---
begin 644 xrastool1.0.tar.Z
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
---cut here---



Newsgroup: comp.windows.x
document_id: 67988
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: xrastool 1.0 part 2/2

part 2/2 of xrastool 1.0
---cut here---
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
MB,L#,@$> 1>'%WU. T.*'H0=&N:)Z(E+BGP!02)#.)B%3R)#.+N)JC!#.+^)
MHH4M@Z2%-H/@A.R(>8'1@@""7X5BA4^)CXG!B6**DHE"@U> QH4OBD.&RX5,
M@<^':(<:B$6(U(?QB#T; 8(WBB*(.8JUA@J(XH4]BNIKW8E8@LT#' %N 42*
M88(\7&""DB!$A4R*B8J' T$B/SB4%TJ%PX2B(8V*)313BI(;DHHLAU6%1XED
MBCN)F8ICBE2!MX(*@S^)R8.W@I:#3H3K@5V K87*AP>"X88 AUF([HBBBG6 
MI(I2@9^*&XB:BD6)M(54B72*/H$MB8J*O(J]BKZ*OXK BJ @]XCZB-:(U(C%
MBDR'!HG$BL.*UXC&BMN(R8K,BMR(=X9,B>>(ZHC=AN^(KHI6@>V(88K4BAJ!
MY8AQBMR*)H'IB$.#0HG)B &)/X?'BOF( (E)AP6)+H?KBON(PXH(B>B*^(A'
MA\^*18?GBO"*-H=,B2>)((D6B1.)*XG^BOZ*^XH5B9=#;(  BQJ)*HD"BQZ)
M_8H'B_^*L(>^@ F+'XD0B0:+$HEC $R)Q(EFBMJ&&(NVBK2*G8IY@A:+&XNU
MBJ&*&HN0B2&+AH$?BTZ)%XL1A1V+*8M<BBN+AX$GBR6+Q8F<BB.+4HDNBUB!
H58D* #:+-8O,B9V)FHDPBCV+G8DTBD"+7HE"BSR+1HN]@#6*28L&AHDN
 
end
---cut here---


Newsgroup: comp.windows.x
document_id: 67989
From: raistlin@uni-paderborn.de (Markus Koch)
Subject: X and Motif config-file for HP-UX 8.0 ??


Hello everybody out there !

I'm trying to compile X11R5pl23 and Motif 1.2.1 on a HP running
HP-UX 8.05. But it' seems to be not very succesful, because 
I have only hp.cf config-files for HP-UX 7.0. 

I tried standard cc and X was compiled with a lot of warnings.
The motif applications are compiled quite well, but they won't run.
I receive the XKeysymDB error which is reported in FAQ, but
I cannot fix it. The XKeysymDB-file is at the right location and it
works fine under SunOS.
Probably I have started the compilation Prozess only with a wrong
config-file.

Please help me !
  
Thanx in advance 
  Markus

-----------------------------------------------------------------
 Markus Koch                           Universitaet-GH Paderborn 
 Email : raistlin@uni-paderborn.de     Rechnerbetreuung
 Phone : +49 5251 60 3322              Warburger Str. 100
         +49 5251 60 3318              W4790 Paderborn, Germany
----------------------------------------------------------------- 
--

-----------------------------------------------------------------
 Markus Koch                           Universitaet-GH Paderborn 
 Email : raistlin@uni-paderborn.de     Warburger Str. 100
 Phone : +49 5251 60 3322              W4790 Paderborn, Germany
-----------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 67990
From: osvaldo@ipgaix.unipg.it (Osvaldo Gervasi)
Subject: public domain or low price CASE for RS6000

We are looking for a public domain or low price CASE , running on
AIX/6000 3.2 and/or SOLARIS 1.1 and/or SUN/OS 3.1, for X/Motif and/or
X/OpenLook.

I'm not a regular follower of these groups, so I would prefer an
answer to this e-mail. Thanks in advance, Regards, --Osvaldo

-- 
+---------------------------------------------------------------------+
| Osvaldo Gervasi                                                     |
| Centro di Calcolo - Universita' degli Studi di Perugia              |
| Piazza Universita', 2  - I06100  PERUGIA                            |

Newsgroup: comp.windows.x
document_id: 67991
From: jc@minya.UUCP (John Chambers)
Subject: painting with increasing resolution

Some  people working a few cubes over have come up with this need, and
it seems that someone out there just might have done it  already,  and
can point me to some tools that would help. What they'd like to do is:
Given a window that is taking a long time to draw (because either  the
data  is  arriving  over a slow link, or the $DISPLAY is across a slow
link), they would like to first paint a low-resolution version of  the
picture,  and then repaint it in higher resolution.  Thus, the picture
might first be generated in 1/4 resolution, with each  4x4  square  of
pixels  being  filled  in  with a single color.  Next, each 4x4 square
would be replaced by 4 2x2 squares; finally the 1x1 version  would  be
painted.

Since  one of the scenarios is with the window being on the other side
of a slow link, the low-res version obviously wouldn't be  transmitted
as  a bitmap; that wouldn't help at all.  Instead, there would have to
be a process on the far end that receives the  low-res  picture  as  a
small  bitmap,  and  blows up each pixel into a square (sorta like the
magnifier programs do).  This brings up the question of whether the  X
server  can help.  That is, when a window is opened, is there a way to
ask that a "filter" program be run to process the pixels?  Or  is  the
only  way  to  use  something  like  rsh  to start up a remote process
("Permission denied" ;-), and have it open a local window?

It seems the most likely scenario is a library routine that starts  up
such  a  program  remotely, and then accepts bitmaps, compressing each
one by some amount, and sending them to the remote program to  expand.
But  if  there is something that X itself can do to help, it's be nice
to hear about it.  (I looked in several FMs,  but  if  it's  there,  I
obviously  don't  know  the keywords ;-).  If someone has a nifty tool
available that packages it all, we might want to get a copy.

Oh, yes; this is to run on some Suns.  Part of the idea  is  to  build
demos  that  can  show such things as "If this were run across, say, a
4800-bps link, this is how fast the pictures would appear."  Then  the
customer would get a feel for the speed that they need to pay for.

-- 
If the auto industry were like the computer industry, a car would  now
cost $5, would get 5000 miles to the gallon, and at random times would
explode, killing all its passengers.

Newsgroup: comp.windows.x
document_id: 67992
From: guy@x.co.uk (Guy Singh)
Subject: Re: X and Motif config-file for HP-UX 8.0 ??

>>>>> On 12 May 93 12:46:17, raistlin@uni-paderborn.de (Markus Koch) said:
Markus> NNTP-Posting-Host: samos.uni-paderborn.de


Markus> Hello everybody out there !

Markus> I'm trying to compile X11R5pl23 and Motif 1.2.1 on a HP running
Markus> HP-UX 8.05. But it' seems to be not very succesful, because 
Markus> I have only hp.cf config-files for HP-UX 7.0. 

Markus> I tried standard cc and X was compiled with a lot of warnings.
Markus> The motif applications are compiled quite well, but they won't run.
Markus> I receive the XKeysymDB error which is reported in FAQ, but
Markus> I cannot fix it. The XKeysymDB-file is at the right location and it
Markus> works fine under SunOS.
Markus> Probably I have started the compilation Prozess only with a wrong
Markus> config-file.

Markus> Please help me !
Markus>   
Markus> Thanx in advance 
Markus>   Markus

If you installed X lib Xt by redefining ProjectRoot, you will find that
 during the install it recompiles one of the files in X lib that does the
search for XKeysmDB and embeds the search path for the file based on whatever
ProjectRoot was defined. TO confirm this what happened, because I'm 
guessing, go to mit/lib/X and do
strings XStrKeySym.o | egrep XKeysymDB
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
document_id: 67993
From: mainzer@garte.darmstadt.gmd.de (Joerg Mainzer)
Subject: wordwrap


Hello everybody!

Does anybody know how to implement wordwrap with use of XDrawImageString?
The problem is that I don't know how many characters can be drawn in 
a region. Have I to calculate character for character the width of the drawn
text?

Thank you in advance.

                                ,,,
                               (o o)
 --------------------------oOO--(_)--OOo--------------------------------
Joerg Mainzer                  Internet: mainzer@darmstadt.gmd.de
German Nat. Research Center    X.400net: mainzer@ipsi.darmstadt.gmd.dbp.de
for Information Technology     Voice   : ++49-6151-869923
Dolivostrasse 15	       Fax     : ++49-6151-869818
W-6100 Darmstadt, Germany
-----------------------------------------------------------------------

Symptom  : Bar moving.
Fault    : You are being carried out.
Solution : Find out if you are being taken to another bar - if not complain
           loudly that you are being hi-jacked.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Newsgroup: comp.windows.x
document_id: 67994
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: GC Plane mask

Hi Xperts!

Where can I get a good example in which XGCValues.plane_mask is used, or
who can explain how is it for and how to use it.

Any hints welcome.

Thanks.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 67995
From: williams@snoopy (Timothy Williams)
Subject: Re: viewing postscript files under X windows

In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
>
>I wonder if anybody know of a X-window-based postscript file
>viewer that runs under SunOS (prefered), HPUX, or IBM AIX.
>Reason I'm looking for this utility is that I've downloaded these
>large postscript documents and I'd like to know how useful (and how
>long) they are before commiting them to the printer and potentially
>wasting 200 pages of paper and hogging the printer for 1/2 hour.
>

Get ghostscript and ghostview.  Ghostview is a postscript previewer
that uses ghostscript.

From the ghostview README:



    Ghostview -- An X11 user interface for ghostscript.

Ghostview is full function user interface for ghostscript 2.4.

Brief list of features:
  - Ghostview parses any known version of Adobe's Document Structuring
    Conventions.
  - Page size is automatically determined from the Document Structuring
    Comments.  The user is able to override the values from the comments.
  - Window size is set to the bounding box for Encapsulated PostScript figures.
  - Default page size is Letter and can be changed via Xresources or
    application defaults file to A4 (or any other valid size) for our
    European friends.
  - Scrollbars appear when necessary.
  - Page orientation is automatically determined from the Document Structuring
    Comments.  The user is able to override the values from the comments.
  - Ability to view at 4 orientations: Portrait, Landscape, Upside-down,
    and Seascape (for those who rotate landscape the other direction).
  - Ability to preview in any supported visual.  (Can preview in gray-scale 
    or color on a Color monitor.)
  - Ability to mark pages for printing, or saving.  (Good for people that
    printed a 100 page document and lost page 59 due to a printer jam.)
  - Can popup zoom windows at printer resolution
    (1 display dot = 1 printer dot).

    The Ghostview distribution includes a Ghostview Widget that people
    are encouraged to use in other programs.

    Ghostview-1.3 is available via anonymous ftp from:
        prep.ai.mit.edu:/pub/gnu/ghostview-1.3.tar.Z
        appenzell.cs.wisc.edu:/pub/ghostview-1.3.tar.Z


From the ghostscript README:

*****************************************************
* This file describes version 2.4.1 of Ghostscript. *
*****************************************************

********
******** An overview of Ghostscript ********
********

Ghostscript is the name of a set of software that provides:

        - An interpreter for the Ghostscript language, which very
closely resembles the PostScript (TM) language; and

        - A set of C procedures (the Ghostscript library) that
implement the graphics capabilities that appear as primitive
operations in the Ghostscript language.

The Ghostscript language interpreter and library are written entirely
in C, with some assembly-language accelerators for MS-DOS platforms.
Currently, Ghostscript is known to run on the following platform
families:

        - IBM PC and compatibles with EGA, VGA, SuperVGA, or compatible
          graphics under MS-DOS 3.1, 3.3, or 5.0;

        - A wide variety of Unix systems using X Windows version 11,
          release 3, 4, and 5, including Sun-3, Sun-4, Sun-386i,
          Sun SPARCStation 1; generic 80386 machines running 386/ix;
          H-P 9000/300 and 9000/800; DECStation 2100 and 3100; VAX
          running Ultrix; Sequent Symmetry; Convex C1 and C2;
          Tektronix 4300; SGI Iris Indigo;

        - Sun workstations (Sun-3, SPARC, Sun-386i) running SunView;

        - VAX, VMS with X11R3/4/5, gcc and DEC C compiler (DEC C compiler
          version 3.1 or later is required).


(Get ghostscript from the same ftp site you get ghostview.)

-- 
Tim Williams                                   COM: (703) 704-1685
Night Vision & Electronic Sensors Directorate  DSN: 654-1685
AMSEL-RD-NV-VISPD (Williams)                   FAX: (703) 704-1705
Ft. Belvoir, VA 22060-5677                  E-MAIL: williams@nvl.army.mil

Newsgroup: comp.windows.x
document_id: 67996
From: doug@happy.vf.ge.com (Doug Hughes)
Subject: Re: FAX software?

In article <1snoqoINNdh@darkstar.UCSC.EDU>, philb@cats.ucsc.edu (Philip Brown) writes:
> 
> 
> I'd like to know if there is any ***_FREE_*** fax software for Xwindows
> that I can use.
> I have a sun 4/110 running mit X11R5.
> I checked the export.lcs.mit.edu list, and there didn't seem to be
> anything there.
> 
> -- 
>   --------------------------------------------------------------------
> "Tea: a Noxious brew of various oriental leaves, containing toxic acids.
> Personally, I rather like it." (paraprhased from Dr. Who: Peter Davidson)
> philb@cats.ucsc.edu   philb@soda.berkeley.edu

check prep.ai.mit.edu.  It's called fax-3.2.1.tar.Z or something to
that effect and is the software for netfax. Be forewarned that it
requires (at the moment) a fairly costly $450 fax modem with certain
capabilities to use it.
	
-- 
_____________________________________________________________
Doug Hughes
System/Net Admin - Martin Marietta Aerospace, Valley Forge, PA
doug@happy.vf.ge.com	or	doug@land.vf.ge.com

Newsgroup: comp.windows.x
document_id: 67997
From: pramod@stein.u.washington.edu (Pramod Mahadev)
Subject: Problem with R4 release

ld: Unidentified external symbol
   _get_wmShellWidgetclass
   _get_applicationshellwidgetclass

  I use -lXaw -lXmu -lXext -lX11 -lXt not in this order but in a proper order

I am wondering if there has to be some changes in my link libraries or should
i include some more libraries.

ANy help in this matter will be very useful and highly appreciated

Thanks
Pramod
.

Newsgroup: comp.windows.x
document_id: 67998
From: dujardin@naima.inria.fr (Eric Dujardin)
Subject: Re: Accented Characters..... How


I've been able to configure xterm so that I can type in accented characters.
I'm using X11R5, with iso8859 fonts, my shell is tcsh with the following 
definitions : 
setenv LC_CTYPE iso_8859_1
stty pass8

Then, I add the following in my .Xdefaults file:

XTerm*eightBitInput: True
XTerm*eightBitOutput: True

XTerm*VT100.Translations: #override \
Meta<Key>': keymap(aigu) \n\
Meta<Key>`: keymap(grave) \n\
Meta<Key>^: keymap(circ) \n\
Meta<Key>\\,: keymap(ced)
XTerm*VT100.aiguKeymap.translations:  \
~Shift <Key>e: string(0xe9) keymap(None)\n\
<Key>E: string(0xc9) keymap(None) \n\
~Shift <Key>c:  string(0xe7) \n\
<Key> C:  string(0xc7)
XTerm*VT100.graveKeymap.translations: \
~Shift <Key>e: string(0xe8) keymap(None)\n\
<Key>E: string(0xc8) keymap(None)\n\
~Shift <Key>u: string(0xf9) keymap(None)\n\
<Key>U: string(0xd9) keymap(None)\n\
~Shift <Key>a: string(0xe0) keymap(None)\n\
<Key>A: string(0xc0) keymap(None)
XTerm*VT100.circKeymap.translations:  \
~Shift <Key>e: string(0xea) keymap(None)\n\
<Key>E: string(0xca) keymap(None)\n\
~Shift <Key>u: string(0xfb) keymap(None)\n\
<Key>U: string(0xdb) keymap(None)\n\
~Shift <Key>i: string(0xee) keymap(None)\n\
<Key>I: string(0xce) keymap(None)\n\
~Shift <Key>o:  string(0xf4) keymap(None)\n\
<Key>O: string(0xd4) keymap(None)
XTerm*VT100.cedKeymap.translations: \
~Shift <Key>c:  string(0xe7) keymap(None)\n\
<Key> C:  string(0xc7) keymap(None)

This makes the Meta-{',`,^} keys behave as dead keys.

Of course, this only works for xterm. For emacs, my solution is to install the
Lucid version of GnuEmacs 19, and to load the x-compose library.


Hope this helps,


	Eric
-- 
 Eric Dujardin  -  Eric.Dujardin@inria.fr
 INRIA Rocquencourt, projet RODIN                           "Les bons gongs font
 BP 105, 78153 Le Chesnay Cedex                                 les bonzes amis"
 Tel : (33 1) 39 63 56 19                                               (Gotlib)

Newsgroup: comp.windows.x
document_id: 67999
From: marlow@sys.uea.ac.uk (Keith Marlow PG)
Subject: PD apps for displaying 3D data sets


  The subject line says it all really, I'm looking for a PD application
which will just handle the displaying of 3D data sets (images) in
cross section, or any pointers to code which will aid in the development
of such a system.

  Thanks in advance

	Keith Marlow


--
Keith Marlow,SYS P/G,UEA,Norwich *  Phone Cyclone BBS on 0603 260973; Arc,Beeb
Norwich. Norfolk NR4 7TJ         * PC files + fidonet echoes + charts + Acorn
Archiboard Central 2:254/405.3   * Support Area + radio info : Archiboard s/w
 Voice - 0603 745077             ### Tried MS-DOS once.. but didn't inhale ##

Newsgroup: comp.windows.x
document_id: 68000
From: support@qdeck.com (Technical Support)
Subject: Re: Looking for X windows on a PC

In article <C6wLIJ.L5K@bailgate.gpsemi.com> wilkinson_m@roborough.gpsemi.com writes:
>Hi All,
>       This is the first time I've posted to the net, so I hope this is
>going to the right people.
>  I'm looking for software packages that run on an IBM PC clone that
>allows me to display Openlook and motif windows on the PC. 
>  The idea is to use the PC as a cheap X windows terminal for use by
>process Engineers at work. 

May I humbly suggest DESQview/X? (Of course, I'm biased...)

DESQview/X is a multitasker for DOS computers, that uses a standard
X11R4 server as it's display mechanism. DOS applications and Microsoft
Windows standard mode are converted on-the-fly to X-protocol, allowing
you to display them, or any R4 compatable X-program from any machine
on the net to display to the PC's local display (or to any other display
on the net).

Free tools are available for devloping X-applications for the DVX platform;
many X-programs have been ported between DVX and UNIX with little or
no modifications. (Often, you only need to create a new makefile!)

If you're interested in more details, you can check out the usenet group
comp.os.msdos.desqview, or just email me directly at support@qdeck.com,
and I'd be happy to fill you in.
-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
anonymous ftp: qdeck.com (149.17.8.10), leave your email address as password

Newsgroup: comp.windows.x
document_id: 68001
From: Thomas.Tornblom@Nexus.Comm.SE (Thomas Tornblom)
Subject: Re: Type1 rasterizer where?

In article <1sofac$68m@zebedee.ingres.co.uk> supp60@ingres.com (Support account) writes:

   In article <THOMAS.TORNBLOM.93May11115505@beck.Nexus.Comm.SE> Thomas.Tornblom@Nexus.Comm.SE (Thomas Tornblom) writes:
   >I'm trying to locate the Type1 rasterizer that IBM donated to The X
   >consortium. I've found patches to it but not the original source.

   It's on the R5 "contrib" tape.

   -Mike Glendinning, Ingres UK (mikeg@ingres.co.uk).

Yes I found it there. Thanks everyone.

Thomas
--
Real life:      Thomas Trnblom           Email:  Thomas.Tornblom@Nexus.Comm.SE
Snail mail:     Communicator Nexus AB     Phone:  +46 18 171814
                Box 857                   Fax:    +46 18 696516
                S - 751 08 Uppsala, Sweden

Newsgroup: comp.windows.x
document_id: 68002
From: schwarte@beethoven.cs.colostate.edu (eric schwartz)
Subject: Re: Looking for X windows on a PC

Check out a program called PC-Xview. I've used it before, and from
what I can tell, it's exactly what you're looking for. Last I checked,
you should be able to find it for about $160 a copy.

-Eric
--
******************************************************************************
* schwarte@cs.colostate.edu    * "Of /course/ I'm certain!" - Heisenberg     *
* schwarte@lamar.colostate.edu * "He hadn't a single redeeming vice"         *
* where does bob barker go when*    -Oscar Wilde			     *
* i watch vanna white?         *Wasting time is an important part of living. *
******************************************************************************

Newsgroup: comp.windows.x
document_id: 68003
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Looking for X windows on a PC

markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:

>Hi All,
>       This is the first time I've posted to the net, so I hope this is
>going to the right people.
>  I'm looking for software packages that run on an IBM PC clone that
>allows me to display Openlook and motif windows on the PC. 
>  The idea is to use the PC as a cheap X windows terminal for use by
>process Engineers at work. 

If you already own all the "clone" equipment then there are lots of such
programs (see a current copy of Unix World Magazine).

*BUT*  your performance WILL suck lemons running an Xserver on a clone.
(From experience).  You would be much better off with an Xterminal if this
is a new install.  The performance will be at least four times better.
In addition it would be MUCH easier to install and use.  On top of that
they will cost about the same (price a clone with 4MB RAM, ethernet card,
very high performance graphics card, GOOD monitor, server software, TCP/IP
for clone software, mouse, keyboard, etc, etc, etc.... you spend a whole
lot of $$$$).

I can get 15" Tektronix XP11 terminals for under $900, and the performance
is over 80000 Xstones.....
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68004
From: gdmr@dcs.ed.ac.uk (George Ross)
Subject: twm & greyscale

As distributed, twm thinks everything with three or more colormap cells must
be a colour screen.  Here's a patch to have it use the screen's visual class.

*** twm.c.DIST	Wed May 12 14:56:55 1993
--- twm.c	Wed May 12 15:47:53 1993
***************
*** 343,352 ****
--- 343,384 ----
  
  	Scr->XORvalue = (((unsigned long) 1) << Scr->d_depth) - 1;
  
+ #ifdef oldCode
  	if (DisplayCells(dpy, scrnum) < 3)
  	    Scr->Monochrome = MONOCHROME;
  	else
  	    Scr->Monochrome = COLOR;
+ #else
+ 	{	XVisualInfo template;
+ 		XVisualInfo *visualInfo;
+ 		int nitems;
+ 
+ 		template.visual = DefaultVisual(dpy, scrnum);
+ 		template.visualid = XVisualIDFromVisual(template.visual);
+ 		template.screen = scrnum;
+ 		visualInfo = XGetVisualInfo(dpy, VisualIDMask|VisualScreenMask,
+ 				&template, &nitems);
+ 		if (nitems == 1) {
+ 			switch (visualInfo->class) {
+ 		case StaticColor:
+ 		case PseudoColor:
+ 		case TrueColor:
+ 		case DirectColor:
+ 				Scr->Monochrome = COLOR;
+ 				break;
+ 
+ 		default:	Scr->Monochrome = MONOCHROME;
+ 				break;
+ 			}
+ 		}
+ 		else {
+ 			(void) fprintf(stderr,
+ 					"%d Visual match(es), assuming mono\n",
+ 					nitems);
+ 			Scr->Monochrome = MONOCHROME;  /* assume */
+ 		}
+ 	}
+ #endif
  
  	/* setup default colors */
  	Scr->FirstTime = TRUE;

-- 
George D M Ross, Department of Computer Science, University of Edinburgh
     Kings Buildings, Mayfield Road, Edinburgh, Scotland, EH9 3JZ
Mail: gdmr@dcs.ed.ac.uk      Voice: 031-650 5147      Fax: 031-667 7209

Newsgroup: comp.windows.x
document_id: 68005
From: greg@duke.quotron.com (greg)
Subject: Piping "tail -f" to a widget: How, oh Lord, how?

I've spent the past week tearing my hair out, trying to get the output of
a piped "tail -f" to end up in a widget.  I've managed to make it work in
some ugly ways, but either a) X blocks on the tail and won't allow user
input, b) the "tail -f" functions like just "tail" and doesn't follow the
expansion of the file, c) the "tail -f" doesn't die after I've closed
the pipe and destoryed the widget, or d) pclose() blocks forever waiting
for tail to die.
	I _know_ this code has to exist.  Anybody have it?  A general
popen() case would be perfered but at this point I'll take anything...
Thanks.
-- 
Greg Knauss (greg@quotron.com)                    "Llamas, dammit!  Llamas!"

Newsgroup: comp.windows.x
document_id: 68006
From: ls116@cunixa.cc.columbia.edu (Lei  Shao)
Subject: Error building X11R5 xdm


Hi, there,
    I'm trying to build X11R5 mit core distribution on a SparcStation running
SunOS 4.1.1. The only thing I change is the ProjectRoot in site.def. When the
"make World" process goes to "cc -o xdm ...", I get the following error:

ld: Undefined symbol
   __C0095A2A
*** Error code 2

And the process continues to finish. Does anybody know what's wrong? Thanx for
any info.

Lei Shao
ls116@cunixa.cc.columbia.edu

Newsgroup: comp.windows.x
document_id: 68007
From: naoumov@physics.unc.edu (Sergei Naoumov)
Subject: TWM

Hey guys!
I run twm and would like to execute some program before leaving twm. In other
words I would like to run some program before I do f.quit. Is it possible
to make a menu section which would contain these two parts?

Thanks in advance,
	Serge
	serge@gluttony.astro.unc.edu


Newsgroup: comp.windows.x
document_id: 68008
From: acaird@mlb.engin.umich.edu (Andrew Justin Caird)
Subject: Re: Looking for X windows on a PC


In article <C6wLIJ.L5K@bailgate.gpsemi.com>, markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
> Hi All,
>        This is the first time I've posted to the net, so I hope this is
> going to the right people.
>   I'm looking for software packages that run on an IBM PC clone that
> allows me to display Openlook and motif windows on the PC. 
>   The idea is to use the PC as a cheap X windows terminal for use by
> process Engineers at work. 
> 
>   If anyone can E-Mail me any recommended packages/horror stories/etc
> I would be greatful.
> 
> 		Thanks in advance
> 
> 			Mark Wilkinson
> 
> 
> -- 
>  _____________________________________________________________________________
> /                               |                                             \
> | Mark Wilkinson                |   E-Mail : wilkinson_m@roborough.gpsemi.com |
> | Senior Software Engineer      |            markwilk@lincoln.gpsemi.com      |
> | GEC Plessey Semiconductors    |                                             |
> | Roborough, Plymouth, England  |                                             |
> \_______________________________|_____________________________________________/

Xoftware from Age Software has proven good by me.  Runs under MS Windows and is relatively stable.
	techsup@age.com
could probably help you out more.
--Andy

-------------------------------------------------------------------------------
  Andrew Justin Caird                    JOBS: 1) Nuclear Engineering Student
  University of Michigan                       2) Ring Compton Camera Project
  Dept. of  Nuclear Engineering                3) Parallel Computing Code Work
  Andrew.Caird@umich.edu     acaird@umich.edu     Andrew.Caird@um.cc.umich.edu
  ----------------------> acaird@engin.umich.edu <-----------------------------

Newsgroup: comp.windows.x
document_id: 68009
From: dbld@oz.plymouth.edu (d^2)
Subject: xwd and color

Anyone able to get xwd to dump anything that is not black & white?

My text is not black....all I get is window borders.  I tried the -xy
option only because I didn't know what it did.....still no effect.

Any help on this matter would be greatly appreciated.

Newsgroup: comp.windows.x
document_id: 68010
From: mvalente@draco.lnec.pt (mvalente)
Subject: None (mail relay)





  Hi people!:


  I'm looking for X Servers for DOS or Windows.

  I've already seen Desqview/X and XVision but I'd like to be
 aware of other choices.

  Is there anything on the public domain or shareware ?

  And in the commercial area is there anything with aggressive
 pricing ?

  What about incompatibilities ? Window managers ?

  Any info is welcome.



  Thanx in advance.


  C U!
 
  By(e)
 
    Mario Valente



Newsgroup: comp.windows.x
document_id: 68011
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: POSTSCRIPT VIEWER, ICONS & XBACKGROUND


In article <C6rsJF.EM0@ccu.umanitoba.ca>, roholdr@ccu.umanitoba.ca (R Ross Holder Jr) writes:
|> 
|> Ever since I started to use Xwindows (which is to say recently) I've
|> accumulated a few questions about X-applications.  Three examples follow:
|> 
|> 1) It was recently mentioned on comp.os.linux that there exists a post-
|>    script viewer.  I am interested in this and any X-editor that is an
|>    improvement on Xedit (which I find annoying).

Try to get axe - It's a wonderful X based editor and much simpler to use than
emacs what is a overkill. Of course, emacs is no editor but a religion.

|> 2) At one point I was the proud owner of an Amiga (and have since upgraded
|>    to a '386-33).  Workbench (the point-and click interface) used ".info"
|>    files to store the data for icons associated with applications on a given
|>    volume.  I have noticed no such architecture anywhere under linux; how
|>    does Xwindows associate icons with applications?  Can one edit icons or
|>    generate new ones for applications somehow?  (If it makes a difference
|>    I'm running 'twm'.)

1) Don't call going from an Amiga to a IBM 'upgrade'
2) The Amiga Workbench did the job of a Desktop manager, and there is no
   really amazing good X Desktop manager in the Public Domain.
   (I'm currently writing one... but it's in very early stage)
3) xdtm may be a medium good replacement.
4) X associates icons with nothing. A number of X Window Managers associate
   icons with windows, in a way to ease window management.
   But this has nothing to do with icons of a Desktop Manager application.
5) The tool bitmap is there for simple icon drawing.

|> 3) I've noticed some people have somehow discovered a way to display .GIF
|>    (or some kind of picture files) in the background, either replacing or
|>    overlapping some the usual grey background employed by Xwindows.  I heard
|>    this was done using some application, but I don't recall what it was.

xv -root -max -quit whatever-image-file


--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre.Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 68012
From: pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney)
Subject: Re: Looking for X windows on a PC (long list of known servers)

>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
>
>>Hi All,
>>       This is the first time I've posted to the net, so I hope this is
>>going to the right people.
>>  I'm looking for software packages that run on an IBM PC clone that
>>allows me to display Openlook and motif windows on the PC. 
>>  The idea is to use the PC as a cheap X windows terminal for use by
>>process Engineers at work. 

   Here's a listing that I came accross a while ago.  This question seems to 
come up often enough that I figured this would be of interest.  Note that 
the server "X Appeal" for DOS is available in demo form on the internet via 
anonymous ftp.  This is one way of quickly checking out the feasability of 
using your system as an X server.  Enjoy!

- Pete

------------------------------- Begin Enclosure ----------------------------
From: mccoy@gothamcity.jsc.nasa.gov (Daniel J. McCoy)
Newsgroups: comp.windows.x,news.answers
Subject: X Servers for DOS, Microsoft Windows, OS/2, Macs, Amigas, Atari
Followup-To: comp.windows.x
Reply-To: mccoy@gothamcity.jsc.nasa.gov (Daniel J. McCoy)
Organization: I-NET Inc.
Summary: This is a guide or list of X servers that can be used on nonUNIX [sic] networked machines to display X clients running on UNIX machines.

Archive-name: XServers-NonUNIX
Last-modified: 1993/04/01
Version: 12.0

================================================================================
     X Servers for DOS, Microsoft Windows, OS/2, Macs, Amigas, Atari
================================================================================
                      April 1, 1993 - Volume 12.0
================================================================================
AUTHOR:         Daniel J. McCoy
                I-NET Inc.
                Software Technology Branch
                Information Systems Directorate
                NASA/Johnson Space Center

POST MAIL:      NASA Mail Code PT4
                NASA/Johnson Space Center
                Houston, Texas 77058

E-MAIL:         mccoy@gothamcity.jsc.nasa.gov
================================================================================
This is a monthly guide of X servers that can be used on non-UNIX
networked machines to display X clients running on UNIX machines.  I
use the name UNIX loosely here.  I know others can run X.

The sources for this information come from many places:  the FAQ for
comp.windows.x, blurbs and info packets from the vendors, user manuals
for the products themselves, conversations with sales representatives,
personal experience, comp.windows.x articles, etc.

Please forward any corrections or updates to the above address.

This file is also available by anonymous ftp at:
        export.lcs.mit.edu[18.24.0.12] in /contrib/XServers-NonUNIX.txt.Z
        ftp.uwp.edu[131.210.1.4] in /pub/misc/XServers-NonUNIX.txt
        msdos.archive.umich.edu[141.211.164.153] in
                msdos/info/XServers-NonUNIX.txt and msdos/info/xnonunix.zip


X Servers for DOS:
        DESQview/X
        IBM X/Windows
        Micro X-DOS
        Micro X-lite
        PC DECWindows Motif V3.0
        PC X-Windows
        PC Xsight
        PC-XView
        SAGE 1280 Adapter and X Windows Display Server
        TeemTalk-X
        Vista-eXceed
        X Appeal
        Xinet X-Station
        Xnth
        XoftWare for DOS
        XoftWare for TIGA/DOS

X Servers Microsoft Windows:
        DESQview/X
        eXcursion for Windows
        eXodus for MS Windows
        HCL-eXceed/W
        MicroX
        MultiView/X
        PC-XView
        Vista-eXceed
        X-One
        X11/AT
        XoftWare
        XVision

X Servers OS/2:
        IBM X-Windows for OS/2

X Servers Macintosh:
        eXodus
        MacX

X Servers Amiga:
        UNKNOWN
        X Window System Version 11 Release for the Amiga Computer

X Servers Atari:
        X/TOS/window/server and X/TOS/window/server/color
==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
DESQview/X
==========
Vendor:
        Melinda
        Quarterdeck Office Systems, Inc.
        150 Pico Boulevard
        Santa Monica, CA 90405
        TEL: (310)392-9851
        FAX: (310)399-3802
Price:
        $275
Latest Version:
        1.0
CPU:
        386SX or higher (286 version available)
Memory:
        4 Mbytes
Operating System:
        DOS 3.0 or higher
        DR DOS 6 or higher
Mouse:
        optional - MS compatible pointing device
Graphics:
        EGA, VGA, Super VGA, 8514/A, or 256 color DGIS
Ethernet Card:

Network Software:

Disk Space:
        40 Mbyte hard drive
Features:
        incorporates X into the DESQview multi-tasking DOS environment
        adds a graphical 3D look and feel to DESQview
        gives users a choice of window managers (look and feels)
        provides a growth path from character mode DOS to industry standard
                graphical user interfaces
        runs most regular DOS applications
        runs DOS Extended applications up to 4Gbytes
        can display DOS applications within graphical windows
        multitasks DOS applications and X Clients either locally or remotely
        provides a simple port of applications from other X systems to
                DESQview/X and vice versa
        gives developers a choice of application appearances, based on toolkit
                chosen
        supports toolkits that provide features required by developers such as
                push buttons, scrollbars, pop up dialogue boxes, etc.
        Adobe Type Manager for scalable fonts and scalable DOS windows
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
IBM X/Windows
=============
Vendor:
        IBM
        part #5765-025
Price:

Latest Version:
        2.1
CPU:

Memory:

Operating System:
        DOS
Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Micro X-DOS
===========
Vendor:
        StarNet Communications Corporation
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        $345.00 1 unit
        $225.00 ea. 5 pack (greater discount for larger quantities)
        upgrades at 25% of original price
        educational discount of 10%
Latest Version:
        1.6.1
CPU:
        386, 486
Memory:
        2 Mbytes
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Ahead(V5000)
        ATI(18800)
        Everex(VP VGA)
        Genoa(6400)
        Paradise(900C00/11/30)
        STB(EM-16)
        Trident(8800CS)
        Tseng Labs(ET-3000-4000)
        Video7(HT208 V7VGA)
        Western Digital(900C00/11/30)
        ZyMOS(Poach51)
        VESA
        and others
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        StarNet TCP/IP (integrated)
        NCSA Telnet, ftp, lpr, etc.
        Packet Drivers (Clarkson/Crynwr)
Network Software Supported:
        Beame & Whiteside - BW-TCP
        FTP Software - PC/TCP
        Sun - PC-NFS
Disk Space:
        3 Mbytes (9 Mbytes for all fonts)
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R4
        Intelligent installation program
        TCP/IP built-in
        Support Motif, OPEN LOOK, and DEC
        Supports Clarkson (Crynwr) packet drivers
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Micro X-lite
============
Vendor:
        StarNet Communications Corporation
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        $75.00
Latest Version:
        1.5.3
CPU:
        286, 386, 486
Memory:
        640 Kbytes
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Ahead(V5000)
        ATI(18800)
        Everex(VP VGA)
        Genoa(6400)
        Paradise(900C00/11/30)
        STB(EM-16)
        Trident(8800CS)
        Tseng Labs(ET-3000-4000)
        Video7(HT208 V7VGA)
        Western Digital(900C00/11/30)
        ZyMOS(Poach51)
        VESA 
        and others
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        StarNet TCP/IP (integrated)
        NCSA Telnet, ftp, lpr, ...
        Packet Drivers (Clarkson/Crynwr)
Network Software Supported:
        Beame & Whiteside - BW-TCP
        FTP Software - PC/TCP
        Sun - PC-NFS
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R4
        Intelligent installation program
        TCP/IP built-in
        8 clients on screen at time
	Fixed font oriented (variable fonts available)
        Support Motif, OPEN LOOK, and DEC
        Supports Clarkson (Crynwr) packet drivers
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC DECWindows Motif V3.0
========================
Vendor:
        Dennis Giokas
        PC DECWindows Development
        Digital Equipment Corporation
        30 Porter Rd.
        Littleton, MA 01460
Price:

Latest Version:
        V3.0
CPU:
        286, 386
Memory:
        up to 15 Mbytes
Operating System:
        MS-DOS
Mouse:
        any pointing device with MS Mouse V6.0 or later interface
Graphics:
        EGA (16 color and mono)
        MCGA
        VGA (16 color and mono)
        enhanced VGA (800x600 16 color and mono)
        8514/A (1024x768 16/256 color)
        pseudo color visual
Ethernet Card:

Network Software:
        TCP/IP and DECnet
Disk Space:

Features:
        X11 Release 4 server
        integrated virtual memory manager
        standard IBM-compatible keyboards and Digital's LK250
        Session manager client integrated into the server
        suspend session feature to run DOS commands
        Font Compiler for Adobe Bitmap Distribution files
        KEYSYM compiler to customize the keyboard for default KEYCODE to KEYSYM
                mappings; over 70 pre-defined keyboard mapping files
        Configuration utility to define hardware environment and user
                preferences
        supports DECnet and TCP/IP.  Available from DEC.
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC-XView
========
Vendor:
        Network Computing Devices Inc.
        PC-Xdivision
        9590 SW Gemini Drive
        Beaverton, OR  97005
        TEL: (800)800-9599, (503)641-2200
        FAX: (503)643-8642

        There are also 15 NCD technical and sales offices around the United
                States and other international offices
Price:
        PC-Xview for DOS      $445.00 for 1  $1780.00 for 5
        Annual Maintenance    $150.00 for 1   $450.00 for 5
        Update                $125.00 for 1   $375.00 for 5
Latest Version:
        PC-Xview for DOS     Version 4.0
CPU:
        286, 386 (386 recommended)
Memory:
        1 Mbyte (2 Mbytes recommended)
Operating System:
        DOS 3.2 or higher
Mouse:

Graphics:
        CGA, EGA, VGA, SVGA, XGA, TIGA
        8514/A Video Standard supported with extended memory
        Japanese Graphics Mode
        high resolution graphics boards:  Compac, Dell, HP, NEC,
                Spectragraphics Squeegee, and over 50 other DGIS-based
Ethernet Card:
        over 35 Ethernet communications boards supported
Network Software Needed:
        TCP/IP
        DECnet
Disk Space:
        5 Mbytes (7 Mbytes recommended)
Features:
        UNIX application support for traditional applications and
                window managers such as Motif and OPEN LOOK
        off-loads the graphics processing of UNIX hosts
        hot-key to DOS
        access to local peripherals and DOS utilities
        easy and well-documented installation procedures
        pop-up control panel
        Motif compliant Local Window Manager
        ability to run in Windows PIF window
        hot-key between X and DOS (no longer have to exit) a TSR
        DPMI compatibility
        enhanced protocol tracing
        Support XRemote protocol
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC X-Windows
============
Vendor:
        Intelligent Decisions Inc.
        536 Weddell Dr. Suite 2C
        Sunnyvale, CA 94089
        TEL: (408)734-3730
        FAX: (408)734-3634
Price:
        $295
Latest Version:

CPU:
        286, 386, 486
Memory:
        1 Mbyte (more recommended for hi-res or lots of pixmaps)
Operating System:
        DOS 3.1 of higher
Mouse:
        MS compatible mouse
Graphics:
        VGA, some SVGA
Ethernet Card:

Network Software:
        FTP Software's PC/TCP
        Wollongong's WIN/TCP
Disk Space:
        4 Mbytes on hard disk
Features:
        Port of MIT X11R4 server
        Shape extension
        MIT-MAGIC-COOKIE
        XDMCP
        font compiler
        fonts supplied
        Motif, Open Look, DECWindows (VMS and Ultrix) demonstrated to work with
                this server at InterOp last year.
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC Xsight
=========
Vendor:
        PC XSight
        Locus Computing Corporation
        9800 La Cienega Blvd.
        Inglewood, CA 90301
        TEL: (800)955-6287
        CA: (213)670-6500
        UK: +44 296 89911
Price:

Latest Version:

CPU:
        8088, 8086, 286, 386
Memory:
        640 Kbytes base memory with 512 Kbytes available
        896 Kbytes extended memory
Operating System:
        MS/PC DOS 3.1 or later
Mouse:
        2 or 3 button mouse and driver (3 button mouse recommend)
Graphics:
        EGA, VGA, Hercules, or AT&T 6300
Ethernet Card:
        Excelan EXOS 205 or 205T
        3COM 3C501
        Western Digital WD8003E
        Micom NI5210
        Acer Multitech 5220
Network Software:

Disk Space:
        5-1/4-inch high-density or 3-1/2-inch diskette drive
        1 Mbyte
Features:

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
SAGE 1280 Adapter and X Windows Display Server
==============================================
Vendor:
        Sigma Designs, Inc.
        46501 Landing Parkway
        Fremont, CA 94538
        TEL: (415)770-0100
        FAX: (415)770-0110
        TELEX: 17124
Price:

Latest Version:

CPU:
        286, 386, 486
Memory:

Operating System:
        DOS 3.0 or higher or UNIX System V/386
Mouse:

Graphics:
        high end multiscanning or fixed frequency 64 kHz monitors
Ethernet Card:

Network Software:

Disk Space:

Features:
        menu-driven installation and configuration program
        1280x1024 resolution
        TIGA-340, 8514/A AI Emulation
        CGA, MDA, Hercules, VGA pass-through emulation modes
        256 colors displayable simultaneously from a palette of 16.7 million
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
TeemTalk-X
==========
Vendor:
        Pericom
        TEL: +44 (0908) 560022
Price:

Latest Version:

CPU:

Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        for IBM clones allows toggling between X and DOS
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Vista-eXceed
============
Vendor:
        Control Data Corporation
        Vista Distributing Computing
        9315 Largo Drive West
        Suite 250
        Landover, MD 20785
        TEL: (301)808-4270
Price:
        Vista-eXceed
        Vista-eXceed Plus
        Vista-eXceed Plus/8514A
Latest Version:

CPU:
        286, 386, 486
Memory:
        640 Kbytes to 1 Mbyte for DOS server
        1.64 Mbytes for Vista-eXceed Plus and Vista-eXceed Plus/8514A
Operating System:
        MS-DOS or PC-DOS 3.0 or higher
Mouse:
        2 or 3 button MS compatible mouse
Graphics:
        EGA, VGA, or SVGA
        color or analog monochrome monitor
Ethernet Card:
        any supported by TCP/IP transports listed below
Network Software:
        PC/TCP Network Software for DOS by FTP Software Inc.
        PC-NFS by Sun Microsystems, Inc.
        WIN/TCP for DOS by The Wallongong Group, Inc.
        Pathway Access for DOS by The Wallongong Group, Inc.
        LAN WorkPlace TCP/IP Transport System by Novell/Excelan
        3+Open TCP by 3COM Corporation
        HP ARPA Services by Hewlett Packard Corporation
        Net-One TCP BNS/PC by Ungermann-Bass, Inc.
        BWNFS or Telnet Package by Beame & Whiteside Software Ltd.
Disk Space:
        hard disk
Features:
        can may up to 16 Mbytes available for client processing
        emulates a 3-button mouse with a 2-button mouse
        full interactive support for X font names and alias' schemes
        locally modify keyboard mapping
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
X Appeal
========
Vendor:
        Giovanni Novelli
        Xtreme s.a.s. - Livorno, Italy
        FAX: +39-586-502310
        xappeal@xtreme.sublink.org (before 1-1-93)
        xappeal@xtreme.it          (after  1-1-93)
Price:
        $350    with quantity discounts:
                23% off for 20 copies
                39% off for 50 copies
                51% off for 100 copies
        additional 30% discount for educational institutions
        demo copies available through anonymous ftp at garbo.uwasa.fi:
                pc/demo/xap13exe.zip    (README and executables)
                pc/demo/xap10fon.zip    (local server fonts)
                pc/connect/drivers.zip  (packet drivers)
Latest Version:
        1.3
CPU:
        386SX or higher
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        MS-DOS 3.30 or later
Mouse:
        any pointing device with MS Mouse compatible driver
Graphics:
        most SVGA boards in 256 color mode
        Ahead (V5000B)
        ATI (18800)
        Chips & Technologies (82C452)
        Genoa (6400)
        NCR (77C22E)
        Oak Technologies (OTI-067)
        Paradise (WD90C00)
        Trident (8900, 8900C)
        Tseng Labs (ET3000, ET4000)
        Western Digital (WD90C00)
Ethernet Card:
        any model compatible with packet drivers
Network Software:
        TCP/IP included
Disk Space:
        at least 2 Mbytes
Features:
        full X11R5 Server implementation, including PEX and font server support
        screen painting exceeds 6000 Xstones in 1024x768 resolution (256 colors)
                on a 386/33 without 387
        support for all color classes (StaticGray, GrayScale, StaticColor,
                PseudoColor, TrueColor and DirectColor)
        run-time resolution switch and panning on a virtual screen
        emulates a 3-button mouse with a 2-button mouse
        fast cursor tracking
        full support for European keyboard layouts
        no memory limitation through use of virtual memory
        32 bit protected mode DOS-extended application
        built-in TCP/IP support, using the packet driver for the Ethernet
                board (free packet driver collection included)
        interactive configuration utility
        X Display Manager Control Protocol support (for hosts running xdm)
        X-Authorization (MIT-MAGIC-COOKIE-1)
        shape Extension for non-rectangular windows
        font compiler and RGB database utilities
        X11 fonts provided, including fonts for Sun Open Windows and DECWindows
        UNIX application support for traditional applications and
                window managers such as Motif and OPEN LOOK
        built-in rcp/rsh server, to allow file transfers and the execution
                of useful DOS functions without leaving the X environment
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Xinet X-Station
===============
Vendor:
        Xinetron
        CA
        TEL: (408)727-5509
Price:

Latest Version:

CPU:
        286, 386
Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        up to 8 clients
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Xnth
====
Vendor:
        Jerry Norman
        Nth Graphics, Ltd.
        TEL: (800)624-7552
        this X server project has been abandoned
Price:

CPU:
        286, 386
Memory:

Operating System:
        DOS 3.3 or higher
Mouse:

Graphics:

Ethernet Card:

Network Software:
        TCP/IP
Disk Space:

Features:
        supports 1280X1024 or 1024X768 resolution monitors at 256 colors (out
        of 16M) with hardware acceleration for graphics and text
        operations
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
XoftWare for DOS
================
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $395.00
        with TCP/IP $495.00
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes extended
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        EGA, VGA, SVGA or 8514
Ethernet Card:
        compatible with network software
Network Software:
        3Com 3+ Open TCP(1.2 of higher)
        DEC Pathworks TCP/IP (1.1 of higher)
        ftp PC/TCP (2.05 of higher)
        Novell LAN WorkPlace (4.01 of higher)
        Sun PC/NFS (3.5 or higher)
        Wollongong Pathway Access (2.05 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Hotkeys to DOS and MS Windows
        Passive, telnet, rsh, rexec, or XDMCP startup modes
        Motif, OpenLook, and DECWindows support
        Virtual screen Support
        International keyboard support
        Full font library in SNF format
        BDF to SNF font compiler
        Complete documentation
        Support and update service
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
XoftWare for TIGA/DOS
=====================
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $495.00
        with TCP/IP $595.00
Latest Version:

CPU:
        286, 386, 486
Memory:
        512 Kbytes
Operating System:
        DOS 3.0 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Texas Instruments TMS340-based graphics accelerator with TIGA 2.0 or
                higher whith 1Mbyte DRAM
Ethernet Card:
        compatible with network software
Network Software:
        3Com 3+ Open TCP(1.2 of higher)
        DEC Pathworks TCP/IP (1.1 of higher)
        ftp PC/TCP (2.05 of higher)
        Novell LAN WorkPlace (4.01 of higher)
        Sun PC/NFS (3.5 or higher)
        Wollongong Pathway Access (2.05 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Hotkeys to DOS and MS Windows
        Passive, telnet, rsh, rexec, or XDMCP startup modes
        Motif, OpenLook, and DECWindows support
        Virtual screen Support
        International keyboard support
        Full font library in SNF format
        BDF to SNF font compiler
        Complete documentation
        Support and update service
        Optimized for TIGA graphics accelerators
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
DESQview/X
==========
Vendor:
        Melinda
        Quarterdeck Office Systems, Inc.
        150 Pico Boulevard
        Santa Monica, CA 90405
        TEL: (310)392-9851
        FAX: (310)399-3802
Price:
        $275
Latest Version:
        1.0
CPU:
        386SX or higher (286 version available)
Memory:
        4 Mbytes recommended
Operating System:
        PC or MS DOS 3.0 or higher
        DR DOS 6 or higher
Mouse:
        MS compatible pointing device
Graphics:
        EGA
        VGA
        Super VGA
        8514/A
        256-color DGIS
        ATI 18800/28800(800x600)
        C&T 82c452(720x540)
        C&T 82c453(1024x768)
        Tseng ET3000(800x600)
        Tseng ET4000(1024x768)
        Genoa 6400(800x600)
        WD PVGA1a(640x480)
        WD90C00(640x480)
        WD90C11(800x600)
        some revisions of Headland VEGA(800x800) and Headland V7VGA(1024x768)
Ethernet Card:

Network Software:

Disk Space:
        40 Mbyte hard drive
Features:
        incorporates X into the DESQview multi-tasking DOS environment
        adds a graphical 3D look and feel to DESQview
        gives users a choice of window managers (look and feels)
        provides a growth path from character mode DOS to industry standard
                graphical user interfaces
        runs most regular DOS applications
        runs DOS Extended applications up to 4Gbytes
        can display DOS applications within graphical windows
        multitasks DOS applications and X Clients either locally or remotely
        provides a simple port of applications from other X systems to
                DESQview/X and vice versa
        gives developers a choice of application appearances, based on toolkit
                chosen
        supports toolkits that provide features required by developers such as
                push buttons, scrollbars, pop up dialogue boxes, etc.
        can run DOS text and MS Windows graphics programs locally and remotely
        Adobe Type Manager for scalable fonts and scalable DOS windows
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
eXcursion for Windows
=====================
Vendor:
        Digital Equipment Corporation
        Maynard, Massachusetts
Price:

Latest Version:
        1.0
CPU:
        286, 386, 486
Memory:
        2 Mbytes
Operating System:
        DOS
        MS Windows 3.0 or later
Mouse:
        MS Windows supported mouse
Graphics:
        MS Windows supported card
Ethernet Card:
        
Network Software:
        Decnet with PATHWORKS for DOS
        TCP/IP with PATHWORKS for DOS (TCP/IP)
        TCP/IP with PC/TCP from FTP Software, Inc.
        TCP/IP with 3Com TCP with Demand Protocol Architecture
Disk Space:
        7-15 Mbytes hard desk
        3.5-720 Kbyte or 5.25-1.2 Mbyte floppy drive
Features:
        Seperate application windows for each X applicatioon displayed by the X
                server 
        EXcursion Setup utility for installing eXcursion under MS Windows
        Control Panes provides an easy way to start X applications and
                customize environment
        Online Help
        Ability to cut and paste text or graphics between X and MS Windows
        Ability to compile new fonts
        Ability to redefine keys on the keyboard
        Personal password security access to eXcursion
        Three button mouse emulation
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
eXodus for MS Windows
=====================
Vendor:
        White Pine Software, Inc.
        40 Simon Street, Suite 201
        Nashua, HN 03060-3043
        TEL: (603)886-9050
        FAX: (603)886-9051
        email: sdarling@wpine.com
        AppleLink: WHITEPINE
Price:
        $449
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        DOS
        MS Windows 3.0 or higher
Mouse:
        recommended
Graphics:
        EGA, VGA, SVGA, DGIS
Ethernet Card:
        most cards
Network Software:

Disk Space:

Features:
        X11R4
        color and monochrome X screen support including 24bit TrueColor
        backing store and save under options
        full XDMCP support
        access control support
        online help
        3 button mouse emulation
        text and graphics transfers between MS Windows and Macintosh clipboards
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
HCL-eXceed/W
============
Vendor:
        Hummingbird Communications Ltd.
        2900 John Street, Unit 4
        Markham, Ontario, Canada L3R 5G3
        TEL: (416)470-1203
        FAX: (416)470-1207
Price:
        $595    1 copy
        $536    2-4 copies
        $476    5-9 copies
        $417    10 or more copies
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes or more recommended
Operating System:
        DOS
        MS Windows version 3 (Standard and 386 Enhanced Modes)
Mouse:
        MS compatible pointing device
Graphics:
        EGA, VGA, or VGA+
Ethernet Card:
        any compatible with the networking product you choose
Network Software:

Disk Space:

Features:
        makes full use of 8514 and other high resolution graphics cards
        redesigned for MS Windows (not an implementation of MIT X)
        copy & paste between X-Windows and MS Windows
        interactive configuration utility
        full interactive support for font naming & alias schemes
        font compiler
        log file of host-generated messages
        Backing Store and Save Unders
        virtual screen support
        seven start-up methods
        full support for European keyboards
        font, host access & RGB databases loading
        X protocol trace & dissassembly functionality
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
Micro X-WIN
===========
Vendor:
        StarNet Communications
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        Micro X-WIN $425.00 1 unit
                    $300.00 ea. 5-pack (greater discount for larger quantities)
        upgrades at 25% of original price
        educational discount of 10%
Latest Version:
        2.2.1 for X11 Release 5
CPU:
        386, 486
Memory:
        4 Mbytes
Operating System:
        MS-DOS 3.1 or higher
        MS Windows 3.1 or higher
Mouse:
        2 or 3 button with MS compatible driver
Graphics:
        MS Windows supported cards
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        Lanera TCPOpen (WinSock compatible)
Network Software Supported:
        FTP Software - PC/TCP
        Lanera - TCPOpen
        Sun - PC-NFS
        WinSock compatible TCP/IP stacks
Disk Space:
        5 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R5
        Integrated rsh/rexec with displayed results
        Auto start-up with XDMCP or rsh/rexec
        Easy additional session start-up
        Panning
        Supports Motif, OPEN LOOK, and DECWindows
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
MultiView/X
===========
Vendor:
        JSB Computer Systems Ltd.
        Cheshire House, Castle Street, Macclesfield
        Cheshire, England, SK11 6AF
        TEL: 0625 433618

        JSB Corporation
        108 Whispering Pines Drive, Suite 115
        Scotts Valley, California 95066
        TEL: (408)438-8300, (800)359-3408
        FAX: (408)438-8360
Price:

Latest Version:

CPU:

Memory:

Operating System:
        DOS
        MS Windows
Mouse:

Graphics:

Ethernet Card:

Network Software:
        RS 232 direct connections, RS 232 modem connections, Atlantix Axcess,
        Beame & Whiteside TCP/IP, D-Link TCP/IP for DOS, FTP PC/TCP,
        HP ARPA Services for DOS, IBM AIX Access for DOS users,
        ICL Oslan (int 5b), Locus PCI, Locus TCP/IP for DOS,
        MS LAN Manager for UNIX, MS LAN Manager for UNIX V2.1, NCR Token Ring,
        Novell LAN WorkPlace for DOS, SCO Xenix-Net, Sun PC-NFS,
        Ungermann-Bass Net/One, Ungermann-BassNet/One NETCI (int6b),
        Wollongong PathWay Access DOS, Wollongong WIN/TCP for DOS,
        3 Com 3+Open TCP
Disk Space:

Features:
        provides a Character Server for character applications
        emulation for DEC VT100, DEC VT220, DEC VT241, SCO UNIX/Xenix Console,
                X/Open ANSI, INTERACTIVE UNIX Console, AT&T UNIX Console
        automatically invokes the X server when an X client is selected
        passive, telnet, rsh, rexec, and XDMCP startup modes supported
        full X11R4 font library provided in standard Windows format
        BDF to Windows compiler
        copy and paste of text available
        single iconic desktop
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
PC-XView
========
Vendor:
        Network Computing Devices Inc.
        PC-Xdivision
        9590 SW Gemini Drive
        Beaverton, OR  97005
        TEL: (800)800-9599, (503)641-2200
        FAX: (503)643-8642

        There are also 15 NCD technical and sales offices around the United
                States and other international offices
Price:
        PC-Xview for Windows  $445.00 for 1  $1780.00 for 5
        Annual Maintenance    $150.00 for 1   $450.00 for 5
        Update                $125.00 for 1   $375.00 for 5
Latest Version:
        3.1
CPU:
        286, 386 (386 recommended)
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        MS-DOS or PC-DOS 3.0 or higher
        MS Windows 3.0/3.1 or Windows NT
Mouse:
        recommended but not needed
Graphics:
        any compatible with MS Windows
Ethernet Card:

Network Software Needed:
        TCP/IP
        DECnet
Disk Space:
        7 Mbytes (10 Mbytes recommended)
Features:
        runs MS Windows applications alongside X clients
        cut and paste between X clients and MS Windows
                applications using the Windows clipboard
        full support of X11R4 features, including the Shape extension
        off-loads graphics processing from host computers
        runs in both standard and enhanced modes of MS Windows
        manages X clients with a standard remote window manager or
                with MS Windows
        full X11 fonts provided, including fonts for Sun Open Windows
                and DECWindows
        Windows-based compiler that converts Bitmap Description Format
                BDF fonts to MS Windows format(FON) fonts
        Windows-based file transfer program
        prints files from a remote host on your local printer
        built-in client starter
        Windows-based installation and configuration
        DDL support for network interfaces
        easy installation procedures
        X Display Manager Control Protocol(XDMCP) support
        support for multiple TCP/IP network packages
        comprehensive and well organized User's guide
        Graphics Cut & Paste
        Virtual Screen support
        support the XRemote protocol (developed by NCD)
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
Vista-eXceed
============
Vendor:
        Control Data Corporation
        Vista Distributing Computing
        9315 Largo Drive West
        Suite 250
        Landover, MD 20785
        TEL: (301)808-4270
Price:
        Vista-eXceed/W
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes for MS Windows server
Operating System:
        DOS 3.0 or higher
        MS Windows 3.0
Mouse:
        2 or 3 button MS compatible mouse
        MS Windows supported mouse
Graphics:
        EGA, VGA, or SVGA
        any supported by MS Windows
Ethernet Card:
        any supported by TCP/IP transports listed below
Network Software:
        PC/TCP Network Software for DOS by FTP Software Inc.
        PC-NFS by Sun Microsystems, Inc.
        WIN/TCP for DOS by The Wallongong Group, Inc.
        Pathway Access for DOS by The Wallongong Group, Inc.
        LAN WorkPlace TCP/IP Transport System by Novell/Excelan
        3+Open TCP by 3COM Corporation
        HP ARPA Services by Hewlett Packard Corporation
        Net-One TCP BNS/PC by Ungermann-Bass, Inc.
        BWNFS or Telnet Package by Beame & Whiteside Software Ltd.
Disk Space:
        hard disk
Features:
        can may up to 16 Mbytes available for client processing
        emulates a 3-button mouse with a 2-button mouse
        full interactive support for X font names and alias' schemes
        locally modify keyboard mapping
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
X11/AT
======
Vendor:
        Intergrated Inference Machines, Inc.
        Computer Products Division
        1468 East Katella Avenue
        Anaheim, CA 92805-9806
        TEL: (714)978-6201 and (714)978-6776
        FAX: (714)939-0746
Price:

Latest Version:

CPU:
        286, 386, 486
Memory:
        640 Kbytes base memory
        2 Mbytes extended memory
Operating System:
        MS-DOS 3.1 or later
        MS Windows 3.0 or later
Mouse:

Graphics:
        any graphics card and that supports MS Windows - EGA or VGA resolution,
                or better, are recommended
        CGA (Color Graphics Adapter)
        COMPAQ Portable III or Portable 386 plasma display
        EGA with high-resolution color display
        EGA whith low-resolution color display
        Hercules with high-resolution monochrome display
        IBM 8514/A display
        Olivetti monochrome or PVC display
        Olivetti OEC display
        WYSE high resolution monochrome
        Moniterm Viking monochrome
        VGA (Video Graphics Array)
Ethernet Card:
        also compatible with Excelan, 3COM, Ungermann Bass, Western Digital,
        Tiara, IIM's X/PAC, and others
Network Software:
           Either Excelan's TCP/IP Driver Set or FTP Inc. PC/TCP Driver Set
                   (not included with X11/AT)
Disk Space:
        at least 2.5 Mbytes of storage capacity available for X11/AT software,
        excluding optional X fonts; to use all X fonts supplied with X11/AT,
        a total of 5.5 Mbytes is required
Features:
        Concurrent MS-DOS & X Windows operation
        Concurrent X Windows & Telnet operation
        Cut & Paste utility, FTP utility
        Font compiler for user-developed fonts
        Telnet and FTP utilities included
        compatible with the following FTP software programs, when not operated
                under MS Windows:
                ftp, the file transfer protocol client
                ftpsev, the file transfer protocol server
                interdrive, the network file system (NFS)
                ping, a network test
                tnvt, the telnet virtual terminal client
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
X-One
=====
Vendor:
        Grafpoint
        1485 Saratoga Avenue
        San Jose, CA 95129
        TEL: (800)426-2230 7:30-5:00 PST, (408)466-1919
        FAX: (408)446-0666
        uunet!grafpnt!sales
Price:
        (free demo copies)
Latest Version:

CPU:
        386, 486
Memory:
        2 Mbytes
Operating System:
        DOS 3.1 or higher
        MS Windows
Mouse:
        2 or 3 button mouse
Graphics:
        VGA
        Super VGA
        8514A
        TIGA
        VGA boards with S3 chip set
Ethernet Card:

Network Software:
        Grafpoint's TCP/IP included
Disk Space:

Features:
        X11R4
        on-screen setup
        builtin TCP/IP
        supports local clients such as telnet/vt100 window, a setup window,
                an rsh window, a local window manager
        DOS and Windows versions in one product
        hot key to DOS
        90 days of telephone technical support
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
XVision
=======
Vendor:
        VisionWare Limited            White Pine is re-badging XVision as
        57 Cardigan Lane                      eXodus for Windows
        Leeds LS4 2LE                         40 Simon Street, Suite 201
        United Kingdom                        Nashua, HN 03060-3043
        TEL: (0532) 788858                    TEL: (603)886-9050
                +44 532 788858                FAX: (603)886-9051
        FAX: (0532) 304676                    sdarling@wpine.com
                +44 532 304676                AppleLink: WHITEPINE
        vware@visionware.co.uk        
Price:
          $449.00  1 users         $9100.00 30 users
         $1800.00  5 users        $11850.00 40 users
         $3600.00 10 users        $14600.00 50 users
         $6350.00 20 users        educational discounts available
        adding a user where at least 10 are installed - $275.00
        XRemote support per PC:  bundled - $95.00        upgrade - $150.00
        full documentation - $60.00        evaluation copy - $60.00
Latest Version:
        4.1
CPU:
        286, 386, 486
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        DOS 3.0 or later
        MS Windows 3.0 or later
Mouse:
        recommended but not required
Graphics:
        MS Windows compatible graphics
Ethernet Card:

Network Software:
        FTP PC/TCP
        Excelan LAN Workplace for DOS
        Locus TCP/IP for DOS
        Ungermann Bass NET/ONE TCP-PC
        Wollongong WIN/TCP for DOS
        Beame & Whiteside TCP/IP
        Sun PC-NFS
        HP LAN Manager (ARPA Services for DOS)
        3Com 3+ Open
Disk Space:
        5-1/4-inch high-density or 3-1/2-inch high-density
Features:
        copy and paste between X and MS Windows
        use a host window manager or allow MS Windows to control X clients
        support for all color classes (StaticGray, GrayScale, StaticColor,
                PseudoColor, TrueColor and DirectColor)
        several user options for performance enhancement
        X11 Release 5 server
        fonts and server extensions including XDMCP
        ICCCM compliant
        X clients may also use MS Windows fonts
        easy configuration of the system via dialog boxes
        provides the functionality of a three-button mouse
        support for all international keyboards supported by Windows
        host access control
        network-aware setup and on-line help
        iconic control panel for configuring XVision
        Dynamic Server Optimizations (XVision runs tests on the PC at install
                time to see how best to draw to the display)
        support for:  NCD XRemote, DECnet, SHAPE extension, 24-bit color,
                MS Windows font managers, all color classes, rsh, rexec
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
XoftWare
========
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $495.00
        with TCP/IP  $595.00
Latest Version:

CPU:
        386, 486
Memory:
        2 Mbytes extended
Operating System:
        DOS 3.1 or higher
        Windows 3.0 or higher
Mouse:
        MS Windows compatible mouse
Graphics:
        card with MS Windows driver
Ethernet Card:

Network Software:
        Beame & Whiteside TCP/IP (2.2 or higher)
        ftp PC/TCP (2.05 of higher)
        DEC Pathworks (4.0 or higher)
        HP ARPA Services (2.1 or higher)
        Novell LAN WorkPlace (4.01 or higher)
        Sun PC/NFS (3.5 or higher)
        Ungermann-Bass Net/One TCP (16.5 or higher)
        Wollongong Pathway Access (4.1.1 or higher)
        Wollongong WIN/TCP (1.1 or higher)
        3Com 3+ Open TCP (1.2 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Context Sensitive on-line help system
        Cut and paste between X and MS Windows
        Start X applications with MS Windows icons
        Single and multiple window modes
        MS Window manager used with X applications
        Virtual screen up to 32,767 by 32,767
        Passive, telnet, rsh, rexec, and XDMCP startup modes
        Backing store and save unders
        Motif, OpenLook, and DECWindows support
        Full font library in FON format
        BDF to MS Windows FON font compiler
        Log file optionally saves system messages
        Tutorial on the X Window System
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==
IBM X-Windows for OS/2
======================
Vendor:
        IBM Solutions Center
        Voice: 1-800-IBM-CALL
        FAX:   1-303-440-1639
Price:
        $150 plus $200 for IBM TCP/IP for OS/2 (required)
Latest Version:
        Version 1.2.1
        Part Number 02G6980 (X-Windows)
                    02G6968 (TCP/IP)
CPU:
        386SX or higher
Memory:
        6 Mbytes recommended (4 minimum)
Operating System:
        IBM OS/2 2.0 or higher
Mouse:
        OS/2 compatible pointing device
Graphics:
        EGA, VGA, Super VGA, 8514/A, XGA, or other OS/2 supported card
Ethernet Card:
        compatible with OS/2 (NDIS)
Network Software:
        IBM TCP/IP (required)
Disk Space:
        80 Mbyte hard drive
Features:
        incorporates X into the OS/2 advanced PC operating system
        provides full X11R4 server, X font library, X font compiler,
                X client utilities
        runs as another object on the WorkPlace Shell (WPS) desktop
        cut and paste between OS/2, DOS, and Windows applications running under
                OS/2 full TCP/IP implementation including ftp, telnet, lamail,
                ping, finger, SLIP, rsh, remote printing, BOOTP, VT100/220, and
                many more
        other modules available, including NFS, Programmer's Toolkit (includes
              Kerberos, RPC, DPI, NCS, ftp API, sockets API, Resolver API),
              and more
==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==

=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh
eXodus
======
Vendor:
        White Pine Software, Inc.
        40 Simon Street, Suite 201
        Nashua, HN 03060-3043
        TEL: (603)886-9050
        FAX: (603)886-9051
        email: sdarling@wpine.com
        AppleLink: WHITEPINE
Price:
        $295
Latest Version:
        3.0
CPU:
        all Macintosh computers
        eXodus II runs on Macintosh computers with a 68020 or 68030 processor
                and a floating point co-processor
Memory:
        2 Mbytes
Operating System:
        version 6.0 or later
        version 6.0.3 or later if you plan to use Communications Toolbox for
                network connections
Mouse:

Graphics:

Ethernet Card:

Network Software:
        TCP/IP - MacTCP by Apple Computer, Inc. (part of CommSolutions)
        TCP/IP - TCPort/LAN Workplace by Novell, Inc. (formerly TCPort/Host
                Access)
        DECnet - TSSnet by Thursby Software Systems, Inc. (a special version
                is distributed as part of CommSolutions)
        DECnet - CommUnity-Mac distributed by Everex, Inc.
        DECnet - DECnet for Macintosh (part of PATHWORKS by Digital Equipment
                Corporation)
        ADSP - PATHWORKS distributed by Digital Equipment Corporation
        AppleTalk
Disk Space:

Features:
        supports MultiFinder
        under A/UX, clients and server run on the Macintosh
        under Macintosh Operating System, clients run on another computer
        conforms to the Macintosh Human Interface Guidelines
        user standard Macintosh pull-down menus
        functions as a Macintosh program under the Macintosh Operating System
        handles Macintosh events
        can use normal Macintosh environment
=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh

=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh
MacX
====
Vendor:
        Apple Computer, Inc.
        Cupertino, CA 95014
        TEL: (408)996-1010
        TLX: 171-576
        or any Apple dealer (BusinessLand,MicroAGE, etc.)
Price:
        MacX                        Order No. M0108LL/C   ??
        MacX Manual Set             Order No. M0602LL/B   ??
        MacX 1.1.7 Update Product   Order No. M1197LL/A   ??
        Mac X and X11 Site License  Order No. M0749LL/C   ??
Latest Version:
        1.2
CPU:
        any Macintosh
Memory:
        2 Mbytes
Operating System:
        system software 6.0.5 or later
Mouse:

Graphics:
        1-bit and 8-bit graphics
Ethernet Card:

Network Software:
        LocalTalk, Ethernet
Disk Space:
        at least two floppy disks for 6.0.5 or later
        3.5 Mbytes hard disk tor 7.0
Features:
        X11 release 4 server
        ICCCM-compatible cut and paste of text AND graphics between the
                Macintosh and X11
        SHAPE extension (including SHAPED windows on the Macintosh desktop)
        optional built-in ICCCM-compliant window manager
        built-in BDF font compiler
        built-in standard colormaps
        built-in window managers
        support for system software version 7.0
        support for multiple monitors
        copy and paste text and graphics
=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh

=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==
UNKNOWN
========
Vendor:

Price:

Latest Version:

CPU:

Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        Amiga 3000 machines offer an X server and OPEN LOOK tools and libraries
                on a full SVR4 implementation
=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==

=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==
X Window System Version 11 Release for the Amiga Computer
=========================================================
Vendor:
        GfxBase, Inc.
        Dale Luck
        1881 Ellwell Drive
        Milpitas, CA 95035
        TEL: (408)262-1469
        FAX: (408)262-8276
        Usenet: boing!dale
        Bix: duck
        amiga!boing!dale@bloom-beacon.mit.edu
Price:
     $395.00 ($90.00 yearly maintenance fee)
Latest Version:
        4.1
CPU:
        AmigaDos computer:
                A1000
                A2000
                A2500
                A3000
                A3000T
                A4000
                A500
                A600
Memory:
        1 Mbyte for Server and 640x400 2-color display
        more RAM required for local clients
Operating System:
        AmigaDOS Operating System V1.3 or later
Mouse:
        Amiga 2 button mouse, or optical 3 button mouse, tablet, trackball,
                or International keyboard
Graphics:
        NTSC to 1440x482(60hz), PAL(1440x568 50 hz)
        Overscan, genlock and interlace supported
        A2024/Viking 1 1024x8000(60hz), 1024x1024(50hz)
        Super Screens to 2560x2560 scrollable on smaller display
        Productivity screen - 640x480 60hz noninterlaced (640x960 interlaces)
        Two colors out of a palette of 4096 can be selected.  Cursor has two
                separately controlled colors
        Color server: 2,4,8,16,32 colors from 4096.  A2024/Viking 1 - 4 gray
                scales.  Some resolutions restricted
        GDA1 640x480, 800x600, 1024x800 noninterlaced 256/16M
        Ameristar 1600GX 1280x1024, 1600x1280 noninterlaced 256/16M
Ethernet Card:
        Commodore A2065
Network Software:
        Commodore TCP/IP or Syndesis DECnet for ethernet and serial
                connections, SANA for local
Disk Space:
        7-14 Mbytes
Features:
        contains X11R4 clients, fonts, etc.
        Amiga Xpr uses the standard Amiga printer device technology which
                supports more that 50 different types of printers.  Black and
                White of Color
        Xamiga R4 monochrome and color servers
        optional programmer's toolkit includes the header files, libraries,
                and sample programs
        Optional mwm window manager
        Optional toolkits/widgets Motif, XView, HP
=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==

=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari==
X/TOS/window/server and X/TOS/window/server/color
=================================================
Vendor:
        X/software Michael Gehret
        X/TOS division
        Marktstrasse 8
        W-8944 Groenenbach
        Germany
        TEL: +49 8334 1411
        FAX: +49 8334 6245
        email: xtosinfo@xsoft.uucp
Price:
        X/TOS/window/server (for all TOS computers)         DM 1,098.00
        X/TOS/window/server/color (for all TOS computers)   DM 1,498.00
        option 030 (for 68030 or 68040 processors only)     DM    98.00
        X/TOS/window/server/color option 030 and option PEX T.B.A.
        overseas order handling                             DM   100.00
        none-EC European order handling                     DM    50.00
Latest Version:
        502.*
CPU:
        Atari Mega ST, STE, TT
        68000 to 68040
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        TOS 1.4 or higher
Mouse:
        Atari mouse
Graphics:
        X/TOS/window/server:
                monochrome 640x400x1,
                monochrome 1280x960x1 (TT, SM194)
        X/TOS/window/server/color:
                monochrome 640x400x1,
                monochrome 1280x960x1 (TT, SM194)
                color 320x200x4
                color 640x200x2
                color 640x480x4
                color 320x480x8
Ethernet Card:
        Atari Card (Mega or VME bus)
        Riebl/Wacker (Mega or VME bus)
--------------------------------- End Enclosure -----------------------------
____________________________________________________________________________
| Peter J. McKinney                     pm860605@longs.LANCE.ColoState.Edu |
| Electrohydrodynamic Laboratory                                           |
| Fluid Mechanics and Wind Engineering Program                             |
| Civil Engineering Department                                             |
| Colorado State University                                                |
----------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68013
From: jsw@icf.hrb.com (Jeffrey S. Weber)
Subject: XView, SUN XGL, performance problem


I've written an application for SparcStation 2 GX+, under OpenWindows 3.0.

The application uses XView stuff to create my window, and the SUN XGL
graphics library for rendering into the Canvas.

The application does real-time 2-D animation, but it does not update the
the display fast enough.
I'm using notify_set_itimer (XView call) to periodically kick off my
update routine, and it's not happening fast enough. I want it to
update 25 times / second. It's only doing about 11. Also, it appears to
be compute bound, because if I run anything else while my appplication is
up, the update rate slows down even more.

Any ideas ?
Thanks.

Newsgroup: comp.windows.x
document_id: 68014
From: morgaine@siap.sublink.org (Nadia Pitacco (Morgaine))
Subject: Dump of login screen


  I'm running HP-UX 8.07 with HP VUE 2.01 and I need a hardcopy of
  the login window (the one asking  for login and password) to 
  include in a manual. 
  I have tried:
   xwd -display hostname:0 -root -out login.xwd 

  from a login on a remote terminal, but it doesn't work. 
  Xwd seems to wait for the window server, but the window
  server doesn't answer. 

  Any suggestions? I must use xwd because I don't have access to
  ftp and I can't obtain another program to grab the screen.

  Thanks in advance
                                           Nadia Pitacco

-- 
	-------------------------------------------------------
	-  Nadia Pitacco                 SIAP Sistemi S.p.A.  -
	-  via G.B. Grassi, 93 - 20157 Milano ITALY           -
	-  E-Mail: morgaine@siap.sublink.org                  -

Newsgroup: comp.windows.x
document_id: 68015
From: farrow@ucsu.Colorado.EDU (J. Scott Farrow)
Subject: Re: Looking for X windows on a PC

mark@taylor.uucp (Mark A. Davis) writes:

>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:

[...]

>*BUT*  your performance WILL suck lemons running an Xserver on a clone.
>(From experience).  You would be much better off with an Xterminal if this
>is a new install.  The performance will be at least four times better.
>In addition it would be MUCH easier to install and use.  On top of that
>they will cost about the same (price a clone with 4MB RAM, ethernet card,
>very high performance graphics card, GOOD monitor, server software, TCP/IP
>for clone software, mouse, keyboard, etc, etc, etc.... you spend a whole
>lot of $$$$).

>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>is over 80000 Xstones.....
>-- 
>  /--------------------------------------------------------------------------\
>  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
>  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
>  \--------------------------------------------------------------------------/

I think your performance will depend upon the X server. 

I'm running Linux and XFree86 on a 33Mhz 486DX with 4MB of RAM (8MB swap) and
it runs just fine.  Its a lot better than some of the crappy old Xterminals
in the labs at school anyway.

You could probably outfit a 386SX with a minimal Linux/X setup for $900
and be better off than with an Xterminal. IMHO.


Scott
--
-------------------------------------------------------------------------
J. Scott Farrow	- Student SysAdmin/Programmer, University of Colorado
Computing & Network Services, Boulder, Colorado, USA, phone:(303)492-4428
Internet: farrow@spot.colorado.edu           "Linux Users Do It For Free"

Newsgroup: comp.windows.x
document_id: 68016
From: root@grok3.ColumbiaSC.NCR.COM (Ernie Coskrey)
Subject: Re: xterm fonts

In article <1993May11.133626.7425@taylor.uucp>, mark@taylor.uucp (Mark A. Davis) writes:
|> I have a problem which many of you might have run into.  We use LOTS of
|> ASCII terminals and use them to the max.  Meaning lots of attributes, line
|> draw, etc.   Now what I need to do is come up with a working xterm which
|> will emulate our advanced ASCII terminals as closely as possible.
|> 
|> This means needing all attributes to work, including bold and line drawing.
|> The only fonts which seem to meet these criteria are a pairs of fonts in
|> which one is bold and the other normal, while both have linedraw, fixed
|> spacing, and several sizes.
|> 
|> The only standard fonts which work are the fonts like 9x15 and 9x15B under
|> "misc".  They work great, except I need a font one size larger, 10x20.  Now
|> 10x20 works well, but there is no bold counterpart!
|> 
|> To make matters worse, I need the fonts in some form I can use for Tektronix
|> Xterminals.  It seems they like .pcf format, although I should be able to
|> convert a .bdf format.
|> 
|> Anyone have any suggestions?
|> -- 
|>   /--------------------------------------------------------------------------\
|>   | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
|>   | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
|>   \--------------------------------------------------------------------------/

This would be tedious, but if you have the time you could get the .bdf
file (I can email it to you if you don't have it or don't have easy access 
to the X source), and could make your own bold font from this.  Since each
glyph is just a bitmap, you could write a program to convert each
glyph to a bitmap-readable file, use bitmap to make each glyph "bold", and
convert the results back to .bdf format.  Then, use "bdftopcf" to create
the .pcf file.  Then, stick the .pcf in /usr/lib/X11/fonts/misc (or wherever)
and include it in fonts.dir and, voila, you'll have what you need!

-- 
Ernie Coskrey            (803) 926-2071    NCR Corporation - MCPD Columbia
Ernie.Coskrey@ColumbiaSC.NCR.COM           3325 Platt Springs Road
                                           West Columbia, SC 29170
"I'm out there busting my buns every night.  Tell your old man to drag Walton
and Lanier up and down the court for 48 minutes." - Roger Murdoch, co-pilot

Newsgroup: comp.windows.x
document_id: 68017
From: barmar@think.com (Barry Margolin)
Subject: Re: TWM

In article <1993May12.161857.29950@samba.oit.unc.edu> naoumov@physics.unc.edu (Sergei Naoumov) writes:
>I run twm and would like to execute some program before leaving twm. In other
>words I would like to run some program before I do f.quit. Is it possible
>to make a menu section which would contain these two parts?

In your menu definition, put:

    "Quit TWM" f.function "Execute and Quit"

Then define:

Function "Execute and Quit" {
    !"some_program"
    f.quit
}

-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
document_id: 68018
From: scott.frost@cas.org (Scott Frost)
Subject: How to draw in Invert mode with Color

  How can I draw an object of a specified color over objects of varying colors
  and then erase it without having to redraw everything else?

  What's happening is this,

      If I draw it using GXcopy, it is drawn in the specified color.  If I erase
      it using GXcopy with foreground and background reversed, it erases 
      whatever it overlayed.  I then need to redraw
      all of the items it crossed.  Yuch.

      If I draw it using GXinvert it is drawn in a random color - nothing 
      resembling what I requested.  It properly restores the color of 
      underlying objects in erase mode.

  What's the solution?
     

-- 
Scott K. Frost                  UUCP: osu-cis!chemabs!scott.frost
Same Mbox: BITNET: skf26@cas    INET: scott.frost@cas.org
Personal: 2753 Shrewsbury Rd, Upper Arlington Oh 43221 

Newsgroup: comp.windows.x
document_id: 68019
From: LIST@AppleLink.Apple.COM (LIST 9PisPITOSTY,IDV)
Subject: Syncronous Modal Dialog

Hi,
I have a lots of problems using XView (libraries Release 3.2) in order to
do the following:
+ I want to create a MODAL Dialog which block the program flow
  (a syncronous dialog, ala Macintosh) , as the Notice Panel
  does, but with Text Item, List Item, and other XView objects.
+ The MODAL Dialog also must allows the Timer to be called (why
  Notice doesn't do that?).
 
The problems are:
- Using the "xv_window_loop" functions most XView objects dont work
  (as the List Item), and the timers aren't called.
 
- With the "notify_dispatch" explicit I have problem because:
  "...never attempt to do direct dispaching from within a callback
  routine..." as say the "XView Programming Manual (Third Edition)"
  on page 486 (uhm... I know this number!!! :->).
  But I need to do dispatching just inside a callback routine!
 
Help me, please!!!
 
Thanks in advance,
--- Giovanni
 
P.S. Please, send replay directly to my address belove (I haven't
direct access to Internet).
 
Giovanni Beani
LIST S.p.A. P.za Dei Facchini, 10 - 56125 PISA
FAX  (050) 500697
_______________________________________________
My email address is: LIST@AppleLink.apple.com
BEWARE: This address is shared by many users,
so put the word "GBeani:" at the start of SUBJECT
field and follow it by the real subject. Thanks.
 


Newsgroup: comp.windows.x
document_id: 68020
From: pngai@adobe.com (Phil Ngai)
Subject: Re: Looking for X windows on a PC

In article <1993May12.170631.18675@qdeck.com> support@qdeck.com (Technical Support) writes:
>May I humbly suggest DESQview/X? (Of course, I'm biased...)

I have a weird, oddball, one of a kind video card. It's an
Orchid Fahrenheit. I get to run it in 640x480 with DVX. At
least I don't have to worry about straining my eyes with that
Super VGA stuff.


Newsgroup: comp.windows.x
document_id: 68046
From: gowen@forte.cs.tufts.edu (Gregory Owen)
Subject: Re: Sun 4 as X terminal


>> Xkernel is available for Sun 3/50s.  Is there a similar package available
>  ^^^^^^^
> 
> Is this public domain? If yes, where can one obtain a copy from?
	Yes, it is.  It is available at ftp.ctr.columbia.edu, probably
in pub/xkernel.  

	In response to the earlier gentlemans question, you could
theoretically recompile xkernel on a sun4.  The binaries available are
for the sun3/50, but the author says it could be used on most
architectures, and he does have a 'do-it-yourself' type distribution.

	We use Xkernel for about 7 machines here.  email me if you
have any questions I can help you with...

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d-- -p+ c+++ l++ m*/m- s++/- g+ w+/w-- t+ r-- x+

Newsgroup: comp.windows.x
document_id: 68047
From: bills@feenix.metronet.com (Bill Scott)
Subject: Re: Online Help Motif Widget?

In article <1993May12.195300.14016@serval.net.wsu.edu> d3e758@bucky.pnl.gov (JE Pelkey) writes:
>
>I am looking for online help Motif widgets (public domain or otherwise) to
>run on a Sun Sparc.
>
>I'd be especially interested in help widgets that can integrate hypertext 
>help, graphics, etc.
>
>Anybody know of any widgets like this?
>
	Text & Graphics:
	Bristol Technologies has help clone of MSWindows help
	Frame (makers of FrameMaker) has FrameView

	Text only:
	Graphical Software Technology has Xtra Widgets (includes help)

	There are probably others (check out ICS widget data book)

I actually wrote one for the last company I worked for-- however it is
locked in their internal reuse library.  :-(  
It was a good one too! (IMHO and totally unbiased view of things) ;-)

-- 
..........................................................
Bill Scott                 |  bills@feeninx.metronet.com
HI/Graphics Consultant     |    Wk 817 967 3877
American Airlines          |

Newsgroup: comp.windows.x
document_id: 68048
From: olav@nordic-offshore.no (Jan-Olav Eide)
Subject:  ICS Widget data book

Does anyone know how I can obtain information about the ICS widget data book?
I only have their email address, and they don't seem to be reading (or 
replying) to their mail.


 -------------------------------------------------------------------------- 
! Jan-Olav Eide, Software Engineer / Systems Administrator                 !
! snail mail :                      ! email :                              !
! Nordic Offshore Systems           ! olav@nordic-offshore.no              !  
! Drilling Information Services     ! voice :                              !
! Ringsveien 3, Box 185             ! (+47) 67125580 ext. 211              !
! 1321 Stabekk                      ! fax   :                              ! 
! Norway                            ! (+47) 67125401                       !
! "I don't believe in astrology.  But then I'm a Capricorn, and            !
! Capricorns don't believe in astrology"                                   !
 --------------------------------------------------------------------------


-- 
 -------------------------------------------------------------------------- 
! Jan-Olav Eide, Software Engineer / Systems Administrator                 !
! snail mail :                      ! email :                              !
! Nordic Offshore Systems           ! olav@nordic-offshore.no              !  

Newsgroup: comp.windows.x
document_id: 68056
From: pannon@bcsfse.ca.boeing.com (Joe Pannon)
Subject: Geometry in font units in place of pixels

I am planning to convert my Motif 1.2 app from pixel to font units
which would all be set in the app's resource file instead of hard coded
in the program.

However, the word here is from people who tried this already that for
some unknown reason XmForm offsets placed in the resource file are still
interpreted in pixel units forcing people to code those offset font units into the program.

Can somebody confirm this?

Thanks,
Joe Pannon
pannon@bcsfse.ca.boeing.com

Newsgroup: comp.windows.x
document_id: 68057
From: koblas@netcom.com (David Koblas)
Subject: Button 3 popup menus with Athena widgets

Ok, I'm being driven batty.


Trying to create popup-menus (ie. button3 press, and a menu
appears).  I would really like to use the standard Athena
classes to achieve this goal, but for my best attempts
I cannot get the menus to come up without using a MenuButton
as the parent of the widget tree.  I know this should be
possible to to with an XtPopupSpringLoaded() and a
little twiddling, but something is escaping me.

-- 
name       : David Koblas                 domain: koblas@netcom.com
affiliation: Extra Mile Consulting	   phone: +47 (83) 38663
quote: "Time has little to do with infinity and jelly donuts."

Newsgroup: comp.windows.x
document_id: 68068
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: Tool to convert a gif file to xpm pixmap format


I need the tool described in the subject line. Is there such a 
tool available via ftp? If so, I'd appreciate it if someone could
e-mail me the location and pathname.

Thanks.

-------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com

Newsgroup: comp.windows.x
document_id: 68069
From: tan@lynx.msc.cornell.edu.UUCP (David Tan,Box 219 Baker Lab,54810,2720402)
Subject: Ignorant Imake/xfig question

Hi folks,

I'm trying to compile xfig 2.1.7 on a SS1+ running SunOS 4.1.1 and OW 2.0,
and I'm having a little trouble with make/imake.  Specifically, make bombs
when it needs to use any Xaw file.  This isn't surprising since X11 files
on Suns with the standard OW 2.0 distribution are in various places under
/usr/openwin (Xaw files are in /usr/openwin/share/include/X11/Xaw !!)
Actually, the real problem is that I know squat about imake, and I don't
know how to tell imake where the X11 files are.  I can see from the 
Makefile that it's looking in the wrong places, but the first line of the 
Makefile reads 

   # Makefile generated by imake - do not edit!

Help!  Is there some way I can edit the Imakefile to tell it where to
look?  (I have set DEFINES = -DOPENWIN_BUG, as it said to in the README
file.)

Email and post are both fine.

Thanks in advance,

Dave

Newsgroup: comp.windows.x
document_id: 68070
From: anigbogu@poinsignon.loria.fr (Julian Anigbogu)
Subject: X11R5 on Solbourne

Hi Netters,
	Having inherited a Solbourne (S-4000 : Sun 4 Compatible), I was wondering
if somebody has ported X11R5 to this beast. Since Solbournce Computer Inc. folded
up I don't know where I can get the kernel to move from R4. Since they never
joined the MIT Consortium, the regular distribution doesn't work. Any pointers
will be highly appreciated.

Julian
-- 
   ______             
     /     /)         
  __/_    // o __  __ 
 (_/ (_(_(/_(_(_<_/ <         			Julian.Anigbogu@loria.loria.fr


Newsgroup: comp.windows.x
document_id: 68074
From: vadi@csi.com (Vadivelu Elumalai)
Subject: X Screen Saver


Hi!

	I have a question which is not directly related to X Screen Saver.

What X Screen Saver does is to blank the screen if it has been idle for
some time.  I don't want my screen to go blank but to get locked or call
xlock program.

	Is there a parallel call to XSetScreenSaver() which locks my screen
or call my lock program after certain amount of idle time?  Or is there a
way to find out how long the server has been idle?

Thanks
-Vadi       (vadi@csi.com)

Newsgroup: comp.windows.x
document_id: 68075
From: jarnot@kin.lap.upenn.edu (Kevin J. Jarnot)
Subject: Re: Looking for X windows on a PC

In article <C6wLIJ.L5K@bailgate.gpsemi.com> wilkinson_m@roborough.gpsemi.com writes:
> Hi All,
>        This is the first time I've posted to the net, so I hope this is
> going to the right people.
>   I'm looking for software packages that run on an IBM PC clone that
> allows me to display Openlook and motif windows on the PC. 


I highly recommend Starnet's Micro-X.  They have versions for DOS and Windows,
with support for PC/TCP, or the Clarkson packet drivers.  I have used it
successfully with twm, mwm, and olwm, over both ethernet and SLIP.
And their tech support is top notch.  They really impressed me.  

Kevin
-- 
Kevin J. Jarnot (jarnot@kin.lap.upenn.edu)      | "The monkey-boys are evil - 
Lead Programmer/Analyst/Keyboardist             | Lord Whorfin is supreme..."
Univ. of Pennsylvania Language Analysis Center  |  
3700 Market St, Suite 202  Phila, PA 19104      |       "Vita Non Jerk"

Newsgroup: comp.windows.x
document_id: 68076
From: schase@xodus.MITRE.org (Steven Chase)
Subject: Re: UIMX - A Motif Application Generator

In article <1993May11.152807.21386@xact.demon.co.uk> ptm@xact.demon.co.uk (Paul Thomas Mahoney) writes:

   Newsgroups: comp.windows.x
   Path: linus.mitre.org!linus!agate!howland.reston.ans.net!torn!nott!bnrgate!bnr.co.uk!uknet!warwick!qmw-dcs!qmw!demon!xact.demon.co.uk!ptm
   From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
   Organization: X-Act Solutions Limited
   X-Newsreader: Tin 1.1 PL3
   Date: Tue, 11 May 1993 15:28:07 GMT
   Lines: 8

   I am looking of information regarding UIMX. I believe this is an application
   front end generator tool for Motif (among others). Whould someone given me a
   contact? I need to get hold of the programmers' guide, or something like it.
   -- 
   Paul Mahoney, X-Act Solutions Limited
   smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
   email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
   phone: +44 424 846368





I went to the XWorld convention in NY and talked to the people
from Bluestone who make UIMX.  They sent me a HUGE 3 ring binder
of info and a demo tape.  Let me know what you need.

Steve Chase
schase@xodus.mitre.org

Newsgroup: comp.windows.x
document_id: 68077
From: boutilie@rtsg.mot.com (Eric Boutilier)
Subject: Re: Looking for X windows on a PC

> pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney) writes:

> Price:
> 		PC-Xview for DOS      $445.00 for 1  $1780.00 for 5


NCD just announced a new generation of PC-Xview. They
changed the name a little though and I can't remember
exactly... PC-Xsomething.

It now supports Windows and their press release
implies that since it's still priced in the $500 range
and it's so feature-full why buy anything else?
(Disclaimer: This is not a direct quote from the 
literature, but I think it sums it up. Also, I have
never used the product.)

Newsgroup: comp.windows.x
document_id: 68078
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: How to make a window's input be ALL CAPS without Caps Lock?

An application we *must* use requires upper-case input.  I'd like to be
able to simply move my cursor into the window where that application is running
(just a text window, xterm or some such) and have everything I type be entered
as ALL CAPS.  When the cursor is in any of my many other windows, I want to
automatically return to normal functionality.  I have point-to-type set.

Is there a way to do this in X (specifically OW 3.0 on SPARCs)?  Is there a
way to mess with .Xdefaults to make a category of window do this?  Any
hints would be most appreciated.  I program in C but not X, although I can
pick up somthing that's not too involved.

Thanks kindly.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
document_id: 68081
From: rrk@bones.et.byu.edu (Robin Kinzy)
Subject: Resource listing for X11R5


Does anyone know of a source (book, file, etc.) of ALL the standard 
resource names in X11R5? A small description of what the resource
IS would also be helpful, but not vital. Any help in which direction
to go would be greatly appreciated.

Thanks. 
Robin Kinzy

 =================================================================
| Office :                            |   Home :                  |
|                                     |                           |
| Brigham Young University            |                           |
| College of Engineering & Technology |   Robin R. Kinzy          |
| 270 Clyde Building                  |   1080 E. 700 N.          |
| Provo, UT 84602                     |   Provo, UT 84606         |
|                                     |                           |
| Phone : (801) 378-7206              |   Phone : (801) 373-4657  |
| Email : rrk@bones.et.byu.edu        |                           |
 =================================================================


-- 
Bruce Owen Lee				|"We will pay the price
Brigham Young University		| But we will not count the cost"
College of Engineering & Technology	|  
Email: lee@bones.et.byu.edu		|		-- RUSH -- 

Newsgroup: comp.windows.x
document_id: 68082
From: xmplus@ani.univie.ac.AT (Bernhard Strassl)
Subject: ANNOUNCE: Xm++/CommonInteract UI Development Sys

Xm++/CommonInteract    Another User Interface Development System
-------------------

If you would like to implement X-Toolkit applications with C++ in a style
like this...

// mini sample application /////////////////////////////////////

class Test : public XmWindow {
	void cmd(char*);
	void quit(void*);
public:
    Test() : XmWindow("Xm++ Test Window") {}

	void initialize();
};

void Test::initialize() {
    XmDropdownMenu* menu = createDropdownMenu();

    menu->addLabel("&File");
    menu->addItems( Entry("Menu Item &One", CB(Test::cmd)), 
                    Entry("Menu Item &Two", CB(Test::cmd)),
                    NULLENTRY);
    menu->addSeparator();
    menu->addItem(	Entry("E&xit", CB(Test::quit)));

    addSubpane(Edit, "myEdit");
    edit("myEdit")->setText("Hello World.");
}

void Test::cmd(char* n) {
	edit("myEdit")->setText(n);
}

void Test::quit(void*) {
	exit(0);
}

void XmApp::initialize() {
    (new Test)->initialize();
}

///////////////////////////////////////////////////////////////

...then continue reading (contents of the current release's README):

Xm++ is a user interface framework for the C++ language built upon X11
and the X-Toolkit. It is designed to be a simple and intuitive programming
interface to access the functionality of commonly used widgets.
Xm++ was initially created for the Motif widget set, now support for the
Athena widgets was added. Applications created with Xm++ run in both
environments without changes, although many nice features are only
available when using Motif.
In some situations Xm++ extends the underlying toolkit (i.e. providing
a ComboBox borrowed from MS-Windows), but never tries to replace it -
data of user interface objects is left to the widgets and only duplicated
in rare cases.

Xm++ has nothing common with Motif++ besides the general idea to
encapsulate Motif widgets in C++ objects and the '++' in it's name. Many
ideas for the Xm++ architecture came from Digitalk's Smalltalk version,
which provides an easy to use framework for Windows/PM/Mac applications
(in the very first time of development I used the Windows dialog editor and
a simple parser to create similar Smalltalk and Xm++ dialogs :-).

Top level objects in Xm++:
* 'Windows', 'SystemDialogs' and 'ToolBoxes' which use the automatic layout
  feature of various composite widgets in Motif and Xaw
* 'UserDialogs' which can be individually laid out with a user interface
  builder (a first version of such a dialog editor is included in this
  distribution)

Controls (children of top level objects):
'staticText', 'staticImage', 'pushButton', 'checkBox', 'radioButton',
'edit', 'listBox', 'comboBox', 'groupBox', 'paneArea', 'drawing', 'toolBar'

The staticImage and all the button classes can display b/w (X-bitmap
format) or color (GIF format) pictures as an alternative to a label text.

Event handling is done by a simple but powerful mechanism which redirects
Xt callbacks to member functions of Xm++ objects.


CommonInteract(II) is built upon the Xm++ drawing class and provides
components for building direct manipulative applications. Is is a very
simplified implementation of some features from the CommonInteract system
(research project of our institute in 1991), an approach to define a
software achitecture for implementing direct manipulative applications
with multiple interaction media (i.e. sound, alternative input devices).
If you are interrested, look into the June 1993 issue of the JOOP (SIGS
Publications - Journal of Object Oriented Programming) - there should be
our paper about CommonInteract (but be aware, that it is our 'state of
the art' from 1991).
CommonInteract(II) is still undocumented and is included because it was
used to implement the dialog editor. It currently supports only drawing
primitives (lines, rectangles, circles...), but we plan to extend it to
support bitmaps and some controls also.
Known problem: the Xm++ drawing class has no redrawing strategy (always
redraws the whole window, even after minimal changes like selecting an
object), this looks very ugly on slow displays and should be fixed.


About this first release:

Xm++ is still incomplete and has a lot of bugs but we are using it here
for smaller applications which are running without problems. So I think
I can call it a 'beta release' which can be used to develop applications
for any non-critical purposes.
CommonInteract may be called a 'pre alpha release'. It's development will
be continued this year because we plan to use it for another research
project here. Besides incompleteness and the redrawing problem it seems
to be stable and can be used for experimental applications.

Platforms: this release was compiled and tested on:
  HP9000/720 running HP-UX 8.07
  SUN SPARC running SunOS Release 4.1.1
  PC-AT386 running Linux v0.99pl6

Caution: although the whole stuff was initially developed using an AT&T
standard C++ compiler - this release is tested only with GNU g++ 2.3.3 or
above (the next release will be tested with both compilers).

Where to get it:
================

I have uploaded it on: export.lcs.mit.edu as: /contrib/Xm++.0.5.tar.Z

(send a mail, if you cannot find it there, e-mail addr. below)

Where to find more information:
===============================

the .../doc directory contains
   INSTALL - how to build the libraries and examples
   README.GNU - problems and limitations when using gnu g++ (read!!)
   usersGuide.txt - a tutorial how to use Xm++
   reference.txt - a first try of a Xm++ class reference manual

the README files in the .../samples gives a brief description of
each of the seven samples.


Xm++/CommonInteract is free software for any non-profit purposes,
see the file .../lib/COPYRIGHT for details.

Send any comments, bug reports and donations :-) to the Author:

    Bernhard Strassl
    Vienna User Interface Group
	Institute for Applied Computer Science and Information Systems
    University of Vienna
    Lenaugasse 2/8, A-1080 Wien, Austria

e-mail: xmplus@ani.univie.ac.at



Newsgroup: comp.windows.x
document_id: 68083
From: fred@sobel.u-strasbg.fr (Frederic PIERRE)
Subject: [Q] xterm -S


	Hello *.*,
I'm looking for a good explanation and example of the usefulness of the -S 
option for xterm: slave mode on file descriptor xxx. Sure, but xterm -Sp00
does not seem to grab what arrives on my window. Where is my misunderstan-
ding ? TIA.
Fred.
 ===========================================================================
 Frederic PIERRE. ENSPS/LSIT 7 rue de l'universite F-67000 Strasbourg FRANCE 
 Tel: (33) 88 35 80 84 Fax: (33) 88 35 31 76 e-mail: fred@sobel.u-strasbg.fr
 ==========================HamRadio: FC1HFD=================================
 

Newsgroup: comp.windows.x
document_id: 68084
From: hasty@netcom.com (Amancio Hasty Jr)
Subject: Re: Looking for X windows on a PC

In article <1993May13.132845.21867@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>farrow@ucsu.Colorado.EDU (J. Scott Farrow) writes:
>
>>mark@taylor.uucp (Mark A. Davis) writes:
>
>>>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
>
>>[...]
>
>>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.

I have a clone almost with no name generating 91k xstones on a 486/33Mhz
system.


>>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>>>is over 80000 Xstones.....
>>>-- 
>
>
>>I'm running Linux and XFree86 on a 33Mhz 486DX with 4MB of RAM (8MB swap) and
>>it runs just fine.  Its a lot better than some of the crappy old Xterminals
>>in the labs at school anyway.
>

>You will not come even CLOSE to the performance of an XP10 series, plus you 
>
Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 
that your XP10 series gets. Commerical verions X servers for S3 928 cards
can get 136k xstones. So the performance is there and additionally since
is running unix multiple users can use the system which I have done in
my home setup.

Maintenance is minimal if you can read README files for the X servers and
for 386bsd.

Amancio Hasty
-- 
This message brought to you by the letters X and S and the number 3
Amancio Hasty           |  
Home: (415) 495-3046    |  ftp-site depository of all my work:
e-mail hasty@netcom.com	|  sunvis.rtpnc.epa.gov:/pub/386bsd/incoming

Newsgroup: comp.windows.x
document_id: 68085
From: sxs@extol.Convergent.Com (S. Sridhar)
Subject: Re: tvtwm icon manager

In article <13960@risky.Convergent.COM>, sxs@extol.Convergent.Com (S. Sridhar) writes:
|> Keywords: tvtwm icon manager
|> 
|> Need help on resource bindings for tvtwm.  Here's what I'd like to
|> see the icon manager do.
|> 
|> Say I iconify a window and this shows up on the icon list.  Now when I 
|> pan into another section of the virtual desktop and try to deiconify
|> the window that I iconed (sp ?)  earlier, I'd like this window to
|> deiconify in the current region.
|> 
|> Any resources that I can use to do this ?  Or more important, can I 
|> do this ?  Rather find it painful to remember where I iconified a 
|> window, go back there and deiconify.  Or simply, it is a pain to 
|> pan around to get to a deiconified window.
|> 
|> Thanks,
|> 
|> ssridhar@convergent.com
|> 
|> 
Just opened up the distribution.

Newsgroup: comp.windows.x
document_id: 68086
From: hoswell@alumni.cs.colorado.edu (Mike Hoswell)
Subject: Any way to *STOP* and application from re-titling?


I'm quite familiar with a variety of window title *setting* methods.

My question is...  Is there any way (via Resources, etc) to stop an
application's ability to re-name it's own Name / IconName properties?

...who cares if it's not 'nice' to the application -

	I WANT CONTROL! ;-)

-Mike

-- 
Mike Hoswell - hoswell@ncar.ucar.edu |   Never Stop! / toasted - Bagels    |
Climate and Global Dynamics          | Disclaimer: I represent myself only |
NCAR, PO Box 3000, Boulder CO, 80307 +----------------+--------------------+
  ...So I've got that going for me --- Which is nice. |   Think Clearly.   |

Newsgroup: comp.windows.x
document_id: 68087
From: x92gia@pX2.stfx.CA (Tanya Adamsson)
Subject: Help!

I am just beginning to try using the Athena toolkit and am having some problems 
getting started.  I think that some files are missing on the system, but there is
the possibility that they are just in a different directory.  When I try to link
my program it can't find XtInitailize, XtRealizeWidget, XtMainLoop, 
XtCreateManagedWidget, or commandWidgetClass.  I've included Intrinsic.h and
Command.h.  I also had a problem on compile with XtNcallback but replaced that with
a NULL in order to compile and see if there were any other problems.  I haven't 
used a toolkit before and this is simply an example I got from the manuel.  Can
someone tell me where I might look for these calls, that is, in what file not what
directory they are supposed to be under because the system manager doesn't believe
in standard directories and generally does things his own way.  (I am using UNIX)

Thank you for your assistance.

T. J. Adamsson

Newsgroup: comp.windows.x
document_id: 68088
From: STU_JWSHELBY@VAX1.ACS.JMU.EDU (JOSEPH W SHELBY)
Subject: Xdec X11R5 server and DECstation 5000/2[0|5] sans DECnet

Has anybody built an X11R5 server that can run on a Personal Decstation
5000 line with ultrix 4.3?  The only catch is that being "personal" machines,
we did not install DECnet onto them, which the Xdec server on gatekeeper
requires.

any replies welcome...
joe shelby
stu_jwshelby@vax1.acs.jmu.edu


Newsgroup: comp.windows.x
document_id: 68089
From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
Subject: Re: UIMX - A Motif Application Generator

Thanks for all the responses. I've made contact with the UK distributor :-)

-- 
Paul Mahoney, X-Act Solutions Limited
smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
phone: +44 424 846368

Newsgroup: comp.windows.x
document_id: 68108
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: Blinking Cursor in Xterm???

In article <1993May10.022806.8186@griffin.itc.gu.edu.au> michaelw@itc.gu.edu.au writes:
>Does anyone have any ideas that may be implemented to help prevent users from
>losing sight of the cursor in an XTerm window under certain circumstances where
>there are many screen-based fields.
>
>What I would like to do is make the cursor flash on or off, but so far haven't
>found a way of doing so.  Has anybody else had similar problems or fixes to
>make a cursor stand out more than the standard type.

Users can't find the cursor?  Run "xneko" - it'll turn the cursor into a
mouse (rodent variety (-: ).  If your users still can't find it, the cat will!

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
document_id: 68109
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Search for decent X based text editor

In article <lv6sh3INNr0e@dimebox.cs.utexas.edu>
spatel@cs.utexas.edu (Semir Patel) writes:
|> OK, I am looking for a decent X based text editor for the  the following
|> reasons:
|> 	o I hate emacs
|> 	o I hate vi
|> 	o I hate Xedit
|> 
|> Coming from a PC based environment having been brought up on
|> Borland's excellent Turbo C/Pascal environments, something with the
|> following properties would fit the bill
|> 
|> 	o Pull down menus
|> 	o Accelerator Keys
|> 	o Multiple windows
|> 	o Mouse Aware
|> 	o Regular Exp support
|> 	o Mappable Key Bindings
|> 	o Easy to use
|> 	o and most important of all....FREE
|> 
|> Does such a beast exist?

Sure sounds like aXe to me.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
document_id: 68110
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1993May11.144231.24879@ims.com> tonyf@ims.com (Antonio Freixas) writes:

>In article <1993May10.134631.14364@taylor.uucp>, mark@taylor.uucp (Mark A. Davis) writes:
>> 
>> *OH BOY* have I wanted this too.  However, I believe that the cursor will
>> be under the server's control (could be wrong)?  On an Xterminal, for
>> example, if the server was NOT the one controlling the cursor, then trying
>> to get the xterm application to do the blinking would cause needless and
>> yucky network overhead (consistantly).
>> 


>Most people who write cursor blinking code just implement the simple case: a
>straight 500msec (or so) on/off cycle.  However, the cursor will work much
>better if cursor blinking is suppressed (i.e. the cursor is made visible) any
>time the cursor moves and for .5 to 1 sec thereafter.  If you don't do this, the
>cursor will be hard to track when in motion.

You allways could port and use emu from export.lcs.mit.edu:contrib/emu.tar.Z.
We've implemented a blinking text cursor for the very reasons people mentioned.
You can even configure the actual size of the text cursor (horizontal / ver-
tical line cursors, smaller block cursors), turn on and off blinking,
set the blink rate and so on. You even get blinking text - ok, enough
advertising.

I haven't looked at the xterm code in this respect, but from the memories
I have when we had to decide whether to start with xterm and make it do
what we wanted (mostly the blinking text), I'd say it won't be easy, since
xterm is a hairy mess (understandable if you follow it's roots back to
X10).

The actual task to get the cursor to blink isn't that difficult if you
provide the right hooks. As Antonio mentioned, you'll have to show the
cursor directly after it has moved, or people will become confused.
Since it's a good idea to take the cursor off the screen when you 
do anything on screen anyways, this isn't very complicated. You'll just
have to start the blink process with the cursor showing directly after
it's mapped.

As for the portability of emu and it's newest version. The one on export
is still the same as on the R5 contrib tape. We wanted to get out a new
release for over six months now, but unfortunately we're drowning in work.
But since the changes aren't affectiong emu's behavior much, I'd say
whoever wants to try emu shouldn't wait for a new version.

As is, emu won't work on BSD derived systems (e.g. SUNs) with anything else 
than a csh. There is a fix to this, which is very short (remove one line
of code). I'll put this on export today.

Michael
--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
document_id: 68111
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Problems with xdm (?) under X11R5/Solaris

db@sunbim.be (Danny Backx) writes:

>Yes, that is a bug in the X11r5 port of xterm. You sometimes get this when
>you start from XDM. I have reported this to Casper but don't know whether
>it made it into his set of patches yet.

>Basically in mit/clients/xterm/main.c, there is a test at line 1598 which
>checks errno after attempting to open /dev/tty. Add the "errno == EINVAL"
>case to it and you should be fine.

It's actually a bug in the Solaris 2.1 kernel. We could add a workaround to
xterm. open should never return EINVAL, but it does :-(

I didn't have time to update the R5.SunOS5 patch lately, but non
of the existing problems seem to warrant a new set of patches.

>Since .xsession is a Bourne shell script anyway, you might as well add a line
>	. /etc/TIMEZONE
>as it is done in /etc/profile.

XDM coulda also keep the XDM environment variable. It should have inherited
it from the environment.


Casper

Newsgroup: comp.windows.x
document_id: 68112
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Patch for X11R5 under solaris 2.1

cfl@buc.edu.au (Colin Linahan) writes:

>Hi,
>	Sorry if this is a FAQ but : could someone please tell me where I 
>can get the patch(es) for X11R5 so that I can compile it under Solaris2.1

export.lcs.mit.edu:/contrib/R5.SunOS5.patch.tar.Z

Get Xsun.multi-screen.tar.Z while you're at it.

Casper

Newsgroup: comp.windows.x
document_id: 68113
From: egallant@cc.gatech.edu (Edward J. Gallant III)
Subject: Re: Looking for X windows on a PC



In article <boutilie.737308085@graphite1>, boutilie@rtsg.mot.com (Eric Boutilier) writes:
|> > pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney) writes:
|> 
|> > Price:
|> > 		PC-Xview for DOS      $445.00 for 1  $1780.00 for 5
|> 
|> 
|> NCD just announced a new generation of PC-Xview. They
|> changed the name a little though and I can't remember
|> exactly... PC-Xsomething.
|> 
|> It now supports Windows and their press release
|> implies that since it's still priced in the $500 range
|> and it's so feature-full why buy anything else?
|> (Disclaimer: This is not a direct quote from the 
|> literature, but I think it sums it up. Also, I have
|> never used the product.)


It's called PC-XWare.  It is based on NCD-Ware, their X-terminal
software (which , IMHO, is excellent).  PC-XWare will include
X-Remote and be optimized for 32 bit machines. It's X11R5 based.
It will support remote management, etc.


Not an NCD employee, just a fan :)

-- 

---------------------------------					
Edward J. Gallant III
37213 Georgia Tech Station
Atlanta, Georgia 30332

e-mail: egallant@cc.gatech.edu
phone: (404) 853-9393


Newsgroup: comp.windows.x
document_id: 68114
From: weisss@Informatik.TU-Muenchen.DE (Stefan Weiss)
Subject: X11R5(Pl.23) and Sun386i (works but not on the screen)


Hello,

I have a problem with X11R5 on a Sun386i an I hope that someone can help
me with it.
I've built X from the MIT sources after applying all patches I have got (I
think 23). Building was easy. After installing everything I started X but
nothing happened but the screen and the keyboard freezed, the machine seemed
to hang. I loged in from another machine an found the Sun386i running well.
'ps' told me that there's a X-server and a xterm running. And with some 
experimenting with the mouse and repeatedly pressing ^D I blindly hit the
xterm, endet the session and got my prompt back.
I guess it's a device problem but I did not find the correct device yet.
I've got a Sun386i with a b/w framebuffer (ACE-6 0688 94V-0, Rev 53)
SunOS 4.0.2 and ROM 4.4.
Please help me. I'm able to run clients on the Sun and send the output to
other machines but that's not what I did it for.

Thanks in advance,
Stefan


Newsgroup: comp.windows.x
document_id: 68115
From: arshad@siesoft.co.uk (Arshad Mahmood)
Subject: Monitor freq. requirment for XFree86 (Repost)

I need some advice regarding monitor to use with Xfree86. I have an ET4000
based graphic card with 1 Meg of memory. I know this card is supported in
Xfree86 because a friend of mine has one of these in his PC. His monitor is
17" colour capable of displaying 1280x1024 resolution. I cant afford this kind
of expensive monitor. I heard from somewhere that Xfree86 requires multisync
monitor with minimum horizontal scan frequency of 60KHz. Is this true?
I would only like to use Xfree86 at resolution of 800x600 in 256 colours and
so was thinking of buying a cheap 14" SVGA monitor. Interlaced (Cheap)14" SVGA 
monitors only have have maximum horizontal scan frequency of about 38KHz.
Will this kind of monitor work with Xfree86? 

Please reply by email.

Thaks in advance.

arshad
================================================================================
Arshad Mahmood                               |  Tel   : 0344 850987
Siemens Nixdorf Information Systems Limited  |  Fax   : 0344 850096
Siemens Nixdorf House                        |  email : arshad@sni.co.uk
Oldbury, Bracknell
Berkshire RG12 4FZ
England.

Newsgroup: comp.windows.x
document_id: 68116
From: maddox@bose.com (John Maddox)
Subject: Color Tektronics term emulation


Does anyone know of an X-based terminal emulator which can
emulate a color tektronics graphics terminal such as 
TEK 4105 or TEK 4107, etc?


Newsgroup: comp.windows.x
document_id: 68117
From: mvalente@draco.lnec.pt ()
Subject: X on DOS or Windows



  I'm posting this request again since the last one had no title.
 
  I'm looking for X server software on DOS or Windows.
 
  I've already seen Desqview/X and XVision but would like to be aware
 of other solutions, namely public domain or shareware implementations.
 
  I'd also like to know, in the commercial case, about possible problems,
 incompatibilities, available window managers and libraries, etc.
 
  If you have any experiences in this area please let me know.
 

  C U!
 
  By(e)
 
    Mario Valente



Newsgroup: comp.windows.x
document_id: 68118
From: J.K.Wight@newcastle.ac.UK (Jim Wight)
Subject: Re: Button 3 popup menus with Athena widgets

>Ok, I'm being driven batty.

>Trying to create popup-menus (ie. button3 press, and a menu
>appears).  I would really like to use the standard Athena
>classes to achieve this goal, but for my best attempts
>I cannot get the menus to come up without using a MenuButton
>as the parent of the widget tree.  I know this should be
>possible to to with an XtPopupSpringLoaded() and a
>little twiddling, but something is escaping me.

Read the documentation for the SimpleMenu (4.2.3 Positioning the SimpleMenu).
The reference is to the R5 documentation.

I had not done this before but in less than 10 mins I knocked up the following
Wcl application that does what you want using a Command widget. Even if you are
not familiar with Wcl the example is so simple it should be pretty obvious what
is going on. The crucial thing is the use of the XawPositionSimpleMenu and
MenuPopup actions.


Ari.wcChildren:		app

*app.wcCreate:		Command
*app.wcPopups:		menu
*app.translations:	#override \n\
			<Btn3Down>: XawPositionSimpleMenu(menu) MenuPopup(menu)

*menu.wcCreate:		SimpleMenu
*menu.wcChildren:	one, two, three

*one.wcCreate:		SmeBSB

*two.wcCreate:		SmeBSB

*three.wcCreate:	SmeBSB


Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232

Newsgroup: comp.windows.x
document_id: 68119
From: d91-jda@themsen.nada.kth.se (Johan Danielsson)
Subject: Re: Copyrights

There will always be a zillion lawyers who, if they get paid well
enough, will sue your brains out. Gosh! Can't anyone send them off to
another planet?! 
Well maybe, it would be better to just send Apple, Microsoft and a few
others (that way we would get rid of some terrible products as well :)

--

| d91-jda@nada.kth.se   | Drag-n-Drop-dead
| Johan Danielsson      | 

Newsgroup: comp.windows.x
document_id: 68120
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Seeking a simple wm

In article <1993May07.160443.6208@nenuphar.saclay.cea.fr>, basile@soleil.serma.cea.fr (Basile STARYNKEVITCH) writes:
> I'm seeking a *simple* window manager (ICCCM compliant) with a minimal doc.
> I don't want ol*wm twm gwm *twm.

Whatever happened to uwm? Is it still available in some form? It's
been years since I used it or heard anyone talk about it.
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
document_id: 68131
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Looking for X windows on a PC

hasty@netcom.com (Amancio Hasty Jr) writes:

>>>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.

>I have a clone almost with no name generating 91k xstones on a 486/33Mhz
>system.

Show me the realistic price tag...

>>>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>>>>is over 80000 Xstones.....

>Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 

Nice, but way over $900....
My point is price/performance  not just performance...

-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68134
From: kem@prl.ufl.edu (Kelly Murray)
Subject: Re: Looking for X windows on a PC

In article <1993May14.021655.27374@labtam.labtam.oz.au>, graeme@labtam.labtam.oz.au (Graeme Gill) writes:
|> In article <hastyC6zGqC.Fux@netcom.com>, hasty@netcom.com (Amancio Hasty Jr) writes:
|> 
|> > >>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.
|> > 
|> > I have a clone almost with no name generating 91k xstones on a 486/33Mhz
|> > system.
|> > 
|> > 
|> > >>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
|> > >>>is over 80000 Xstones.....
|> > 
|> > >You will not come even CLOSE to the performance of an XP10 series, plus you 
|> > >
|> > Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 
|> 
|> This is hardly apples to apples. Try running the benchmark over a
|> network to the clone and, and if you're still getting 100K Xstones
|> then you've got a good machine. X terminals aren't just a server you know.....
|> 
|> 	Graeme Gill.

I would further add that a 486/50,S3/928,8mb,15",200mbDISK is going to cost
/WAY/ more than $900, probably $3,000.  Color makes it not apples/apples too.
Xterminals provide better price/performance than PCs.  You can make a PC
much cheaper, and perform much worse, and you can make PC's perform great, and
cost more.  You pay extra for the additional functinality and expandability
of a PC.  For home user, that extra functionality is worth the added cost.

 -Kelly Murray

Newsgroup: comp.windows.x
document_id: 68135
From: gtkurdy@access.digex.net (GodTom)
Subject: DROP

                                                                                                                                

Newsgroup: comp.windows.x
document_id: 68136
From: mark@cda.mrs.umn.edu (Mark Van Overbeke)
Subject: Multi-line greeting

Is it possible to have xdm put up a multi-line greeting?  If so, how do
I specify such a thing in the Xresources file?  I don't have much
(anything) for X books, so I can't look it up.  Thanks.


-- 
Mark Van Overbeke                   Systems Software Programmer
Computing Services                  BITNET:    Mark@UMNMOR.BITNET   (VMS)
University of Minnesota, Morris     INTERNET:  Mark@caa.mrs.umn.edu (VMS) 
Morris, MN   56267           1-612-589-6378    mark@cda.mrs.umn.edu (Ultrix)
--
Success is the progressive realization of your worthwhile goal or dream!

Newsgroup: comp.windows.x
document_id: 68137
From: anthony@kurango.cit.gu.edu.au (Anthony Thyssen)
Subject: COLORS and X windows (AIcons)

Extract from the color README file for Anthony's Icon Library.
For Network discussion...

Color Coordination...

    I tried to start a discussion in `comp.windows.x' at the start of the
  year about some sort of `standard color table' that icons should follow
  (say 16 to 32 colors including 5 colors for a small grey scale). but no
  one responded at all.

    The problem is that if the colors for icons are just used willy-nilly
  you will soon find that the workstations color table, devotes itself
  solely the window manager, icons and other `adminstrative tasks' instead
  of applications that actually require the colors for proper working.
  ``Color needful applications'' such as :  Picture and graphic displayers,
  Animation, Real Time video, Raytracers, etc... .

    The following is a suggested color table for icons, and general use.
  Icons, Window Managers, and general applications, should follow this
  table or something like it, UNLESS the application is ``color needful''.

     * for each primary color (red,green,blue) three colors
             EG: values   0, 128 and 255.
       This results in  3 ^ 3  colors (27) representing most of the
       standard colors for use in icons.

     * two extra shades of grey
             EG: vales    (black) 0, 64, 128, 196 and 255 (white,red,...)

     * 3 other colors -- probably of some primary color to provide shading
       a and 3-D look to buttons and titlebars in the window manager.

    This table represents 32 colors and represents a large range of
  posibilities for the above ``administrative services'' of the
  workstation.


  Anthony Thyssen - (SysProg @ Griffith University)     anthony@cit.gu.edu.au
------------------------------------------------------------------------------
  A Gods idea of amusement is a Snakes & Ladders game, with greased rungs.
                                           - Terry Pratchett   "Wyrd Sisters"
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68138
From: anthony@kurango.cit.gu.edu.au (Anthony Thyssen)
Subject: Re: Automatically Configuring DISPLAY variable

ainman@css.itd.umich.edu (Andrew Douglas Inman) writes:
| Does anyone out there know of a way to have a UNIX machine automatically
| set it's display variable to that of the Xterm you're using when it's
| not the machine that's serving you X? 
|
| The best I've been able to come up with has been a rather convoluted 
| script that extracts your IP # from the whos command, and it 
| frequently fails, not to mention that it requires having your user
| name added to it.
|
|    -- Andrew Inman, Consultant, ITD Consulting and Support Services
|       ainman@umich.edu          University of Michigan
|
|
From my own notes on this subject....

Methods to automatically passwd Authorization from one machine to another.
  This also includes the problem of notifing the remote host of the current
DISPLAY that is being used.

1/ Use rsh/rexec/on...  (the method in the xauth manual)
      Set up the your .rhosts file in the home directory on the remote
  machine so that a password in not required to remotly execute commands.

         xauth extract - $DISPLAY | rsh other xauth merge -

  This method is also used by xrsh to pass authorization. My vampire
  program also uses a variation, however I wrap it as part of the remote
  command sequence  (EG:  xauth add $auth)

     Included in this method is the use of `xrlogin' and `xrsh' to do
  this job for you. These programs usally (the newer ones that is) allow
  you to pass a secified list of ENVIRONMENT variables which includes
  the `DISPLAY' and/or a copy of the authorization code required.

     The `xon' program available (if enabled) on sun machines will also
  pass environment variables, as well as the current directory.  You will
  however be required to store the Authority in such a variable for
  passing. Unless you are also have shared home directories.

    WARNING: Environment variables and command line arguments are visible
  in `ps' listing with the appropiate flags. As such passing authorization
  information in environment variables or as arguments is not recomended.
  The recommended method as given in the manual (shown above) is safe from
  the view of other users.

2/ Wrap it as part of the TERM environment variable.
      This method uses the fact that most remote command executors do pass
  the TERM environment variable to the remote host. It is then a matter of
  an appropiate script in your remote .login file to extract the information
  from the TERM environment variable and set up things appropiatly.
    A version of the xrlogin script is available on the network which does
  this. Basically you change the TERM environment variable before the
  actual call to rlogin is performed, to include your DISPLAY and your
  authorization.
    On the remote machine you then extract this information and return the
  TERM environment variable to normal BEFORE you use it for reseting or
  stty'ing your terminal.

  ---8<---
  script for launching rlogin:
    #!/bin/sh
    # ~/bin/rl   --- Rlogin with display:
    if [ -n "$DISPLAY" ]; then
      case "$DISPLAY" in
        :*) DISPLAY=`hostname`$DISPLAY ;;
      esac
      TERM="$TERM&$DISPLAY&`xauth nextract - $DISPLAY`"
      export TERM
    fi
    rlogin $*
  ---8<---
  add to your .cshrc or .login
    if ( $?TERM ) then
      if ( `echo $TERM | tr -cd '&'` != '' ) then
        echo "$TERM" | cut '-d&' -f3 | xauth nmerge -
        setenv DISPLAY `echo "$TERM" | cut '-d&' -f2`
        setenv TERM    `echo "$TERM" | cut '-d&' -f1`
      endif
    endif
  ---8<---
  xterm command to use
    xterm -T hostname -e ~/bin/rl hostname
  ---8<---

3/ NFS.
     Write it to a file on a shared NFS partition you have access to.
   Note that if the home directories are NFS mounted, then authorization
   is automatically passed, Hoever you will still have to pass your
   DISPLAY environment variable via a file or other means. IE:

      login host:       echo $DISPLAY > ~/.X11host
      remote host:      setenv DISPLAY `cat ~/.X11host`

4/ Finger for the info in a .plan file
      This involves encrypting the information into your `.plan' or
  `.project' and having the remote machine finger for the information.
  This has the disadvantage of having the information to anyone fingering
  the user.  Thus requiring a encryption method that is uniq to each
  individual.  IE: the method of decyrption must not be shared or known
  by others, nor should it be easy to determine.
    A improvment is to use the `who fingered me' technique to only give
  the information only to your own remote accounts and not just to anyone
  who is asking.
    This last method was developed last year by a second year here, untill
  I explained to him the need for the encryption, at which point he gave
  up this method. It is however a valid method. It is easer than (2) but
  less secure.


  Anthony Thyssen - (SysProg @ Griffith University)     anthony@cit.gu.edu.au
------------------------------------------------------------------------------
    "Magic is Real -- unless declared an integer"  ---  John P.Melvin
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68139
From: warren@atmos.washington.edu (David Warren)
Subject: Re: viewing postscript files under X windows

On the subject of ghostscript, it will also solve the earlier request
of converting postscript to HPGL to filter into Interleaf.
--
David Warren 		INTERNET: warren@atmos.washington.edu
(206) 543-0945		UUCP:	  uw-beaver!atmos.washington.edu!warren
Dept of Atmospheric Sciences, AK-40
University of Washington
DECUS E-PUBS Library Committee representative
SeaLUG DECUS Vice Chair

Newsgroup: comp.windows.x
document_id: 68159
From: HART@uv2.EGlin.AF.MIL
Subject: VXT2000 Windowing Terminal Help

                               E G L I N     A F B

From:  DENNIS L. HART                       Date:     14-May-1993 02:41pm CST
       HART                                 Tel No:   904 882 3154
Dept:  646CCSG/SCWA*SAS

TO:    Internet Addressee                   ( _SMTP[xpert@expo.lcs.mit.edu] )


Subject: VXT2000 Windowing Terminal Help

Greetings!


We have several VXT 2000 Windowing terminals and associated software on our
network.  We are able to open a LAT terminal window to any of our workstation
nodes but we are unable to get a LAT X session to work.

We have customized the terminal security to allow all LAT connections.

Trying to invoke a LAT X session from the VXT 2000 results in the following
message being displayed in the terminal manager window message area:

Host Does Not Support X Sessions

(The host is a VAX4000 Model 60 and does support X sessions)


Opening a LAT terminal window and logging into the server node, setting the
display variable as follows:

$ set display/create/node=LAT_###########/transport=lat

and then trying to create a decterm on the VXT as follows:

$ create/term=decterm/detach

Fails and gives the following error message:

dectermport failed to find language, XOpenDisplay("")  returned NULL
%DECW-F-CANT-OPEN-DISPL Can't open display

The VXT 2000 is using its system defaults (ie. default font(s), language, ...)
except for the security options to allow all connections and options enabling 
LAT protocol.

we have VT1200 windowing terminals and the above things were enough to allow
LAT X sessions.

VMS Version is 5.5-1
Running DECwindows/Motif of VAX4000 Model 60s


Please help.


Dennis Hart
Atlantic Research Corporation
Directorate of Computer Sciences
Eglin AFB, FL
 



Newsgroup: comp.windows.x
document_id: 68160
From: jwhit@wbst845e.xerox.com (Jeff Whitmire)
Subject: Need help compiling xtmenu

I am having trouble compiling xtmenu.  I am running on a Sparc IPC
using SunOS 4.1.1 and OpenWindows 3.  I am getting undefined references
to arguments to XtSetArg such as XttextEdit, XttextRead, etc.  Am I
using the wrong version of a library? missing an include file?  Any
help would be greatly appreciated.

Jeff.

----------------------------------------------------------------------
|        Jeff Whitmire                 | Man is the best computer we |
| email     : jwhit@wbst845e.xerox.com | can put aboard a spacecraft |
| phone     : (716) 422-5647           | ... and the only one that   |
| snailmail : 780 Salt Road  845-20C   | can be mass produced with   |
|             Webster, NY  14580       | unskilled labor.            |
|                                      |       -- Wernher von Braun  |
----------------------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 68170
From: kaleb@expo.lcs.mit.edu (Kaleb Keithley)
Subject: Re: Seeking a simple wm

pmartz@dsd.es.com (Paul Martz) writes:

>In article basile@soleil.serma.cea.fr (Basile STARYNKEVITCH) writes:
>> I'm seeking a *simple* window manager (ICCCM compliant) with a minimal doc.
>> I don't want ol*wm twm gwm *twm.

>Whatever happened to uwm? Is it still available in some form? It's
>been years since I used it or heard anyone talk about it.

I'm 99&44/100% positive that uwm isn't ICCCM compliant.  If you want it,
the R4 sources are still available on export.lcs.mit.edu (18.24.0.12)
in /pub/R4.

--

Kaleb


Newsgroup: comp.windows.x
document_id: 68171
From: doug@foxtrot.ccmrc.ucsb.edu (Douglas Scott)
Subject: Help with porting screensaver function

This is a question aimed at those who have done some server code hacking:



I am attempting to add a working SaveScreen function to a new
server.  I have been able to get the screen to blank out properly, and through
debugging I can see that my savescreen function is being called with on=0,
which (for some arcane reason) means to blank the screen.

My problem is that this function is never being called again with on=1, even
after I have moved the mouse and/or typed some keys.  My question is:  what am
I likely to be missing that would cause this problem?  I copied the basic
design of my function from the existing versions:

static Bool next_savescreen(scr,on)
ScreenPtr scr;
Bool on;
{

  /* this was copied from the omron server code -- is it the right way? */
  if (on != SCREEN_SAVER_ON) {
		nextSetLastEventTime();
  }

  if (on == SCREEN_SAVER_ON) { /* Save user's current setting */
		next_save_screen_brightness = NXScreenBrightness(my_eventhandle);
		NXSetScreenBrightness( my_eventhandle, 0.0); /* Blank the screen */
  }
  else {											 /* Unblank the screen */
		NXSetScreenBrightness( my_eventhandle, next_save_screen_brightness);
  }

  return TRUE;
}

I can see in the server/os code where the screensaver is called to turn on the
saver, but I cannot find where it "wakes up" the server and unblanks the
screen.

Any tips/help would be appreciated.

Thanks.


-- 
Douglas Scott                              (805)893-8352
Center for Computer Music Research and Composition
University of California, Santa Barbara
Internet: (NeXTMail ok)   <doug@foxtrot.ccmrc.ucsb.edu>

Newsgroup: comp.windows.x
document_id: 68172
From: kaleb@expo.lcs.mit.edu (Kaleb Keithley)
Subject: Re: Blinking Cursor in Xterm???

bernward@moepi.do.open.de (Bernward Averwald) writes:

>Yes. Don't confuse the mouse cursor with the text cursor in the xterms.
>The latter is only controlled by the application.
>Back in the days of X11.1 I did analyse the xterm code. The cursor 
>was implemented by drawing a rectangle around the character. I doesn't
>seem to be changed 'til now.
>But if you have the sources you could add a blinking cursor via
>XtAppAddTimeOut or similar :-|.

Xt(App)AddTimeout doesn't work in xterm, because, despite appearances 
to the contrary, xterm is not really an Xt based application.  "Other
sources" like timeouts and inputs are never checked in xterm's main
loop. So don't be surprised when you try this and it doesn't work.

--

Kaleb


Newsgroup: comp.windows.x
document_id: 68173
From: mcgary@intellection.com (Mike McGary)
Subject: Re: ICS Widget data book

In article <1993May13.075328.28052@nordic-offshore.no> olav@nordic-offshore.no (Jan-Olav Eide) writes:

>   Does anyone know how I can obtain information about the ICS widget data book?
>   I only have their email address, and they don't seem to be reading (or 
>   replying) to their mail.
>
ICS - Integrated Computer Solutions Incorporated
      201 Broadway
      Cambridge, MA  02139
      Vox: (617) 621-0060
      Fax: (617) 621-9555
      Email: info@ics.com

      Circle 9 on Reader Service Card


-- 
               /  __/   ____/                           Mike McGary
       /   /  /  /     /                                mcgary@intellection.com
      / __/  /  /     /         __  /    __ \     /   / Intellection, Inc.
     /      / ___/   /__  /    /   /    /   /    /   /  Dallas, Texas
    /      /        /    /    __  /    __ <     /   /   vox: (214) 620-2100
 __/    __/      _______/  __/ __/  __/ __/  ____  /    fax: (214) 484-8110
                                                  /
                         ________________________/

Newsgroup: comp.windows.x
document_id: 68174
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: xterm fonts

bernward@moepi.do.open.de (Bernward Averwald) writes:

>In article <1993May11.133626.7425@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>I have a problem which many of you might have run into.  We use LOTS of
>>ASCII terminals and use them to the max.  Meaning lots of attributes, line
>>
>>This means needing all attributes to work, including bold and line drawing.
>>The only fonts which seem to meet these criteria are a pairs of fonts in
>>which one is bold and the other normal, while both have linedraw, fixed
>>spacing, and several sizes.
>>
>>The only standard fonts which work are the fonts like 9x15 and 9x15B under
>>"misc".  They work great, except I need a font one size larger, 10x20.  Now
>>10x20 works well, but there is no bold counterpart!
>>

>You don't need a 'bold' counterpart. From `man xterm`:

>       -fb font
>               This  option specifies a font to be used when dis-
>               playing bold text.  This font  must  be  the  same
>               height  and width as the normal font.  If only one
>               of the normal or bold fonts is specified, it  will
>               be  used as the normal font and the bold font will
>               be  produced  by  overstriking  this  font.    The
>               default  is to do overstriking of the normal font.

I have tried that with one font, if your xterm terminfos/termcaps are set up
to NOT remap bold (which they are be default) to reverse, then nothing happens
when bold is displayed.  It would appear (at least in X11R4) than you cannot
display bold in an xterm without specifying two fonts; a normal and a bold.
I wish someone would prove that incorrect.
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68175
From: sandiway@research.nj.nec.com (Sandiway Fong)
Subject: Sun 4.1.3, OpenWindows 3.0 problem: static linking and X libraries


I build two executables for the same application. 
Let's call them Papp (uses shared libs) and SPapp (statically linked).

The problem is that I get problems when trying to build the *static one*, 
but not the dynamic one. See the trace below. 

BTW, the static one runs fine despite the ominous error message. 
Can someone clue me in as to why the static one bombs at link time?

Thanks very much,

Sandiway


Dr. Sandiway Fong
NEC Research Institute Inc.
4 Independence Way
Princeton NJ 08540

(609) 951-2733
(609) 951-2482 (FAX)

Here is the linking stage...

/usr2/quintus/bin3.1.1/sun4-4.1/ld -e start -Bstatic Papp.o \
/usr2/quintus/generic/qplib3.1.1/library/sun4-4/libpl.a  \
/usr2/quintus/generic/qplib3.1.1/library/sun4-4/libplm.a  \
/usr2/quintus/bin3.1.1/sun4-4.1/libqp.a \
-lsspkg -lXpm -lm -L/usr/local/guide/lib -lguidexv  -lxvps -lxview \
-lolgx -lX11 -lXext -lcps  -lc -lpixrect -o SPapp
Undefined:
_XESetCreateGC
_XESetFreeFont
_XESetCloseDisplay
_XESetError
_XInitExtension
_XESetFreeGC
_XESetCopyGC
_XESetCreateFont
_XESetFlushGC
_XESetEventToWire
_XESetErrorString
_XESetWireToEvent
*** Error code 1
make: Fatal error: Command failed for target `SPapp'

ldd SPapp
SPapp: statically linked

The shared lib version is linked in exactly the same way save for the omission
of -Bstatic.

ldd Papp
	-lsspkg.1 => /usr/local/lib/libsspkg.so.1.0
	-lXpm.2 => /usr/local/lib/libXpm.so.2.7
	-lxvps.0 => /usr/openwin/lib/libxvps.so.0.2
	-lxview.3 => /usr/openwin/lib/libxview.so.3.1
	-lolgx.3 => /usr/openwin/lib/libolgx.so.3.1
	-lX11.4 => /usr/openwin/lib/libX11.so.4.3
	-lcps.1 => /usr/openwin/lib/libcps.so.1.0
	-lc.1 => /usr/lib/libc.so.1.8
	-lpixrect.2 => /usr/lib/libpixrect.so.2.14
	-ldl.1 => /usr/lib/libdl.so.1.0



Newsgroup: comp.windows.x
document_id: 68176
From: tma@encore.com (Thanh Ma)
Subject: Re: Online Help Motif Widget?

d3e758@bucky.pnl.gov (JE Pelkey) writes:




>I am looking for online help Motif widgets (public domain or otherwise) to
>run on a Sun Sparc.

>I'd be especially interested in help widgets that can integrate hypertext 
>help, graphics, etc.

>I know that some of the GUI builders like Galaxy come with online
>help widgets, but I need to check into stand-alone help widgets as
>well, seeing as how we have not picked a GUI tool yet.

>Anybody know of any widgets like this?

X Resource, Issue 6

Thanh Ma
tma@encore.com

Newsgroup: comp.windows.x
document_id: 68177
From: cws@Faultline.Com (Carl Schmidtmann)
Subject: Re: Any way to *STOP* and application from re-titling?

In article <1993May13.212121.29048@colorado.edu>, hoswell@alumni.cs.colorado.edu (Mike Hoswell) writes:
|> 
|> I'm quite familiar with a variety of window title *setting* methods.
|> 
|> My question is...  Is there any way (via Resources, etc) to stop an
|> application's ability to re-name it's own Name / IconName properties?
|> 

Sorry, that's a feature.  The ICCCM specifies how the app should set its title, so the wm is obliged to do it.  If this bothers you, complain to the app writer.

|> ...who cares if it's not 'nice' to the application -
|> 
|> 	I WANT CONTROL! ;-)
|> 

Write your own wm that doesn't support the ICCCM.  Or write an program that you give a window ID and a title.  The your program can set the windows title for the app and then if the app changes it, your program switches it back again.

|> -Mike
|> 
|> -- 
|> Mike Hoswell - hoswell@ncar.ucar.edu |   Never Stop! / toasted - Bagels    |
|> Climate and Global Dynamics          | Disclaimer: I represent myself only |
|> NCAR, PO Box 3000, Boulder CO, 80307 +----------------+--------------------+
|>   ...So I've got that going for me --- Which is nice. |   Think Clearly.   |

-- 
_______________________________________________________________________________
Carl Schmidtmann                                  Faultline Software Group, Inc
(408) 736-9655                                    867 Karo Court  
cws@Faultline.Com  ...!{apple|decwrl}!gigo!cws    Sunnyvale, CA 94086-8146

Newsgroup: comp.windows.x
document_id: 68182
Subject: GUI builders for VMS
From: mark@trident.datasys.swri.edu (Mark D. Collier)

I am looking for GUI Builders/UIMS's which run in a VMS/OpenVMS
environment. I am interested in both Motif tools and GUI-independent
tools such as XVT. My client also requires that the tool has been
in production for at least 6 months in the VMS environment. Note
that I have the list of tools from the FAQ, but not the info on
VMS availability.

Thanks

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark D. Collier                      Southwest Research Institute
Senior Research Analyst              Automation and Data Systems Division
Voice: (512) 522-3437                Data Systems Department
FAX:   (512) 522-5499                Software Engineering Section
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
document_id: 68183
From: chas@stax.uchicago.edu (Charles Blair)
Subject: xnlock / xdm

I am using xnlock as the screensaver for a PC-based X server. However,
after an interval of no activity, my X session ends. This does not
happen when I use xscreensaver. 

My screensave command is fired up from my .xsession like this:

xautolock -time 1 -locker xnlock -corners ++++ -cornerdelay 1 &

My hypothesis is that xdm (I use xdmcp to start my X session) detects
a period of inactivity from the server, then terminates the session.
However, for some reason, this does not happen with xscreensaver. Is
there a workaround?

I'd prefer responses via e-mail.

Thanks.





--
"Economics is not for those who are atracted to real-world problems
which have simple and clear solutions. For these individuals, I
recommend astrology."  -- Hugo Sonnenschein

Newsgroup: comp.windows.x
document_id: 68184
From: ross@loral.cts.com (Robert Ross)
Subject: Detecting/Saving Geometry Changes

Hi,

I'm trying to get my program to monitor resize/position events,
so that when the program exits, I can save the last known geometry in 
some sort of 'preferences' file.

I am adding an event handler for StructureNotify to the TopLevelShell:

 XtAddEventHandler(topLevel,StructureNotifyMask,False,configureCB,myData);

This works fine, and my callback is called whenever the window is resized
or repositioned using the window manager (mwm).

However, when I'm just resizing the window, using any resize handle on the
window manager resize decoration, the x and y are set to zero in the
XEvent passed to the event handler callback.  I'm accessing the xconfigure
structure, like the X11 manual says.  (xev->xconfigure.x, xev->xconfigure.y).
The width and height memebers are correct.

When I reposition the window, using the window manager, the xevent's xconfigure
structure contains all the correct x, y, width, height member settings.

Q1: Anybody know why, when just resizing, the x and y are being set to zero?

Q2: Any other way to handle detecting and saving geometry changes?

I've tried using XtGetValues() on the topLevel widget when exiting my
application (before destroying any widgets) and all I get is garbage values
for the x, y, width, height resources.

Thanks
--

Bob Ross (ross@li.loral.com)         | "Mr. Plow, that's the name. That name
Loral Instrumentation, San Diego, CA |  again is Mr. Plow" - Homer Simpson

Newsgroup: comp.windows.x
document_id: 68185
From: boyd@gauss (Mickey Boyd)
Subject: Xkernel on Sun 3/80

Has anyone built Xkernel for 3/80's?  It works great on our 3/50s, and I 
would just as soon kiss the entire Sun 3 architeture goodbye (and reclaim 
a bunch of disk space).  Email me direct, I'll post a summary.

--
******************************************************************************
*                                Mickey Boyd                                 *
*                           Systems Administrator                            *
*              Florida State University Mathematics Department               *
* email:  boyd@math.fsu.edu  Office:  (904) 644-7167  Pager:  (904) 657-6425 *
******************************************************************************

Newsgroup: comp.windows.x
document_id: 68186
From: boyd@gauss (Mickey Boyd)
Subject: Re: Dump x-window screen

H. J. Hong (hjhong@ev004.ev.nctu.edu.tw) wrote:

> Hi! I'm looking for a tool to dump a X-window screen image?
> Any one can help me ?                                

See xwd, xpr.  Even better, grab xdump from ftp.cs.uwm.edu.  It makes use 
of these programs as well, but has a much nicer interface (and can do more).
You can dump to PostScript, bitmaps, etc.

--
******************************************************************************
*                                Mickey Boyd                                 *
*                           Systems Administrator                            *
*              Florida State University Mathematics Department               *
* email:  boyd@math.fsu.edu  Office:  (904) 644-7167  Pager:  (904) 657-6425 *
******************************************************************************

Newsgroup: comp.windows.x
document_id: 68187
From: dacheng@jaffna.berkeley.edu (Da Cheng)
Subject: X terminal FAQ


> Subject:  68)  What is the current state of the world in X terminals?
>
> Jim Morton (jim@applix.com) posts quarterly to comp.windows.x a list of
> manufacturers and terminals; it includes pricing information.

Can somebody send me a copy of this faq?

Thanks alot!

Da

Newsgroup: comp.windows.x
document_id: 68188
From: dhliu@solar.csie.ntu.edu.tw (Der-Hua Liu)
Subject: keycode wrong for XKeyReleasedEvent ??

I am writing a X-based dosemu which requires XKeyReleasedEvent. 
I found the keycode of XKeyReleasedEvent is wrong.   If I run the program on
a Linux host(XFree1.2) with  DISPLAY set to the local Linux and to
the Sun host (X11R5), the two keycodes from the two Xservers are different. 
Of course, the keycode of XKeyPressedEvent is O.K.

Can anybody verify this ?     Did I do anything wrong ? 
	
Thanks.

--
Edward Der-Hua Liu
CS department
National Taiwan University, Taiwan
dhliu@solar.csie.ntu.edu.tw

Newsgroup: comp.windows.x
document_id: 68189
From: brown@ftms.UUCP (Vidiot)
Subject: Re: viewing postscript files under X windows

In article <gordons.737161050@mon> gordons@mon.sps.mot.com (Gordon Sasamori) writes:
<In <C6tGoJ.20J@inmet.camb.inmet.com> gjs@corsica.camb.inmet.com (George Snyder) writes:
<
<>In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
<
<>> I wonder if anybody know of a X-window-based postscript file
<>> viewer that runs under SunOS (prefered), HPUX, or IBM AIX.
<
<>If you are running Sun OpenWindows, you can use "pageview".  This is an
<>X Window PostScript previewer like "ghostview", but displays much nicer
<
<Yes, but it's broken on OW 2.0.  It does not handle multiple pages
<well.  If you don't have the proper PostScript commands it will
<draw the entire document on the same page instead of pausing after
<each page.  I haven't tried OW 3.0 yet, though.

OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
requires DSC compliant PostScript files, in order to stop at page breaks.
I don't consider that broken.  I say that any program that puts out a
PostScript file that isn't DSC compliant is broken.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 68190
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: imake.rules problem under Solaris 2

dple@lungta.infores.com (david levine) writes:

>Hey folks,
>I'm attempting to use imake to manage makefiles for a development effort and was curious
>to find out if anybody else is experiencing problems with any target that
>has subdirs generated by imake on Solaris 2 platforms. 

>For example, 'make makefiles' chokes in the very first subdirectory. 

>	i.e. target: subdirMakefiles not found 

You don't give the precise error message, but I assume that
the making of the target fails, because make can't find the rules.

We've seen this happen with SunOS 5.x make as well and aat this
point I'm not sure why it happens. It seems to happen
with large Makefiles. The entries near the end get lost.
Small changes in the makefile will remedy this problem,
as it does in your example.

In the MIT R5 distribution + R5.SunOS5.patch this can happen with
the target ``Makefiles'' in one of the doc directories.

>At first I thought this was a bug with make on my Sun, but I built and used gnumake with the
>same results. Attached you'll find the first Makefiles target rule from the generated makefile

This is really weird. Are your *really* sure that you were using GNU make?

Casper

Newsgroup: comp.windows.x
document_id: 68191
From: naccarat@eclipse.sheridanc.on.ca (Rob Naccarato)
Subject: Somebody please help me!

  Hello, I hope this is the right group to post this in.
  I've got a little problem.  I finally managed to get a REAL operating
system (Linux, as opposed to MS-Dos) and I like it alot.  But, when I
try to run 'startx', I get a strange response: My monitor goes into
graphics mode and I get this big white rectangle on the screen - that's
all! Nothing else!  Now, I've collected almost every FAQ in the world to
help me but either it's too confusing or I must be missing something.
  My setup:
	386DX (about 20Mhz)
	Trident 8900C SVGA (w/1 Meg)
	4 MB RAM
	Plenty of HD space
Any help is appreciated.
Thanx.


Newsgroup: comp.windows.x
document_id: 68192
From: ppan@celsiustech.se (Per Andersson)
Subject: X, shared libraries, and replacing modules in them?


Hi.

I'm wonderring if it is possible to replace a single module, as XKeybind.o
in a shared library, as libX11.so in Suns OpenWindows. I tried to RTFM, but
I didn't get any wiser that way. Also, can I do the same on an RS6000 machine
running 3.2.2 (if it is possible at all). I know how to do it with real 
libraries (ar). I am trying to replace XLookupString in the delivered
libraries, with another that does a few special things.

/Per
-- 
-----------------------------------------------------------------------------
Per Andersson - ppan@celsiustech.se (perand@stacken.kth.se on free time)
Managing networks ( and occasionally SUNs) at, but not speaking for:
CelsiusTech AB, J{rf{lla, Sweden

Newsgroup: comp.windows.x
document_id: 68193
From: allbery@wariat.org (allbery)
Subject: Re: Blinking Cursor in Xterm???

As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
+---------------
> Back in the days of X11.1 I did analyse the xterm code. The cursor 
> was implemented by drawing a rectangle around the character. I doesn't
> seem to be changed 'til now.
> But if you have the sources you could add a blinking cursor via
> XtAppAddTimeOut or similar :-|.

The server overhead for this is mildly ridiculous, though (see also DESQview/X,
which does this in its DOS windows).  Do you really want xterm to wake up every
half second and whack the server into doing a bitblt?

++Brandon

Newsgroup: comp.windows.x
document_id: 68194
From: jones@chpc.utexas.edu (William L. Jones)
Subject: Re: Outline scalable fonts versus bitmap replicated scalable fonts


After looking at the scaling code I realized the follwing:

  1) My problem with the resolution 100x100 foints is due to an installation 
     problem.

  2) That the X server or font server will rescale the best font it can find
     to meet your requirements.  

     This means that if you server return a response like the following

     -adobe-helvetica-medium-o-normal--0-0-75-75-p-0-iso8859-1

     You can ask for the follwogin:

        -adobe-helvetica-medium-o-normal--14-100-90-90-p-0-iso8859-1
 
     and it will generate it for you.  You should try to always use 
     known pixel sizes.  

Bill Jones




Newsgroup: comp.windows.x
document_id: 68195
From: carl@frost.bain.oz.au (Carl Sandland)
Subject: Re: C++/Motif, gcc, silly messages

Thanks to everyone who mailed help, unfortunately the end problem was a REALLY
stupid `oversight' on my behalf. The code was 100% perfect, but it might
help to add Control.C to my makefile.......

	Anyway the mangled name was telling me it could'nt locate the Control
constructor...

	I just want to reaffirm what a valuable book this one is, I'm enjoying
evry page :)

Newsgroup: comp.windows.x
document_id: 68196
Subject: Re: X on DOS or Windows
From: clee2@calstatela.edu (C. Lee)

In article 16924@psg.com, mvalente@draco.lnec.pt () writes:
>
>
>  I'm posting this request again since the last one had no title.
> 
>  I'm looking for X server software on DOS or Windows.
> 
>  I've already seen Desqview/X and XVision but would like to be aware
> of other solutions, namely public domain or shareware implementations.
> 
>  I'd also like to know, in the commercial case, about possible problems,
> incompatibilities, available window managers and libraries, etc.
> 
>  If you have any experiences in this area please let me know.
> 
>
>  C U!
> 
>  By(e)
> 
>    Mario Valente
>
>



Try Linux. Available on the internet.
    


Newsgroup: comp.windows.x
document_id: 68197
From: gordons@mon.sps.mot.com (Gordon Sasamori)
Subject: Re: viewing postscript files under X windows

In <604@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:

>OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
>requires DSC compliant PostScript files, in order to stop at page breaks.
>I don't consider that broken.  I say that any program that puts out a
>PostScript file that isn't DSC compliant is broken.

Well that may be true.  However, the man page for pageview for OW 2.0
does not mention about DSC compliance.  In any event, the point here
is that if you try to display some PS files using pageview you will
find out that it's not a practical tool.
-- 
...v....1....v....2....v....3....v....4....v....5....v....6....v....7..
Gordon T. Sasamori
HC05 CSIC MCU Design       (email: gordons@ai.sps.mot.com,
Nippon Motorola Ltd.        voice: 81(3)3280-8339, FAX: 81(3)3440-0033)

Newsgroup: comp.windows.x
document_id: 68198
From: mufti@pls.com
Subject: Including color pixmap .xpm files in my application

Is there a portable and convenient way to use color picture files in
the .xpm format to define an X pixmap in a Motif application? Any
functions, pointers, tips etc. would be most welcome.

--------------------
Saad Mufti
Personal Library Software

e-mail: mufti@pls.com


Newsgroup: comp.windows.x
document_id: 68199
From: broeze@cs.utwente.nl (Arjen Broeze)
Subject: MSWindows -> XWindows conversion


Hi All,

I've heard of a commercial package named ZINK, that could convert MS-Windows
source-code to XWindows source-code (C). The only problem is, the package
isn't available in Holland (at least, I can't find it anywhere :-( )

Is there another package (preferrably free- or shareware), that can do the 
same thing? And if so, where can I find or buy it?

Thanks in advance

Arjen

Newsgroup: comp.windows.x
document_id: 68200
From: tvtjet@eua.ericsson.se (Jorgen Eriksson)
Subject:  ######### Drawing networks, graphs ? ###########


	Are there any widgets, function 
	librarys for drawing networks, 
	graphs etc ? (Not tree views) 
	Freeware, shareware, comercial...
	Like this, for instance:
                                                               
                          O
                          |
                          |
                O---------O=======>O
               / \        |
              /   \       |
        O----O.....O      O
            / \
           /   \ 
          O     O

	* Just by giving the associations 
	  between the nodes. Automatic
	  layout generation.

	* It would be nice if any node 
	  symbols could be used. Maybe 
	  even to insert widgets as nodes.

	* Using different line styles etc.
	  for describing associations.

	Any information would be appreciated,
	thanks in advance,

			Jorgen (Jorgen.Eriksson@eua.ericsson.se)


Newsgroup: comp.windows.x
document_id: 68201
From: pflynn@curia.ucc.ie (Peter Flynn)
Subject: Compiling ghostview under Sun OpenWindows 3

Due it seems to Sun's crapulous organisation of the X libraries and includes,
most standard (GNU and other) software won't compile out of the box (well, tar
file). 

Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
now the ghoddam thing _still_ complains it can't find them.

I still haven't been able to compile xdvi, not no way.

Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
tried hard copying all the relevant files into the "right" places and
every time, there's some bit missing or it refuses to find it.

///Peter

Newsgroup: comp.windows.x
document_id: 68202
From: soenke@wiwi12.uni-bielefeld.de (Soenke Voss)
Subject: Help needed: callbacks, actions and events 


I understood that there are two methods to connect application code to widgets:

                       callbacks and actions

The problem I face now is that I have a quite long piece of application code
that performs a lot of drawing into a window. I want to connect this to a
widget. No problem so far. I could use a callback function or an action to do this, processing any events afterwards.

But because the drawing takes some while, I want the application code sequence
to be able to be interrupted by events. Then I want to handle the events
and resume with processing the application code at the point it was
interrupted.
It seems to me that this isn't possible, but how can I give the user the
impression that his inputs are immediately processed ?

Has anybody an idea?

Please answer via e-mail.

Thanks in advance.

Soenke

-------------------------------------------------------------------------------
Soenke Voss                                                Faculty of Economics
soenke@wiwi12.uni-bielefeld.de                          University of Bielefeld
                                                             W-4800 Bielefeld 1
                                                                        Germany

The only difference between me and a madman is
that I am not mad ! (Salvador Dali)
-------------------------------------------------------------------------------


Newsgroup: comp.windows.x
document_id: 68203
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1t0dndINNmsd@senator-bedfellow.MIT.EDU> steve.mcmahon@launchpad.unc.edu writes:

>>>>>> On Fri, 14 May 1993 07:15:25 GMT, me@dude.pcs.com (Michael
>Elbel) said:

>ME> As is, emu won't work on BSD derived systems (e.g. SUNs) with
>ME> anything else than a csh. There is a fix to this, which is very
>ME> short (remove one line of code). I'll put this on export today.

>It's more than that actually. In the version on export one cannot just
>specify a POSIX tty behaviour, the POSIX config files are incomplete
>without those of some specific platforms like Suns and DECs. I looked
>twice at porting emu to linux, but stopped short becuse of the tty
>part. Is there a `cleaner' version of emu that supports POSIX tty
>explicitly?

Hmm, depends on how you define 'clean'. Jordan implemented the system
dependent stuff in a way that you have basic implementations for,
call it, operating system types, then you go ahead and write a include
file for your specific machine or operating system using the basic
implementations. Since both Jordan and I haven't encountered a 
OS flavor yet, that is fully POSIX, we haven't gotten around to
really implement (and test) a top-level include file specifically
for just posix. The posix routines are used in the sun specific file
tty_sun.i for example, but here we also use some bsd stuff. All in all
it still is probably better to implement a include file for each and
every operating system than '#ifdef'ing in existing ones. The type
of mess that can result from that can clearly be seen in the xterm
sources. Even if quite a bit of code gets copied almost unchanged a 
couple of times, this only uses up some disk space, since only the 
"drivers" actually included from the toplevel include file will be 
compiled into emu.

It shouldn't be hard to come up with a tty_linux.i file that fully
relies on the posix stuff, but unfortunately I don't have a linux
system available to me, so I can't do the port myself. I would suggest
you read the README in term/sysdep and if you have any problems or
questions, contact me and we could try to sort this out. Unfortunately
we have to rely on help from the net on this part of emu, since we 
just don't have access to that many different systems.

Michael


--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
document_id: 68204
From: duggan@ecs.umass.edu
Subject: Creating Your own ColorMap, i.e. Lookup Table in X11 R4

Hello,

Below I have the copy of some source I am using to setup a user-specified color-
map for X R11 V4. I am attempting to create user defined colors in terms of
RGB color ranges. The calls to XAllocColor prove ineffective. 

Variables are defined are as follows:

    int                 i, j, k, lut_index
    color_type          min_image, max_image;
    color_type          image Pixel_Value_Range, last_image, start, end, jump,
                        lut [ 512 ];
    unsigned long       pixel;
    double              red, green, blue;

/*
 * Data structure used by color operations
 *
typedef struct {
        unsigned long pixel;
        unsigned short red, green, blue;
        char flags;  /-* do_red, do_green, do_blue *-/
        char pad;
} XColor;
***************/
    XColor              rgbcolor, hardwarecolor;


With color_type defined as { double red, double green, double blue }.

What I need to know is how to set [is it possible] the values in hardwarecolor
to work within the call to XAllocColor:

    start.red = (int) 255 * min_image.red;	/* 0..255 */
    end.red   = (int) 255 * max_image.red;	/* 0..255 */
    jump.red  = (int) (( end.red - start.red ) / 7);

    start.green = (int) 255 * min_image.green;  /* 0..255 */
    end.green   = (int) 255 * max_image.green;  /* 0..255 */
    jump.green  = (int) (( end.green - start.green ) / 7);

    start.blue = (int) 255 * min_image.blue;    /* 0..255 */
    end.blue   = (int) 255 * max_image.blue;    /* 0..255 */
    jump.blue  = (int) (( end.blue - start.blue ) / 7);

    lut_index = 0;
    for (i=0; i<8; i++)
        for (j=0; j<8; j++)
            for (k=0; k<8; k++)
                {
                if ( i == 0 || jump.red < 1 )
                    lut [ lut_index ].red = start.red;
                else
                    lut [ lut_index ].red = jump.red * i - 1;

                if ( j == 0 || jump.green < 1 )
                    lut [ lut_index ].green = start.green;
                else
                    lut [ lut_index ].green = jump.green * j - 1;

                if ( k == 0 || jump.blue < 1 )
                    lut [ lut_index ].blue = start.blue;
                else
                    lut [ lut_index ].blue = jump.blue* k - 1;

                hardwarecolor.red   = (short) lut [ lut_index ].red;
                hardwarecolor.green = (short) lut [ lut_index ].green;
                hardwarecolor.blue  = (short) lut [ lut_index ].blue;
                hardwarecolor.pixel = lut_index;

printf("HW1: i = %d :  %d %d %d: pixel = %d \n", lut_index, hardwarecolor.red,
                hardwarecolor.green, hardwarecolor.blue, hardwarecolor.pixel );

                status = XAllocColor ( dpy, colormap, &hardwarecolor );
printf("HW2: i = %d: %d %d %d: pixel = %d \n", lut_index, hardwarecolor.red,
                hardwarecolor.green, hardwarecolor.blue, hardwarecolor.pixel );
                if ( status != 0 )
                    {
                    XSetForeground ( dpy, gc, hardwarecolor.pixel );
                    XFillRectangle ( dpy, win, gc, 1, 1, MAXCOLUMN, MAXROW );
                    XFlush ( dpy );
                    sleep (10);
                printf("%d: %f %f %f at %d \n", lut_index, lut [ lut_index ].re
                            lut [ lut_index ].green, lut [ lut_index ].blue,
                            hardwarecolor.pixel );
                    }
                lut_index = lut_index + 1;
                }

Thanks in advance to anyone who can help me with this problem.

Sincerely,

	John F. Duggan

----------------------------------------------------------------------------
John F. Duggan                               alias    :Genghis Khan
Engineering Computer Services,               internet : DUGGAN@ecs.umass.edu  
Univ. of Massachusetts, Amherst, MA 01003    Bitnet     : DUGGAN@umaecs

Newsgroup: comp.windows.x
document_id: 68205
From: jc@minya.UUCP (John Chambers)
Subject: program to display .gif files?

It seems silly, but while I've located things like tgif that can  edit
gif  files, and various tools to convert to/from gif format, I haven't
been able to locate a program that just opens a window and displays  a
gif file in it.  I've looked thru various faq files, also to no avail.
Is there one lurking about in some  archive?   Nothing  sophisticated;
just "show the pretty picture"?

Alternatively, if I could locate the specs for gif, I don't suppose it
would be too hard to write it myself, but I have no idea where to even
start looking for the spec.  (Well, actually, I do have an idea - this
newsgroup.  ;-)


-- 
If the auto industry were like the computer industry, a car would  now
cost $5, would get 5000 miles to the gallon, and at random times would
explode, killing all its passengers.

Newsgroup: comp.windows.x
document_id: 68207
From: jvs@jacks.apana.org.au (Jack Strangio)
Subject: SVR4 xclients won't work under SVR4.2 (repost)

When I changed from SVR4 to SVR4.2 on my Intel box I discovered that
some of my SVR4 xclients such as xload, etc would no longer work.


They bomb out with the message:

error: can't open display unix:0.0

Is this because they can't find the correct shared libraries, they need
to be recompiled, or have I not used the correct options?

Both systems use X11R5.

Thanks.

Jack.


Newsgroup: comp.windows.x
document_id: 68208
From: kerr@ux1.cso.uiuc.edu (Stan Kerr)
Subject: Re: Mac X and Sun OpenWindows 3

benj@ossa.hq.nasa.gov (Benjamin Jones) writes:

>I've run into a bit of a snag while trying to get Mac X up and running and would appreciate
>any responses from anyone who may have seen this problem.

>On my local network, I have a number of Macs, Suns and SGI machines.

>I have installed MacX/MacTCP on all of the Macintoshes and can run Xclients on the SGI machines
>all the live-long day.  The problem is when I try to run an Xclient on any Sun, I setup
>the command in MacX, then execute it.  Nothing happens, I don't even get any command output.

>Now, I thought it might be a routing issue, but I can run remote Xclients on the suns from my SGI
>machines, as well as vice-versa.  I can also run remote Xclients on SGI machines that
>are NOT on my local net here, but the above problem holds true for non-local Suns as well.

I tried to send this as private mail, but mail to benj@ossa.hq.nasa.gov was
rejected, so here it is:

Here is an extract from the README file that comes with MacX:

Users of remote commands with Sun machines may find that their remote commands 
appear to do nothing and there is no output from the Sun machine.  This is due 
to a feature of the Sun rexecd network daemon which quietly disconnects from 
requesting machines that are not known to the Sun|s network address (/etc/hosts
or NIS hosts) database.  To successfully use remote commands with a SunOS-based
machine, there must be an entry in the network address database for the 
Macintosh which is running MacX.

-- 

Stan Kerr    
Computing & Communications Services Office, U of Illinois/Urbana
Phone: 217-333-5217  Email: stankerr@uiuc.edu   

Newsgroup: comp.windows.x
document_id: 68209
From: montnaro@spyder.crd.ge.com (Skip Montanaro)
Subject: Re: ######### Drawing networks, graphs ? ###########


In article <1993May17.085405.7807@eua.ericsson.se> tvtjet@eua.ericsson.se (Jorgen Eriksson) writes:

	   Are there any widgets, function 
	   librarys for drawing networks, 
	   graphs etc ? (Not tree views) 
	   Freeware, shareware, comercial...
	   Like this, for instance:

	   [ pretty picture deleted ]

	   * Just by giving the associations 
	     between the nodes. Automatic
	     layout generation.

	   * It would be nice if any node 
	     symbols could be used. Maybe 
	     even to insert widgets as nodes.

	   * Using different line styles etc.
	     for describing associations.

Check out the XmGraph library in the following location:

	iworks.ecn.uiowa.edu:/comp.hp/GUI_classic/XmGraph.tar.Z.
--
Skip (montanaro@crd.ge.com)

Newsgroup: comp.windows.x
document_id: 68210
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: internationalization...


 
 hi, is there anybody has some example programs about using
 the internationalization features in X11R5 ? Such as a small
 X program just to show Chinese texts in wondows, menu bar or
 icons... Thanks in advance.
 
 Michael C. Hung
 

Newsgroup: comp.windows.x
document_id: 68211
From: mjcarley@unix2.tcd.ie (Michael Carley)
Subject: DVI Viewers

I need some help in tracking down a dvi viewer for X. I have xdvi but we
have not got the X libraries and includes installed- so 
		i) is there a way around this, as we are trying to avoid
		   installing the stuff (space is at a premium).
		ii)would someone be prepared to make the binaries
		   available. We have a HP700 and a HP382.

	Thanks for any help
	Michael Carley, Dept. of Mech Engineering,
	TCD


Newsgroup: comp.windows.x
document_id: 68212
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: SUMMARY: How to make a window's input be ALL CAPS

Thanks to Bruce Barnett, who recommended xvttool, and Bernward Averwald and
Liam Quin, who recommended modifying .Xdefaults to get the desired behavior
for a *class* of xterms.

In xvttool, simply create a key file that looks like:
"a"	"A"
"b"	"B"
"c"	"C"
...
and specify said key file on the command line.  This will translate
any input into any other (in my case, lo-case to up-case).  Works great, and
you get a customizable button-pad on the right or left side.

To use an xterm solution, add to your .Xdefaults:
capxterm*VT100.Translations: #override \
   <Key>a: string("A")\n\
   ...

or:
capxterm.vt100.translations: #override \n\
        <Key>a: insert-string(A) \n\
        <Key>b: insert-string(B) \n\
        ...

and invoke as: xterm -name capxterm

Thanks loads!
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
document_id: 68213
From: marcus@iiasa.ac.at (Marcus SCHNELL)
Subject: Re: program to display .gif files?

John Chambers (jc@minya.UUCP) wrote:
: It seems silly, but while I've located things like tgif that can  edit
: gif  files, and various tools to convert to/from gif format, I haven't
: been able to locate a program that just opens a window and displays  a
: gif file in it.  I've looked thru various faq files, also to no avail.
: Is there one lurking about in some  archive?   Nothing  sophisticated;
: just "show the pretty picture"?

xv



Newsgroup: comp.windows.x
document_id: 68214
From: sadie@cs.sun.ac.za (Sadie  HF)
Subject: Looking for Article


I am urgently looking for the following article, but I can't seem to
find it anywhere here:

     "The Multi-Threaded X Server"
     John Allen Smith
     The X Resource
        Issue 1, pp. 73-89, Winter 1992

If anyone can tell me where to find it, it WILL be much appreciated.

H.F. Sadie
Departement of Computer Science
University of Stellenbosch
South Africa
 
e-mail:   sadie@itu.sun.ac.za

Newsgroup: comp.windows.x
document_id: 68215
From: skji@eve.kaist.ac.KR (Ji SoonKi)
Subject: (none)

SUBSCRIBE XPERT skji@eve.kaist.ac.kr

Newsgroup: comp.windows.x
document_id: 68217
From: ladislas@sobeco.com (Ladislas A.)
Subject: FAQ's ??


Could someone repost the FAQs for this group, please?

Thanks
Ladislas.

Newsgroup: comp.windows.x
document_id: 68218
From: dave@sg25.npt.nuwc.navy.MIL (dave lewis)
Subject: unsubscribe

unsubscribe


Newsgroup: comp.windows.x
document_id: 68219
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: COLORS and X windows (AIcons)

Excerpts from netnews.comp.windows.x: 15-May-93 Re: COLORS and X windows
(A.. John Cwikla@morrison.wri (4620) 

> The problem is that we need solutions for applications now.  And although 
> I would love to have most of the things mentioned here, somebody has to write 
> it. 

What I'd like to see is this scenario: 

Each widget, view, whatever, describes it's colors via a palette. 
Palettes can be shared and they only contain descriptive information. 
They are not directly tied to the object that uses them.  Palettes are
held in the server.  A palette can accomadate, up to, the number of
hardware color cells of color descriptors. 

When the input focus is in a particular widget, that widget has access
to all of the colors that are described in its associated palette.  ALL
OTHER WIDGETS, TRANSIENTLY, GET THE CLOSEST APPROXIMATION THAT CAN BE
GENERATED BY A UNION OF THE COLORS FROM THE CURRENT PALETTE AND ANY FREE
COLORS THAT ARE LEFT OVER. 

A widget specifies a color for imaging by providing an index (pixel)
into its associated palette. 

The bold part above is hard and would need to be done in the server. 
 

Newsgroup: comp.windows.x
document_id: 68220
From: udumula@fndaug.fnal.gov (Lourdu Udumula)
Subject: xterm slave mode

I am tunning into this newgroup after a long time. Could somebody tell me 
what the slave mode in the xterm is? and what can it be used for? Any info
where I can get more info or examples. I want to use a bunch of xterms and 
send the input from one application to these xterms and get the output on the
xterms. Please email me any info. 

Thanks,
Lourdu




Newsgroup: comp.windows.x
document_id: 68221
From: rsc@hao.ucar.edu (Bob Campbell)
Subject: Motif 1.2 and OW 3.0 / compiling xcoral

I've built xcoral on my system (SunOS 4.1.3, X11R5, Motif 1.2, OW 3.0)
and it builds fine, but when I run it, any child windows that xcoral
opens,
1) locks the mouse into the window area
2) doesn't accept any input from the mouse.

Needless to say, this is a pain in the ass, as I have to go find an
empty terminal to login and kill xcoral.

Is this a problem with OpenWindows or Motif?  Is there a patch?
---
#######################################################################
# Bob Campbell                 #  "Crayons can take you where no      #
# System Manager               #   Starship can go."                  #
# HAO, NCAR                    #                    -Guinan           #
# rsc@hao.ucar.edu             #                     STTNG            # 
#######################################################################
DISCLAIMER: My views are in no way connected to my employer.

"A closed mouth gathers no feet."      - Unknown
"It only requires a little thought and a little work."     - Don Hicks
                                                       Managing Editor
                                                     Amazing Computing


Newsgroup: comp.windows.x
document_id: 68222
From: dave@sg25.npt.nuwc.navy.MIL (dave lewis)
Subject: unsubscribe

unsubscribe



Newsgroup: comp.windows.x
document_id: 68224
From: hildjj@jupiter.fuentez.COM (Joe Hildebrand)
Subject: Re: Help needed: callbacks, actions and events


> 
> I understood that there are two methods to connect application code
to widgets:
> 
>                        callbacks and actions
> 
> The problem I face now is that I have a quite long piece of
application code
> that performs a lot of drawing into a window. I want to connect this
to a
> widget. No problem so far. I could use a callback function or an
action to do this, processing any events afterwards.
> 
> But because the drawing takes some while, I want the application code
sequence
> to be able to be interrupted by events. Then I want to handle the
events
> and resume with processing the application code at the point it was
> interrupted.
> It seems to me that this isn't possible, but how can I give the user
the
> impression that his inputs are immediately processed ?
 
Use a workProc.  See XtAppAddWorkProc(3Xt).

You should split your drawing routnie up into small chunks (this
is the hard part).  Then, in the callback that starts the drawing,
you call XtAppAddWorkProc() to call your workProc the first time. 
Your workProc should be a function that returns a boolean...
TRUE when you are finished, and FALSE when you want to keep
processing.  If you return FALSE, the workProc is automatically
re-installed.  

Note that this method is better that using a time-out loop, since
events get processed in a more precedence-oriented manner.  If you
are using the same Ada bindings I am, however, you are hosed, and
should look into XtAppAddTimeout(3Xt).

----------
Joe Hildebrand
hildjj@fuentez.com
Software Engineer
Fuentez Systems Concepts
(703)273-1447

Standard disclaimers apply

Newsgroup: comp.windows.x
document_id: 68225
From: Peter_Imants_Buttuls@mts.ucs.ualberta.CA
Subject: Any free X-servers for PCs

Does anyone know of any free X-servers for PCs, preferably that run under
MS Windows? THANKS.
 
Peter Buttuls, University of Alberta, Edmonton, Canada 
e-mail:(userpib@mts.ucs.ualberta.ca) 

Newsgroup: comp.windows.x
document_id: 68226
From: dan@watson.ibm.COM (Walt Daniels)
Subject: X, shared libraries, and replacing modules in them?

I know nothing about Sun's but replacing pieces of libraries, shared
or not, is straight forward on RS/6000's (all releases).  Extract the
appropriate pierce with ar; rebind the .o; and replace with ar.
See Info for details.


Newsgroup: comp.windows.x
document_id: 68227
From: mlt@blues.infores.com (Michael Turok)
Subject: 'makedepend' problem

Hi, netters:

We have a problem with 'makedepend': it doesn't know how to correctly process
#if clause in C preprocessor statements. It evaluates everything to
true no matter what the conditionals are.
For example, makedepend chokes on one of X11 include files (as distributed
by Sun) - namely Xos.h:

#if     !defined(SUNOS41) || defined(__STDC__)
#       include <string.h>
#       define  index   strchr
#       define  rindex  strrchr
#else   /* BSD && !__STDC__ */
#       include <strings.h>
#endif  /* !SUNOS41 || __STDC__ */

Here 'makedepend' evaluates both #if and corresponding #else statements
to 'true' and tries to open the file <strings.h> which doesn't exist
under Solaris2.
We also have a lot of #if statements in some of our legacy code.
We got and built 'makedepend' off the net - it didn't fix the problem.

In all fairness it should be noted that 'makdepend' man-page (Sun's
distribution) mentions this problem:

BUGS
     If you do not have  the  source  for  cpp,  the  Berkeley  C
     preprocessor, then makedepend will be compiled in such a way
     that all #if directives will evaluate to  "true"  regardless
     of  their  actual  value.  This may cause the wrong #include
     directives to be evaluated.  Makedepend should  simply  have
     its own parser written for #if expressions.

Has anybody come up with some solution/fix to 'makdepend' other than
WriteYourOwnParser... and willing to share it with us?

Since we often experience delays in our newsfeed - please reply 
directly to my e-mail address -> I'll post a summary.

Thanks in advance.
***************************************************************************
*     Michael Turok                  *                                    *
*  Information Resources, Inc.       * E-Mail:  mlt@blues.infores.com     *
*     200 Fifth Avenue               * Voice:  (617) 890 1100 ext.7531    *
*  Waltham, MA 02154, USA            * Fax:    (617) 890 4660             *
***************************************************************************

Newsgroup: comp.windows.x
document_id: 68228
From: gibanez@dcc.uchile.cl (Gabriel Ibanez C.)
Subject: key event ----> window

Hi there,


  Do someone of you have a program for sending a key event
to another window but it MUST appear in that window....

I have used xsendevent.tar package but it does not do that !!!

For example, if I get a program executing:

--------------
#!/bin/sh
read something
....
....
echo $something
....
....
--------------

and if I send the key event "<KeyPress>a,<KeyRelease>a"
to that window then I will get:

something=a


Thanks in advance.


-- 

   Gabriel Iban~ez C.          
   gibanez@dcc.uchile.cl

Newsgroup: comp.windows.x
document_id: 68229
From: harden@skate.ics.com (Aub Harden)
Subject: Re: Did Microsoft buy Xhibition??


In article <1993May14.191035.19271@vpbuild.vp.com>, jessea@u013.me.vp.com (Jesse W. Asher) writes:
|> I've been getting mail from Xhibition about the June conference and I was
|> wondering if Microsoft had bought Xhibition?  The front says "Conference
|> from Microsoft Windows NT Developers".  What's the deal?  I thought
|> "X"hibition was for "X-windows"??
|> 
|> -- 
|>       Jesse W. Asher                                          

Yes, Xhibition is for the X Window System.  The X Window System Conference 
remains the largest and most complete conference devoted to X.  Nineteen full
and half day tutorials and thirty-six technical sessions over three days
provide huge amounts of information for X application developers.  Add vendor
exhibits and a Product Presentation track to provide information on what
folks can purchase today, and you have a complete show focused on X11.

Speakers at Xhibition 93 include: 

  Bob Schiefler, Lu Abel, Mark Ackerman, Paul Asente, Doug Blewett, 
  Donna Converse, Jim Fulton, Oliver Jones, Keith Packard, Ralph Swick, 
  Doug Young, and many others.

Xhibition is growing (fortunately for us:-) and we have added some additional
conferences.  Surveys that we have given have indicated additional topics of
interest.  These include: object oriented technologies such as the Object
Management Group's ORB and CORBA; C++ as it applies to X; client server
technologies such as DCE; threads; databases- object oriented and relational;
and (not surprisingly when you look at the audience) Windows NT.

With the bulk of the Xhibition audience (and the UNIX community) developing
applications for in-house or custom use, a new 32-bit operating system from a
player as large as Microsoft needs to be evaluated. With MS Windows on so many
desktops, and the price of computing power dropping, its successor needs to be
evaluated.  As corporations begin to look at NT, so must their developers and
suppliers.

The mission of the Xhibition technical conferences is to provide information
to the application developer and to the technology planner.  The NT Conference
at Xhibition is designed to do just that.  We worked with Microsoft to provide
the *only* conference this year specifically designed to show X and UNIX
developers the capabilities of Windows and NT.  If you aren't sure that NT has
what you need for your application development or systems deployment, this is
the place to find out.  Ask the folks from Microsoft, get them to show you
what you need.  Conference attendees will receive NT Software Development
Kits- to bang on, evaluate, and generally to see for yourself.

I hope this doesn't sound like an NT commercial (it should sound like an
Xhibition commercial:-).  I just want to reiterate that the Xhibition audience
is growing and Xhibition is growing along with it.  The industry is a
confusing place at the moment with UNIX, COSE, NT, DCE, CORBA, and all of
the other acronyms sprouting up.  Xhibition can help sort out the confusion.


-Aub Harden
 Technical Program Manager
 harden@ics.com


        X H I B I T I O N   The Conference and Trade
         ******    *****    Show for Corporate
        *      *       *    Software Development
         ******     ***  
             *         *    201 Broadway
          ***     *****     Cambridge, MA  02139

              Windows on Distributed Computing

                 June 7 - 11,   San Jose, CA

           xhibit@ics.com  uunet!ics.com!xhibit
        Voice: (617) 621-0060  Fax: (617) 621-9555

      Presented by Integrated Computer Solutions, Inc.

Newsgroup: comp.windows.x
document_id: 68230
From: da188@cs.city.ac.uk (A. Khattri)
Subject: Re: Blinking Cursor in Xterm???

>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>> was implemented by drawing a rectangle around the character. I doesn't
>> seem to be changed 'til now.
>> But if you have the sources you could add a blinking cursor via
>> XtAppAddTimeOut or similar :-|.
>
>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>which does this in its DOS windows).  Do you really want xterm to wake up every
>half second and whack the server into doing a bitblt?

Most DOS X servers are terribly slow to use in my experience - and no, I guess 
performance would be pretty bad. I believe the discussion is valid for an X 
server on a decent workstation.

-- 
.-------------------------[ The Eno ]-------------------------------------.
| "The trouble with New Age    | JANET : da188@uk.ac.city                 |
|  music is that there's no    |         eno@uk.ac.city.cs                |
|  evil in it.." - Brian Eno   | US :    da188%city.ac.uk@cunyvm.cuny.edu |

Newsgroup: comp.windows.x
document_id: 68231
From: webster@ucssun1.sdsu.EDU (paolini p)
Subject: xdm-X emul error

When attempting to connect to an SGI Indigo from a PC clone using
a commercial X windows emulation package, the X package hangs in
a pre-login X screen mode.  The login box won't display.  Using
the package in 'telnet' mode, I can logon to the SGI, and run any
none graphic type things.  On the PC I get an error:
"Read error 0 on socket 1"  (raw socket error)

On the SGI, in xdm-errors:
I get a termination error when I kill the stalled screen on the PC

On the SGI, in SYSLOG:
<date><time><SGI> xdm[#]:Hung in XOpenDisplay(<remote>:0, aborting
  "                  "  :server open failed for <remote>:0, giving up

I have all access control disabled (I believe, SYSLOG message confirms
this when I login on the SGI).  I believe I have the SGI set up properly
as described in the X ADm. book by O'Rielly....

The X emul package tech support hasn't been able to solve the problem.

So what I'm looking for is some suggestions on where to look for problems,
and possible tests to run to narrow down the questions.
Thanks

webster@ucssun1.sdsu.edu


Newsgroup: comp.windows.x
document_id: 68232
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Did Microsoft buy Xhibition??

harden@skate.ics.com (Aub Harden) writes:


>In article <1993May14.191035.19271@vpbuild.vp.com>, jessea@u013.me.vp.com (Jesse W. Asher) writes:
>|> I've been getting mail from Xhibition about the June conference and I was
>|> wondering if Microsoft had bought Xhibition?  The front says "Conference
>|> from Microsoft Windows NT Developers".  What's the deal?  I thought
>|> "X"hibition was for "X-windows"??
>|> 
>|> -- 
>|>       Jesse W. Asher                                          

I was wondering this myself.

>and (not surprisingly when you look at the audience) Windows NT.

>With the bulk of the Xhibition audience (and the UNIX community) developing
>applications for in-house or custom use, a new 32-bit operating system from a
>player as large as Microsoft needs to be evaluated. With MS Windows on so many
>desktops, and the price of computing power dropping, its successor needs to be
>evaluated.  As corporations begin to look at NT, so must their developers and
>suppliers.

>what you need.  Conference attendees will receive NT Software Development
>Kits- to bang on, evaluate, and generally to see for yourself.

>I hope this doesn't sound like an NT commercial (it should sound like an
>Xhibition commercial:-).

Unfortunately it does.  I don't agree with the logic of NT at an X windows
conference.  Perhaps some good will come of it, but the two are so dissimilar
and the NT marketing stuff is so large in the Xhibition adds that I was 
coming to a similar conclusion as Jesse...

-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68233
From: eposnak@dale.ksc.nasa.gov (Ed Posnak)
Subject: what is a client's DISPLAY variable set to?


Is there an easy (ie via shell commands) way to tell what the DISPLAY 
environment variable is for any given client process?  Sometimes I can 
get what I want by typing ps -axe if:
   a. the client was invoked with a -display argument
      or
   b. DISPLAY is one of the first few variables defined in the environment
      (actually I've never seen b. but it's there to illustrate the type 
      of thing I'm looking for)

Ultimately I wish to determine the number of displays that are simultaneously 
running a given X application.

my system: SunOS 4.1.2 sun4c

thanks for any help,


-- 
Ed Posnak
Harris Space Systems Corporation
eposnak@core1.hssc.ksc.nasa.gov

Newsgroup: comp.windows.x
document_id: 68234
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: multi-bytes fonts


I am wondering how to change the English fonts in an existed 
API to some multi-bytes fonts ? (such as Chinese, Japanese...)
Someone told me X11R5 supports some internationalization
features, but I cannot find any examples for my need. Is there
anybody has done some similar jobs ?

By the way, all the English fonts should be replace by Chinese or
Japanese fonts, that means in windows, menubar, button....

That will be great if someone can share us what you have done.
Thanks in advance.

M.C. Hung

Newsgroup: comp.windows.x
document_id: 68235
From: hdr@ross.COM (Henry D. Reynolds)
Subject: Help w/ X11R5p22 w/ Sun 4/110 cg2 framebuffer


Xsun won't come up in color w/ this framebuffer! I am trying to use xkernel on
some of these 4/110s I have a freshly built Statically linkes copy of Xsun
that works just fine on cg6, cg4, bw2 type of framebuffers, but on the 4/110
that have this type of frame buffer all I get is Mono.

cgtwo0 at vme24d16 0x400000 vec 0xa8 
cgtwo0: Sun-3 color board, fast read

Here is what I've tried.

removing all the other /dev/cg* , /dev/bw , and /dev/fb and then selectivly
recreating /dev/cgtwo0. Xsun comes up mono. recreating /dev/fb, comes up mono,

I've tried Xsun & Xsun -dev /dev/cgtwo0.

PS Xnews will come up in color but it's not statically linked, and the
dynamically linked Xsun comes up in mono also.

PPS Xsun was compiled on w/ gcc 2.3.3 on a system running 4.1.3 and the 4/110
is also running 4.1.3.

Thanks n advance
--

- ..  the HIGHWAY is made out of LIME JELLO and my HONDA
 is a barbequeued OYSTER!  Yum!

Henry D. Reynolds           hdr@ross.com -OR- hdr@nidhog.cactus.org
FONE: (512)892-7802 x253    ROSS Technology, Inc.
FAX:  (512)892-3036         5316 Hwy 290 West Suite 500 Austin, TX 78735

Newsgroup: comp.windows.x
document_id: 68236
From: robert@swanee.ee.uwa.edu.au (Roberto Togneri)
Subject: Querying XDM to manage a remote display - How under Linux/xfree86?

We have Suns running SunOS 4.1.3 and Openwindows 3.0 (X11R4). We have
used Xvision on a PC, setup to broadcast query to the UNIX xdm servers and
allow a user to choose a UNIX client in which to login: xdm will then
manage that display. I would like to do the same thing with xfree86
running under Linux, but I don't know how. I don't want to hardwire the UNIX
xdm to manage the PC displays as the PC's are not always running Linux 
(let alone xfree86). I would like the same setup as provided by Xvision.

Can anybody help?
Thanks,
--
Dr. Roberto Togneri                        Phone: +61-9-380-2535     _--_|\
Centre for Intelligent Information Processing Systems               /      \ 
Dept. of Electrical & Electronic Engineering                        *_.--._/
The University of Western Australia        Fax:   +61-9-380-1101          v 
NEDLANDS WA 6009 Australia                 Email: robert@swanee.ee.uwa.edu.au

Newsgroup: comp.windows.x
document_id: 68237
From: dawagner@phoenix.Princeton.EDU (David A. Wagner)
Subject: Re: viewing postscript files under X windows

In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
>
>I can also live with a utility that converts postscript to plain
>text, perferably retaining page counts so that I know how many pages
>the original document contains.
>

	Well, I know of one hack to sort of do this conversion.  First
get ghostscript and check out the gs_2asc.ps file that comes with it.
It prints out some information about where each text string goes on the
page, and maintains page counts.  I've written a little C program to
massage the output of gs -dNODISPLAY gs_2asc.ps somewhat, so that you
can get all the ascii strings in the document.  No guarantees that it
won't break up words/sentences, though - I've used it with varying
degrees of success.  Anyways, try this out, it may do what you want.

/*
 * massager: a filter for use with gs; does crude Postscript->ASCII conversion
 *
 * Usage:
 *	cat file.ps | gs -dNODISPLAY gs_2asc.ps - | massager
 *
 * I print a <Ctrl-L> after each new page.
 *
 * Put the following source into massager.c and compile it:
 */

#include <stdio.h>
#include <string.h>

main()
{
	char	line[1000], *p;

	while (fgets(line, sizeof(line), stdin) != NULL)
		if (line[0] == 'P')
			printf("\f\n");
		else if (line[0] == 'S' && line[1] == ' ') {
			if ((p = strrchr(line, ')')) == NULL)
				continue;
			*p = '\0';
			if ((p = strchr(line, '(')) == NULL)
				continue;
			for (p++; *p; p++)
				if (*p != '\\' || (p[1] != ')' && p[1] != '('))
					putchar(*p);
			putchar('\n');
		}

	return(0);
}

--------------------------------------------------------------------------------
David Wagner                                              dawagner@princeton.edu

Newsgroup: comp.windows.x
document_id: 68238
From: gabi@ankh.technion.ac.il (Gabi Zodik)
Subject: Wanted An Interactive GUI builder for X motif

Hi there,

I'm looking for tools that can make X programming easy. 
I would like to have a tool that will enable to create X motif
GUI Interactivly. Currently I'm Working on a SGI with forms.
A package that enables to create GUI with no coding at all 
(but the callbacks). 
Any help will be appreciated.

Thanks Gabi.


Newsgroup: comp.windows.x
document_id: 68239
From: iop@server2.iie.ncku.edu.tw
Subject: How to program about WM_PROTOCOLS & WM_DELETE_WINDOW in OLIT...

HI, all
    I study about WM_DELETE_WINDOW atom in Open Look. I study the book -->
"Unix Desktop guide to OPEN LOOK", I run the example of chapter 8, but It
is not the result described as book's figure 8.1. Dose anyone read the book?
Or run the example (winprop.c)? What is the problem?
    I am curious about WM_DELETE_WINDOW programming... Anyone help me?
                       Thanks in advance for any help!!!
                                                            IOP

Newsgroup: comp.windows.x
document_id: 68240
From: irakliot@longs.LANCE.ColoState.Edu (Leo J. Irakliotis)
Subject: PLEASE!

This discussion on viewing .ps files undex X11 seems rather interesting
but I fail to understand the reason it is not contained in 2 at most
newsgroups.

I am subscribed to comp.text.interleaf and I could care less about
.ps viewing under X11. I am sure that members of this group interested in
the topic can followup by looking at other newsgroups.

Could you please remove the comp.text.interleaf from your distribution?
Just as a nettish sort of courtesy.

Best regards.

-- 
Leo J Irakliotis               irakliot@longs.lance.colostate.edu
-----------------------------------------------------------------
Electrical Engineering                      l.irakliotis@ieee.org
Colorado State U
(303) 491-2021                              Optical Computing Lab

Newsgroup: comp.windows.x
document_id: 68241
From: jhpark@kdb.snu.ac.kr (Park Jang Ho)
Subject: X11R5 on IBM RS6000

How are you, Everybody?

I installed X11R5 on our IBM RS6000 workstation. OS version is AIX 3.2.3.
There was no problem in installation.
But there was a problem in invoking 'xinit'.
When I invoke 'xinit', there is a error message as follows:

giving up.
xinit: unable to connect to X server
xinit: No such process (errno 3): Server error.

I'm a navice. So I don't know the reason why I get this message.
Please help me. I am waiting for your help.

Thanks for reading this mail.

-Park Jang Ho  (jhpark@kdb.snu.ac.kr)

Newsgroup: comp.windows.x
document_id: 68242
From: pacebes@cozuelos (Pedro Antonio Acebes Bayon)
Subject: xfig with open look problem

I'm a Solaris 2.1 user with a classic workstation.

I have compiled xfig 2.1.7 version with -DOPENWIN flag to use it with 
openwindows, but when i run it, the program runs and runs and runs (15 minutes)
and never is ready to work with it. The labels are not completed and i can't
push any button.

I have no problem if i does not run the openwindows but X.

Any solution?

Thanks in advance and excuse for my english.
--


-------------------------------
Pedro Antonio Acebes Bayon
E-mail: pacebes@cozuelos.tid.es

X.400 adress:
	  C=es;ADMD=mensatex;PRMD=iris;O=rediris;OU=relay;
	  DD.RFC-822=pacebes(a)cozuelos.tid.es





Newsgroup: comp.windows.x
document_id: 68243
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: multi-byte fonts



I am wondering how to change the English fonts in an existed
API to some multi-bytes fonts ? (such as Chinese, Japanese...)
Someone told me X11R5 supports some internationalization
features, but I cannot find any examples for my need. Is there
anybody has done some similar jobs ?

By the way, all the English fonts should be replace by Chinese or
Japanese fonts, that means in windows, menubar, button....

That will be great if someone can share us what you have done.
Thanks in advance.

M.C. Hung


Newsgroup: comp.windows.x
document_id: 68244
From: herb@iiasa.ac.at (Herb HASLER)
Subject: X11R5 on IBM RS6000

Yes we have the same problem with xinit.  The problems seems to come from the
fact that the XOpenDisplay(":0") fails.   If we try (on our machine
named godzilla)

setenv DISPLAY godzilla:0.0
Xibm&
xterm 


It works fine, but the following will not work

setenv DISPLAY unix:0.0
Xibm&
xterm 

Did we set a configuration option incorrectly?  Thank you for any assistance
you can offer.

---------------------------------------------------------------------------
                    Herb Hasler --- herb@iiasa.ac.at
      International Institute for Applied Systems Anaylsis  (IIASA)
          A-2361 Laxemburg, Austria --- +43 2236 715 21 ext 548
---------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68245
From: se7107297@ntuvax.ntu.ac.sg
Subject: X-Windows on MS-DOS PC? Where's the FAQ?

I need to know where I can get a FAQ on Xwindows for MS-DOS machines.
The usual FAQ just gave me a name of a file called XServers-NonUNIX.txt.Z.
which I cannot find anywhere.
 
  I need to do X-Windows programming on a MSDOS PC. Does anyone know how to
go about doing it?


Newsgroup: comp.windows.x
document_id: 68246
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1993May16.213936.6904@wariat.org> allbery@wariat.org (allbery) writes:

>As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
>+---------------
>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>> was implemented by drawing a rectangle around the character. I doesn't
>> seem to be changed 'til now.
>> But if you have the sources you could add a blinking cursor via
>> XtAppAddTimeOut or similar :-|.

>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>which does this in its DOS windows).  Do you really want xterm to wake up every
>half second and whack the server into doing a bitblt?

So what? I'm running emu on a 25 MHz 68020 box. I cannot make out ANY
difference in performance whether the cursor is set to blinking or
not (If you think about it a bit, a cycle of 400 ms is a hell a lot of
time for even the slowest PC). Since you would of course only enable
the blinking text cursor when your xterm has the input focus, this 
application is active anyway. To repeat it, a blinking text cursor
costs almost nothing in performance, it just needs some thought when
designing the xterm software.

Michael
--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
document_id: 68247
From: sadie@cs.sun.ac.za (Sadie  HF)
Subject: Looking for Article


I am urgently looking for the following article, can I cannot find it
anywhere in our local libraries:

      John Allen Smith
      "The Multi-Threaded X Server"
      The X Resource
        Issue 1, pp. 73-89, Winter 1992

If anyone can tell me where I can find it, I WILL much appreciate it!!

H.F. Sadie
Departement of Computer Science
University of Stellenbosch
South Africa

e-mail:  sadie@itu.sun.ac.za



Newsgroup: comp.windows.x
document_id: 68248
From: ccdw@kudu.ru.ac.za (Dave Wilson)
Subject: Open Look - where?

Where can I obtain a copy of the Open Look widgets?  Is it obtainable on
the net somewhere, or do I need to order a copy (if so, how)?

Thanks for any help.  Please email.

--
Dave Wilson
Computing Centre, Rhodes University
Grahamstown, South Africa

Newsgroup: comp.windows.x
document_id: 68249
From: Callum.Downie@brunel.ac.uk (Callum Downie)
Subject: Re: Mac X and Sun OpenWindows 3

In article <1t851o$mrd@ux1.cso.uiuc.edu> kerr@ux1.cso.uiuc.edu (Stan Kerr) writes:
>benj@ossa.hq.nasa.gov (Benjamin Jones) writes:
>
>>I've run into a bit of a snag while trying to get Mac X up and running and would appreciate
>> 
>> stuff deleted
>>
>>are NOT on my local net here, but the above problem holds true for non-local Suns as well.
>
>I tried to send this as private mail, but mail to benj@ossa.hq.nasa.gov was
>rejected, so here it is:

same here

>
>Here is an extract from the README file that comes with MacX:
>
>Users of remote commands with Sun machines may find that their remote commands 
>appear to do nothing and there is no output from the Sun machine.  This is due 
>to a feature of the Sun rexecd network daemon which quietly disconnects from 
>requesting machines that are not known to the Sun|s network address (/etc/hosts
>or NIS hosts) database.  To successfully use remote commands with a SunOS-based
>machine, there must be an entry in the network address database for the 
>Macintosh which is running MacX.
>

I received similar information/advice about what appears to be the same problem 
Benjamin has (and I still have).
NIS has all the information about the Macs
(I even put explicit entries in /etc/hosts to no avail).
Monitoring with 'snoop' on my Classic, the initial REXEC packet is sent to
the the SUN, which sends something to the correct Mac, but nothing appears
at the Mac.
'rexecd' is number one suspect, but it's more suble than the README suggests and
I haven't yet looked into it further.

>-- 
>
>Stan Kerr    
>Computing & Communications Services Office, U of Illinois/Urbana
>Phone: 217-333-5217  Email: stankerr@uiuc.edu   
-- 
callum.downie@brunel.ac.uk
Faculty of Technology, Brunel University, Uxbridge, UB8 3PH, UK
+44 895 274000 x2730

4.003 Die meisten Saetze und Fragen, welche ueber philosophische Dinge geschrieben worden sind, sind nicht falsch, sondern unsinnig.
7     Wovon man nicht sprechen kann, darueber muss man schweigen.

Newsgroup: comp.windows.x
document_id: 68250
From: brown@ftms.UUCP (Vidiot)
Subject: Re: viewing postscript files under X windows

In article <gordons.737605006@mon.sps.mot.com> gordons@mon.sps.mot.com (Gordon Sasamori) writes:
<In <604@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:
<
<>OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
<>requires DSC compliant PostScript files, in order to stop at page breaks.
<>I don't consider that broken.  I say that any program that puts out a
<>PostScript file that isn't DSC compliant is broken.
<
<Well that may be true.  However, the man page for pageview for OW 2.0
<does not mention about DSC compliance.  In any event, the point here
<is that if you try to display some PS files using pageview you will
<find out that it's not a practical tool.

It is true that the man page for pageview does not say that the files need
to be DSC compliant.  That is the fault of the left hand not knowing what the
right hand is doing at Sun.  I was informed by a Sun employee that the pageview
program does require DSC compliant PostScript.  There was the possibility that
it was going to be changed so that if the file wasn't DSC compliant that it
would stop at each showpage.  I believe that this method would preclude being
able to go backwards and forwards through the file, i.e., you could only go
forward to the next showpage.  This isn't in OW3.0 pageview, but maybe it is
in the Solaris 2.x version of OW (OW 3.1?).

In any event, I find pageview extremely useful.  Since all of the PostScript
that I produce IS DSC compliant, I don't have any problems.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 68251
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: Moving Curosr with Keyboard

Hi Xperts!

How can I move the cursor with the keyboard (i.e. cursor keys), 
if no mouse is available?

Any hints welcome.

Thanks.
-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
document_id: 68252
From: emeinfel@fomalhaut.gb.nrao.edu (Edmond L. Meinfelder)
Subject: Re: Fitting straight line (or curve) to data points

In article  warda@land.vf.ge.com (Andrew Ward) writes:
|>      I am looking for a graphing program that will fit my data to a straight     
|>  line.  Any program that estimates a closest fit curve or gives any
|> statistics would be helpful.     


Many spreadsheets do regression analysis.  The topic is also well covered
in most undergraduate statistic books.  Cubic Splines are usually well
covered in any undergraduate computer science numerical analysis text.
I am sure ge/mm has a well stocked library.

I have never used mathematica, but I would be surprised if it could not do a 
spline.

-- 
Edmond L. Meinfelder                         Programmer, Virtual Guy,
"My aardvark is bigger." -Anon.              Hack for hire.

Newsgroup: comp.windows.x
document_id: 68253
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Blinking Cursor in Xterm???

me@dude.pcs.com (Michael Elbel) writes:

>In <1993May16.213936.6904@wariat.org> allbery@wariat.org (allbery) writes:

>>As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
>>+---------------
>>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>>> was implemented by drawing a rectangle around the character. I doesn't
>>> seem to be changed 'til now.
>>> But if you have the sources you could add a blinking cursor via
>>> XtAppAddTimeOut or similar :-|.

>>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>>which does this in its DOS windows).  Do you really want xterm to wake up every
>>half second and whack the server into doing a bitblt?

>So what? I'm running emu on a 25 MHz 68020 box. I cannot make out ANY
>difference in performance whether the cursor is set to blinking or
>not (If you think about it a bit, a cycle of 400 ms is a hell a lot of
>time for even the slowest PC). Since you would of course only enable
>the blinking text cursor when your xterm has the input focus, this 
>application is active anyway. To repeat it, a blinking text cursor
>costs almost nothing in performance, it just needs some thought when
>designing the xterm software.

You are stuck in a distributed system feedback loop!  What if you are on an
Xterminal or running xterm over the net to another machine?  That is when the
load problems occur.  If you had a machine with 20 Xterminals attached and
they all had blinking cursors in xterm's, this could represent a considerable
ethernet bandwidth waste.

I'm not picking on you, just people keep forgetting that there is a lot of life
out there besides distributed or singleuser "Workstations"!
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68254
From: dgreen@sti.com (Dan R. Greening)
Subject: Re: Did Microsoft buy Xhibition??

jessea@u013.me.vp.com (Jesse W. Asher) wrote:
>I've been getting mail from Xhibition about the June conference and I was
>wondering if Microsoft had bought Xhibition?  The front says "Conference
>from Microsoft Windows NT Developers".  What's the deal?  I thought
>"X"hibition was for "X-windows"??

I had exactly the same feeling.  I was depressed.  If you ever programmed
Windows and X11, you'd be depressed if an X conference touted its tutorials
to show you how to convert from X to Windows API.  Sort of like, "how to
convert your C++ classes to the new, improved C."

What happened?
-- 
____
\  /Dan Greening    Software Transformation   1601 Saratoga-Sunnyvale Rd, #100
 \/greening@sti.com (408) 973-8081 x313       Cupertino, CA 95014

Newsgroup: comp.windows.x
document_id: 68255
From: ngolding@tartarus.uwa.edu.au (Neil Golding)
Subject: CGA for windows 3.1

HI

I`m looking for some assistance in locating information on how to run
win 3.1 on a CGA monitor. The setup suggests you look at the manual, but
the guy I`m helping is part of a large office and computer assistance
must be booked in advance, therefore he cant get windows onto his CGA
system. 

Thanx in anticipation

NEIL

Newsgroup: comp.windows.x
document_id: 68256
From: km@mathcs.emory.edu (Ken Mandelberg)
Subject: Graphics Text with X?

Are there any graphics texts with examples/demos/projects directly in
X?

The last time I taught the course, I used a popular graphics text that
uses its own graphics package, with implementations available for
X/Mac/PC.  The problem was that after the course the students were good
at programming in the artificial package, but frustrated that they
couldn't really use their skill for other work.


---
Ken Mandelberg      | km@mathcs.emory.edu          PREFERRED
Emory University    | {rutgers,gatech}!emory!km    UUCP 
Dept of Math and CS | km@emory.bitnet              NON-DOMAIN BITNET  
Atlanta, GA 30322   | Phone: Voice (404) 727-7963, FAX 727-5611



Newsgroup: comp.windows.x
document_id: 68257
From: timbo@rudolph.csd.harris.com (Tim Bomgardner)
Subject: X Professional Organization

Has anyone ever heard of the X Professional Organization?  Is anyone a member?
Is the membership worth the $100 or so that they charge?

Tim Bomgardner

Newsgroup: comp.windows.x
document_id: 68258
From: fvd@ma1ws1.mathematik.uni-karlsruhe.de (M. 'FvD' Weber)
Subject: Q: Whats _vendorShellWidgetClass ?


We tried to compile an old X11R4/Motif program with X115 and a newer
Version of Motif.

But we newer succeed. Any ideas?

CC  -o xtrack.new main.o libxtrack.a ../xutils/libxutils.a ../pmshort/libpmshort.a  ../matrix/libmatrix.a  otte/lib_otte.a verb/lib_verb.a /tools/newmotif/lib/libMrm.a /tools/newmotif/lib/libXm.a -L/tools/X11R5/lib -lXaw -lXmu -lXt -lX11  -lL -lm -lXext 
cXm.a -lXaw -lXmu -lXt -lX11 -lL -lm -lXext -L/usr/CC/sun4/ -lC
ld: /tools/X11R5/lib/libXaw.sa.5.0(sharedlib.o): _vendorShellWidgetClass: multiply defined
*** Error code 2
make: Fatal error: Command failed for target `xtrack'

Thanks FvD.
--
       FvD, Markus Weber fvd@ma1ws1.mathematik.uni-karlsruhe.de
		  Sometimes there's nothing to feel.

Newsgroup: comp.windows.x
document_id: 68259
From: schit@ctp.com (Subbarao Chitturi)
Subject: Starting X windows

As soon as I am logged into Linux, I type

# xinit

Setting TCP SO_LINGER : Protocol not available
no SIOCGIFCONF
XFree86 Version 1.2/X Window System
(protocol Version 11, revision 0, vendor release 5000)
configured drivers:
	VGA256(256 colout SVGA):
	  et4000, et 3000, PVGA1, gvga, ati, tvga8900c, tgva9000
    (using VT number 7)
Mouse : type : Mouse Systems, device : /dev/mouse, baudrate:1200
Font Path set to "usr/lib/X11/fonts/Type1, /usr/lib/X11/fonts/75 dpi/,
				  /usr/lib/X11/fonts/Speedo, /usr/lib/X11/fonts/Bitstream1/,
				  /usr/lib/X11/fonts/misc.
VGA 256 : et4000 ( mem : OK numclocks : 16 )
VGA 256 : Clocks : 25.2 28.3 47.8 41.2 25.4 0.0 47.6 0.0
VGA 256 : Clocks : 0.0  0.0  0.0  0.0  0.0  0.0 0.0  41.3
Vga 256 : Too little memory for virtual resolution 1024 1204

*** A configured device found, but display modes could not be resolved. ***

Fatal server error:
no screens found
giving up.
xinit : Interrupted system call(errno 4) : Unable to connect to X server
xinit : No such process(errno 3) : Server error.

===========================================================================

Why am I getting these messages when I type in xinit?
Is there a configuration file for X-Windows(like config.sys for MSDOS)?
How do I start the X session( from shell )?


______________________________________________________

Subbarao Chitturi
schit@ctp.com

Newsgroup: comp.windows.x
document_id: 68260
From: khera@cs.duke.edu (Vivek Khera)
Subject: Re: 'makedepend' problem

In article <3032@cronos.metaphor.com> mlt@blues.infores.com (Michael Turok) writes:

   We have a problem with 'makedepend': it doesn't know how to correctly process
   #if clause in C preprocessor statements. It evaluates everything to
   true no matter what the conditionals are.

   [...]

   Has anybody come up with some solution/fix to 'makdepend' other than
   WriteYourOwnParser... and willing to share it with us?

rewrite 'makedepend' to use 'cc -M' or 'gcc -M' or 'gcc -MM' (which is
the one I prefer, since system headers don't change that often) for
generating the actual dependencies.  you'll still need to write the
parts that edit the actual Makefile.  I think there's a program in the
Berkeley distributions called mkdep that will do essentially this.
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Vivek Khera, Gradual Student/Systems Guy  Department of Computer Science
Internet:   khera@cs.duke.edu             Box 90129
            (MIME mail accepted)          Durham, NC 27708-0129 (919)660-6528

Newsgroup: comp.windows.x
document_id: 68272
From: dbl@visual.COM
Subject: Re: 'makedepend' problem


|> We have a problem with 'makedepend': it doesn't know how to correctly process

I'm most of the way through adding a grammar for parsing the #if expressions.
I don't know when I'll be able to get back to it; you're welcome to what I 
have so far. I haven't looked at other versions of makedepend, which may solve
the problem more elegantly.

-- 
David B. Lewis		Temporarily at but not speaking for Visual, Inc.
day: dbl@visual.com	evening: david%craft@uunet.uu.net

Newsgroup: comp.windows.x
document_id: 68273
From: pjs@euclid.JPL.NASA.GOV (Peter J. Scott)
Subject: Re: Did Microsoft buy Xhibition??

Well, I'm glad that there's plenty of NT stuff at Xhibition.
Not because I want to use it instead of X, but because I want to 
find out what the chances are that some time in the future I may 
not have any choice.

-- 
This is news.  This is your       |    Peter Scott, NASA/JPL/Caltech
brain on news.  Any questions?    |    (pjs@euclid.jpl.nasa.gov)

Newsgroup: comp.windows.x
document_id: 68274
From: kerch@parc.xerox.com (Berry Kercheval)
Subject: Re: CGA for windows 3.1

sat@eng.tridom.com (Stephen Thomas) writes:
>In article 6af@uniwa.uwa.edu.au, ngolding@tartarus.uwa.edu.au (Neil Golding) writes:
>>I`m looking for some assistance in locating information on how to run
>>win 3.1 on a CGA monitor. 
>The CGA driver for Windows 3.0 works fine with Win3.1. 


Oh no! Oh no!  They've taken over comp.windows.misc and now THEY'RE
COMING FOR US!

  --berry

--
Berry Kercheval :: kerch@parc.xerox.com 


Newsgroup: comp.windows.x
document_id: 68277
From: oj@world.std.com (Oliver Jones)
Subject: Re: XQueryTree, XGrabServer, and robustness

In article <1993May18.150655.23645@viewlogic.com> josh@viewlogic.com (Josh Marantz) writes:
>I have an application that wants to walk the server window hierarchy,
>looking for a window with a specific property. 

>I think what happens is that XQueryTree gives me an array of n
>children, but by the time I get to the nth child window, it has been
>destroyed.  Then I get a BadWindow error, and my application exits.
>
>How can I make this robust?  I've thought of the following:
 ...
>2.      Set up an X error handler that longjmps back to where I
>        made the offending call.  Is this safe?  Do I have to
>        longjmp, or can I just return?

BadWindow is an X protocol error.  If you write a custom error handler
which does not do "exit(1);" the error handler will return and let
your program carry on.  So, using a XSetErrorHandler is the way to
go, but never mind the longjmp.


>3.      Register for DestroyNotify on all the windows returned from
>        XQueryTree.  ...

Too hard....

Newsgroup: comp.windows.x
document_id: 68278
From: brendan@oc3s-emh1.ARmy.MIL (Brendan McKenna)
Subject: Problems with characters above 127


Hi all,

I've read the FAQ, I've fiddled around, but I am still having problems getting
my poor old HP9000/300 to let me input/display characters above 127.  I have 
the following in my .Xdefaults:

XTerm*Font     :   -adobe-courier-bold-r-normal--14-140-75-75-m-90-iso8859-1

So I believe that I have the correct font selected to use in xterm.  I have NOT
set my LC_CTYPE environment variable because whatever I put it, it tells me that
that locale is not supported (apparently we have no additional locales defined,
or at least, /lib/locale doesn't exist).  I can get some of the characters
above 127 to print out, but they are not where I'd expect them -- for example,
Alt-v does not produce a u umlaut.  This leads me to believe that the fault
lies with the stty settings, which are as follows:

speed 9600 baud; line = 0; susp <undef>; dsusp <undef>
intr = ^C; quit = ^\; erase = ^H; kill = ^K; swtch = ^@
eof = ^D; eol = ^@; min = 4; time = 0; stop = ^S; start = ^Q
-parenb -parodd cs8 -cstopb hupcl cread -clocal -loblk -crts 
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc 
ixon -ixany ixoff -ienqak 
isig icanon iexten -xcase echo echoe echok -echonl -noflsh 
opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel -tostop 

Anyway, I've struggled with this off and on for a couple of weeks, and any help
anyone could offer would be greatly appreciated.


					Thanks!

					Brendan

Newsgroup: comp.windows.x
document_id: 68279
From: dls@Autodesk.COM (Daniel Louis Smith)
Subject: Windows -> Motif tools SUMMARY


	I posted this May 12th:


>         I am looking for info on products that can take
> Windows source on a Unix box (such as Sparc), and produce a
> Motif executable.  Another requirement is that MFC 2.0 should
> be supported.  I already know of:
> 
>         Wind/U  by Bristol Technologies
>         Hunter SDK
>         MainWin by MainSoft
> 
>         Are there any others?
> 
> 	I will post a summary if it's wanted.


	I got a few requests asking for a summary, so I'll attempt one
here:


	Here's the ones I know of:

	Wind/U		- Bristol Technologies

	Hunter SDK	- Hunter Systems

	MainWin		- MainSoft

	LIBWXM          - Visual Solutions


	Hunter 

	The company is going through some big changes.  I expect
to eventually see the Hunter SDK pop up with a new name.  At the moment, it
is difficult to get phone calls returned and otherwise obtain info.
Hopefully they will post something about themselves once things settle down. 

	Visual Solutions

	LIBWXM is a product that I just heard about.  They don't
yet support MDI or MFC.  Libwxm was used to port VisSim, a mathematical
modeling package.  Does native Motif Widgets, like Wind/U from Bristol.
Contact Carrie Lemieux at 508 392 0100 for more info.  She's very helpful.

	MainSoft

	This translates Windows source to a Unix executable that
can switch off between a Windows or Quasi-Motif look and feel at
runtime.  They skip the Xt and Xm (Motif) X toolkit levels and go
straight to Xlib.  They don't yet support MFC.  They're at 415 896 0708.

	Bristol

	This company that seems to be on the right track.  Wind/U uses
Xlib/Xt/Xm to give a *real* Motif app.  They seem to be doing the most work
in trying to support things like DDE, Common Dialogs, and more on the horizon.
My contact there is knowledgeable, responds to my email, and wrote an example
program for me showing how to obtain X widgets from Windows handles.
They're at 203 438 6969, or you can email info@bristol.com.

-- 
		 dls@autodesk.com           dls@netcom.com
     Daniel L Smith, Autodesk, Sausalito, California, (415) 332-2344 x 2580
disclaimer:  accuracy of statements corrrelates somehow to caffeine intake

Newsgroup: comp.windows.x
document_id: 68298
From: spatel@cs.tamu.edu (Samir K Patel)
Subject: Colorizing Motif Widgets using Resource File



I posted this question about colorizing motif widgets. I got it working
fine. There was one bug in my .Xdefault file. It should work fine in normal
case.

Thanks


Samir ( spatel@cs.tamu.edu )

Newsgroup: comp.windows.x
document_id: 68299
From: gabi@ankh.technion.ac.il (Gabi Zodik)
Subject: Wanted An Interactive GUI builder for X motif

Hi there,

I'm looking for tools that can make X programming easy.
I would like to have a tool that will enable to create X motif
GUI Interactivly. Currently I'm Working on a SGI with forms.
A package that enables to create GUI with no coding at all
(but the callbacks).
Any help will be appreciated.

Thanks Gabi.
      ________________________________________________
     /                                                \
    /      /\                                          \
   / .----/  \----.        Gabi Zodik                   \
  /   \          /    EE room 608  Ph. 04-29-4723        \
 /  .--\ (o)(o) /__.  Technion, Haifa, Israel             \
|    \     ()     /   Interest: Mapping Problem           |
 \    >   (C_)   <    E-mail gabi@techunix.technion.ac.il /
  \  /___\____/___\                                      /
   \    /|    |\                                        /
    \  /        \                                      /
     \________________________________________________/


Newsgroup: comp.windows.x
document_id: 68300
From: gmh@hpfcso.FC.HP.COM (Greg Hughes)
Subject: Re: HPGL to anything converter wanted

In comp.windows.x, doug@happy.vf.ge.com (Doug Hughes) writes:

> 
> I've found an hpgl viewer for X. and a converter from HPGL
> to postscript.. Does anybody have anything that allows you
> to convert from anything into HPGL? I'm desperately in need
> of something like this.

HPGL does not support raster primitives, so a formatter would have to 
punt on most popular image formats.  This probably explains the lack of
translators out there.  What do you need to plot ?

Greg Hughes	gmh@fc.hp.com	(303) 229-7162

Newsgroup: comp.windows.x
document_id: 68301
From: brown@ftms.UUCP (Vidiot)
Subject: Re: Compiling ghostview under Sun OpenWindows 3

In article <C75z4A.8r7@curia.ucc.ie> pflynn@curia.ucc.ie (Peter Flynn) writes:
<Due it seems to Sun's crapulous organisation of the X libraries and includes,
<most standard (GNU and other) software won't compile out of the box (well, tar
<file). 
<
<Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
<so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
<now the ghoddam thing _still_ complains it can't find them.
<
<I still haven't been able to compile xdvi, not no way.
<
<Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
<(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
<tried hard copying all the relevant files into the "right" places and
<every time, there's some bit missing or it refuses to find it.

Sounds like you didn't load the support for those libraries when OW3.0 was
loaded.  The Xaw support was missing from OW2.0 but added in 3.0.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 68302
From: brown@ftms.UUCP (Vidiot)
Subject: Re: program to display .gif files?

In article <1465@minya.UUCP> jc@minya.UUCP (John Chambers) writes:
<It seems silly, but while I've located things like tgif that can  edit
<gif  files, and various tools to convert to/from gif format, I haven't
<been able to locate a program that just opens a window and displays  a
<gif file in it.  I've looked thru various faq files, also to no avail.
<Is there one lurking about in some  archive?   Nothing  sophisticated;
<just "show the pretty picture"?
<
<Alternatively, if I could locate the specs for gif, I don't suppose it
<would be too hard to write it myself, but I have no idea where to even
<start looking for the spec.  (Well, actually, I do have an idea - this
<newsgroup.  ;-)

Get, xv, version 3.0.  It reads/displays/manipulates many different formats.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
document_id: 68303
From: cek@sdc.boeing.com (Conrad Kimball)
Subject: Re: Problem with R4 release

In article <MCGARY.93May12172612@mojo.intellection.com>, mcgary@intellection.com (Mike McGary) writes:
|> In article <1sr3klINNauq@news.u.washington.edu> pramod@stein.u.washington.edu (Pramod Mahadev) writes:
|> 
|> >   ld: Unidentified external symbol
|> >      _get_wmShellWidgetclass
|> >      _get_applicationshellwidgetclass
|> >
|> >     I use -lXaw -lXmu -lXext -lX11 -lXt not in this order but in a proper order
|> >
|> >   I am wondering if there has to be some changes in my link libraries or should
|> >   i include some more libraries.
|> >
|> >   ANy help in this matter will be very useful and highly appreciated
|> >
|> 
|> We get this too.  If you put -Bstatic into your options it goes away. 
|> Things seem to run ok without it...must not be called very often.

From the FAQ:

Subject:  96)! What is this link problem with libXmu on SunOS 4.1.[23]?

        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:
        _get_wmShellWidgetClass
        _get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" appears to work.

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 MIT 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 export in [1/93]
        contrib/X11R4_sunos4.1.2_patch_version3.Z

--
Conrad Kimball        | Client Server Tech Services, Boeing Computer Services
cek@sdc.cs.boeing.com | P.O. Box 24346, MS 7A-35
(206) 865-6410        | Seattle, WA  98124-0346

Newsgroup: comp.windows.x
document_id: 68304
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: ideas on xterm paste irritation?

In article <eillihca.9305181611108371@grizzle.stanford.edu> eillihca@drizzle.StanFord.EDU ( Achille Hui, the Day Dreamer ) writes:
:Read the xterm's manual pages for more informations about the avaliable
:actions of xterm. Read the FAQ and get a good book on customizing your
:X applications.

Okay, I will byte.  Could someone provide more info on a 'good book on
customizing your X applicaitons'?  I am in search of one which does NOT
expect the reader to have the X11 source code memorized (or even available
online!)

-- 
:s 
:s Larry W. Virden                 INET: lvirden@cas.org
:s Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614

Newsgroup: comp.windows.x
document_id: 68305
From: wijkstra@fwi.uva.nl (Marcel Wijkstra (AIO))
Subject: Resources and cpp - HELP!

Hi,

I am running X11R4 on an IBM RS/6000 (AIX 3.2) and X11R5 on a Sun4 (SunOS 4.1).

Since I run X on both colour and black&white displays, I need different
values for the same resource, so I want to use #ifdef COLOR in my
application defaults files. However, cpp is only invoked by xrdb, and
not when the resources are loaded on demand.

Is there a proper solution to this?

So far, the only proper solution I've come to think of, is to create 2
different files in my ~/app-defaults/, say XTerm and XTerm-color, and
set my XFILESEARCHPATH to either $HOME/%T/%N or $HOME/%T/%N-color.
But that does not always seem to work (e.g. executing a remote shell
command without reading the .cshrc does not set XFILESEARCHPATH).

Furthermore, I thought of using #include "XTerm" in XTerm-color.
However, for resources in XTerm that I want to override in XTerm-color,
things are different on both machines. On a Sun, the FIRST found resource
is used (i.e. the one from XTerm, the b&w one), while on an RS/6000, the
LAST found value is used (i.e. the one from XTerm-color). What can I do
about it?

I have one last question: for the specification of XFILESEARCHPATH, I
can use %T, %N, %C and %S. %T stands for app-defaults, %N for the
resource class, but what do %C and %S stand for?

Thanks in advance for replying,
Marcel.
-- 
 X   drs. Marcel Wijkstra     (AIO  Visualization)   wijkstra@fwi.uva.nl
|X|    Faculty of Mathematics and Computer Science   ph: +31 20 525 7522
 X       University of Amsterdam   The Netherlands   fx: +31 20 525 7490
=========== Life stinks. Fortunately, I've got a cold.==================

Newsgroup: comp.windows.x
document_id: 68306
From: sakaria@vipunen.hut.fi (Sakari Aaltonen)
Subject: aXe/HP-UX Problem

I`ve been happy with aXe under Linux. Now I wanted to use it under HP-UX,
too. However, my attempts have ended in core dumps this far (Bus Error).

Has anybody else been more successful? Jim Wight`s INSTALL file does
say there have been problems with HP`s...

Data: aXe 5.0; HP-UX 9.01; X11R4 or X11R5 doesn`t seem to matter (shared
libs); HP 9000/720.

Thanks in advance,

-- 
Sakari Aaltonen            | Linux is an ftp-able Unix clone for 386/486 PC's.
sakaria@vipunen.hut.fi     | Boggles *my* mind, it does.

Newsgroup: comp.windows.x
document_id: 68307
From: sommer@ips.cs.tu-bs.de (Thorsten Sommer)
Subject: Looking for a file-manager under TWM

Hi out there!

Every command-line-shell-favourating user: Close your ears, ehm, eyes...

I'm looking for a X file-manager which can be driven under TWM.
Somebody told me last night, there is one under OpenWindows
(and there certainly is one under MS-Windows :-#).

But I'd like an X-one, you know, with icon's, click-and-drag, directory-structures
shown in a graphic-layout, a paper-basket etc. ...

Anybody got an idea?

Please reply.

      _/   _/     _/_/_/       thSo - Thorsten Sommer, better known as:
     _/   _/    _/                    Chiquita (Denn nur Chiquita ist Banane!)
  _/_/_/ _/_/_/  _/_/    _/_/ 
   _/   _/  _/      _/ _/   _/           e-mail: sommer@ips.cs.tu-bs.de
  _/   _/  _/      _/ _/   _/   
 _/_/ _/  _/ _/_/_/    _/_/  
------------------------------------------------------------------------------
 Transform ... and roll out! (BigTruck - Transformers)
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68308
From: ln@doc.ic.ac.uk (Leonidas Nikidis)
Subject: How XCreateRegion works ??


Hi,

	

   Could someone explain to me what exactly the Xlib functions 

XCreateRegion, XPolygonRegion, XPointInRegion do, or to 

suggest a ftp site where I can find programs using these functions.


PS: The man pages does not explain much ......

	
Thank you,
Leo.






-- 
---------------------------------------------------------------------
Leonidas Nikidis : ln@doc.ic.ac.uk	Imperial College, London,UK
					Dept. of Computing
---------------------------------------------------------------------

Newsgroup: comp.windows.x
document_id: 68309
From: ik@arrow.ctt.bellcore.com (Ik Su Yoo )
Subject: Re: Did Microsoft buy Xhibition??


>>>>> "mark" == Mark A. Davis <mark@taylor.uucp> writes:

In article <1993May18.210029.26727@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:

  mark> *WE* are the ones in control of what we use.  It is those who
  mark> follow like blind sheep which cause the markets to skew.  I'm sure
  mark> there will be enough "paid market hipe NT conferences" without it
  mark> needing to be in what was once a conference for open windowing
  mark> enviroments.  I know that if I were planning to go I would cancel.
  mark> NOT because I have my eyes closed, but because NT does not belong
  mark> at such a conference.  I would, however, like to go to a CLOSED
  mark> environment NT conference to see the product because I am curious.
  mark> I doubt, however, based on the objective opinions of those I trust,
  mark> that I would be impressed.  --

Why do many (?) people believe that Xhibition '93 is one of the "paid
market hype NT conferences" (as you put it)? I for one am going, because
I, too, am curious about the technology. I think this is a great chance
to learn about NT, mainly because:

  - It will be presented in X's "home turf". I believe that the attendees
    will mostly have X backgrounds (biases? :-); thus, I expect that the
    NT presentations will face a tough audience.

  - I can be there in person to judge for myself whether or not NT is what
    it is hyped to be. This is as closely as I can get to in evaluating the
    NT technology without actually using it myself, which I don't have the
    time to do.

  - If NT turns out to be a vapor technology and I get bored, there will be
    many other interesting tutorials/presentations that I won't have to
    waste my time ... in California?!?  :-)

Just my thoughts...
--

Ik Su Yoo
RRC-4F728, x5764
ik@leis.bellcore.com

Newsgroup: comp.windows.x
document_id: 68310
From: pb@idca.tds.philips.nl (Peter Brouwer)
Subject: Re: mysterious xdm files

X-Disclaimer: All views are my own unless expicitly stated otherwise.

In <1993May18.235641.10747@csi.jpl.nasa.gov> mwette@csi.jpl.nasa.gov (Matt Wette) writes:

>I'm getting lots of files in /usr/lib/X11/xdm of the form
>	Abert:0-a00138

>I'm running xdm.  Anybody know what these are and, better yet, how to
>move them (i.e., what resource can I change to make them appear
>somewhere else)?

That are the authorisation files for the server.
Depending on what type of key your X supports they contain magic cookies,
DES based authentication or SUN DES authentication.

The place is defined with the DisplayManager.authDir 
Other things like the file name can be changed as well see XDM manual pages.



--
#Peter Brouwer,                | Digital Equipment Enterprise ,              #
#NET  : pb@idca.tds.philips.nl | Integration Industry Standard Systems,      #
#PHONE:ext [+31] [-0]55 434218,| Dept Systems Enginering, Bld V1/B7          #
#FAX  :ext [+31] [-0]55 432103 | P.O.Box 245,7300AE Apeldoorn,The Netherlands#

Newsgroup: comp.windows.x
document_id: 68311
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Integration of HP46021A-Keyboard into SCO ODT 2.0

SCO ODT allows to adapt the X-Server to any non-standard (AT) keyboard 
using the Xkeyboard configuration compiler xsconfig. SCO provides some
configuration files in /usr/lib/X11/xsconfig/*.kbd, e.g. for 
Siemens WX200.

Question:
Is there anywhere a configuration file for the HP46021A keyboard
available ? 
I am especially interested in using the HP specific keys such as 
"InsertLine", "Menu".

Thanks  -Ron.


Newsgroup: comp.windows.x
document_id: 68312
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: How XCreateRegion works ??


In article <1td5inINNl7m@finch.doc.ic.ac.uk>, ln@doc.ic.ac.uk (Leonidas Nikidis) writes:
|> 
|> Hi,
|> 
|> 	
|> 
|>    Could someone explain to me what exactly the Xlib functions 
|> 
|> XCreateRegion, XPolygonRegion, XPointInRegion do, or to 
|> 
|> suggest a ftp site where I can find programs using these functions.
|> 
|> 
|> PS: The man pages does not explain much ......
|> 
|> 	
|> Thank you,
|> Leo.
|> 
|> 
|> 
|> 
|> 
|> 
|> -- 
|> ---------------------------------------------------------------------
|> Leonidas Nikidis : ln@doc.ic.ac.uk	Imperial College, London,UK
|> 					Dept. of Computing
|> ---------------------------------------------------------------------
I use those routines in a widget which only redraws exposed areas.
here's a small piece of code that uses those routines

static void Redisplay(pw, ev, region)
XtpManagerWidget pw;
XExposeEvent *ev;
Region region;

/* pp->exposure_region is an XRegion */
XtpManagerPart *pp = &pw->plotter;
pp->exposure_region = XCreateRegion();
   /* region is passed via an expose event */
if(region == NULL)
{
if (ev->send_event)  /* synthetic event sent by widget it wants a full redraw*/
        {
        exporect.x = pw->core.x;
        exporect.y = pw->core.y;
        exporect.width = pw->core.width;
        exporect.height = pw->core.height;
        }
     else
        {
        exporect.x = ev->x;
        exporect.y = ev->y;
        exporect.width = ev->width;
        exporect.height = ev->height;
        }

stuff deleted      

/* region now contains the exposure region */
        XUnionRectWithRegion(&exporect,pp->exposure_region,pp->exposure_region);
}
else
        XUnionRegion ( region, pp->exposure_region, pp->exposure_region);
stuff deleted 
/* WE NEED to CLIP on EXPOSE REGION for REDRAWING the GRID */
        XSetRegion(XtDisplayOfObject(pw), pp->plotarea_gc,pp->exposure_region);
stuff deleted 
        /* check to see if child is exposed */
        if (XRectInRegion (pw->plotter.exposure_region,
                         child->core.x ,
                         child->core.y ,
                         child->core.width  ,
                         child->core.height ))

So, I build up a region of exposures so that when I service my container
widget redraw of rectobj children, I only redraw what need to be redrawn.

It works for me, hope this helps you.
Brian

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
document_id: 68313
From: bouronm@uproar.enet.dec.com (Marc Bouron)
Subject: Re: Looking for a file-manager under TWM


In article <1993May19.124004@ips.cs.tu-bs.de>, sommer@ips.cs.tu-bs.de (Thorsten Sommer) writes...
>Hi out there!
> 
>Every command-line-shell-favourating user: Close your ears, ehm, eyes...
> 
>I'm looking for a X file-manager which can be driven under TWM.
>Somebody told me last night, there is one under OpenWindows
>(and there certainly is one under MS-Windows :-#).
> 
>But I'd like an X-one, you know, with icon's, click-and-drag, directory-structures
>shown in a graphic-layout, a paper-basket etc. ...
> 
>Anybody got an idea?

I've recently joined the Motif world, so I'd like a similar tool for
Motif.  I've bene used to the OpenWin one in the past and miss it.

Cheers,

[M][a][r][c]

**  ---------------------------  **  -----------------------------  **
**  Marc CR Bouron               **  DESISCo Ltd.                   **
**  +44 (0)895 208260            **  Harefield Place, The Drive,    **
**  Marc.Bouron@ime.mts.dec.com  **  Uxbridge, Middlesex, UB10 8AQ  **
**  ---------------------------  **  -----------------------------  **

Newsgroup: comp.windows.x
document_id: 68314
From: rick@ee.uwm.edu (Rick Miller - Linux Device Registrar)
Subject: Where can I find a list of "-<toolkit options>"?

I've just started messing with X Windows under Linux, and I've run into this
"-<toolkit options>" thing in the man-pages of a number of X clients.

Where can I get a list of these options?  Is this only an "xview" thing?
(If so, would some kind soul show me how to set it up under Linux?)

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
document_id: 68315
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Blinking Cursor in Xterm???

barmar@think.com (Barry Margolin) writes:

>In article <1993May18.130845.6859@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>You are stuck in a distributed system feedback loop!  What if you are on an
>>Xterminal or running xterm over the net to another machine?  That is when the
>>load problems occur.  If you had a machine with 20 Xterminals attached and
>>they all had blinking cursors in xterm's, this could represent a considerable
>>ethernet bandwidth waste.

>Ethernet certainly has enough bandwidth for a few blinking cursors.  My
>Lisp Machine blinks the cursor twice a second and updates the time in the
>status line every second.  This uses under 1K bytes/second, or about .1% of
>the bandwidth of Ethernet.  A hundred of them on a single ethernet might be
>a problem, but a couple dozen should be fine.

Granted it's nothing to loose sleep over, but this is Ethernet's tragic flaw:
the more activity (especially lots of tiny activity), the more collisions
happen and the performance gets exponentially worse...  I am just now
opposing ANY kind of waste of bandwidth under Ethernet.  Although in a polling
system it would not be so bad.
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
document_id: 68316
From: mek@hydrox.enet.dec.com (Mark Klamerus)
Subject: EventHandlers on XmPushButtons


	Help,

	I've got an applications with a series of pushbuttons across
	the top (a toolbar).  I wanted to add eventhandlers to these
	pushbuttons on EnterWindowMask and LeaveWindowMask so that
	I can put up some descriptive text about the function of each
	pushbutton as the pointer crosses over it.

	I've done this fine, but I've turned up the following problem:

	When the pushbuttons are sensitive I get callbacks on both of
	the above events, but when they are not sensitive I only get
	callbacks on LeaveWindow events.  This seems odd.  I would
	expect this to be an all-or-nothing type of thing.

	Is this a bug?  If not, can someone explain this behavior?

	thanks,

	Mark


Newsgroup: comp.windows.x
document_id: 68317
From: mich@lin.infolog.se (Thomas Michanek)
Subject: Re: GUI builders for VMS

In article <352@trident.datasys.swri.edu> mark@trident.datasys.swri.edu (Mark D. Collier) writes:
>I am looking for GUI Builders/UIMS's which run in a VMS/OpenVMS
>environment. I am interested in both Motif tools and GUI-independent
>tools such as XVT. My client also requires that the tool has been
>in production for at least 6 months in the VMS environment. Note
>that I have the list of tools from the FAQ, but not the info on
>VMS availability.
>
>Thanks

Take a look at TeleUSE, a complete UIMS from Alsys (formerly TeleSoft).
In the US, you can reach them at (619) 457 2700.

Alsys have an VMS version of TeleUSE v2.0.5 for VMS V5.5 or higher,
built using DECwindows Motif 1.0 (based on X11R4 and Motif v1.1.1).

BTW, the VMS port from the UNIX version was made at my company, and was
released in November 1992.

.- - - - - - - - - - - -.  _ _  _ ___ _  _   _   _  _  _  _   .- - - - - - - -.
|    Thomas Michanek    |  | |\ | |_ / \ |  / \ / _ | / `|_`  | Dial +46 13   |
|  Infologics Linkoping |  | | \| |  \_/ |_,\_/ \_| | \_,._|  | 210060  Phone |
| email:Thomas.Michanek |          _                          | 210068  Direct|
|       @lin.infolog.se |  L I N K O P I N G  -  S W E D E N  | 210155  Fax   |
`- - - - - - - - - - - -'                                     `- - - - - - - -'




Newsgroup: comp.windows.x
document_id: 68318
From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Subject: Re: Blinking Cursor in Xterm???

In article <1tbpi9INNfp3@early-bird.think.com> barmar@think.com (Barry Margolin) writes:
>In article <1993May18.130845.6859@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>You are stuck in a distributed system feedback loop!  What if you are on an
>>Xterminal or running xterm over the net to another machine?  That is when the
>>load problems occur.  If you had a machine with 20 Xterminals attached and
>>they all had blinking cursors in xterm's, this could represent a considerable
>>ethernet bandwidth waste.
>
>Ethernet certainly has enough bandwidth for a few blinking cursors.  My
>Lisp Machine blinks the cursor twice a second and updates the time in the
>status line every second.  This uses under 1K bytes/second, or about .1% of
>the bandwidth of Ethernet.  A hundred of them on a single ethernet might be
>a problem, but a couple dozen should be fine.

Bandwidth is unlikely to be the problem, except over a wet string network.
One of major flaws of X is the horrendous number of transactions (and
hence process switches) that it forces upon a host.  Actual measurements
(hourly average) are 5 per second per logged in user, which can lead to
20-50 or more process switches (depending on whether each event is
filtered by the window manager as well as the applications and how
many processes are needed for each character.)

While a blinking cursor needs only the application and the networking
process, and does not add any transactions, it will add something like
10 process switches per second per user.  This is a significant increase
in overhead, especially as the application may have quite a large working
set.  If you want a rapidly blinking cursor, there could be as many
as 50.

If you want to go there, I wouldn't start from here!


Nick Maclaren
University of Cambridge Computer Laboratory,
New Museums Site, Pembroke Street,
Cambridge CB2 3QG, England.
Email:  nmm1@cus.cam.ac.uk
Tel.:   +44 223 334761
Fax:    +44 223 334679

Newsgroup: comp.windows.x
document_id: 68319
From: beck@irs131.inf.tu-dresden.de (Andre Beck)
Subject: XDM & backgroundPixmap ?


Hi,

I've tried to get rid off XDM's ugly Login window by giving it a 'cool'
backgroundPixmap ressource. As Login is derived from Core, this should be
possible. Anyway, setting xlogin*backgroundPixmap:/a/b/c.xpm did not
produce any message of the form 'cannot convert String to Pixmap' and
explicitely registering such converter lead to nothing, too.

Any way to do it ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
document_id: 68320
From: J.K.Wight@newcastle.ac.uk (Jim Wight)
Subject: Re: Athena Tookkit HELP !!!

vck0479@cs.rit.edu (Vidya C Kayar) writes:
>I am currently programming on Athena Toolkit. I am having problems
>creating a Text Widget. Any guidence or help will be greatly
>appreciated.

I assume that you are literally trying to create a widget of type
textWidgetClass. Use the AsciiText widget instead.

Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232



Newsgroup: comp.windows.x
document_id: 68321
From: mick@quay.ie
Subject: Looking for converters for xpm


I am looking for utilities for converting GIFs/JPEGs/PS etc to xpm format? Any 
information appreciated.

Thanks,

Michael Linehan.

Newsgroup: comp.windows.x
document_id: 68322
From: hou@siemens.com. (Tai-Yuan Hou)
Subject: How to iconize a window?

I have an application running in one window. In this application,
I'd like to iconize this window, and later deiconize back to window.
How could I do it? Your help would be appreciated.

Tai
thou@siemens.com


Newsgroup: comp.windows.x
document_id: 68323
From: scot@bristol.NoSubdomain.NoDomain (Scot Wingo)
Subject: ******* Cool Demo Now Available on Internet! *********




Bristol Technology announces the availability of 
its HyperHelp(tm) and Xprinter(tm) demo for downloading.

This demo showcases the two products in the form of a 
diagram editor called DE.

Download the demo and see some of these exciting features for yourself:

	 o Complete on-line context sensitive help system.

	 o Printing support for PCL5 and PostScript.

	 o Rotated Text support!

	 o Source code for the demo is provided.

The demo is available via anonymous ftp from ftp.uu.net (137.39.1.9).

There are two versions of the demo located in the vendor/Bristol directory:
Sun     - sun4.demo.tar.Z (SunOS 4.x)
HP      - hp700.tar.Z     (HP-UX 8 & 9)

If you have any questions about the demo, send an
e-mail to: support@bristol.com.

If you want another version of the demo (rs6000,etc...) 
please send an e-mail to: info@bristol.com.

Remember to use binary mode!


What are HyperHelp and Xprinter?  Read on......
---------------------------------------------------------
Bristol Technology is proud to announce version 3.0 of
its popular HyperHelp product and version 2.0 of Xprinter.

			    HyperHelp 3.0
			    -------------
HyperHelp is the de-facto standard for on-line context
sensitive help in the Unix marketplace.  Through a one
line function call, application developers can access the
full features of HyperHelp and cut down drastically on
their development time.  HyperHelp can use the same RTF,
project, and bitmap files as the MS Windows Help facility.
This allows a documentation department to maintain a single
set of help documents portable between MS Windows, Motif and
Open Look.  HyperHelp can also be authored in FrameMaker. 
And with HyperHelp 3.0 Bristol introduces its SGML compiler!

New features in HyperHelp 3.0 include secondary windows,a character
based viewer, segmented bitmaps, SGML support, and an improved History
window.

			     Xprinter 2.0
			     ------------
Xprinter 2.0 allows developers to add sophisticated
printer support to their existing/new X based applications
very easily.  Xprinter uses the Xlib API for both the
display and printer.  This lets you use the exact same code
for drawing and printing.  Take a look at the source code for
our demo and see Xprinter in action.

If you are interested in adding PostScript and PCL5 support
to your application, Xprinter is the tool for you!  Earlier
this year Bristola dn USL signed an agreement that
resulted in Xprinter becoming the standard printing technology
for UNIX SVR4.2.


Feel free to run the demo and let us know what you think about
HyperHelp and Xprinter. 

If you have any questions or comments, send them to us at:
info@bristol.com or call us at (203) 438-6969.

				Happy demoing,



					The staff at Bristol Technology







     			    


Newsgroup: comp.windows.x
document_id: 68324
From: henne@math.ias.EDU (Leslie R. Henne)
Subject: Re: ideas on xterm paste irritation?

In <C78u6q.D0D@deshaw.com>, wolf@cs.stanford.edu writes:

>Moving the mouse out of the xterm window before
>clicking up will not abort the paste.  In fact, once that middle
>button is pressed down, the paste is inevitable.

>So, the obvious questions.  Is there some way around this?  And, do
>others feel that moving the mouse out of an xterm window before
>release should abort the paste?  I would have thought this would have
>been a common enough problem that someone would have changed xterm by
>now, but maybe it's just me.

>Michael

It is not just you.  I have been aggravated many times by the mouse making
hay of my maladroitness, and would be _ever_ grateful to everyone who would
make keyboard alternatives for ALL mouse actions.

lsrh


Newsgroup: comp.windows.x
document_id: 68325
From: curtis@aries.wistar.upenn.edu
Subject: Setting DISPLAY

I am working for a company which has only one connection to the Internet.
This is through a firewall gateway (unix workstation). I would like to be
able to telnet to a host outside the company and set the DISPLAY to my PC
which is running an X-terminal emulator (eXceed/W). The display can be set
to the gateway workstation with no problem but when I set the variable to 
my IP address I get a "Error: Can't open display" message. 

This can't be that hard to work around can it?

BTW I have no trouble running x-clients on local workstations (in the company)
and having them display on my PC.
-- 
Curtis Wahlgren                                       


Newsgroup: comp.windows.x
document_id: 68326
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Tcpview doesn't read my XKeysymDB file. Howcum?

Any Tcpview-for-Sun users out there?  I pulled down the pre-compiled
executables made for Sun for Tcpview, but I'm getting a whole slew of the
following types of error messages when I try to start it up:
  Warning: translation table syntax error: Unknown keysym name: osfActivate
  Warning: ... found while parsing '<Key>osfActivate:ManagerParentActivate()'
  Warning: translation table syntax error: Unknown keysym name: osfCancel
  Warning: ... found while parsing '<Key>osfCancel:ManagerParentCancel()'
  Warning: translation table syntax error: Unknown keysym name: osfSelect
  Warning: ... found while parsing '<Key>osfSelect:ManagerGadgetSelect()'
  ...
But I *know* I have those in my keysym:
  egrep "osfActivate|osfCancel|osfSelect" $OPENWINHOME/lib/XKeysymDB
yields:
  osfActivate             :1004FF44
  osfSelect               :1004FF60
  osfCancel               :1004FF69
  osfSelectAll            :1004FF71
and, if I take *out* the osf lines from said XKeysymDB, my copy of wscrawl
(another Motif-compiled-for-Sun program) gives the same type of complaints
as listed above.

Any tips?  I'm mystified.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
document_id: 68327
From: main@lambda.msfc.nasa.gov (John Main)
Subject: xod - does it exist?


Hello,

I was wondering if anyone knew of an interface to od ( octal dump ), I assume
it would be called xod.  Actually, any viewer for a core file will do.

I looked at export ( @ mit ) in the index of /contrib, but didn't find anything 
relevant.


			Thanks,
			I Hate bama & winter
			main@superman.msfc.nasa.gov

Newsgroup: comp.windows.x
document_id: 68332
From: iop@server2.iie.ncku.edu.tw
Subject: Program WM_PROTOCOLS in OPEN LOOK toolkit.....

Hi, all:
    I am studying the book --> "UNIX Desktop Guide to OPEN LOOK".
There is an example --> winprop.c that demonstrate how to program
WM_PROTOCOLS property in chapter 8.  It can run, but only show the
static text messages, no Notice pop_up. What is the problem?
	    Thanks in advance for help!!1	    IOP
/*-------------------------------------------------------------*/
/*  File:  winprop.c
 *
 *  Shows how to set properties on a window.
 *
 */
#include <X11/Xatom.h>	/* For definition of XA_ATOM */
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <Xol/OpenLook.h>
#include <Xol/StaticText.h>
#include <Xol/OblongButt.h>
#include <Xol/Notice.h>
/* This file defines the atoms with _OL_ prefix */
/* ID of the top-level and NoticeShell widget */
static Widget top_level, notice_shell;
static Widget make_notice();
static char message[] = "Clients use properties to communicate \
with the window manager. This example illustrates how an OPEN \
LOOK application requests notification from the window manager \
when certain events occur. The communication is in the form of \
a ClientMessage event that the application processes in an \
event-handler.";
/* Atoms used for inter-client communication */
Atom ATOM_WM_PROTOCOLS, ATOM_WM_DELETE_WINDOW,
     ATOM_WM_SAVE_YOURSELF;
static void handle_wm_messages();
static void save_and_exit();
static void save_yourself();
static void pop_notice();
static void do_exit();
/* String to hold comand line (for use in responding to
 * the WM_SAVE_YOURSELF protocol message.
 */
char saved_cmdline[128];
/*-------------------------------------------------------------*/
void main(argc, argv)
int  argc;
char **argv;
{
    Widget w;
    int i;
/* Save the command-line for use in responding to the
 * WM_SAVE_YOURSELF protocol message.
 */
    sprintf(saved_cmdline, "%s ", argv[0]);
    if(argc > 1)
	for(i = 1; i < argc; i++)
	{
	    strcat(saved_cmdline, argv[i]);
	    strcat(saved_cmdline, " ");
	}
/* Create and initialize the top-level widget */
    top_level = OlInitialize(argv[0], "Ol_main", NULL,
			       0, &argc, argv);
/* Create a StaticText widget */
    w = XtVaCreateManagedWidget("Stext",
		      staticTextWidgetClass, top_level,
		      XtNstring,    message,
		      XtNwidth,     200,
		      NULL);
/* Create a NoticeShell widget for later use */
    make_notice(top_level);
/* Intern the atoms */
    ATOM_WM_PROTOCOLS = XInternAtom(XtDisplay(w),
					"WM_PROTOCOLS", False);
    ATOM_WM_DELETE_WINDOW = XInternAtom(XtDisplay(w),
				    "WM_DELETE_WINDOW", False);
    ATOM_WM_SAVE_YOURSELF = XInternAtom(XtDisplay(w),
				    "WM_SAVE_YOURSELF", False);
/* Add an event-handler to process ClientMessage events sent
 * by the window manager
 */
    XtAddEventHandler(top_level, NoEventMask, True,
		      handle_wm_messages, NULL);
/* Realize the widgets and start processing events */
    XtRealizeWidget(top_level);
/* Append the properties WM_DELETE_WINDOW and WM_SAVE_YOURSELF
 * to the definition of the WM_PROTOCOLS property. This step
 * requires the window ID of the top-level widget. The window
 * ID is valid only after the widget is realized.
 */
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    ATOM_WM_PROTOCOLS, XA_ATOM, 32,
		    PropModeAppend,
		    &ATOM_WM_DELETE_WINDOW, 1);
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    ATOM_WM_PROTOCOLS, XA_ATOM, 32,
		    PropModeAppend,
		    &ATOM_WM_SAVE_YOURSELF, 1);
    XtMainLoop();
}
/*-------------------------------------------------------------*/
static void handle_wm_messages(w, client_data, p_event)
Widget	  w;
XtPointer client_data;
XEvent	  *p_event;
{
    if(p_event->type == ClientMessage &&
       p_event->xclient.message_type == ATOM_WM_PROTOCOLS)
    {
	if(p_event->xclient.data.l[0] == ATOM_WM_DELETE_WINDOW)
	{
		save_and_exit();
	}
	if(p_event->xclient.data.l[0] == ATOM_WM_SAVE_YOURSELF)
	{
		save_yourself();
	}
    }
}
/*-------------------------------------------------------------*/
static void save_and_exit()
{
/* Display a notice giving the user a chance to respond */
    pop_notice(top_level, notice_shell);
}
/*-------------------------------------------------------------*/
static void save_yourself()
{
/* Set the WM_COMMAND property to the saved command-line. */
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    XA_WM_COMMAND, XA_STRING, 8,
		    PropModeReplace, saved_cmdline,
		    strlen(saved_cmdline) + 1);
}
/*-------------------------------------------------------------*/
static Widget make_notice(parent)
Widget parent;
{
    Widget w, n_text, n_control, n_exit, n_cancel;
/* Create a button and provide a callback to pop up a Notice */
    w = XtVaCreateManagedWidget("QuitButton",
		      oblongButtonWidgetClass, parent,
		      XtNlabel,    "Exit...",
		      NULL);
    XtAddCallback(w, XtNselect, pop_notice, NULL);
/* Create the NoticeShell widget. Note that you have to use
 * XtVaCreatePopupShell instead of the usual
 * XtVaCreateManagedWidget.
 */
    notice_shell = XtVaCreatePopupShell("QuitNotice",
		      noticeShellWidgetClass, w,
		      NULL);
/* Get the ID of the text and control area widgets of the
 * NoticeShell.
 */
    XtVaGetValues(notice_shell,
		  XtNtextArea,	      &n_text,
		  XtNcontrolArea,     &n_control,
		  NULL);
/* Place a message in the text area of the NoticeShell */
    XtVaSetValues(n_text,
	    XtNstring, "Please confirm exit from program.",
	    NULL);
/* Add buttons to the control area of the NoticeShell.
 * Each button has an appropriate callback.
 */
    n_exit = XtVaCreateManagedWidget("NoticeExit",
		      oblongButtonWidgetClass, n_control,
		      XtNlabel,    "Exit",
		      NULL);
    XtAddCallback(n_exit, XtNselect, do_exit, NULL);
    n_cancel = XtVaCreateManagedWidget("NoticeCancel",
		      oblongButtonWidgetClass, n_control,
		      XtNlabel,    "Cancel",
		      XtNdefault,  True,
		      NULL);
    return w;
}
/*-------------------------------------------------------------*/
static void pop_notice(w_emanate, w_notice)
Widget	  w_emanate, w_notice;
{
    XtVaSetValues(w_notice, XtNemanateWidget, w_emanate, NULL);
/* Pop up the NoticeShell widget. The NoticeShell widget makes
 * sure that the aplication waits until the user selects from
 * one of the buttons in the NoticeShell's control area.
 */
    XtPopup(w_notice, XtGrabExclusive);
}
/*-------------------------------------------------------------*/
static void do_exit(w, call_data, client_data)
Widget	  w;
XtPointer call_data, client_data;
{
    XCloseDisplay(XtDisplay(w));
    exit(0);
}

Newsgroup: comp.windows.x
document_id: 68333
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: MotifBC

In article h1m@vtserf.cc.vt.edu, stellr@smyrna.cc.vt.edu (Ray Stell) writes:
|>
|>If I install X11R5 with backward compatibility for motif, will motif
|>1.2 clients work on the X11R5 servers?

It works for me.  I've run Motif 1.1.3,1.1.4,1.1.5,1.2,1.2.1, and 1.2.2 on
an X11R5 server with MotifBC defined.


---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=>   IS   <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=>  OUR   <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
document_id: 68338
From: mdoob@ccu.umanitoba.ca (Michael Doob)
Subject: Re: Compiling ghostview under Sun OpenWindows 3

In <615@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:

>In article <C75z4A.8r7@curia.ucc.ie> pflynn@curia.ucc.ie (Peter Flynn) writes:
><Due it seems to Sun's crapulous organisation of the X libraries and includes,
><most standard (GNU and other) software won't compile out of the box (well, tar
><file). 
><
><Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
><so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
><now the ghoddam thing _still_ complains it can't find them.
><
><I still haven't been able to compile xdvi, not no way.
><
><Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
><(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
><tried hard copying all the relevant files into the "right" places and
><every time, there's some bit missing or it refuses to find it.

>Sounds like you didn't load the support for those libraries when OW3.0 was
>loaded.  The Xaw support was missing from OW2.0 but added in 3.0.
>-- 
>harvard\
>  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
>rutgers/
>INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Or the library might be there but not pointed to by LD_LIBRARY_PATH.

Michael



Newsgroup: comp.windows.x
Document_id: 64830
From: chongo@toad.com (Landon C. Noll)
Subject: 10th International Obfuscated C Code Contest Opening (1 of 2)

Enclosed are the rules, guidelines and related information for the 10th
International Obfuscated C Code Contest.  (This is part 1 of a 2 part
shar file).

Enjoy!

chongo <Landon Curt Noll> /\oo/\ 
Larry Bassel

=-=

#!/bin/sh
# This is a shell archive (shar 3.32)
# made 03/01/1993 12:01 UTC by chongo@toad.com
# Source directory /tmp
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   8585 -r--r--r-- rules
#  25375 -r--r--r-- guidelines
#  33961 -r--r--r-- mkentry.c
#   6257 -r--r--r-- obfuscate.info
#
# ============= rules ==============
echo "x - extracting rules (Text)"
sed 's/^X//' << 'SHAR_EOF' > rules &&
X10th International Obfuscated C Code Contest Rules
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X		b.  To darken.  2. To confuse:  his emotions obfuscated his
X		judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X		Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X		obfuscatory adj.
X
X
XGOALS OF THE CONTEST:
X
X    * To write the most Obscure/Obfuscated C program under the rules below.
X    * To show the importance of programming style, in an ironic way.
X    * To stress C compilers with unusual code.
X    * To illustrate some of the subtleties of the C language.
X    * To provide a safe forum for poor C code.  :-)
X
X
XRULES:
X
X    To help us with the volume of entries, we ask that you follow these rules:
X
X    1) Your entry must be a complete program.
X
X    2) Your entry must be <= 3217 bytes in length.  The number of characters
X       excluding whitespace (tab, space, newline), and excluding any ; { or }
X       followed by either whitespace or end of file, must be <= 1536.
X
X    3) Your entry must be submitted in the following format:
X
X---entry---
Xrule:	1993
Xfix:	y or n   (n => this is a new entry, y => this replaces an older entry)
Xtitle:	title of entry  		    (see comments below)
Xentry:	Entry number from 0 to 7 inclusive  (your 1st entry should by 0)
Xdate:	Date/time of submission in UTC	    (see comments below)
Xhost:	Machine(s) and OS(s) under which your entry was tested
X	Use tab indented lines if needed
X---remark---
X    Place remarks about this entry in this section.  It would be helpful if
X    you were to indent your remarks with 4 spaces, though it is not a
X    requirement.  Also, if possible, try to avoid going beyond the 79th
X    column.  Blank lines are permitted.
X---author---
Xname:	your name
Xorg:	School/Company/Organization
Xaddr:	postal address
X	use tab indented lines to continue
X	don't forget to include the country
Xemail:  Email address from a well known site or registered domain.
X        If you give several forms, list them on separate tab indented lines.
Xanon:	y or n   (y => remain anonymous, n => ok to publish this info)
X---info---
XIf your program needs an info file, place a uuencoded copy of it in
Xthis section.  In the case of multiple info files, use multiple info
Xsections.  If your entry does not need a info file, skip this section.
X---build---
XPlace a uuencoded copy of the command(s) used to compile/build your program
Xin this section.  It must uudecode into a file named 'build'.  The resulting
Xfile must be 255 bytes or less.
X---program---
XPlace a uuencoded copy of your program in this section.  It must uudecode
Xinto a file named is 'prog.c'.  The resulting file must follow rule #2.
X---end---
X
X      Regarding the above format:
X
X	* The title must match the expression: [a-zA-Z0-9_=][a-zA-Z0-9_=+-]*
X	  and must be 1 to 12 characters in length.
X
X	  It is suggested, but not required, that the title should
X	  incorporate your username; in the case of multiple authors,
X	  consider using parts of the usernames of the authors.
X
X	* The date in the ---entry--- section should be given with respect
X	  to UTC.  The format of the date should be as returned by asctime() 
X	  using the C locale.  (see guidelines for more info)
X
X	* You may correct/revise a previously submitted entry by sending
X	  it to the contest email address.  Be sure to set 'fix' in the 
X	  ---entry--- section to 'n'.  The corrected entry must use the same 
X	  title and entry number as submittion that is being corrected.  Be 
X	  sure that you note the resubmittion in the ---remark--- as well.
X
X	* With the exception of the header, all text outside of the above 
X	  format may be ignored by the judges.  If you need tell the judges
X	  something, put it in the ---remark--- section, or send a separate
X	  Email message to the judges.
X
X	* Information from the ---author--- section will be published unless 
X	  'y' was given to the respective author's 'anon' line.
X
X	* To credit multiple authors, include an ---author--- section for
X	  each author.  Each should start with ---author--- line, and
X	  should be found between the ---entry--- and ---build--- sections.
X
X	* The entry's remarks should include:
X	    - what this program does
X	    - how to run the program (sample args or input)
X	    - special compile or execution instructions, if any
X	    - special filename requirements (see rule 4 and 5)
X	    - information about any ---data--- files
X	    - why you think the program is obfuscated
X	    - note if this entry is a re-submission of a previous entry.
X	    - any other remarks (humorous or otherwise)
X
X	* Do not rot13 your entry's remarks.  You may suggest that certain
X	  portions of your remarks be rot13ed if your entry wins an award.
X
X        * Info files should be used only to supplement your entry.  They 
X	  should not be required to exist.
X
X	  If your entry does not need an info file, skip the ---info---
X	  section.  If your entry needs multiple info files, use multiple 
X	  ---info--- sections, one per info file.  You should describe
X	  each info file in the ---remark--- section.
X
X    4) If your entry is selected as a winner, it will be modified as follows:
X
X	   'build' is incorporated into a makefile, and 'build' is removed
X	   'prog.c' is renamed to your entry's title, followed by an optional
X	       digit, followed by '.c'
X	   your entry is compiled into a file with the name of your entry's
X	       title, possibly followed by a digit
X
X       If your entry requires that a build file exist, state so in your
X       entry's remark section.  The makefile will be arranged to execute a
X       build shell script containing the 'build' information.  The name of
X       this build shell script will be your entry's title, possibly followed
X       by a digit, followed by '.sh'.
X
X       If needed, your entry's remarks should indicate how your entry must
X       be changed in order to deal with the new filenames.
X
X    5) The build file, the source and the resulting executable should be
X       treated as read-only files.  If your entry needs to modify these files,
X       it should make and modify a copy of the appropriate file.  If this
X       occurs, state so in your entry's remarks.
X
X    6) Entries that cannot be compiled by an ANSI C compiler will be rejected.
X       Use of common C (K&R + extensions) is permitted, as long as it does not 
X       cause compile errors for ANSI C compilers.
X
X    7) The program must be of original work.  All programs must be in the
X       public domain.  All copyrighted programs will be rejected.
X
X    8) Entries must be received prior to 07-May-93 0:00 UTC.  (UTC is
X       essentially equivalent to Greenwich Mean Time)  Email your entries to:
X
X		...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate
X		obfuscate@toad.com
X
X       We request that your message use the subject 'ioccc entry'.
X
X       If possible, we request that you hold off on Emailing your entries
X       until 1-Mar-93 0:00 UTC.  Early entries will be accepted, however.
X       We will attempt to email a confirmation to the the first author for
X       all entries received after 1-Mar-93 0:00 UTC.
X
X    9) Each person may submit up to 8 entries per contest year.  Each entry
X       must be sent in a separate Email letter.
X
X   10) Entries requiring human interaction to be built are not allowed.  
X       Compiling an entry produce a file (or files) which may be executed.
X
X   11) Programs that require special privileges (setuid, setgid, super-user,
X       special owner or group) are not allowed.
X    
X
XFOR MORE INFORMATION:
X
X    The Judging will be done by Landon Noll and Larry Bassel.  Please send
X    questions or comments (but not entries) about the contest, to:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges
X	judges@toad.com
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain all 3 of them, send Email
X    to the address above and use the subject 'send rules'.
X
X    One may also obtain them via anonymous ftp from:
X
X	host: ftp.uu.net	(137.39.1.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  /pub/ioccc
X
X
Xchongo <Landon Curt Noll> /\cc/\  	hoptoad!chongo
XLarry Bassel			  	{uunet,ucbvax,cbosgd}|sun!lab
SHAR_EOF
chmod 0444 rules ||
echo "restore of rules failed"
set `wc -c rules`;Wc_c=$1
if test "$Wc_c" != "8585"; then
	echo original size 8585, current size $Wc_c
fi
# ============= guidelines ==============
echo "x - extracting guidelines (Text)"
sed 's/^X//' << 'SHAR_EOF' > guidelines &&
X10th International Obfuscated C Code Contest Guidelines, Hints and Comments
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
XABOUT THIS FILE:
X
X    This file is intended to help people who wish to submit entries to
X    the International Obfuscated C Code Contest (IOCCC for short).
X
X    This is not the IOCCC rules, though it does contain comments about
X    them.  The guidelines should be viewed as hints and suggestions.
X    Entries that violate the guidelines but remain within the rules are
X    allowed.  Even so, you are safer if you remain within the guidelines.
X
X    You should read the current IOCCC rules, prior to submitting entries.
X    The rules are typically sent out with these guidelines.
X
X
XWHAT IS NEW IN 1993:
X
X    The entry format is better (for us anyway).  The program mkentry.c
X    has been updated.  See ENTRY FORMAT.
X
X    We will reject entries that cannot be compiled using an ANSI C
X    compiler.  Certain old Obfuscation hacks that cause ANSI C compilers 
X    fits are no longer permitted.  Some of the new issues deal with 
X    non-integral array types, variable number of arguments, C preprocessor 
X    directives and the exit() function.  See OUR LIKES AND DISLIKES.
X
X
XHINTS AND SUGGESTIONS:
X
X    You are encouraged to examine the winners of previous contests.  See
X    FOR MORE INFORMATION for details on how to get previous winners.
X
X    Keep in mind that rules change from year to year, so some winning entries
X    may not be valid entries this year.  What was unique and novel one year
X    might be 'old' the next year.
X
X    An entry is usually examined in a number of ways.  We typically apply
X    a number of tests to an entry:
X
X	* look at the original source
X	* convert ANSI tri-graphs to ASCII
X	* C pre-process the source ignoring '#include' lines
X	* C pre-process the source ignoring '#define' and '#include' lines
X	* run it through a C beautifier
X	* examine the algorithm
X	* lint it
X	* compile it
X	* execute it
X
X    You should consider how your entry looks in each of the above tests.
X    You should ask yourself if your entry remains obscure after it has been
X    'cleaned up' by the C pre-processor and a C beautifier.
X
X    Your entry need not do well under all, or in most tests.  In certain
X    cases, a test is not important.  Entries that compete for the
X    'strangest/most creative source layout' need not do as well as
X    others in terms of their algorithm.  On the other hand, given
X    two such entries, we are more inclined to pick the entry that
X    does something interesting when you run it.
X
X    We try to avoid limiting creativity in our rules.  As such, we leave
X    the contest open for creative rule interpretation.  As in real life
X    programming, interpreting a requirements document or a customer request
X    is important.  For this reason, we often award 'worst abuse of the
X    rules' to an entry that illustrates this point in an ironic way.
X
X    If you do plan to abuse the rules, we suggest that you let us know
X    in the remarks section.  Please note that an invitation to abuse
X    is not an invitation to break.  We are strict when it comes to the
X    3217 byte size limit.  Also, abusing the entry format tends to
X    annoy more than amuse.
X
X    We do realize that there are holes in the rules, and invite entries
X    to attempt to exploit them.  We will award 'worst abuse of the rules'
X    and then plug the hole next year.  Even so, we will attempt to use
X    the smallest plug needed, if not smaller.  :-)
X
X    Check out your program and be sure that it works.  We sometimes make
X    the effort to debug an entry that has a slight problem, particularly
X    in or near the final round.  On the other hand, we have seen some
X    of the best entries fall down because they didn't work.
X
X    We tend to look down on a prime number printer, that claims that
X    16 is a prime number.  If you do have a bug, you are better off
X    documenting it.  Noting "this entry sometimes prints the 4th power
X    of a prime by mistake" would save the above entry.  And sometimes,
X    a strange bug/feature can even help the entry!  Of course, a correctly
X    working entry is best.
X
X
XOUR LIKES AND DISLIKES:
X
X    Doing masses of #defines to obscure the source has become 'old'.  We
X    tend to 'see thru' masses of #defines due to our pre-processor tests
X    that we apply.  Simply abusing #defines or -Dfoo=bar won't go as far
X    as a program that is more well rounded in confusion.
X
X    Many ANSI C compilers dislike the following code, and so do we:
X
X	#define d define
X	#d foo		   <-- don't expect this to turn into #define foo
X
X	int i;
X	j;		   <-- don't use such implicit type declaration
X	int k;
X
X    We suggest that you compile your entry with an ANSI C compiler.  If you 
X    must use non-ANSI C, such as K&R C, you must avoid areas that result in 
X    compile/link errors for ANSI C compilers.
X
X    Unfortunately, ANSI C requires array indexes to be of integral type.
X    Thus, the following classical obfuscation hacks are no longer allowed:
X
X	int i;
X	char *c;
X	i[c];		   <--- use c[i] instead
X	(i+3)["string"];   <--- use "string"[i+3] instead
X
X    If your entry uses functions that have a variable number of
X    arguments, be careful. Systems implement va_list as a wide variety
X    of ways.  Because of this, a number of operations using va_list are
X    not portable and must not be used:
X
X	* assigning a non-va_list variable to/from a va_list variable
X	* casting a non-va_list variable into/from a va_list variable
X	* passing a va_list variable to a function expecting a non-va_list arg
X	* passing a non-va_list variable to a function expecting a va_list arg
X	* performing arithmetic on va_list variables
X	* using va_list as a structure or union
X
X    In particular, do not treat va_list variables as if they were a char **'s.
X
X    Avoid using <varargs.h>, use <stdarg.h> instead.
X
X    If you use C preprocessor directives (#define, #if, #ifdef, ...),
X    the leading '#' must be the first character on a line.  While some
X    C preprocessors allow whitespace the leading '#', many do not.
X
X    Because the exit() function returns void on some systems, entries
X    must not assume that it returns an int.
X
X    Small programs are best when they are short, obscure and concise.
X    While such programs are not as complex as other winners, they do
X    serve a useful purpose.  They are often the only program that people
X    attempt to completely understand.  For this reason, we look for
X    programs that are compact, and are instructional.
X
X    One line programs should be short one line programs, say around 80
X    bytes long.  Getting close to 160 bytes is a bit too long in our opinion.
X
X    We tend to dislike programs that:
X
X	* are very hardware specific
X	* are very OS or Un*x version specific
X	     (index/strchr differences are ok, but socket/streams specific
X	      code is likely not to be)
X	* dump core or have compiler warnings
X	     (it is ok only if you warn us in the 'remark' header item)
X	* won't compile under both BSD or SYS V Un*x
X	* abusing the build file to get around the size limit
X	* obfuscate by excessive use of ANSI tri-graphs
X	* are longer than they need to be
X	* are similar to previous winners
X	* are identical to previous losers  :-)
X
X    Unless you are cramped for space, or unless you are entering the
X    'best one liner' category, we suggest that you format your program
X    in a more creative way than simply forming excessively long lines.
X
X    The build file should not be used to try and get around the size
X    limit.  It is one thing to make use of a several -D's to help out,
X    but it is quite another to use 200+ bytes of -D's in order to
X    try and squeeze the source under the size limit.  You should feel
X    free to make use of the build file space, but you are better off
X    if you show some amount of restraint.
X
X    We allowed whitespace, and in certain cases ; { or } do not impact
X    your program size (up to a certain point), because we want to get
X    away from source that is simply a compact blob of characters.
X
X    Given two versions of the same program, one that is a compact blob
X    of code, and the other that is formatted more like a typical C
X    program, we tend to favor the second version.  Of course, a third
X    version of the same program that is formatted in an interesting
X    and/or obfuscated way, would definitely win over the first two!
X
X    We suggest that you avoid trying for the 'smallest self-replicating'
X    program.  We are amazed at the many different sizes that claim
X    to be the smallest.  There is nothing wrong with self-replicating
X    programs.  In fact, a number of winners have been self-replicating.
X    You might want to avoid the claim of 'smallest', lest we (or others)
X    know of a smaller one!
X
X    X client entries should be as portable as possible.  Entries that
X    adapt to a wide collection of environments will be favored.  Don't
X    depend on a particular type of display.  For example, don't depend
X    on color or a given size.  Don't require backing store.
X
X    X client entries should avoid using X related libraries and
X    software that is not in wide spread use.  We ask that such X client
X    entries restrict themselves to only the low level Xlib and the
X    Athena widget set (libX11.a, libXaw.a, libXmu.a and libXt.a).
X    Don't use M*tif, Xv*ew, or OpenL*ok toolkits, since not everyone
X    has them.  Avoid depending on a particular window manager.  Not
X    everyone has X11r5, and some people are stuck back in X11r4 (or
X    earlier), so try to target X11r5 without requiring X11r5.  Better
X    yet, try to make your entry run on all version 11 X Window Systems.
X
X    X client entries should not to depend on particular items on
X    .Xdefaults.  If you must do so, be sure to note the required lines
X    in the ---remark--- section.
X
X    We like programs that:
X
X	* are as concise and small as they need to be
X	* do something at least quasi-interesting
X	* pass lint without complaint (not a requirement, but it is nice)
X	* are portable
X	* are unique or novel in their obfuscation style
X	* MAKE USE OF A NUMBER OF DIFFERENT TYPES OF OBFUSCATION
X	* make us laugh and/or throw up  :-)
X
X    Some types of programs can't excel in some areas.  Of course, your
X    program doesn't have to excel in all areas, but doing well in several
X    areas really does help.
X
X    We freely admit that interesting, creative or humorous comments in
X    the ---remark--- section helps your chance of winning.  If you had to
X    read of many twisted entries, you too would enjoy a good laugh or two.
X    We think the readers of the contest winners do as well.
X
X    Be creative!
X
X
XENTRY FORMAT:
X
X    In order to help us process the many entries, we must request your
X    assistance by formatting your entries in a certain way.  This format,
X    in addition, allows us to quickly separate information about the
X    author from the program itself.  (see JUDGING PROCESS)
X
X    We have provided the program, mkentry, as an example of how to
X    format entries.  You should be aware of the following warning that
X    is found in mkentry.c:
X
X	This program attempts to implement the IOCCC rules.  Every
X	attempt has been made to make sure that this program produces
X	an entry that conforms to the contest rules.  In all cases,
X	where this program differs from the contest rules, the
X	contest rules will be used.  Be sure to check with the
X	contest rules before submitting an entry.
X
X    You are not required to use mkentry.  It is convenient, however,
X    as it attempts to uuencode the needed files, and attempt to check
X    the entry against the size rules.
X
X    If you have any suggestions, comments, fixes or complaints about
X    the mkentry.c program, please send Email to the judges.  (see below)
X
X    The following is a sample entry:
X
X---entry---
Xrule:	1993
Xfix:	n
Xtitle:	chonglab
Xentry:	0
Xdate:	Mon Mar  1 08:45:20 1993
Xhost:	Un*x v6, pdp11/45
X	2.9BSD, pdp11/70
X---remark---
X    This is a non-obfuscated obfuscated C program.
X
X    It is likely not to win a prize.  But what do you expect from
X    a short example!
X---author---
Xname:	Landon Curt Noll
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	chongo@toad.com
Xanon:	n
X---author---
Xname:	Larry Bassel
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	hoptoad!sun!lab
X	lab@sun.com
Xanon:	n
X---info---
Xbegin 444 info.file
XM0V]P>7)I9VAT("AC*2!,86YD;VX@0W5R="!.;VQL+"`Q.3DS+@I!;&P@4FEG
XM:'1S(%)E<V5R=F5D+B`@4&5R;6ES<VEO;B!F;W(@<&5R<V]N86PL(&5D=6-A
XM=&EO;B!O<B!N;VXM<')O9FET('5S92!I<PIG<F%N=&5D('!R;W9I9&5D('1H
XM:7,@=&AI<R!C;W!Y<FEG:'0@86YD(&YO=&EC92!A<F4@:6YC;'5D960@:6X@
XM:71S(&5N=&ER971Y"F%N9"!R96UA:6YS('5N86QT97)E9"X@($%L;"!O=&AE
XM<B!U<V5S(&UU<W0@<F5C96EV92!P<FEO<B!P97)M:7-S:6]N(&EN('=R:71I
XM;F<*9G)O;2!,86YD;VX@0W5R="!.;VQL+@H*5&AA="!T:&%T(&ES+"!I<RX*
XM5&AA="!T:&%T(&ES(&YO="P*("`@(&ES(&YO="!T:&%T('1H870@;F]T(&ES
XM+@I4:&%T(&ES+"!T:&%T('1H870@:7,@;F]T+"!I<R$*"@D)+2T@8VAO;F=O
XM(#$Y-S0*"DQA<W0@>65A<BP@;VYE('!E<G-O;B!T;VQD('5S('1H870@=&AE
XM>2!A8W1U86QL>2!D96-O9&5D('1H:7,@9FEL92X*22!W;VYD97(@:&]W(&UA
X9;GD@=VEL;"!D;R!I="!T:&ES('EE87(_"@``
X`
Xend
X---build---
Xbegin 444 build
X28V,@<')O9RYC("UO('!R;V<*
X`
Xend
X---program---
Xbegin 444 prog.c
XM;6%I;B@I"GL*(VEF(&1E9FEN960H05]214=)4U1%4D5$7U9/5$527TE.7U-5
XM3DY95D%,15]#04Q)1D]23DE!7U5302D*("`@('!R:6YT9B@B5F]T92!,86YD
XM;VX@3F]L;"!F;W(@4W5N;GEV86QE($-I='D@0V]U;F-I;"!S96%T(",Q+EQN
X:(BD["B-E;F1I9@H@("`@97AI="@P*3L*?0H`
X`
Xend
X---end---
X
X    Typically the build file should assume that the source is prog.c
X    and will compile into prog.  If an entry wins, we will rename
X    its source and binary to avoid filename collision.  By tradition,
X    we use the name of the entry's title, followed by an optional
X    digit in case of name conflicts.
X
X    If the above entry somehow won the 'least likely to win' award,
X    we would use chonglab.c and chonglab.
X
X    If your entry depends on, or requires that your build, source
X    and/or binary files be a particular name, please say so in the
X    ---remark--- section.  If this case applies, it would be be helpful
X    if you did one of the following:
X
X	* Tell us how to change the filename(s) in your entry.
X
X	* Have the build file make copies of the files.  For example:
X
X		cc prog.c -o special_name		need special binary
X
X	    or  rm -f special_src.c			need special source
X		cp prog.c special_src.c
X		cc special_src.c -o special_name
X
X	    or  rm -f special_build			need special build
X		tail +4 build > special_build
X		sh < special_build
X
X	* Assume that we will use the entry title.  Send us a version of 
X	  your build/program files that uses the name convention.  You 
X	  should uuencode these files in ---data--- sections.
X
X    If your entry needs to modify its source, info or binary files,
X    please say so in the ---remark--- section.  You should try to avoid
X    touching your original build, source and binary files.  You should
X    arrange to make copies of the files you intend to modify.  This
X    will allow people to re-generate your entry from scratch.
X
X    Remember that your entry may be built without a build file.  We
X    typically incorporate the build lines into a Makefile.  If the
X    build file must exist, say so in the ---remark--- section.
X
X    If your entry needs special info files, you should uuencode them
X    into ---info--- sections.  In the case of multiple info files,
X    use multiple ---info--- sections.  If no info files are needed,
X    then skip the ---info--- section.
X
X    Info files are intended to be input, or detailed information that
X    does not fit well into the ---remark--- section.  For example, an
X    entry that implements a compiler might want to provide some sample
X    programs for the user to compile.  An entry might want to include a
X    lengthy design document, that might not be appropriate for a
X    'hints' file.
X
X    Info files should be used only to supplement your entry.  For
X    example, info files may provide sample input or detailed
X    information about your entry.  Because they are supplemental,
X    the entry should not require them exist.
X
X    In some cases, your info files might be renamed to avoid name
X    conflicts.  If info files should not be renamed for some reason,
X    say so in the ---remark--- section.
X
X    Info files must uudecode into the current directory.  If they
X    absolutely must be renamed, or moved into a sub-directory, say
X    so in the ---remark--- section.
X
X    When submitting multiple entries, be sure that each entry has
X    a unique entry number from 0 to 7.  Your first entry should
X    have entry number 0.
X
X    With the exception of the header, all text outside of the entry
X    format may be ignored.  That is, don't place text outside of the
X    entry and expect the judges to see it.  (Our decoding tools aren't
X    AI progs!) If you need tell the the something, put it in the 
X    ---remark--- section, or send a Email to the judges at:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X    
X    The date should be given with respect to UTC.  (Some systems refer 
X    to this as GMT or GMT0)  The format of the date should be that as 
X    returned by asctime() in the C locale.  An example of such a string is:
X
X	Thr Apr 01 00:47:00 1993
X
X    This format is similar to the output of the date(1) command.  The
X    string does not include the timezone name before the year.  On many 
X    systems, one of the following command will produce a similar string:
X
X	date -u "+%a %h %d %T 19%y"
X	date -u | sed -e 's/... \(19[0-9][0-9]\)$/\1/'
X	sh -c 'TZ=UTC date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT0 date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X
X    You are allowed to update/fix/revise your entry.  To do so, set
X    the 'fix' line in the ---entry--- section to 'y' instead of 'n'.
X    Be sure that the resubmittion uses the same title and entry number
X    as well, as these are used to determine which entry is to be
X    replaced.
X
X
XJUDGING PROCESS:
X
X    Entries are judged by Larry Bassel and Landon Curt Noll.
X
X    Entries are unpacked into individual directories.  The Email message
X    is unpacked into individual files, each containing:
X
X	---entry--- section
X	all ---author--- sections
X	all ---info--- sections
X	---build--- section
X	---program--- section
X	any other text, including the Email message headers
X
X    Prior to judging, the 'any other text' file is scanned to be sure
X    it does not contain useful information (or in case the entry was
X    malformed and did not unpack correctly).  Information from the
X    ---author--- sections are not read until the judging process is
X    complete, and then only from entries that have won an award.
X
X    The above process helps keep us biased for/against any one particular
X    individual.  We are usually kept in the dark as much as you are
X    until the final awards are given.  We like the surprise of finding
X    out in the end, who won and where they were from.
X
X    We attempt to keep all entries anonymous, unless they win an award.
X    Because the main 'prize' of winning is being announced, we make all
X    attempts to send non-winners into oblivion.  We remove all non-winning
X    files, and shred all related paper.  By tradition, we do not even
X    reveal the number of entries that we received.  (for the curious,
X    we do indicate the volume of paper consumed when presenting the IOCCC
X    winners at talks)
X
X    After the Usenix announcement, we attempt to send Email to the
X    authors of the winning entries.  One reason we do this is to give
X    the authors a chance to comment on the way we have presented their
X    entry.  They are given the chance to correct mistakes, typos.  We
X    often accept their suggestions/comments about our remarks as well.
X    This is done prior to posting the winners to the wide world.
X
X    Judging consists of a number of elimination rounds.  During a round,
X    the collection of entries are divided into two roughly equal piles;
X    the pile that advances on to the next round, and the pile that does
X    not.  We also re-examine the entries that were eliminated in the
X    previous round.  Thus, an entry gets at least two readings.
X
X    A reading consists of a number of actions:
X
X	* reading the ---entry--- section
X	* reading the uudecoded ---build--- section
X	* reading the uudecoded ---program--- section
X	* reading the uudecoded ---info--- section(s), if any
X	* passing the source thru the C pre-processor
X	    shipping over any #include files
X	* performing a number of C beautify/cleanup edits on the source
X	* passing the beautified source thru the C pre-processor
X	    shipping over any #include files
X
X    In later rounds, other actions are performed:
X
X	* linting the source
X	* compiling/building the source
X	* running the program
X	* performing misc tests on the source and binary
X
X    Until we reduce the stack of entries down to about 25 entries, entries
X    are judged on an individual basis.  An entry is set aside because it
X    does not, in our opinion, meet the standard established by the round.
X    When the number of entries thins to about 25 entries, we begin to form
X    award categories.  Entries begin to compete with each other for awards.
X    An entry often will compete in several categories.
X
X    The actual award category list will vary depending on the types of entries
X    we receive.  A typical category list might be:
X
X	* best small one line program
X	* best small program
X	* strangest/most creative source layout
X	* most useful obfuscated program
X	* best game that is obfuscated
X	* most creatively obfuscated program
X	* most deceptive C code
X	* best X client (see OUR LIKES AND DISLIKES)
X	* best abuse of ANSI C
X	* worst abuse of the rules
X	* <anything else so strange that it deserves an award>
X
X    We do not limit ourselves to this list.  For example, a few entries are so
X    good/bad that they are declared winners at the start of the final round.
X    We will invent awards categories for them, if necessary.
X
X    In the final round process, we perform the difficult tasks of
X    reducing the remaining entries (typically about 25) down to 8 or 10
X    winners.  Often we are confident that the entries that make it into
X    the final round are definitely better than the ones that do not
X    make it.  The selection of the winners out of the final round, is
X    less clear cut.
X
X    Sometimes a final round entry good enough to win, but is beat out
X    by a similar, but slightly better entry.  For this reason, it is
X    sometimes worthwhile to re-enter an improved version of an entry 
X    that failed to win in a previous year.  This assumes, of course, 
X    that the entry is worth improving in the first place!
X
X    More often that not, we select a small entry (usually one line), a
X    strange/creative layout entry, and an entry that abuses the contest
X    rules in some way.
X
X    In the end, we traditionally pick one entry as 'best'.  Sometimes such
X    an entry simply far exceeds any of the other entry.  More often, the
X    'best' is picked because it does well in a number of categories.
X
X
XANNOUNCEMENT OF WINNERS:
X
X    The first announcement, occurs at a Summer Usenix conference.  By tradition,
X    this is done during the latter part of the UUNET/IOCCC BOF, just prior to
X    the Berkeley BSD, and BSDI BOF.
X
X    Winning entries will be posted in late June to the following groups:
X
X	    comp.lang.c		  comp.unix.wizards	alt.sources
X
X    In addition, pointers to these postings are posted to the following
X
X	    comp.sources.d	  alt.sources.d		misc.misc
X	    comp.sources.misc	  comp.windows.x
X
X    Winning entries will be deposited into the uunet archives.  See
X    below for details.
X
X    Often, winning entries are published in selected magazines.  Winners 
X    have appeared in books ("The New Hackers Dictionary") and on T-Shirts.
X
X    Last, but not least, winners receive international fame and flames!  :-)
X
X
XFOR MORE INFORMATION:
X
X    You may contact the judges by sending Email to the following address:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    Questions and comments about the contest are welcome.
X
X    One may obtain a copy of the current rules, guidelines or mkentry
X    program.  To obtain all 3 of them, send Email to the address above 
X    and use the subject 'send rules'.
X
X    One may also obtain the above items, we well as winners of previous
X    contests, via anonymous ftp from:
X
X	host: ftp.uu.net	(137.39.1.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  pub/ioccc
X
X    Often, contest rules, guidelines and winners are available from
X    archive sites.  Check comp.sources.unix archives, for example.
X    You may also request previous winners by Email, using the judges
X    Email address, though we ask that you do this as a last resort.
X
X
Xchongo <Landon Curt Noll> /\cc/\  	hoptoad!chongo
XLarry Bassel			  	{uunet,ucbvax,cbosgd}|sun!lab
SHAR_EOF
chmod 0444 guidelines ||
echo "restore of guidelines failed"
set `wc -c guidelines`;Wc_c=$1
if test "$Wc_c" != "25375"; then
	echo original size 25375, current size $Wc_c
fi
echo "End of part 1, continue with part 2"
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
Document_id: 64831
From: chongo@toad.com (Landon C. Noll)
Subject: 10th International Obfuscated C Code Contest Opening (part 2 of 2)

Enclosed are the rules, guidelines and related information for the 10th
International Obfuscated C Code Contest.  (This is part 2 of a 2 part
shar file).

Enjoy!

chongo <Landon Curt Noll> /\oo/\
Larry Bassel

=-=

#!/bin/sh
# This is part 02 of a multipart archive
# ============= mkentry.c ==============
echo "x - extracting mkentry.c (Text)"
sed 's/^X//' << 'SHAR_EOF' > mkentry.c &&
X/* @(#)mkentry.c	1.24 3/1/93 02:28:49 */
X/*
X * Copyright (c) Landon Curt Noll & Larry Bassel, 1993.  
X * All Rights Reserved.  Permission for personal, education or non-profit use 
X * is granted provided this this copyright and notice are included in its 
X * entirety and remains unaltered.  All other uses must receive prior 
X * permission in writing from both Landon Curt Noll and Larry Bassel.
X */
X/*
X * mkentry - make an International Obfuscated C Code Contest entry
X *
X * usage:
X *	mkentry -r remarks -b build -p prog.c -o ioccc.entry
X *
X *	-r remarks		file with remarks about the entry
X *	-b build		file containing how prog.c should be built
X *	-p prog.c		the obfuscated program source file
X *	-o ioccc.entry		ioccc entry output file
X *
X * compile by:
X *	cc mkentry.c -o mkentry
X */
X/*
X * Placed in the public domain by Landon Curt Noll, 1992.
X *
X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
X */
X/*
X * WARNING:
X *
X * This program attempts to implement the IOCCC rules.  Every attempt
X * has been made to make sure that this program produces an entry that
X * conforms to the contest rules.  In all cases, where this program
X * differs from the contest rules, the contest rules will be used.  Be
X * sure to check with the contest rules before submitting an entry.
X *
X * Send questions or comments (but not entries) about the contest, to:
X *
X *	...!{sun,pacbell,uunet,pyramid}!hoptoad!judges
X *	judges@toad.com
X * The rules and the guidelines may (and often do) change from year to
X * year.  You should be sure you have the current rules and guidelines
X * prior to submitting entries.  To obtain all 3 of them, send Email
X * to the address above and use the subject 'send rules'.
X *
X * Because contest rules change from year to year, one should only use this
X * program for the year that it was intended.  Be sure that the RULE_YEAR
X * define below matches this current year.
X */
X
X#include <stdio.h>
X#include <ctype.h>
X#include <time.h>
X#include <sys/types.h>
X#include <sys/stat.h>
X
X/* logic */
X#ifndef TRUE
X# define TRUE 1
X#endif /* TRUE */
X#ifndef FALSE
X# define FALSE 0
X#endif /* FALSE */
X#define EOF_OK TRUE
X#define EOF_NOT_OK FALSE
X
X/* global limits */
X#define RULE_YEAR 1993		/* NOTE: should match the current year */
X#define START_DATE "1Mar92 0:00 UTC"	/* first confirmation received */
X#define MAX_COL 79		/* max column a line should hit */
X#define MAX_BUILD_SIZE 256	/* max how to build size */
X#define MAX_PROGRAM_SIZE 3217	/* max program source size */
X#define MAX_PROGRAM_SIZE2 1536	/* max program source size not counting
X				   whitespace and {}; not followed by
X				   whitespace or EOF */
X#define MAX_TITLE_LEN 12	/* max chars in the title */
X#define MAX_ENTRY_LEN 1		/* max length in the entry input line */
X#define MAX_ENTRY 8		/* max number of entries per person per year */
X#define MAX_FILE_LEN 1024	/* max filename length for a info file */
X
X/* where to send entries */
X#define ENTRY_ADDR1 "...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate"
X#define ENTRY_ADDR2 "obfuscate@toad.com"
X
X/* uuencode process - assumes ASCII */
X#define UUENCODE(c) (encode_str[(int)(c)&0xff])
X#define UUENCODE_LEN 45		/* max uuencode chunk size */
X#define UUINFO_MODE 0444	/* mode of an info file's uuencode file */
X#define UUBUILD_MODE 0444	/* mode of the build file's uuencode file */
X#define UUBUILD_NAME "build"	/* name for the build file's uuencode file */
X#define UUPROG_MODE 0444	/* mode of the program's uuencode file */
X#define UUPROG_NAME "prog.c"	/* name for the program's uuencode file */
X
X/* encode_str[(char)val] is the uuencoded character of val */
Xchar encode_str[256+1] = "`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
X
X/* global declarations */
Xchar *program;			/* our name */
Xlong start_time;		/* the startup time */
X
X/* forward declarations */
Xvoid parse_args();
Xvoid usage();
XFILE *open_remark();
XFILE *open_build();
XFILE *open_program();
XFILE *open_output();
Xvoid output_entry();
Xvoid output_remark();
Xvoid output_author();
Xvoid output_info();
Xvoid output_build();
Xvoid output_program();
Xvoid output_end();
Xint get_line();
Xvoid output_till_dot();
Xint col_len();
Xvoid check_io();
Xvoid uuencode();
X
Xmain(argc, argv)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X{
X    FILE *remark=NULL;	/* open remarks stream */
X    FILE *build=NULL;	/* open build file stream */
X    FILE *prog=NULL;	/* open program stream */
X    FILE *output=NULL;	/* open output stream */
X    char *rname=NULL;	/* file with remarks about the entry */
X    char *bname=NULL;	/* file containing how prog.c should be built */
X    char *pname=NULL;	/* the obfuscated program source file */
X    char *oname=NULL;	/* ioccc entry output file */
X    struct tm *tm;	/* startup time structure */
X
X    /*
X     * check on the year
X     */
X    start_time = time((long *)0);
X    tm = gmtime(&start_time);
X    if (tm->tm_year != RULE_YEAR-1900) {
X	fprintf(stderr,
X	"%s: WARNING: this program applies to %d, which may differ from %d\n\n",
X	    argv[0], RULE_YEAR, 1900+tm->tm_year);
X    }
X
X    /*
X     * parse the command line args
X     */
X    parse_args(argc, argv, &rname, &bname, &pname, &oname);
X
X    /*
X     * open/check the input and output files
X     *
X     * We open and truncate the output file first, in case it is the same
X     * as one of the input files.
X     */
X    output = open_output(oname);
X    remark = open_remark(rname);
X    build = open_build(bname);
X    prog = open_program(pname);
X    if (output==NULL || remark==NULL || build==NULL || prog==NULL) {
X	exit(1);
X    }
X
X    /*
X     * output each section
X     */
X    output_entry(output, oname);
X    output_remark(output, oname, remark, rname);
X    output_author(output, oname);
X    output_info(output, oname);
X    output_build(output, oname, build, bname);
X    output_program(output, oname, prog, pname);
X    output_end(output, oname);
X
X    /* 
X     * flush the output 
X     */
X    if (fflush(output) == EOF) {
X	fprintf(stderr, "%s: flush error in %s: ", program, oname);
X	perror("");
X	exit(2);
X    }
X
X    /*
X     * final words
X     */
X    printf("\nYour entry can be found in %s.  You should check this file\n", 
X	oname);
X    printf("correct any problems and verify that the uudecode utility will\n");
X    printf("correctly decode your build file and program.\n\n");
X    printf("This program has been provided as a guide for submitters.  In\n");
X    printf("cases where it conflicts with the rules, the rules shall apply.\n");
X    printf("It is your responsibility to ensure that your entry conforms to\n");
X    printf("the current rules.\n\n");
X    printf("Email your entries to:\n");
X    printf("\t%s\n", ENTRY_ADDR1);
X    printf("\t%s\n\n", ENTRY_ADDR2);
X    printf("Please use the following subject when you Email your entry:\n");
X    printf("\tioccc entry\n\n");
X    /* all done */
X    exit(0);
X}
X
X/*
X * parse_args - parse the command line args
X *
X * Given the command line args, this function parses them and sets the
X * required name flags.  This function will return only if the command
X * line syntax is correct.
X */
Xvoid
Xparse_args(argc, argv, rname, bname, pname, oname)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X    char **rname;	/* file with remarks about the entry */
X    char **bname;	/* file containing how prog.c should be built */
X    char **pname;	/* the obfuscated program source file */
X    char **oname;	/* ioccc entry output file */
X{
X    char *optarg;	/* -flag option operand */
X    int flagname;	/* the name of the -flag */
X    int i;
X
X    /*
X     * Not everyone has getopt, so we must parse args by hand.
X     */
X    program = argv[0];
X    for (i=1; i < argc; ++i) {
X
X	/* determine the flagname */
X	if (argv[i][0] != '-') {
X	    usage(1);
X	    /*NOTREACHED*/
X	}
X	flagname = (int)argv[i][1];
X
X	/* determine the flag's operand */
X	if (flagname != '\0' && argv[i][2] != '\0') {
X	    optarg = &argv[i][2];
X	} else {
X	    if (i+1 >= argc) {
X		usage(2);
X		/*NOTREACHED*/
X	    } else {
X		optarg = argv[++i];
X	    }
X	}
X
X	/* save the flag's operand in the correct global variable */
X	switch (flagname) {
X	case 'r':
X	    *rname = optarg;
X	    break;
X	case 'b':
X	    *bname = optarg;
X	    break;
X	case 'p':
X	    *pname = optarg;
X	    break;
X	case 'o':
X	    *oname = optarg;
X	    break;
X	default:
X	    usage(3);
X	    /*NOTREACHED*/
X	}
X    }
X
X    /*
X     * verify that we have all of the required flags
X     */
X    if (*rname == NULL || *bname == NULL || *pname == NULL || *oname == NULL) {
X	usage(4);
X	/*NOTREACHED*/
X    }
X    return;
X}
X
X/*
X * usage - print a usage message and exit
X *
X * This function does not return.
X */
Xvoid
Xusage(exitval)
X    int exitval;		/* exit with this value */
X{
X    fprintf(stderr,
X	"usage: %s -r remarks -b build -p prog.c -o ioccc.entry\n\n", program);
X    fprintf(stderr, "\t-r remarks\tfile with remarks about the entry\n");
X    fprintf(stderr, "\t-b build\tfile containing how prog.c should be built\n");
X    fprintf(stderr, "\t-p prog.c\tthe obfuscated program source file\n");
X    fprintf(stderr, "\t-o ioccc.entry\tioccc entry output file\n");
X    exit(exitval);
X}
X
X/*
X * open_remark - open/check the remark file
X *
X * The remark file should be indented by 4 spaces, and should not extend 
X * beyond column MAX_COL.  These are not requirements, so we only warn.
X *
X * This function returns NULL on I/O or format error.
X */
XFILE *
Xopen_remark(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    char buf[BUFSIZ+1];		/* input buffer */
X    int toolong=0;		/* number of lines that are too long */
X    int non_indent=0;		/* number of lines not indented by 4 spaces */
X
X    /*
X     * open the remark input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open remark file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * look at each line
X     */
X    while (fgets(buf, BUFSIZ, stream) != NULL) {
X
X	/* count lines that do not start with 4 spaces */
X	if (buf[0] != '\n' && strncmp(buf, "    ", 4) != 0) {
X	    ++non_indent;
X	}
X
X	/* count long lines */
X	if (col_len(buf) > MAX_COL) {
X	    /* found a line that is too long */
X	    ++toolong;
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* note long lines if needed */
X    if (toolong > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s extend beyond the 80th column\n",
X	    program, toolong, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* note non-indented lines, if needed */
X    if (non_indent > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s are not indented by 4 spaces\n",
X	    program, non_indent, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_build - open/check the build file
X *
X * The how to build file must not be longer than MAX_BUILD_SIZE bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_build(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X
X    /*
X     * open the how to build input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_BUILD_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the how to build file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_BUILD_SIZE);
X	return(NULL);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * open_program - open/check the program source file
X *
X * The program source file must be <= 3217 bytes.  The number of
X * non-whitespace and }{; chars not followed by whitespace must
X * be <= 1536 bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_program(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X    int count;			/* special count size */
X    int c;			/* the character read */
X
X    /*
X     * open the program source input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open program source file: %s: ",
X	    program, filename);
X	perror("");
X	exit(7);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat program source file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_PROGRAM_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the program source file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_PROGRAM_SIZE);
X	return(NULL);
X    }
X
X    /*
X     * count the non-whitespace, non {}; followed by whitespace chars
X     */
X    count = 0;
X    c = 0;
X    while ((c=fgetc(stream)) != EOF) {
X	/* look at non-whitespace */
X	if (!isascii(c) || !isspace(c)) {
X	    switch (c) {
X	    case '{':		/* count if not followed by EOF or whitespace */
X	    case '}':
X	    case ';':
X		/* peek at next char */
X		c = fgetc(stream);
X		if (c != EOF && isascii(c) && !isspace(c)) {
X		    /* not followed by whitespace or EOF, count it */
X		    ungetc(c, stream);
X		    ++count;
X		}
X		break;
X	    default:
X		++count;
X		break;
X	    }
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* look at the special size */
X    if (count > MAX_PROGRAM_SIZE2) {
X	fprintf(stderr,
X	    "%s: FATAL: the number of bytes that are non-whitespace, and\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        that are not '{', '}', ';' followed by whitespace\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        or EOF must be <= %d bytes\n",
X	    program, MAX_PROGRAM_SIZE2);
X	fprintf(stderr,
X	    "%s:        in %s, %d bytes were found\n",
X	    program, filename, count);
X	return(NULL);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_output - open/check the entry output file
X *
X * This function returns NULL on open error.
X */
XFILE *
Xopen_output(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X
X    /*
X     * open the ioccc entry output file
X     */
X    stream = fopen(filename, "w");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open ioccc entry file for output: %s: ",
X	    program, filename);
X	perror("");
X	exit(8);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * output_entry - output the ---entry--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_entry(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char title[MAX_TITLE_LEN+1+1];	/* the entry's title */
X    char buf[MAX_COL+1+1];		/* I/O buffer */
X    int entry=0;			/* entry number */
X    int ret;				/* fields processed by fscanf */
X    int ok_line=0;			/* 0 => the line is not ok */
X    char skip;				/* input to skip */
X    FILE *date_pipe;			/* pipe to a date command */
X    time_t epoch_sec;			/* seconds since the epoch */
X    char *p;
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---entry---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the rule year
X     */
X    fprintf(output, "rule:\t%d\n", RULE_YEAR);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /* determine if this is a fix */
X    printf("Is this a fix, update or resubmittion to a ");
X    printf("previous entry (enter y or n)? ");
X    while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    if (buf[0] == 'y') {
X	fprintf(output, "fix:\ty\n");
X	check_io(output, oname, EOF_NOT_OK);
X	printf("\nBe sure that the title and entry number that you give\n");
X	printf("are the same of as the entry you are replacing\n");
X    } else {
X	fprintf(output, "fix:\tn\n");
X	check_io(output, oname, EOF_NOT_OK);
X    }
X
X    /*
X     * write the title
X     */
X    printf("\nYour title must match expression be a [a-zA-Z0-9_=] character\n");
X    printf("followed by 0 to %d more [a-zA-Z0-9_=+-] characters.\n\n",
X	MAX_TITLE_LEN-1);
X    printf("It is suggested, but not required, that the title should\n");
X    printf("incorporate your username; in the\n");
X    printf("case of multiple authors, consider using parts of the usernames\n");
X    printf("of the authors.\n\n");
X    printf("enter your title: ");
X    do {
X	/* prompt and read a line */
X	if ((ok_line = get_line(title, MAX_TITLE_LEN+1, MAX_COL-9)) <= 0) {
X	    printf("\ntitle is too long, please re-enter: ");
X	    continue;
X	}
X
X	/* verify the pattern, not everyone has regexp, so do it by hand */
X	if (!isascii((int)title[0]) ||
X	    !(isalnum((int)title[0]) || title[0] == '_' || title[0] == '=')) {
X	    printf("\ninvalid first character in the title\n\n");
X	    printf("enter your title: ");
X	    ok_line = 0;
X	} else {
X	    for (p=(&title[1]); *p != '\0' && *p != '\n'; ++p) {
X		if (!isascii((int)*p) ||
X		    !(isalnum((int)*p) || 
X		      *p == '_' || *p == '=' || *p == '+' || *p == '-')) {
X		    printf("\ninvalid character in the title\n\n");
X		    printf("enter your title: ");
X		    ok_line = 0;
X		}
X	    }
X	}
X    } while (ok_line <= 0);
X    fprintf(output, "title:\t%s", title);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the entry number
X     */
X    printf("\nEach person may submit up to %d entries per year.\n\n",
X	MAX_ENTRY);
X    printf("enter an entry number from 0 to %d inclusive: ", MAX_ENTRY-1);
X    do {
X	/* get a valid input line */
X	fflush(stdout);
X	ret = fscanf(stdin, "%d[\n]", &entry);
X	check_io(stdin, "stdin", EOF_NOT_OK);
X	/* skip over input until newline is found */
X	do {
X	    skip = fgetc(stdin);
X	    check_io(stdin, "stdin", EOF_NOT_OK);
X	    if (skip != '\n') {
X		/* bad text in input, invalidate entry number */
X		entry = -1;
X	    }
X	} while (skip != '\n');
X
X	/* check if we have a number, and if it is in range */
X	if (ret != 1 || entry < 0 || entry > MAX_ENTRY-1) {
X	    printf(
X	      "\nThe entry number must be between 0 and %d inclusive\n\n",
X		MAX_ENTRY-1);
X	    printf("enter the entry number: ");
X	}
X    } while (ret != 1 || entry < 0 || entry > MAX_ENTRY-1);
X    fprintf(output, "entry:\t%d\n", entry);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the submission date
X     */
X    /* returns a newline */
X    epoch_sec = time(NULL);
X    fprintf(output, "date:\t%s", asctime(gmtime(&epoch_sec)));
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the OS/machine host information
X     */
X    printf(
X      "\nEnter the machine(s) and OS(s) under which your entry was tested.\n");
X    output_till_dot(output, oname, "host:");
X}
X
X/*
X * output_remark - output the ---remark--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_remark(output, oname, remark, rname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *remark;		/* stream to the file containing remark text */
X    char *rname;		/* name of the remark file */
X{
X    char buf[BUFSIZ+1];		/* input/output buffer */
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---remark---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * copy the remark file to the section
X     */
X    while (fgets(buf, BUFSIZ, remark) != NULL) {
X	fputs(buf, output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    check_io(remark, rname, EOF_OK);
X
X    /* be sure that the remark section ends with a newline */
X    if (buf[strlen(buf)-1] != '\n') {
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X}
X
X/*
X * output_author - output the ---author--- section
X *
X * Read the needed information from stdin, and write the author section.
X * If multiple authors exist, multiple author sections will be written.
X */
Xvoid
Xoutput_author(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char buf[MAX_COL+1+1];	/* I/O buffer */
X    int more_auths;		/* TRUE => more authors to note */
X    int auth_cnt=0;		/* number of authors processed */
X
X    /*
X     * prompt the user for the author section
X     */
X    printf("\nEnter information about each author.  If your entry is after\n");
X    printf("%s and before the contest deadline, the judges\n", START_DATE);
X    printf("will attempt to Email back a confirmation to the first author\n");
X
X    /*
X     * place author information for each author in an individual section
X     */
X    do {
X
X	/* write the start of the section */
X	fprintf(output, "---author---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the author */
X	printf("\nAuthor #%d name: ", ++auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nname too long, please re-enter: ");
X	}
X	fprintf(output, "name:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the organization */
X	printf("\nEnter the School/Company/Organization of author #%d\n",
X	    auth_cnt);
X	printf("\nAuthor #%d org: ", auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter: ");
X	}
X	fprintf(output, "org:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the address */
X	printf(
X	    "\nEnter the postal address for author #%d.  Be sure to include\n",
X	    auth_cnt);
X	printf("your country and do not include your name.\n");
X	output_till_dot(output, oname, "addr:");
X
X	/* write the Email address */
X	printf(
X	    "\nEnter the Email address for author #%d.  Use an address from\n",
X	    auth_cnt);
X	printf(
X	    "a registered domain or well known site.  If you give several\n");
X	printf("forms, list them one per line.\n");
X	output_till_dot(output, oname, "email:");
X
X	/* write the anonymous status */
X	printf("\nShould author #%d remain anonymous (enter y or n)? ",
X	    auth_cnt);
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	fprintf(output, "anon:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* determine if there is another author */
X	printf("\nIs there another author (enter y or n)? ");
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	if (buf[0] == 'y') {
X	    more_auths = TRUE;
X	} else {
X	    more_auths = FALSE;
X	}
X    } while (more_auths == TRUE);
X    return;
X}
X
X/*
X * output_info - output the ---info--- section(s)
X *
X * Read the needed information from stdin, and write the info section.
X * If multiple info files exist, multiple info sections will be written.
X */
Xvoid
Xoutput_info(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char infoname[MAX_FILE_LEN+1];	/* filename buffer */
X    char yorn[1+1];		/* y or n answer */
X    char *uuname;		/* name to uuencode as */
X    FILE *infile;		/* info file stream */
X
X    /*
X     * prompt the user for info information
X     */
X    printf("\nInfo files should be used only to supplement your entry.\n");
X    printf("For example, info files may provide sample input or detailed\n");
X    printf("information about your entry.  Because they are supplemental,\n");
X    printf("the entry should not require them to exist.\n\n");
X
X    /*
X     * while there is another info file to save, uuencode it
X     */
X    printf("Do you have a info file to include (enter y or n)? ");
X    while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    while (yorn[0] == 'y') {
X
X	/* read the filename */
X	printf("\nEnter the info filename: ");
X	while (get_line(infoname, MAX_FILE_LEN+1, 0) <= 0) {
X	    printf("\nInfo filename too long, please re-enter: ");
X	}
X
X	/* compute the basename of the info filename */
X	/* remove the trailing newline */
X	uuname = &infoname[strlen(infoname)-1];
X	*uuname = '\0';
X	/* avoid rindex/shrrchr compat issues, do it by hand */
X	for (--uuname; uuname > infoname; --uuname) {
X	    if (*uuname == '/') {
X		++uuname;
X		break;
X	    }
X	}
X
X	/* attempt to open the info file */
X	infile = fopen(infoname, "r");
X	if (infile == NULL) {
X	    fprintf(stderr, "\n%s: cannot open info file: %s: ",
X		program, infoname);
X	    perror("");
X	    continue;
X	}
X
X	/*
X	 * write the start of the section
X	 */
X	fprintf(output, "---info---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* uuencode the info file */
X	uuencode(output, oname, infile, infoname, UUINFO_MODE, uuname);
X
X	printf("\nDo you have another info file to include (enter y or n)? ");
X	while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X    };
X    return;
X}
X
X/*
X * output_build - output the ---build--- section
X *
X * Read the needed information from stdin, and write the build section.
X */
Xvoid
Xoutput_build(output, oname, build, bname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *build;		/* open build file stream */
X    char *bname;		/* name of the build file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---build---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, build, bname, UUBUILD_MODE, UUBUILD_NAME);
X    return;
X}
X
X/*
X * output_program - output the ---program--- section
X *
X * Read the needed information form stdin, and write the program section.
X */
Xvoid
Xoutput_program(output, oname, prog, pname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *prog;			/* open program stream */
X    char *pname;		/* name of program file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---program---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, prog, pname, UUPROG_MODE, UUPROG_NAME);
X    return;
X}
X
X/*
X * output_end - output the ---end--- section
X *
X * Read the needed information form stdin, and write the 'end section'.
X */
Xvoid
Xoutput_end(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    /*
X     * write the final section terminator
X     */
X    fprintf(output, "---end---\n");
X    check_io(output, oname, EOF_NOT_OK);
X    return;
X}
X
X/*
X * get_line - get an answer from stdin
X *
X * This function will flush stdout, in case a prompt is pending, and
X * read in the answer.
X *
X * This function returns 0 if the line is too long, of the length of the
X * line (including the newline) of the line was ok.  This function does
X * not return if ERROR or EOF.
X */
Xint
Xget_line(buf, siz, maxcol)
X    char *buf;			/* input buffer */
X    int siz;			/* length of input, including the newline */
X    int maxcol;			/* max col allowed, 0 => disable check */
X{
X    int length;			/* the length of the input line */
X
X    /* flush terminal output */
X    fflush(stdout);
X
X    /* read the line */
X    if (fgets(buf, siz+1, stdin) == NULL) {
X	/* report the problem */
X	check_io(stdin, "stdin", EOF_NOT_OK);
X    }
X
X    /* look for the newline */
X    length = strlen(buf);
X    if (buf[length-1] != '\n') {
X	int eatchar;		/* the char being eaten */
X
X	/* no newline found, line must be too long, eat the rest of the line */
X	do {
X	    eatchar = fgetc(stdin);
X	} while (eatchar != EOF && eatchar != '\n');
X	check_io(stdin, "stdin", EOF_NOT_OK);
X
X	/* report the situation */
X	return 0;
X    }
X
X    /* watch for long lines, if needed */
X    if (maxcol > 0 && (length > maxcol || col_len(buf) > maxcol)) {
X	/* report the situation */
X	return 0;
X    }
X
X    /* return length */
X    return length;
X}
X
X/*
X * output_till_dot - output a set of lines until '.' by itself is read
X *
X * This routine will read a set of lines until (but not including)
X * a single line with '.' is read.  The format of the output is:
X *
X *	leader:\tfirst line
X *	\tnext line
X *	\tnext line
X *	   ...
X *
X * This routine will not return if I/O error or EOF.
X */
Xvoid
Xoutput_till_dot(output, oname, leader)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    char *leader;		/* the lead text for the first line */
X{
X    char buf[BUFSIZ+1];		/* input buffer */
X    int count;			/* lines read */
X    int done=FALSE;		/* TRUE => finished reading input */
X
X    /* instruct the user on how to input */
X    printf("\nTo end input, enter a line with a single period.\n");
X
X    /* read lines until '.' or EOF */
X    count = 0;
X    while (!done) {
X	/* issue the prompt */
X	printf("%s\t", (count>0) ? "" : leader);
X	fflush(stdout);
X
X	/* get the line */
X	if (get_line(buf, BUFSIZ, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter:\n\t");
X	    continue;
X	}
X
X	/* note if '.' was read */
X	if (strcmp(buf, ".\n") == 0) {
X	    done = TRUE;
X	}
X
X	/* write line if we read something */
X	if (!done) {
X	    fprintf(output, "%s\t%s", (count++>0) ? "" : leader, buf);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X    }
X
X    /* if no lines read, at least output something */
X    if (count <= 0) {
X	fprintf(output, "%s\t.\n", leader);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    return;
X}
X
X/*
X * col_len - determine the highest that a string would reach
X *
X * Given a string, this routine returns that a string would reach
X * if the string were printed at column 1.  Tab stops are assumed
X * to start at 9, 17, 25, 33, ...
X */
Xint
Xcol_len(string)
X    char *string;		/* the string to examine */
X{
X    int col;	/* current column */
X    char *p;	/* current char */
X
X    /* scan the string */
X    for (col=0, p=string; *p != '\0' && *p != '\n'; ++p) {
X	/* note the column shift */
X	col = (*p=='\t') ? 1+((col+8)/8*8) : col+1;
X    }
X    if (*p == '\n') {
X	--col;
X    }
X
X    /* return the highest column */
X    return col;
X}
X
X/*
X * check_io - check for EOF or I/O error on a stream
X *
X * Does not return if EOF or I/O error.
X */
Xvoid
Xcheck_io(stream, name, eof_ok)
X    FILE *stream;		/* the stream to check */
X    char *name;			/* the name of this stream */
X    int eof_ok;			/* EOF_OK or EOF_NOT_OK */
X{
X    /* test for I/O error */
X    if (ferror(stream)) {
X	fprintf(stderr, "%s: error on %s: ", program, name);
X	perror("");
X	exit(1);
X
X    /* test for EOF */
X    } else if (eof_ok == EOF_NOT_OK && feof(stream)) {
X	fprintf(stderr, "%s: EOF on %s\n", program, name);
X	exit(1);
X    }
X    return;
X}
X
X/*
X * uuencode - uuencode a file
X *
X * Perform the uuencoding process identical to the process performed
X * by the uuencode(1) utility.
X *
X * This routine implements the algorithm described in the uuencode(5)
X * 4.3BSD Reno man page.
X */
Xvoid
Xuuencode(output, oname, infile, iname, umode, uname)
X    FILE *output;		/* output file stream */
X    char *oname;		/* output filename */
X    FILE *infile;		/* input file stream */
X    char *iname;		/* input filename */
X    int umode;			/* the mode to put on the uuencode file */
X    char *uname;		/* name to put on the uuencode file */
X{
X    char buf[UUENCODE_LEN+1];	/* the uuencode buffer */
X    int read_len;		/* actual number of chars read */
X    int val;			/* 6 bit chunk from buf */
X    char filler='\0';		/* filler uuencode pad text */
X    char *p;
X
X    /*
X     * output the initial uuencode header
X     */
X    fprintf(output, "begin %o %s\n", umode, uname);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * clear out the input buffer
X     */
X    for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	*p = '\0';
X    }
X
X    /*
X     * We will process UUENCODE_LEN chars at a time, forming
X     * a single output line each time.
X     */
X    while ((read_len=fread(buf,sizeof(buf[0]),UUENCODE_LEN,infile)) > 0) {
X	
X	/*
X	 * the first character is the length character
X	 */
X	fputc(UUENCODE(read_len), output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * We will convert 24 bits at a time.  Thus we will convert
X	 * 3 sets of 8 bits into 4 sets of uuencoded 6 bits.
X	 */
X	for (p=buf; read_len>0; read_len-=3, p+=3) {
X
X	    /* bits 0 to 5 */
X	    val = (p[0]>>2)&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 6 to 11 */
X	    val = ((p[0]<<4)&0x30) | ((p[1]>>4)&0x0f);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 12 to 17 */
X	    val = ((p[1]<<2)&0x3c) | ((p[2]>>6)&0x03);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 18 to 23 */
X	    val = p[2]&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X
X	/* end of UUENCODE_LEN line */
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * clear out the input buffer  (don't depend on bzero() or memset())
X	 */
X	for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	    *p = '\0';
X	}
X    }
X
X    /* check the last read on the input file */
X    check_io(infile, iname, EOF_OK);
X
X    /* write end of uuencode file */
X    fprintf(output, "%c\nend\n", UUENCODE(filler));
X    check_io(output, oname, EOF_NOT_OK);
X}
SHAR_EOF
chmod 0444 mkentry.c ||
echo "restore of mkentry.c failed"
set `wc -c mkentry.c`;Wc_c=$1
if test "$Wc_c" != "33961"; then
	echo original size 33961, current size $Wc_c
fi
# ============= obfuscate.info ==============
echo "x - extracting obfuscate.info (Text)"
sed 's/^X//' << 'SHAR_EOF' > obfuscate.info &&
X1993 Obfuscated contest information
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.  
XAll Rights Reserved.  Permission for personal, education or non-profit use is 
Xgranted provided this this copyright and notice are included in its entirety 
Xand remains unaltered.  All other uses must receive prior permission in writing 
Xfrom both Landon Curt Noll and Larry Bassel.
X
XThe International Obfuscated C Code Contest (IOCCC), in the sprit of
Xco-operation, is willing mention other programming contents, as space
Xpermits.  
X
XHow to have your contest included in this file:
X
X    If you wish the IOCCC judges to include your contest in this file,
X    send a request to:
X
X	judges@toad.com
X
X    We request that contest descriptions be limited to 50 lines and to
X    not exceed 2500 bytes.  We typically request that your contest
X    include a current description of the IOCCC.
X
X    In order to be included in this file for given year, we must
X    receive a current description no EARLIER than Jan 1 00:00:00 UTC and
X    no LATER than Feb 15 00:00:00 UTC.  Agreement to publish your
X    contest must also be obtained prior to Feb 15.  Annual contests
X    that fail to submit a new entry will be dropped from this file.
X
XOfficial Disclaimer:  (pardon the officialese)
X
X    The contents noted below, other than the IOCCC, are not affiliated 
X    with the IOCCC, nor are they endorsed by the IOCCC.  We reserve the 
X    right to refuse to print information about a given contest.
X
X    The information below was provided by the particular contest
X    organizer(s) and printed by permission.  Please contact the
X    contest organizer(s) directly regarding their contents.
X
XWith that official notice given, we present for your ENJOYMENT, the following
Xinformation about contents:
X
X---------------------------------------------------------------------------
X
X    10th International Obfuscated C Contest   
X    
X	"The original obfuscated contest"
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X                b.  To darken.  2. To confuse:  Their emotions obfuscated 
X		their judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X                Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X                obfuscatory adj.
X 
X    GOALS OF THE CONTEST:
X 
X        * To write the most Obscure/Obfuscated C program under the rules below.
X        * To show the importance of programming style, in an ironic way.
X        * To stress C compilers with unusual code.
X        * To illustrate some of the subtleties of the C language.
X        * To provide a safe forum for poor C code.  :-)
X 
X    The IOCCC is the grandfather of USENET programming contests.  Since
X    1984, this contest demonstrated that a program that mearly works
X    correctly is not sufficient.  The IOCCC has also done much to add
X    the arcane word 'obfuscated' back into the English language.
X    (see "The New Hacker's Dictionary" by Eric Raymond)
X 
X    You are strongly encouraged to read the new contest rules before
X    sending any entries.  The rules, and sometimes the contest Email
X    address itself, change over time.  A valid entry one year may
X    be rejected in a later year due to changes in the rules.  The typical
X    start date for contests is in early March.  Contest rules are normally not
X    finalized and posted until the beginning of the contest.  The typical 
X    closing date for contests are in early May.
X 
X    The contest rules are posted to comp.unix.wizards, comp.lang.c,
X    misc.misc, alt.sources and comp.sources.d.  If you do not have access 
X    to these groups, or if you missed the early March posting, you may 
X    request a copy from the judges, via Email, at;
X 
X        judges@toad.com   -or-   ...!{sun,uunet,utzoo,pyramid}!hoptoad!judges
X 
X    Previous contest winners are available via anonymous ftp from
X    ftp.uu.net under the directory /pub/ioccc.
X
X---------------------------------------------------------------------------
X
X    0th International Obfuscated Perl Contest
X	By: Landon Noll & Larry Wall
X
X    This content is being planned.  Someday when Landon & Larry are not too 
X    busy, they will actually get around to posting the first set of rules!
X
X    Landon says: "Yes, I know that I said we would have a contest in 1993,
X		  but other existing projects got in the way.  Hopefully
X		  something will be developed after Nov 1993."
X
X---------------------------------------------------------------------------
X
X                2nd International obFUsCaTeD POsTsCripT Contest
X                     Jonathan Monsarrat (jgm@cs.brown.edu)
X                         Alena Lacova (alena@nikhef.nl)
X
X    A  contest of  programming skills  and  knowledge, exclusively  for the
X    PostScript programming language. Its purpose:
X
X    * To spread knowledge of PostScript and its details.
X    * To applaud those with the best tricks.
X    * To prove  that humans can  beat those damnable  machine generators at
X      their own game by writing  the most obscure and mysterious PostScript
X      programs ever.
X
X    Winners will receive the fame and attention that goes with having their
X    program entry posted as a winner to programmers world-wide.
X
X    The 1993 contest rules and results are available by ftp as
X    ``wilma.cs.brown.edu:pub/postscript/obfuscated*.shar'', or individually
X    in the obfuscated directory. The judges will post the 1994 rules
X    in November to comp.lang.postscript on Usenet, and other places.
X    Send questions to jgm@cs.brown.edu.
X
X    Categories include: Best Obfuscated PostScript, Best Artwork,
X    Most Compact, Best Interactive Program, Most Useful, and
X    anything so unusual and creative that it deserves an award.
X
X    The judges will choose the winners of each category.
X
X    Alena Lacova  is a system  administrator at NIKHEF  (Institute for High
X    Energy and Nuclear  Physics) in the  Netherlands. She is  the author of
X    The PostScript Chaos  Programs, which draw  Julia sets, Mandelbrot sets
X    and other kinds of fractal functions.
X
X    Jonathan Monsarrat is a graduate  student from MIT and Brown University
X    in  the  U.S.A. He  is  the  FAQ maintainer  for  the  Usenet newsgroup
X    comp.lang.postscript and the author of The PostScript Zone and LameTeX.
X .
X
SHAR_EOF
chmod 0444 obfuscate.info ||
echo "restore of obfuscate.info failed"
set `wc -c obfuscate.info`;Wc_c=$1
if test "$Wc_c" != "6257"; then
	echo original size 6257, current size $Wc_c
fi
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
Document_id: 66322
From: ware@cis.ohio-state.edu (Peter Ware)
Subject: comp.windows.x.intrinsics Frequently Asked Questions (FAQ)

Archive-name: Xt-FAQ
Version: $Id: FAQ-Xt,v 1.28 93/04/02 12:41:12 ware Exp $

		    The X Toolkit Intrinsics F.A.Q
			  A monthly posting


This article contains the answers to some Frequently Asked Questions
(FAQ) from comp.windows.x about the X Toolkit Intrinsics.  To submit
questions (preferably with an answer) send email to: ware@cis.ohio-state.edu

Many FAQs, including this one, are available on the archive site
rtfm.mit.edu in the directory pub/usenet/news.answers.  The name
under which a FAQ is archived appears in the Archive-name 
line at the top of the article.  This FAQ is archived as Xt-FAQ.

All code fragments are public domain.  

			       Contents
0.  Xt Glossary
1.  Software Versions
2.  Related FAQ's
3.  Why does my application core dump when I use signals/alarms/cthreads?
4.  How do I use a different visual than the default?
5.  Which visual should an application use?
6.  Why do only Shell widgets have a Visual?
7.  Which visual, depth and colormap do Shells inherit?
8.  I've done all the above and I still get a BadMatch error.  Why?
9.  Why doesn't my widget get destroyed when I call XtDestroyWidget()?
10. How do I exit but still execute the DestroyCallbacks?
11. How do I resize a Shell widget?
12. Why can't XtAppAddInput() handle files?
13. What good books and magazines are there on Xt?
14. What Widgets are available?
15. What alternatives to the Intrinsics are there?
16. How do I pass a float value to XtSetValues?
17. How do I write a resource converter?
18. How do I open multiple displays?
19. What changed from R3 to R4 to R5?
20. Where are the resources loaded from?
21. What order are callbacks executed in?
22. How do I know if a widget is visible?
23. How do I reparent a widget in Xt, i.e. XtReparentWidget()?
24. Why use XtMalloc, XtFree, etc?
25. How to debug an Xt application?
26. Why don't XtAddInput(), XtAddTimeout() and XtAddWorkProc() work?
27. What is and how can I implement drag and drop?

----------------------------------------------------------------------
0.  Xt Glossary
----------------------------------------------------------------------

o The Xt Intrinsics implement an object oriented interface to C code
  to allow useful graphical components to be created.  Included with
  this are classes that provide the base functionality: Object,
  RectObj, Core, Composite, Constraint, Shell, OverrideShell, WMShell,
  etc.  The terms "Xt" and "Intrinsics" are used interchangeably,
  however, they are used very precisely to mean a specific library of the X
  window system.  In particular, it does not include the Athena,
  Motif, OLIT or any other widget set.  Without further widgets the
  Intrinsics are not especially useful.

o A widget refers to a user interface abstraction created via Xt.  The
  precise use, is any object that is a subclass of the Core class.  It
  is used loosely to refer to anything that is a subclass of the
  Object class although these are more accurately called windowless
  widgets or gadgets.

o Xlib is the C interface to the X11 protocol.  It is one layer below
  the Xt Intrinsics.  Typically a widget uses relatively few Xlib
  functions because Xt provides most such services although an
  understanding of Xlib helps with problems.

----------------------------------------------------------------------
1.  Software Versions
----------------------------------------------------------------------

The following are the latest versions of Xt based software:
        _____________________________________________________________
	Software	Version		Released	Next Expected
        _____________________________________________________________
	X11R4		patch 18			(none)
	X11R5		patch 21	12/18/92	??
	Athena Widgets	(see X11R5)
	Motif		1.2.1		9/92		??
	OLIT		??		??		??
	Xtra		2.5		6/15/92		??
	Xw		X11R4				(none)
	Xcu		X11R5				(none)
	fwf		3.4		1/11/92		4/93
        _____________________________________________________________

----------------------------------------------------------------------
2.  Related FAQ's
----------------------------------------------------------------------
David B. Lewis (uunet!craft!faq) maintains the FAQ on X.  It
is posted monthly on comp.windows.x and located on export in contrib/FAQ.

Liam R. E. Quin (lee@sq.sq.com) posts an FAQ list on Open Look to 
comp.windows.x.  

Jan Newmarch (jan@pandonia.canberra.edu.au) posts an FAQ list on Motif 
to comp.windows.x.motif.

Peter Ware (ware@cis.ohio-state.edu) posts an FAQ list for
comp.windows.x.intrinsics; it is on export in contrib/FAQ-Xt.

----------------------------------------------------------------------
3.  Why does my application core dump when I use signals/alarms/cthreads?
----------------------------------------------------------------------

In brief, Xlib, Xt and most widget sets have no mutual exclusion for
critical sections.  Any interrupt handler is likely to leave one of
the above libraries in an inconsistent state -- such as all the
appropriate flags not yet set, dangling pointers, in the middle of a
list traversal, etc.  Note that the ANSI C standard points out that
behavior of a signal handler is undefined if the signal handler calls
any function other than signal() itself, so this is not a problem
specific to Xlib and Xt; the POSIX specification mentions other
functions which may be called safely but it may not be assumed that
these functions are called by Xlib or Xt functions.

The only safe way to deal with signals is to set a flag in the
interrupt handler.  This flag later needs to be checked either by a
work procedure or a timeout callback.  It is incorrect to add either
of these in the interrupt handler.  As another note, it is dangerous
to add a work procedure that never finishes.  This effectively
preempts any work procedures previously added and so they will never
be called.  Another option is to open a pipe, tell the event loop
about the read end using XtAppAddInput() and then the signal handler
can write a byte to the write end of the pipe for each signal.
However, this could deadlock your process if the pipe fills up.

Why don't the Intrinsics deal with this problem?  Primarily because it
is supposed to be a portable layer to any hardware and operating
system.   Is that a good enough reason -- I don't think so.

        Note: the article in The X Journal 1:4 and the example in O'Reilly
Volume 6 are in error.

----------------------------------------------------------------------
4.  How do I use a different visual than the default?
----------------------------------------------------------------------

This requires a more complicated answer than it should.  A window has
three things that are visual specific -- the visual, colormap and
border pixmap.  All widgets have their own Colormap and BorderPixmap
resource; only shell widgets have Visual resources (another questions
deals with why shells have a Visual).  The default value of these
resources is CopyFromParent which does exactly what it says.  In the
shell widget CopyFromParent gets evalulated as DefaultVisualOfScreen
and DefaultColormapOfScreen.  When any one of the three resources is
not properly set, a BadMatch error occurs when the window is
created.  They are not properly set because each of the values depends
on the visual being used.  

How to get this to work?  There are two parts to the answer.  The
first is if you want an application to start with a particular visual
and the second is if you want a particular shell within an application
to start with a different visual.  The second is actually easier
because the basic information you need is available.  The first is a
little harder because you'll need to initialize much of the toolkit
yourself in order to determine the needed information.

/*
 * Some sample code to start up an application using something other
 * than the default visual.
 *
 * To compile:
 *	cc -g visual.c -o visual -lXaw -lXmu -lXt -lXext -lX11 -lm
 *
 * To run:
 *	./visual -geometry 300x300 -depth 24 -visual StaticColor -fg blue -bg yellow
 *
 * you need to move the mouse to get the particular visuals colormap
 * to install.
 */

#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Shell.h>

typedef struct
{
	Visual	*visual;
	int	depth;
} OptionsRec;

OptionsRec	Options;

XtResource resources[] =
{
	{"visual", "Visual", XtRVisual, sizeof (Visual *),
	XtOffsetOf (OptionsRec, visual), XtRImmediate, NULL},
	{"depth", "Depth", XtRInt, sizeof (int),
	XtOffsetOf (OptionsRec, depth), XtRImmediate, NULL},
};

XrmOptionDescRec Desc[] =
{
	{"-visual", "*visual", XrmoptionSepArg, NULL},
	{"-depth", "*depth", XrmoptionSepArg, NULL}
};



int
main (argc, argv)
	int		argc;
	char		**argv;
{
	XtAppContext	app;		/* the application context */
	Widget		top;		/* toplevel widget */
	Display		*dpy;		/* display */
	char		**xargv;	/* saved argument vector */
	int		xargc;		/* saved argument count */
	Colormap	colormap;	/* created colormap */
	XVisualInfo	vinfo;		/* template for find visual */
	XVisualInfo	*vinfo_list;	/* returned list of visuals */
	int		count;		/* number of matchs (only 1?) */
	Arg		args[10];
	Cardinal	cnt;
	char		*name = "test";
	char		*class = "Test";

	/*
	 * save the command line arguments
	 */

	xargc = argc;
	xargv = (char **) XtMalloc (argc * sizeof (char *));
	bcopy ((char *) argv, (char *) xargv, argc * sizeof (char *));

	/*
	 * The following creates a _dummy_ toplevel widget so we can
	 * retrieve the appropriate visual resource.
	 */
	cnt = 0;
	top = XtAppInitialize (&app, class, Desc, XtNumber (Desc), &argc, argv,
			       (String *) NULL, args, cnt);
	dpy = XtDisplay (top);
	cnt = 0;
	XtGetApplicationResources (top, &Options, resources,
				   XtNumber (resources),
				   args, cnt);
	cnt = 0;
	if (Options.visual && Options.visual != DefaultVisualOfScreen (XtScreen (top)))
	{
		XtSetArg (args[cnt], XtNvisual, Options.visual); ++cnt;
		/*
		 * Now we create an appropriate colormap.  We could
		 * use a default colormap based on the class of the
		 * visual; we could examine some property on the
		 * rootwindow to find the right colormap; we could
		 * do all sorts of things...
		 */
		colormap = XCreateColormap (dpy,
					    RootWindowOfScreen (XtScreen (top)),
					    Options.visual,
					    AllocNone);
		XtSetArg (args[cnt], XtNcolormap, colormap); ++cnt;

		/*
		 * Now find some information about the visual.
		 */
		vinfo.visualid = XVisualIDFromVisual (Options.visual);
		vinfo_list = XGetVisualInfo (dpy, VisualIDMask, &vinfo, &count);
		if (vinfo_list && count > 0)
		{
			XtSetArg (args[cnt], XtNdepth, vinfo_list[0].depth);
			++cnt;
			XFree ((XPointer) vinfo_list);
		}
	}
	XtDestroyWidget (top);


	/*
	 * Now create the real toplevel widget.
	 */
	XtSetArg (args[cnt], XtNargv, xargv); ++cnt;
	XtSetArg (args[cnt], XtNargc, xargc); ++cnt;
	top = XtAppCreateShell ((char *) NULL, class,
				applicationShellWidgetClass,
				dpy, args, cnt);

	/*
	 * Display the application and loop handling all events.
	 */
	XtRealizeWidget (top);
	XtAppMainLoop (app);
	return (0);
}

----------------------------------------------------------------------
5.  Which visual should an application use?
----------------------------------------------------------------------

This is a point that can be argued about but one opinion is there is
no way for an application to know the appropriate visual -- it has to
be specified by the user.  If you disagree with this then your
application probably falls into the category of always using the
default visual or it is hardware specific and expects some particular
visual such as 24bit TrueColor with an OverlayPlane extension (or some
such).

Why?  No application runs in isolation.  Depending on the way a server
allocates resources I may not always want your application to run in
TrueColor mode if it is going to mess up my other applications.  I may
be very upset if it chooses to run in GreyScale instead of PsuedoColor
or just monochrome.

As an example, on a low end color Sun server there are many different
possible visuals: monochrome, 256 entry colormap, static gray, static
color, and a 3/3/2 TrueColor.  The SGI Iris's offer all the above 
plus 12 bit TrueColor, 24 bit TrueColor, an Overlay Plane.

----------------------------------------------------------------------
6.  Why do only Shell widgets have a Visual?
----------------------------------------------------------------------

This is strictly by convention.  It makes it possible for an arbitrary
widget to know that the visual it uses can be found by looking for the
shell widget that is its ancestor and obtaining the visual of that
shell.

A widget can have its own visual resource.  If it does, it must have
its own realize method to use the visual when it calls
XCreateWindow().  You should also make this a resource that can be
obtained with XtGetValues() so other widgets can find it.  A
reasonable value is probably XtNvisual.

----------------------------------------------------------------------
7.  Which visual, depth and colormap do Shells inherit?
----------------------------------------------------------------------

The default value for these resources are set to CopyFromParent.  This
is interpreted as the DefaultColormapOfScreen(), DefaultDepthOfScreen()
and the default visual of the screen if the widget has no parent -- i.e.
it is an applicationShellWidgetClass and the root of your widget tree.

If the parent of the widget is not null, then the shell copies
colormap and depth from its parent and uses CopyFromParent as the
visual.

----------------------------------------------------------------------
8.  I've done all the above and I still get a BadMatch error.  Why?
----------------------------------------------------------------------

Some resource converters improperly cache references.  This was
especially true of X11R3 and earlier versions of Motif.

----------------------------------------------------------------------
9.  Why doesn't my widget get destroyed when I call XtDestroyWidget()?
----------------------------------------------------------------------

See section 2.8 of the Xt specification.

It eventually does get destroyed, just not immediately.  The
Intrinsics destroy a widget in a two-phase process.  First it and all
of its children have a flag set that indicate it is being destroyed.
It is then put on a list of widgets to be destroyed.  This way any
pending X events or further references to that widget can be cleaned
up before the memory is actually freed.  The second phase is then
performed after all callbacks, event handlers, and actions have
completed, before checking for the next X event.  At this point the
list is traversed and each widget's memory is actually free()'d, among
other things.

As some further caveats/trivia, the widgets may be destroyed if the
Intrinsics determine that they have no further references to the
widgets on the list.  If so, then the phase 2 destruction occurs
immediately.  Also, if nested event loops are used, widgets placed on
the destroy list before entering the inner event loop are not
destroyed until returning to the outer event loop.

----------------------------------------------------------------------
10. How do I exit but still execute the DestroyCallbacks?
----------------------------------------------------------------------

The problem is if a simple and entirely reasonable approach to exiting
an application is used, such as calling exit() directly, then a widget
may not have a chance to clean up any external state -- such as open
sockets, temporary files, allocated X resources, etc.  (this code for
simplicity reasons assumes only a single toplevel widget):


	Widget
	ToplevelGet (gw)
		Widget		gw;		/* widget to find toplevel */
	{
		Widget		top;

		for (top = gw; XtParent (top); top = XtParent (top))
			/* empty */;
		return (top);
	}

	void
	ExitCallback (gw, closure, call_data)
		Widget		gw;		/* widget */
		XtPointer	closure;	/* data the app specified */
		XtPointer	call_data;	/* widget specific data */
	{
		Widget		toplevel;

		toplevel = ToplevelGet (gw);
		XtUnmapWidget (toplevel);	/* make it disappear quickly */
		XtDestroyWidget (toplevel);
		exit (0);
	}

One can see that the above code exit's immediately after destroying
the toplevel widget.  The trouble is the phase 2 destruction may never
occur.  

This works for most widgets and most applications but will not work
for those widgets that have any external state.  You might think that
since it works now it will always work but remember that part of the
reason an object oriented approach is used is so one can be ignorant
of the implementation details for each widget.  Which means that the
widget may change and someday require that some external state is
cleaned up by the Destroy callbacks.

One alternative is to modify ExitCallback() to set a global flag and
then test for that flag in a private event loop.  However, private
event loops are frowned upon because it tends to encourage sloppy, and
difficult to maintain practices.

Try the following code instead.

	#include <X11/Intrinsic.h>

	extern Widget ToplevelGet (
	#if NeedFunctionPrototypes
		Widget		gw
	#endif
	);

	extern Boolean ExitWorkProc (
	#if NeedFunctionPrototypes
		XtPointer	closure
	#endif
	);

	extern void ExitCallback (
	#if NeedFunctionPrototypes
		Widget		gw,
		XtPointer	closure,
		XtPointer	call_data
	#endif
	);

	Widget
	ToplevelGet (gw)
	Widget		gw;		/* widget to find toplevel */
	{
		Widget		top;

		for (top = gw; XtParent (top); top = XtParent (top))
			/* empty */;
		return (top);
	}


	void
	ExitCallback (gw, closure, call_data)
	Widget		gw;		/* widget */
	XtPointer	closure;	/* data the app specified */
	XtPointer	call_data;	/* widget specific data */
	{
		Widget		toplevel;

		toplevel = ToplevelGet (gw);
		XtUnmapWidget (toplevel);	/* make it disappear quickly */
		XtDestroyWidget (toplevel);
		XtAppAddWorkProc (XtWidgetToApplicationContext (gw),
				  ExitWorkProc, (XtPointer) NULL);
	}

	Boolean
	ExitWorkProc (closure)
		XtPointer	closure;
	{
		exit (0);
		/*NOTREACHED*/
	}


ExitCallback() adds a work procedure that will get called when the
application is next idle -- which happens after all the events are
processed and the destroy callbacks are executed.

----------------------------------------------------------------------
11. How do I resize a Shell widget?
----------------------------------------------------------------------

After it is realized, one doesn't resize a Shell widget.  The proper
thing is to resize the currently managed child of the Shell widget
using XtSetValues().  The geometry change is then propagated to the
Shell which asks the window manager which may or may not allow the
request.  However, the Shell must have the resource
XtNallowShellResize set to True otherwise it will not even ask the
window manager to grant the request and the Shell will not resize.

To change the position of a Shell, use XtSetValues() on the Shell, not
the child, and within the limits of the window manager it should be granted.

----------------------------------------------------------------------
12. Why can't XtAppAddInput() handle files?
----------------------------------------------------------------------

It does, however Unix semantics for when I/O is ready for a file does
not fit most peoples' intuitive model.  In Unix terms a file
descriptor is ready for reading whenever the read() call would not
block, ignoring the setting of optional flags that indicate not to
block.  This works as expected for terminals, sockets and pipes.  For
a file the read() will always return but the return indicates an EOF
-- i.e. no more data.  The result is the code in the Intrinsics always
calls the input handler because it always thinks something is about to
be read.  The culprit is the select() system call or on SYSV based
OS's it is the poll() system call.

How to get around this on a Unix system?  The best approach is to use
another process to check for available input on the file.  Use a pipe
to connect the application with this other process and pass the file
descriptor from the pipe to XtAppAddInput().  A suitable program on
BSD systems is "tail -f filename".

It's rumored that select() on some systems is not _completely_
reliable.  In particular:

	- IBM AIX 3.1: this is one where it would work for a while
	  (several thousand times) and then stop until some other
	  event woke it up. This seemed to be the result of a race
	  condition in the Kernel.  IBM claims to have a fix for this.

	- Pyramid, doesn't work at all.

	- Ultrix (and possibly others where pipes are implemented as
	  sockets), wasn't completely broken, but although the writing
	  side wrote in 512 byte blocks the reading side received it
	  all broken up as if it was being put into the pipe a byte at
	  a time.  You can waste a lot of time by reading small blocks
	  (get raound it by detecting the situation and having
	  select() ignore the pipe for 10 mseconds - by then it had
	  been given the whole block).


Note that all the above descriptions used Unix terminology such as
read(), file descriptor, pipes, etc.  This is an OS dependent area and
may not be identical on all systems.  However the Intrinsic designers
felt it was a common enough operation that it should be included with
part of the toolkit.  Why they didn't also deal with signals at this
point I don't know.

----------------------------------------------------------------------
13. What good books and magazines are there on Xt?
----------------------------------------------------------------------

I have a favorite that is the definitive reference.  To my perspective
it offers a reasonable introduction but also goes into the full
details of the Intrinsics.  When I started using it I was already
familiar with Xt and the concepts behind it, so newcomers may or may
not find it useful.  I've always found it accurate and complete, which
means its a 1000 pages.

Asente, Paul J., and Swick, Ralph R., "X Window System Toolkit, The
	Complete Programmer's Guide and Specification", Digital Press,
	1990, ISBN 1-55558-051-3, order number EY-E757E-DP; and by
	Prentice-Hall, ISBN 0-13-972191-6. Also available through DEC
	Direct at 1-800-DIGITAL.

The other book I commonly recomend to novices is:

Young, Doug. "The X Window System: Applications and Programming with
	Xt (Motif Version)," Prentice Hall, 1989 (ISBN 0-13-497074-8).
	(ISBN 0-13-972167-3)

And of course O'Reilly has an entire series of manuals on X and Xt.
O'Reilly ordering is 800-998-9938.  In particular, Volume 5 is an Xt
reference done in manual page style.  The 3rd edition is extensively
overhauled and goes far beyond the MIT manual pages.  I'm finding it
very useful.  In particular, the permutted index and references to
other manual pages help a great deal in chasing down related
information.

I read two periodicals, "The X Resource" and the "The X Journal".
These are the only two dealing specifically with X.  "The X Resource"
is published quarterly, by O'Reilly, with one of the issues being the
MIT X Consortium Technical Conference Proceedings.  There is no
advertising.  I've found it informative with pretty good depth.  For
orders, call 1-800-998-9938, or email cathyr@ora.com.  For editorial
matters, email adrian@ora.com.  Table of contents are posted at
math.utah.edu in ~ftp/pub/tex/bib in TeX form and on ftp.uu.net in
~ftp/published/oreilly/xresource in ASCII form.


"The X Journal" is a bimonthly trade rag with lots of advertising.
The articles are informative and oriented toward a less technical
audience.  I read it more to see what's going on then with an
expectation of learning a great deal (but remember, I represent a
fairly small percentage of people).  Also, they have a pretty good
collection of people on the advisory board and as columnists.  Call
(908) 563-9033.

----------------------------------------------------------------------
14. What Widgets are available?
----------------------------------------------------------------------

There are three popular widget sets:

Athena	- The set provided with X11.  This is sufficient for most
	  purposes but is on the ugly side.  Recently, a 3d look is
	  available for ftp on export.lcs.mit.edu:/contrib/Xaw3d.tar.Z.
Motif	- From OSF available for a license fee and commonly shipped on
	  many workstation vendors platforms (almost everyone but
	  Sun).  It looks good and works well but personally I think
	  it is poorly implemented.
OLIT	- The Open Look Intrinsics Toolkit is a set of widgets
	  implementing Sun's Open Look specification.  Developed by
	  AT&T.  I've never used it so can't comment on its quality.
	  I've heard rumours that it is a pain to actually get.

In addition the following collection of widgets are also available:

Xtra	- a library of widgets for sale from Graphical Software
	  Technology (310-328-9338).  It includes bar graph, stacked
	  bar graph, line graph, pie chart, xy plot, hypertext, help,
	  spreadsheet, and data entry form widgets.  I've never seen
	  them so I can't comment.
FWF	- The Free Widget Foundation is attempting to collect a set of
	  freely available widgets.  Included are a Pixmap editor,
	  FileDialog, and a few others.  The current set of widgets
	  can be obtained via anonymous ftp from the machine
	  a.cs.uiuc.edu (128.174.252.1) in the file pub/fwf.shar.Z.
Xcu	- The Cornell University widgets from Gene Dykes.  One of the
	  early widget sets released.  Provides a nice appearance for
	  buttons and has a mini command language.  Probably not so
	  widely used.
Xs	- The Sony widget set.  This was around during R3 days but
	  seemed to disappear.  It looked like it had promise.
Xw	- The HP widgets.  The precursor to Motif.  Originally written
	  for R3 there exists diffs to get it to work under R4 & R5.
	  Again, a pretty good widget set but has more or less died.
	  The precursor to this was the Xray toolkit which was
	  originally implemented for X10R4 and apparently provided
	  much experience for the designers of Xt.
Xo	- A widget set I'm working on.  It's still primitive but you
	  can give it a try in archive.cis.ohio-state.edu:pub/Xo/*

The following specialized widgets are also available:

Tbl	- Implements a tabular layout of widgets.  Supports Motif
	  widgets as children.  Part of Wcl.
Plots	- The Athena Plotting widgets (not the Athena widgets).
	  Contact gnb@bby.oz.au or joe@Athena.MIT.EDU.

----------------------------------------------------------------------
15. What alternatives to the Intrinsics are there?
----------------------------------------------------------------------

	__________________________________________
	Name		Language	Vendor
	__________________________________________
	Xview		C		Sun
	OI		C++		ParcPlace
	Interviews	C++		Stanford
	Tcl/tk		C		sprite.berkeley.edu
	__________________________________________


However much I like C and admire the skill in both designing and
implementing the Intrinsics, hopefully some alternative will develop
in the next 3-5 years that uses an object oriented language.  Keep
your eyes open and expect some change about the same time a language
other than C _starts_ gaining acceptance.

----------------------------------------------------------------------
16. How do I pass a float value to XtSetValues?
----------------------------------------------------------------------

First, what is going wrong is the structure for an Arg is (essentially)
	typdef struct
	{	
	    String	name;
	    long	value;
	} Arg;

and the code:
	Arg	arg;

	XtSetArg (arg, "name", 3.2)

expands to
	Arg	arg;

	arg.name = "name";
	arg.value = 3.2;

you can see that with normal C type conversions, the arg.value
gets the integer "3" instead of the floating point value "3.2".  When
the value is copied into the widget resource, the bit pattern is
wildly different than that required for a floating point value.  So,
how to get around this?

The following macro is from the Athena widgets document and I am now
recomending it over the previous suggestions.

#define XtSetFloatArg(arg, n, d) \
    if (sizeof(float) > sizeof(XtArgVal)) { \
        XtSetArg(arg, n, &(d)); \
    } else { \
        XtArgVal *ld = (XtArgVal *)&(d); \
        XtSetArg(arg, n, *ld); \
    }


----------------------------------------------------------------------
17. How do I write a resource converter?
----------------------------------------------------------------------

Courtesy of Rich Thomson (rthomson@dsd.es.com):

The following discussion of resource converters assumes R4 (or R5)
Intrinsics.  Resource converters changed between R3 and R4 to allow
for destructors and caching of converted values.

There are several main types of resource converters:

    string to data type
    data type to string
    data type to data type

i) string to data type
    Usually a string to data type converter has a fixed set of strings
    that will be converted to data type values.  This is most often
    used to map enumerated names to enumerated values:

	Name		Value
	"True"		1
	"False"		0

    In this case, the string to data type converter needs to compare
    the resource value to the list of fixed strings.  This is most
    readily accomplished by the use of the "quark" mechanism of the
    resource manager.  The resource value is turned into a quark,
    which is a unique representation of the string that fits into a
    single word.  Then the resource quark is compared against the
    quarks for the fixed strings representing the enumerated values.

    If there are many enumerated strings in the converter (or many
    converters, each with a small number of enumeration strings), then
    a global initialization routine might be used to turn all the
    resource strings into quarks.  That way, the first time one of
    these converters is used, the strings will be turned into quarks
    and held in static variables for use in the next invocation of one
    of the converters.

ii) data type to string
    This type of converter is slightly easier than the string to data
    type converters since the use of quarks isn't necessary.  Instead,
    the data type value is simply converted to a string value,
    probably by the use of sprintf.

    Data type to string converters are useful for applications that
    wish to convert an internal data type value into a string so that
    they can write out a valid resource specification to a file.  This
    mechanism can be used to provide a "snapshot" of application state
    into a file.  This snapshot can be used to restore the program to
    a known state via the usual X resource database mechanisms.

    If you are taking the trouble to write a string to data type
    converter, it isn't much extra effort to write the data type to
    string converter.  Writing both at the same time helps to ensure
    that they are consistent.

iii) data type to data type
    This type of converter is used to convert an existing data type
    value to another data type.  For instance, an X pixel value can be
    converted to an RGB data type that contains separate fields for
    red, green and blue.


The type signature for a resource converter is as follows:

typedef Boolean (*XtTypeConverter)(Display *, XrmValuePtr, Cardinal *,
	XrmValuePtr, XrmValuePtr, XtPointer *);
    Display *dpy;
    XrmValuePtr args;
    Cardinal *num_args;
    XrmValuePtr fromVal;
    XrmValuePtr toVal;
    XtPointer *converter_data;

When the converter is invoked, the "fromVal" argument points to the source
X resource manager value and the "toVal" argument points to the
destination X resource manager value.  The "converter_data" argument
is an opaque pointer to some converter-specific data that is specified
when the converter is registered.  The "args" and "num_args" arguments
allow extra information to be passed to the converter when it is
invoked.  For instance, the Pixel to RGB structure converter discussed
above would need colormap and visual arguments in which to lookup the
Pixel to obtain the RGB values corresponding to that pixel.

Care must be taken with the "toVal" argument.  An XrmValue has the
following type definition and specifies a size and location for a
converted value:

typedef struct {
    unsigned int    size;
    caddr_t         addr;
} XrmValue, *XrmValuePtr;

When the converter is invoked, the address may point to a location of
the given size for the converted value or the location can be NULL.
In the former case, the converter should ensure that the size of the
destination area is large enough to handle the converted value.  If
the destination area is not large enough, then the converter should
set the size to the amount of space needed and return False.  The
caller can then ensure that enough space is allocated and reinvoke the
converter.  If the size is large enough, then the converter can simply
copy the converted value into the space given and return True.

If the location is NULL, then the converter can assign the location to
the address of a static variable containing the converted value and
return True.

When writing a group of converters, this code is often repeated and it
becomes convenient to define a macro:

    #define DONE(var, type) \
      if (toVal->addr) \
	{ \
	  if (toVal->size < sizeof(type)) \
	    { \
	      toVal->size = sizeof(type); \
	      return False; \
	    } \
	  else \
	    *((type *) toVal->addr) = var; \
	} \
      else \
	toVal->addr = (caddr_t) &var; \
      toVal->size = sizeof(type); \
      return True;

    #define DONESTR(str) \
      if (toVal->addr && toVal->size < sizeof(String)) \
	{ \
	  toVal->size = sizeof(String); \
	  return False; \
	} \
      else \
	toVal->addr = (caddr_t) str; \
      toVal->size = sizeof(String); \
      return True;

Inside the converter, it is a good idea to perform a little safety
checking on the "num_args" and "args" arguments to ensure that your
converter is being called properly.

Once you have written your converter, you need to register it with the
Intrinsics.  The Intrinsics invokes resource converters when creating
widgets and fetching their resource values from the resource database.

To register a converter with a single application context, use
XtAppSetTypeConverter:

void XtAppSetTypeConverter(context, from, to, converter, args, num_args,
	cache, destructor)
    XtAppContext context;
    String from;
    String to;
    XtTypeConverter converter;
    XtConvertArgList args;
    Cardinal num_args;
    XtCacheType cache;
    XtDestructor destructor;

To register a converter with all application contexts, use
XtSetTypeConverter:

void XtSetTypeConverter(from, to, converter, args, num_args,
	cache, destructor)
    String from;
    String to;
    XtTypeConverter converter;
    XtConvertArgList args;
    Cardinal num_args;
    XtCacheType cache;
    XtDestructor destructor;

In the R3 Intrinsics, there were the routines XtAppAddConverter and
XtAddConverter; these have been superseded by XtAppSetTypeConverter
and XtSetTypeConverter.  Whenever possible, the newer routines should be
used.

When a converter is registered with the Intrinsics, a "cache" argument
specifies how converted resource values are to be cached:

    XtCacheNone		Don't cache any converted values
    XtCacheAll		Cache all converted values
    XtCacheByDisplay	Cache converted values on a per display basis

Caching converted values that require a round-trip to the server is a
good idea (for instance string to Pixel conversions).

The "destructor" argument is a routine that is invoked then the
resource is destroyed, either because its cached reference count has
been decremented to zero or because the widget owning the value is
being destroyed.  XtDestructor has the following type definition:

typedef void (*XtDestructor)(XtAppContext, XrmValuePtr, XtPointer,
	XrmValuePtr, Cardinal *);
    XtAppContext context;
    XrmValuePtr to;
    XtPointer converter_data;
    XrmValuePtr args;
    Cardinal *num_args;

The destructor is invoked to free any auxiliary storage associated
with the "to" argument, but does not actually free the storage pointed
to by the "to" argument itself (to->addr).  The destructor is passed
the extra arguments that were passed to the converter when the
conversion was performed (for instance, colormap and visual arguments
for the string to Pixel converter since the destructor would need to
free the allocated Pixel from the colormap) as well as the private
data passed in when the converter was registered.

Sample converter code can be found in the following files in the MIT
R5 distribution:

    mit/lib/Xt/Converters.c
    contrib/lib/PEXt/Converters.c
    contrib/lib/PEXt/Converters.h

----------------------------------------------------------------------
18. How do I open multiple displays?
----------------------------------------------------------------------

See "Multi-user Application Software Using Xt", The X Resource, Issue 3,
(Summer 1992) by Oliver Jones for a complete coverage of the issues
involved.  Most of this answer is based on that article.  In a
nutshell, one uses XtOpenDisplay() to add each display to a _single_
application context and then XtCloseDisplay() to shutdown each display
and remove it from the application context.

The real problems occur when trying to close down a display.  This can
happen 3 ways:
	1. User selects a "quit" button on one of the displays,
	2. User has window manager send a WM_DELETE_WINDOW message,
	3. Server disconnect -- possibly from a KillClient message,
	   server shutdown/crash, or network failure.

I'll assume you can deal gracefully with 1 & 2 since it is _merely_ a
problem of translating a Widget to a display and removing that
display.  If not, then read the Oliver Jones article.

The third one is difficult to handle.  The following is based on the
Oliver Jones article and I include it here because it is a difficult
problem.

The difficulty arises because the Xlib design presumed that an I/O
error is always unrecoverable and so fatal.  This is essentially true
for a single display X based application, but not true for a
multiple display program or an application that does things other than
display information on an X server.  When an X I/O error occurs the
I/O error handler is called and _if_ it returns then an exit()
happens.  The only way around this is to use setjmp/longjmp to avoid
returning to the I/O error handler.  The following code fragment
demonstrates this:

#include <setjmp.h>
jmp_buf XIOrecover;

void
XIOHandler (dpy)
	Display		*dpy;
{
	destroyDisplay (dpy);
	longjmp (XIOrecover, 1);
}

main ()
{
	...
	if (setjmp (XIOrecover) == 0)
		XSetIOErrorHandler (XIOHandler);
	XtAppMainLoop (app_context);
}

The destroyDisplay() is something that given a Display pointer can go
back to the application specific data and perform any necessary
cleanup.  It should also call XtCloseDisplay().

For those of you unfamiliar with setjmp/longjmp, when setjmp() is
first called it returns a 0 and save's enough information in the
jmp_buf that a latter execution of longjmp() can return the program to
the same state as if the setjmp() was just executed.  The return value
of this second setjmp() is the value of the second argument to
longjmp().  There are several caveats about using these but for this
purpose it is adequate.

Some other problems you might run into are resource converters that
improperly cache resources.  The most likely symptoms are Xlib errors
such as BadColor, BadAtom, or BadFont.  There may be problems with the
total number of displays you can open since typically only a limited
number of file descriptors are available with 32 being a typical
value.  You may also run into authorization problems when trying to
connect to a display.

There was much discussion in comp.windows.x about this topic in
November of 91.  Robert Scheifler posted an article which basically
said this is the way it will be and Xlib will not change.

----------------------------------------------------------------------
19. What changed from R3 to R4 to R5?
----------------------------------------------------------------------

This addresses only changes in the Intrinsics.  First, the general
changes for each release are described.  Then a, certainly incomplete,
list of new functions added and others that are now deprecated are
listed.  Brevity is a primary goal.

Much of the following information is retrieved from Chapter 13 of the MIT
Xt Intrinsics Manual and from O'Reilly Volume 5, 3rd edition.

From R3 to R4
- Addition of gadgets (windowless widgets)
- New resource type converter interface to handle cacheing and
  additional  data.
- Variable argument list interface.
- #define XtSpecificationRelease 4  (added with this release)
- WMShellPart, TopLevelShellPart & TransientShellPart changed
  incompatibly.
- core.initialize, core.set_values added ArgList and count parameters
- event handlers had continue_to_dispatch parameter added
- core.set_values_almost specification changed.
- core.compress_exposure changed to an enumerated data type from Boolean
- core.class_inited changed to enumerated data type from Boolean
- constraint.get_values_hook added to extension record
- core.initialize_hook obsolete as info is passed to core.initialize
- shell.root_geometry_manager added to extension record
- core.set_values_hook obsolete as info is passed to core.set_values
- Calling XtQueryGeometry() must store complete geometry.
- Added UnrealizeCallback.
- XtTranslateCoords() actually works under R4.

From R4 to R5:
- Psuedo resource baseTranslation added.
- Searching for app-default, and other files, made more flexible
- customization resource added.
- Per-screen resource database.
- Support permanently allocated strings.
- Permanetly allocated strings required for several class fields.
- The args argument to XtAppInitialize, XtVaAppInitialize,
  XtOpenDisplay, XtDisplayInitialize, and XtInitialize were changed
  from Cardinal* to int*
- Many performance improvements (this is summarized from the article
  "Xt Performance Improvements in Release 5" by Gabe Beged-Dov in "The
  X Resource", Issue 3):
	- XrmStringToQuark() augmented with XrmPermStringToQuark() to
	  avoid string copies.  Several fields in the class record are
	  indicated as needing permanent strings.
	- Using an array of Strings for resources
	- Callback lists redesigned to use less memory
	- Translation manager redesigned and rewritten so it takes
	  less memory, translation tables merges are faster, cache of
	  action bindings
	- Keycode to Keysyms are cached.
	- Better sharing of GC's with modifiable fields
	- Window to Widget translation uses less space and faster
	- Does not malloc space for widget name since quark is available
	- Widget space is allocated to include the constraints
	- Over several example programs, about a 26% reduction in
	  memory usage.

Functions new with R5:
----------------------
XtAllocateGC()		- sharable GC with modifiable fields  
XtGetActionList()	- get the action table of a class
XtScreenDatabase()	- return resource database for a screen
XtSetLanguageProc()	- register language procedure called to set locale


Functions new with R4:
----------------------
XtAppAddActionHook()	- procedure to call before _every_ action.
XtAppInitialize()	- lots of initialization work.
XtAppReleaseCacheRefs()	- decrement cache reference count for converter
XtAppSetFallbackResources() - specify default resources
XtAppSetTypeConverter()	- register a new style converter
XtCallCallbackList()	- directly execute a callback list
XtCallConverter	()	- invoke a new style converter
XtCallbackReleaseCacheRef() - release a cached resource value
XtCallbackReleaseCacheRefList() - release a list of cached resource values
XtConvertAndStore()	- find and call a resource converter
XtDirectConvert()	- Invoke old-style converter
XtDisplayOfObject()	- Return the display
XtDisplayStringConversionWarning() - issue a warning about conversion
XtFindFile()		- Find a file
XtGetActionKeysym()	- Retrieve keysym & modifies for this action
XtGetApplicationNameAndClass() - return name and class
XtGetConstraintResourceList() - get constraints for a widget
XtGetKeysymTable()	- return keycode-to-keysym mapping table
XtGetMultiClickTime()	- read the multi-click time
XtGetSelectionRequest()	- retrieve the SelectionRequest event
XtGetSelectionValueIncremental() - obtain the selection value incrementally
XtGetSelectionValuesIncremental() - obtain the selection value incrementally
XtInitializeWidgetClass() - initialize a widget class manually
XtInsertEventHanlder()	- register event handler before/after others
XtInsertRawEventHandler() - register event handler without modify input mask
XtIsObject()		- test if subclass of Object
XtIsRectObj()		- test if subclass of RectObj
XtKeysymToKeyCodeList()	- return list of keycodes
XtLastTimestampProcessed() - retrieve most recent event time
XtMenuPopdown		- Action for popping down a widget
XtMenuPopup		- Action for popping up a widget
XtOffsetOf		- macro for structure offsets
XtOwnSelectionIncremental() - make selection data availabe incrementally
XtPoupSpringLoaded()	- map a spring-loaded popup
XtRegisterGrabAction()	- indicate action procedure needs a passive grab
XtRemoveActiohHook()	- remove function called after every action
XtResolvePathname()	- find a file
XtScreenOfObject()	- return screen of object.
XtSetMultiClickTime()	- set the multi-click time
XtSetWMColormapWindows() - set WM_COLORMAP_WINDOWS for custom colormaps
XtUngrabButton()	- cancel a passive button grab
XtUngrabKey()		- cancel a passive key grab
XtUngrabKeybard()	- release an active keyboard grab
XtUngrabPointer()	- release an active pointer grab
XtVa*()			- varags interfaces to a bunch of functions
XtWindowOfObject()	- return Window of nearest widget ancestor


Deprecated		Replacement			When
----------------------------------------------------------------------
XtAddActions()		XtAppAddActions()		R3
XtAddConverter()	XtAppAddConverter()		R3
XtAddInput()		XtAppAddInput ()		R3
XtAddTimeout()		XtAppAddTimeout()		R3
XtAddWorkProc()		XtAppAddWorkProc()		R3
XtConvert()		XtConvertAndStore()		R4
XtCreateApplicationShell XtAppCreateShell()		R3
XtDestroyGC()		XtReleaseGC()			R3
XtError()		XtAppError()			R3
XtGetErrorDatabase()	XtAppGetErrorDatabase		R3
XtGetErrorDatabaseText() XtAppGetErrorDatabaseText	R3
XtGetSelectionTimeout()	XtAppGetSelectionTimeout	R3
XtInitialize()		XtAppInitialize()		R3
XtMainLoop()		XtAppMainLoop()			R3
MenuPopdown(action)	XtMenuPopdown(action)		R4
MenuPopup(action)	XtMenuPopup(action)		R4
XtNextEvent()		XtAppNextEvent()		R3
XtPeekEvent()		XtAppPeekEvent()		R3
XtPending()		XtAppPending()			R3
XtSetErrorHandler()	XtAppSetErrorHandler()		R3
XtSetErrorMsgHandler	XtAppSetErrorMsgHandler()	R3
XtSetSelectionTimeout()	XtAppSetSelectionTimeout()	R3
XtSetWarningHandler()	XtAppSetWarningHandler()	R3
XtSetWarningMsgHandler() XtAppSetWarningMsgHandler()	R3
XtWarning()		XtAppWarning()			R3
XtWarningMsg()		XtAppWarningMsg()		R3

----------------------------------------------------------------------
20. Where are the resources loaded from?
----------------------------------------------------------------------

The resources of a widget are filled in from the following places
(from highest priority to lowest priority):

	1. Args passed at creation time.
	2. Command line arguments.
	3. User's per host defaults file
	4. User's defaults file.
	5. User's per application default file.
	6. System wide per application default file.

Note that 2-6 are read only once on application startup.  The result
of steps 3-6 is a single resource database used for further queries.

The per host defaults file contains customizations for all
applications executing on a specific computer.  This file is either
specified with the XENVIRONMENT environment variable or if that is not
set then the file $HOME/.Xdefaults-<host> is used.

The user defaults file is either obtained from the RESOURCE_MANAGER
property on the root window of the display or if that is not set then
the file $HOME/.Xdefaults is used.  Typically, the program "xrdb" is
used to set the RESOURCE_MANAGER property.  Please note that this
should be kept relatively small as each client that connects to the
display must transfer the property.  A size of around 1-3KByte is
reasonable.  Some toolkits may track changes to the RESOURCE_MANAGER
but most do not.

A user may have many per application default files containing
customizations specific to each application.  The intrinsics are quite
flexible on how this file is found.  Read the next part that describes
the various environment variables and how they effect where this file
is found.

The system wide per application default files are typically found in
/usr/lib/X11/app-defaults.  If such a file is not found then the
fallback resources are used.  The intrinsics are quite flexible on how
this file is found.  Read the next part that describes the various
environment variables and how they effect where this file is found.

[Thanks to Oliver Jones (oj@pictel.com) for the following, 6/92]

You can use several environment variables to control how resources are
loaded for your Xt-based programs -- XFILESEARCHPATH,
XUSERFILESEARCHPATH, and XAPPLRESDIR.  These environment variables
control where Xt looks for application-defaults files as an
application is initializing.  Xt loads at most one app-defaults file
from the path defined in XFILESEARCHPATH and another from the path
defined in XUSERFILESEARCHPATH.

Set XFILESEARCHPATH if software is installed on your system in such a
way that app-defaults files appear in several different directory
hierarchies.  Suppose, for example, that you are running Sun's Open
Windows, and you also have some R4 X applications installed in
/usr/lib/X11/app-defaults. You could set a value like this for
XFILESEARCHPATH, and it would cause Xt to look up app-defaults files
in both /usr/lib/X11 and /usr/openwin/lib (or wherever your
OPENWINHOME is located):

	setenv XFILESEARCHPATH /usr/lib/X11/%T/%N:$OPENWINHOME/lib/%T/%N

The value of this environment variable is a colon-separated list of
pathnames.  The pathnames contain replacement characters as follows
(see XtResolvePathname()):

	%N	The value of the filename parameter, or the
		application's class name.
	%T	The value of the file "type".  In this case, the
		literal string "app-defaults"
	%C	customization resource (R5 only)
	%S	Suffix.  None for app-defaults.
	%L	Language, locale, and codeset (e.g. "ja_JP.EUC")
	%l	Language part of %L  (e.g. "ja")
	%t	The territory part of the display's language string
	%c	The codeset part of the display's language string

Let's take apart the example.  Suppose the application's class name is
"Myterm". Also, suppose Open Windows is installed in /usr/openwin.
(Notice the example omits locale-specific lookup.)

	/usr/lib/X11/%T/%N        means /usr/lib/X11/app-defaults/Myterm
	$OPENWINHOME/lib/%T/%N    means /usr/openwin/lib/app-defaults/Myterm

As the application initializes, Xt tries to open both of the above
app-defaults files, in the order shown.  As soon as it finds one, it
reads it and uses it, and stops looking for others.  The effect of
this path is to search first in /usr/lib/X11, then in /usr/openwin.

Let's consider another example. This time, let's set
XUSERFILESEARCHPATH so it looks for the file Myterm.ad in the current
working directory, then for Myterm in the directory ~/app-defaults.

	setenv XUSERFILESEARCHPATH ./%N.ad:$HOME/app-defaults/%N

The first path in the list expands to ./Myterm.ad.  The second expands
to $HOME/app-defaults/Myterm.  This is a convenient setting for
debugging because it follows the Imake convention of naming the
app-defaults file Myterm.ad in the application's source directory, so
you can run the application from the directory in which you are
working and still have the resources loaded properly.

NOTE: when looking for app-default files with XUSERFILESEARCHPATH,
      for some  bizarre reason, neither the type nor file suffix is
      defined so %T and %S are useless.

With R5, there's another twist.  You may specify a customization
resource value.  For example, you might run the "myterm" application
like this:

	myterm -xrm "*customization: -color"

If one of your pathname specifications had the value
"/usr/lib/X11/app-defaults/%N%C" then the expanded pathname would be
"/usr/lib/X11/app-defaults/Myterm-color" because the %C substitution
character takes on the value of the customization resource.

The default XFILESEARCHPATH, compiled into Xt, is:

		/usr/lib/X11/%L/%T/%N%C:\  (R5)
		/usr/lib/X11/%l/%T/%N%C:\  (R5)
		/usr/lib/X11/%T/%N%C:\     (R5)
		/usr/lib/X11/%L/%T/%N:\
		/usr/lib/X11/%l/%T/%N:\
		/usr/lib/X11/%T/%N

(Note: some sites replace /usr/lib/X11 with a ProjectRoot in this
batch of default settings.)

The default XUSERFILESEARCHPATH, also compiled into Xt, is 

		<root>/%L/%N%C:\  (R5)
		<root>/%l/%N%C:\  (R5)
		<root>/%N%C:\     (R5)
		<root>/%L/%N:\
		<root>/%l/%N:\
		<root>/%N:

<root> is either the value of XAPPLRESDIR or the user's home directory
if XAPPLRESDIR is not set.  If you set XUSERFILESEARCHPATH to some
value other than the default, Xt ignores XAPPLRESDIR altogether.

Notice that the quick and dirty way of making your application find
your app-defaults file in your current working directory is to set
XAPPLRESDIR to ".", a single dot.  In R3, all this machinery worked
differently; for R3 compatibilty, many people set their XAPPLRESDIR
value to "./", a dot followed by a slash.


----------------------------------------------------------------------
21. What order are callbacks executed in?
----------------------------------------------------------------------
(Courtesy of Donna Converse, converse@expo.lcs.mit.edu; 5/10/92)

The Intrinsics library do not guarantee an order.  This is because
both the widget writer and the application writer have the ability to
modify the entire contents of the callback list.  Neither one
currently knows what the other is doing and so the Intrinsics cannot
guarantee the order of execution.

The application programmer cannot rely on the widget writer; the
widget writer is not required to document when the widget will add and
remove callbacks from the list or what effect this will have;
therefore the functionality contained in a callback should be
independent of the functionality contained in other callbacks on the
list.

Even though the Xt standard in the definition of XtAddCallback
says:

 	"callback_name: Specifies the callback list to which the
 	procedure is to be appended."
 
you may not infer from the word "appended" that the callback routines
are called in the same order as they have been added to the callback
list.

----------------------------------------------------------------------
22. How do I know if a widget is visible?
----------------------------------------------------------------------
(Courtesy of Donna Converse, converse@expo.lcs.mit.edu; 5/14/92)

> I am building a widget needs to know if it is visible. I set the visible
> interest field in Core and if my window is completely obscured, the Core
> visible flag goes FALSE. However, if my window is iconified, the flag
> stays set to TRUE.

Right, everything is implemented correctly.  This demonstrates a "deficiency"
in the X protocol, and the Core widget is reflecting the capabilities of the
protocol.  (The "deficiency" is that the information is available in one way,
in this case an inconvenient way.)  The Xt specification is accurate, in
the second and third paragraphs of section 7.10.2, so read this section
carefully.  The visible field will not change in response to iconification.

A VisibilityNotify event will not be received when the window goes from
viewable to unviewable, that is, when the widget or an ancestor is unmapped;
that is, when iconification occurs.  This is the protocol deficiency.
Visibility state and viewable state have specific meanings in the X protocol;
see the glossary in your Xlib and X protocol reference manual.

> Is this a problem with "mwm" or is there something
> else which needs to be done?

You'll see this with any window manager, with no window manager.

> If the problem is "mwm", what is the fastest
> way to determine if a window is iconified? 

As an application writer, keep track with a global Boolean in an action
routine with translations for MapNotify and UnmapNotify on the Shell widget
which contains your custom widget.  As the custom widget writer, see the
map_state field returned by a call to XGetWindowAttributes.  These are
suggestions.

----------------------------------------------------------------------
23. How do I reparent a widget in Xt, i.e. XtReparentWidget()?
----------------------------------------------------------------------

You can't.

----------------------------------------------------------------------
24. Why use XtMalloc, XtFree, etc?
----------------------------------------------------------------------

Unfortunately, most code that calls malloc(), realloc() or calloc()
tends to ignore the possibility of returning NULL.  At best it is
handled something like:

	ptr = (type *) malloc (sizeof (type))
	if (!ptr)
	{
		perror ("malloc in xyzzy()");
		exit (1)
	}
To handle this common case the Intrinsics define the functions
XtMalloc(), XtCalloc(), XtNew(), XtNewString() and XtRealloc() which
all use the standard C language functions malloc(), calloc() and
realloc() but execute XtErrorMsg() if a NULL value is returned.  Xt
error handlers are not supposed to return so this effectively exits.

In addition, if XtRealloc() is called with a NULL pointer, it uses
XtMalloc() to get the initial space.  This allows code like:

	if (!ptr)
		ptr = (type *) malloc (sizeof (type));
	else
		ptr = (type *) realloc (ptr, sizeof (type) * (count + 1));
	++count;

to be written as:

	ptr = XtRealloc (ptr, sizeof (ptr) * ++count);

Also, XtFree() accepts a NULL pointer as an argument.  Generally, I've
found the Xt functions conveniant to use.  However, anytime I'm
allocating anything potentially large I use the standard functions so
I can fully recover from not enough memory errors.

XtNew() and XtNewString() are conveniant macros for allocating a
structure or copying a string:

	  struct abc *xyzzy;
	  char	     *ptr;
	  char	     *str = "abcdef";

	  xyzzy = XtNew (struct abc);	/* takes care of type casting */
	  ptr = XtNewString (str);

A strict interpretation of the Intrinsics reference manual allow an
implementation to provide functions that are not exchangable with
malloc() and free().  I.e. code such as:

	 char	      *ptr;

	 ptr = XtMalloc (100);
	 /* ... */
	 free (ptr);

may not work.  Personally, I'd call any implementation that did this
broken and complain to the vendor.

A common error for Motif programmers is to use XtFree() on a string
when they should really be using XmStringFree().

----------------------------------------------------------------------
25. How to debug an Xt application?
----------------------------------------------------------------------
First, I'd recomend getting "purify" from Pure Software.  This is a
great package for tracing memory problems on Sun's.  It's a bit pricey
at $2750 but I'd still recomend it.  Excuse the marketing blurb
(contact support@pure.com for more info).

	Purify inserts additional checking instructions directly into
	the object code produced by existing compilers.  These
	instructions check every memory read and write performed by
	the program under test and detect several types of access
	errors, such as reading unitialized memory, writing past
	malloc'd bounds, or writing to freed memory.  Purify inserts
	checking logic into all of the code in a program, including
	third party and vendor object-code libraries, and verifies
	system call interfaces.  In addition, Purify tracks memory
	usage and identifies individual memory leaks using a novel
	adaption of garbage collection techniques.  Purify's nearly
	comprehensive memory access checking slows the target program
	down typically by a factor of two to five.

An alternative package that isn't as pricey ($395 for a Sun), runs on
many Unix's and has pretty similar features is "The SENTINEL Debugging
Environment".  This replaces malloc() and several other C library
functions to add additional checks.  (contact cpcahil@virtech.vti.com
for more info)

Next, if you are getting any sort of Xlib error, you'll need to run in
synchronous mode, easily accomplished with the "-sync" command line
argument or by setting the variable Xdebug to 1 with your debugger.  Then
set a break point in exit().  This will let you trace back to the
original Xlib function being called.  If you don't run in synchronous
mode, then the actual error may have occured any number of calls to
Xlib previously since the Xlib calls are buffered and replies from the
server are asynchronous.

Next, if you are having trouble with window layout, you can use the
undocumented resource "xtIdentifyWindows" or the class resource
"XtDebug" to cause the widget name to be identified with each window.
For example:

    example% xload -xrm '*XtDebug:true' &
    example% xwininfo -tree
	     <click in new xload window>

will give the normal information but the widget name and class of each
window is included.  This can help for checking the location and size
of errant widgets.

Next, if you are having trouble with geometry managers or you want to
test the way a widget manages it's children, you can try
export.lcs.mit.edu:contrib/libXtGeo.tar.Z.  This acts as a filter
between any children and a geometry manager and checks the behaviour
of both.  It's a very clever idea.

The most unfortunate problem is debugging a callback while the
application is executing a grab of the keyboard or mouse (such as from
a pulldown menu).  The server effectively locks up and you'll need to
go to another machine and kill the debugger manually.  The server
locks up because the application being debugged has said no one else
can have access to the keyboard but the application is not stopped
waiting because the debugger is waiting for your commands.
Unfortunately you can't give them because all the input is going to
your application which is stopped.

The best way to debug this kind of problem is with two machines on
your desk, running the program under a debugger (or other environment)
on one machine, and running the application on the other, possibly
using a command sequence like this:

	othermachine% xhost +thismachine
	thismachine% setenv DISPLAY othermachine:0;
	thismachine% gdb application	# Your favorite debugger.
	or this:
	othermachine% xhost +thismachine
	thismachine% gdb application
	(gdb) set environment DISPLAY othermachine:0
	(gdb) run ...

I believe CodeCenter, a C interpreter/graphical debugger has a method
of dealing with this by explicitely calling the Xlib functions to
release any grabs during breakpoints.

Debugging widget problems requires pretty good debugging skills and
knowledge of how widgets work.  You can go a long way without knowing
the internals of a particular widget but not very far without
understanding how a widget works.  Judicious use of conditional
breakpoints and adding print statements with the debugger help a great
deal.

----------------------------------------------------------------------
26. Why don't XtAddInput(), XtAddTimeout() and XtAddWorkProc() work?
----------------------------------------------------------------------
   I have got a delicate problem with the three routines XtAddInput,
   XtAddTimeOut and XtAddWorkProc. The problem I have is that when
   I use them in my application they seem not to be registred properly.
   I have made a handy little testprogram where everything works
   perfect, but in my "real" application nothing happens. 

The introduction in R3 of the XtApp*() functions obsoleted those
routines (see Q19 for other changes in R3, R4, and R5).  What happens is
they use a default application context different then the one you may
have created.  Since events and timeouts are distributed on a per
application context basis and you are using two application contexts,
you won't get those events.

For example:

	...
	cnt = 0;
	toplevel = XtAppInitialize(&app, class,
				   Desc, XtNumber (Desc),
				   &argc, argv,
				   Fallback, args, cnt);

	XtAddTimeOut (...)
	XtAddWorkProc (...)

	XtAppMainLoop (app)

would never invoke the timeout.

----------------------------------------------------------------------
27. What is and how can I implement drag and drop?
----------------------------------------------------------------------
(Courtesy of Roger Reynolds, rogerr@netcom.com; 19 Feb 93)

Drag-n-drop is a buzzword for moving data between clients, in an
``intuitive'' fashion.

Motif Version 1.2 supports drag-n-drop capabilities, OpenLook has
supported d-n-d all along.  The two protocols are not compatable with
each other, and so far as I know, they are not published.

I wrote a package called RDD which is designed to be a flexible public
protocol for doing drag 'n drop operations between clients.  My
intention was to provide a tool which would make it easy for people to
support a "standard" drag-n-drop protocol in the programs they develop
and contribute or sell, regardless of what widget set is used (as long
as it is based on Xt).

The implementation is based upon my understanding of the ICCCM
conventions, for more details read the code.

I have heard from dozens of people using RDD who like it and feel that
it works a whole lot better than Motif 1.2 stuff.  Also, there seem to
be many who think that it is neat but are constrained to use Motif
anyway.

The latest RDD (and some other stuff) is available for ftp from
netcom.com, in /pub/rogerr.  A (possibly older) version is also
available on export.lcs.mit.edu in /contrib.
-- 
Pete Ware					ware@cis.ohio-state.edu
CIS Dept, Ohio State University			w/ (614) 292-7318
228 Bolz Hall, 2036 Neil Ave.			h/ (614) 538-0965
Columbus, OH 43210

Newsgroup: comp.windows.x
Document_id: 66398
From: stevevr@tt718.ecs.comm.mot.com (Steve Vranyes)
Subject: Re: TeleUse, UIM/X, and C++

In article <1993Apr1.213842.6086@ctp.com>, hubec@ctp.com (Hubert Chou) writes:
|> Does anyone have any good ideas on how to integrate C++ code elegantly
|> with TeleUse, UIM/X / Interface Architect generated code?
|> 
|> Source would be great, but any suggestions are welcome.
|> 
|> 
|> Hubie Chou
|> (617) 374-8454
|> hubec@ctp.com
|> 

I don't know a great deal about the support for C++ in UIM/X, but I can tell 
you that there is good support for it in TeleUSE.  In TeleUSE you can call any
C++ method from a "D" module.  What you can do then is to use the "D" language
for most of your interface code and then use C++ for you application code.

I should tell you that there is some real neat stuff coming out of TeleUSE soon
in regard to C++, but I can't give you many details.  You should talk to your local sales rep and get the lowdown on what they will be doing in the near furture.

If you want example code of how C++ integrates with TeleUSE you should look at
$TeleUSE/examples/Thermometer

-- 
+------------------------------------------------------------------------------+
|Steve Vranyes                                                                 |
|Voice    : (708) 576 - 0338                                                   |
|E-mail   : stevevr@ecs.comm.mot.com                                           |
|U.S.Post : Motorola Inc.                                                      |
|           1301 E. Algonquin Rd.                                              |
|           Schaumburg, IL 60196                                               |
+------------------------------------------------------------------------------+

Newsgroup: comp.windows.x
Document_id: 66399
From: jan@camhpp12.mdcbbs.com (Jan Vandenbrande)
Subject: xv -root with vue? (was Re: xloadimage -onroot ...)

On a related note, how can I use xv to display colored GIFs on my
root display with HP Vue?

All I can do with Vue is display xbm's through their
Backdrop Style Manager.

xv does not seem to be able to override whatever Vue
puts there.

Thanks, Jan

-- 
Jan Vandenbrande
jan@ug.eds.com			(New address)
jan@lipari.usc.edu		(school address, forwards)
UUCP: {uunet, uupsi}!ug!jan

Newsgroup: comp.windows.x
Document_id: 66400
From: zack@netcom.com (Zack T. Smith)
Subject: Strange exposure problem

Hi, 

I'm trying to write a Motif program on an Interactive Unix machine, and I'm
observing very strange behavior when my program attempts to expose a
DrawingArea. Namely, some Xlib operations work, and some do not. In
particular, the expose consist of two XFillRectangle calls followed by some
XDrawPoint calls, and for reasons unknown to me the point calls are failing
whenever a pulldown or popup up menu is (clicked on and) moved in the
rightward direction over the drawing area, but after the move, is still on
some part of the drawing area. This also happens less consistently when the
pulldown/popup is moved in the leftward direction.

Assuming that my code is not doing anything incredibly odd, is this a server
bug?

Thanks,

Zack T. Smith


Newsgroup: comp.windows.x
Document_id: 66401
From: ai900@yfn.ysu.edu (Joshua P. Weage)
Subject: X for PC


I have heard of two packages for the PC that support X-Win.
The first is Linux which is a free Unix Package.  The Second
is X-Appeal, which sounds pretty good.  It can be found at
 garbo.uwusa.fi in the ~ftp/pc/demo/ dir.  The files are

	xap13exe.zip
	xap10fon.zip
	drivers.zip

This should get you started.

Josh.
-- 
+  Joshua Weage : U.S. Snail - 277 Spring Rd, Baroda, MI  49101 +
+  E-Mail: cs890@freenet-in-a.cwru.edu |  ai900@yfn.ysu.edu     +
+   Fidonet:  Joshua Weage @ 1:2340/130                         +
+  All ideas are my own and no one elses!!                      +

Newsgroup: comp.windows.x
Document_id: 66402
From: andy@ice.stx.com (Andy Moore)
Subject: Q: How to avoid XOpenDisplay hang?

I'm writing 'xwall', a simple X version of 'wall', and I want it to
put a message up on each of a default list of displays.  The problem
is that XOpenDisplay hangs if one of the displays is currently
controlled by xdm (login screen).   I've been through the manuals
and FAQ and don't see a simple way to see if a display is 'openable'
ahead of time, or to get XOpenDisplay to fail after a short period
of time.  Any hints, suggestions, clues, or pointers to info?  Thanks...

-- 
Andy Moore (andy@ice.stx.com)
_______________________________________________________________________________
"You could say I've lost faith in the politicians/
 They all seem like game show hosts to me..."          - Sting

Newsgroup: comp.windows.x
Document_id: 66403
From: ewang@ucsee.Berkeley.EDU (Edward Wang)
Subject: Widget source code needed

I'm considering writing my own widgets, but I like to have some sample
widget source code to look over first.  Where could I find something
like this?  Are there any archives accessible by anonymous ftp that contain 
such information?

							Thanks,
							Edward




Newsgroup: comp.windows.x
Document_id: 66404
From: ahlenius@rtsg.mot.com (Mark Ahlenius)
Subject: converting color gif to X pixmap

I have looked through the FAQ sections and have not
seen a answer for this.

I have an X/Motif application that I have written.
I have a couple of gif files (or pict) that I have
scanned in with a color scanner.  Now I would like
to be able to convert the gif files into a format
that could be read into my application and displayed
on the background of its main window. Preferably with
pixmaps, or perhaps as an XImage.

I have found functions in the pbmplus program suite
to convert gif to xbm, but that is monochrome, and
I really do need color.

I have looked at xv, which reads in gif, and writes
out several formats, but have not found a way to write
out a file which can be read in as a pixmap.

Is there an easy way to do this?

email responses preferred.

thanks!

'mark

ahlenius@rtsg.mot.com

-- 
===============	regards   'mark  =============================================
Mark Ahlenius 		  voice:(708)-632-5346  email: ahlenius@marble.rtsg.mot.com
Motorola Inc.		  fax:  (708)-632-2413
Arlington, Hts. IL, USA	 60004

Newsgroup: comp.windows.x
Document_id: 66406
From: jck@catt.citri.edu.au (Justin Kibell)
Subject: Re: Honors Degrees: Do they mean anything?

What has this got to do with comp.windows.x?

     _,_
    (o o)
-oo0-\_/-0oo--------------------------------------------------------------
Justin Kibell - Systems Programmer - XMelba Project Team - C.A.T.T.
Collaborative Information Technology Research Institute - Melbourne - Vic.
Internet: jck@jaguar.catt.citri.edu.au   Phone: +61 03 282 2456  Australia


Newsgroup: comp.windows.x
Document_id: 66407
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Help building X11R5 with gcc

Can people please send me any hints on building X11R5 with gcc 2.3.3 ?  Is
there any pitfalls to be avoided ?  Any hints ?  I would appreciate hearing other
peoples' stories on this.

--tim


-- 
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
Document_id: 66408
From: chongo@toad.com (Landon C. Noll)
Subject: Reposting: 10th International Obfuscated C Code Contest rules (1 of 2)

We have received a number of requests for a reposting of the
International Obfuscated C Code Contest rules and guidelines.  Also
some people requested that these rules be posted to a wider set of
groups.  Sorry for the cross posting.

Some technical clarifications were made to the rules and guidelines
(See the diff marks at the right hand edge).  The rules and guidelines
for this year remain the same, so people who have already or are
in the process of submitting entries for the 1993 IOCCC need not worry 
about these changes.

chongo <Landon Curt Noll> /\cc/\        chongo@toad.com
Larry Bassel                            lab@sun.com

=-=

#!/bin/sh
# This is a shell archive (shar 3.32)
# made 04/05/1993 23:00 UTC by chongo@toad.com
# Source directory /tmp
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   8971 -r--r--r-- rules
#  25592 -r--r--r-- guidelines
#  34482 -r--r--r-- mkentry.c
#   6418 -r--r--r-- obfuscate.info
#
# ============= rules ==============
echo "x - extracting rules (Text)"
sed 's/^X//' << 'SHAR_EOF' > rules &&
X10th International Obfuscated C Code Contest Rules
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X		b.  To darken.  2. To confuse:  his emotions obfuscated his
X		judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X		Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X		obfuscatory adj.
X
X
XGOALS OF THE CONTEST:
X
X    * To write the most Obscure/Obfuscated C program under the rules below.
X    * To show the importance of programming style, in an ironic way.
X    * To stress C compilers with unusual code.
X    * To illustrate some of the subtleties of the C language.
X    * To provide a safe forum for poor C code.  :-)
X
X
XNOTE: Changes from the 1993 draft are noted by change bars.  --->	      |
X
X
XRULES:
X
X    To help us with the volume of entries, we ask that you follow these rules:
X
X    1) Your entry must be a complete program.
X
X    2) Your entry must be <= 3217 bytes in length.  The number of characters
X       excluding whitespace (tab, space, newline), and excluding any ; { or }
X       followed by either whitespace or end of file, must be <= 1536.
X
X    3) Your entry must be submitted in the following format:
X
X---entry---
Xrule:	1993
Xfix:	y or n   (n => this is a new entry, y => this replaces an older entry)
Xtitle:	title of entry  		    (see comments below)
Xentry:	Entry number from 0 to 7 inclusive  (your 1st entry should by 0)
Xdate:	Date/time of submission in UTC	    (see comments below)
Xhost:	Machine(s) and OS(s) under which your entry was tested
X	Use tab indented lines if needed
X---remark---
X    Place remarks about this entry in this section.  It would be helpful if
X    you were to indent your remarks with 4 spaces, though it is not a
X    requirement.  Also, if possible, try to avoid going beyond the 79th
X    column.  Blank lines are permitted.
X---author---
Xname:	your name
Xorg:	School/Company/Organization
Xaddr:	postal address
X	use tab indented lines to continue
X	don't forget to include the country
Xemail:  Email address from a well known site or registered domain.
X        If you give several forms, list them on separate tab indented lines.
Xanon:	y or n   (y => remain anonymous, n => ok to publish this info)
X---info---
XIf your program needs an info file, place a uuencoded copy of it in
Xthis section.  In the case of multiple info files, use multiple info
Xsections.  If your entry does not need a info file, skip this section.
X---build---
XPlace a uuencoded copy of the command(s) used to compile/build your program
Xin this section.  It must uudecode into a file named 'build'.  The resulting
Xfile must be 255 bytes or less.
X---program---
XPlace a uuencoded copy of your program in this section.  It must uudecode
Xinto a file named is 'prog.c'.  The resulting file must follow rule #2.
X---end---
X
X      Regarding the above format:
X
X	* The title must match the expression: [a-zA-Z0-9_=][a-zA-Z0-9_=+-]*
X	  and must be 1 to 12 characters in length.
X
X	  It is suggested, but not required, that the title should
X	  incorporate your username; in the case of multiple authors,
X	  consider using parts of the usernames of the authors.
X
X	* The date in the ---entry--- section should be given with respect
X	  to UTC.  The format of the date should be as returned by asctime()
X	  using the C locale.  (see guidelines for more info)
X
X	* You may correct/revise a previously submitted entry by sending
X	  it to the contest email address.  Be sure to set 'fix' in the
X	  ---entry--- section to 'n'.  The corrected entry must use the same
X	  title and entry number as submittion that is being corrected.  Be
X	  sure that you note the resubmittion in the ---remark--- as well.
X
X	* With the exception of the header, all text outside of the above
X	  format may be ignored by the judges.  If you need tell the judges
X	  something, put it in the ---remark--- section, or send a separate
X	  Email message to the judges.
X
X	* Information from the ---author--- section will be published unless
X	  'y' was given to the respective author's 'anon' line.
X
X	* To credit multiple authors, include an ---author--- section for
X	  each author.  Each should start with ---author--- line, and
X	  should be found between the ---entry--- and ---build--- sections.
X
X	* The entry's remarks should include:
X	    - what this program does
X	    - how to run the program (sample args or input)
X	    - special compile or execution instructions, if any
X	    - special filename requirements (see rule 4 and 5)
X	    - information about any ---data--- files
X	    - why you think the program is obfuscated
X	    - note if this entry is a re-submission of a previous entry.
X	    - any other remarks (humorous or otherwise)
X
X	* Do not rot13 your entry's remarks.  You may suggest that certain
X	  portions of your remarks be rot13ed if your entry wins an award.
X
X        * Info files should be used only to supplement your entry.  They
X	  should not be required to exist.
X
X	  If your entry does not need an info file, skip the ---info---
X	  section.  If your entry needs multiple info files, use multiple
X	  ---info--- sections, one per info file.  You should describe
X	  each info file in the ---remark--- section.
X
X    4) If your entry is selected as a winner, it will be modified as follows:
X
X	   'build' is incorporated into a makefile, and 'build' is removed
X	   'prog.c' is renamed to your entry's title, followed by an optional
X	       digit, followed by '.c'
X	   your entry is compiled into a file with the name of your entry's
X	       title, possibly followed by a digit
X
X       If your entry requires that a build file exist, state so in your
X       entry's remark section.  The makefile will be arranged to execute a
X       build shell script containing the 'build' information.  The name of
X       this build shell script will be your entry's title, possibly followed
X       by a digit, followed by '.sh'.
X
X       If needed, your entry's remarks should indicate how your entry must
X       be changed in order to deal with the new filenames.
X
X    5) The build file, the source and the resulting executable should be
X       treated as read-only files.  If your entry needs to modify these files,
X       it should make and modify a copy of the appropriate file.  If this
X       occurs, state so in your entry's remarks.
X
X    6) Entries that cannot be compiled by an ANSI C compiler will be rejected.
X       Use of common C (K&R + extensions) is permitted, as long as it does not
X       cause compile errors for ANSI C compilers.
X
X    7) The program must be of original work.  All programs must be in the
X       public domain.  All copyrighted programs will be rejected.
X
X    8) Entries must be received prior to 07-May-93 0:00 UTC.  (UTC is
X       essentially equivalent to Greenwich Mean Time)  Email your entries to:
X
X		...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate
X		obfuscate@toad.com
X
X       We request that your message use the subject 'ioccc entry'.
X
X       If possible, we request that you hold off on Emailing your entries
X       until 1-Mar-93 0:00 UTC.  Early entries will be accepted, however.
X       We will attempt to email a confirmation to the the first author for
X       all entries received after 1-Mar-93 0:00 UTC.
X
X    9) Each person may submit up to 8 entries per contest year.  Each entry
X       must be sent in a separate Email letter.
X
X   10) Entries requiring human interaction to be built are not allowed.
X       Compiling an entry produce a file (or files) which may be executed.
X
X   11) Programs that require special privileges (setuid, setgid, super-user,
X       special owner or group) are not allowed.
X
X
XFOR MORE INFORMATION:
X
X    The Judging will be done by Landon Noll and Larry Bassel.  Please send
X    questions or comments about the contest, to:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for  |
X	judges@toad.com					 submitting entries)  |
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain them, send Email to the address   |
X    above and use the subject 'send rules'.				      |
X
X    One may obtain winners of previous contests (1984 to date), via ftp from: |
X
X	host: ftp.uu.net	(192.48.96.9)				      |
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc						      |
X
X    As a last resort, previous winners may be obtained by sending Email       |
X    to the above address.  Please use the subject 'send YEAR winners',        |
X    where YEAR is a single 4 digit year, a year range, or 'all'.	      |
X
X
Xchongo <Landon Curt Noll> /\cc/\  	chongo@toad.com			      |
XLarry Bassel			  	lab@sun.com			      |
SHAR_EOF
chmod 0444 rules ||
echo "restore of rules failed"
set `wc -c rules`;Wc_c=$1
if test "$Wc_c" != "8971"; then
	echo original size 8971, current size $Wc_c
fi
# ============= guidelines ==============
echo "x - extracting guidelines (Text)"
sed 's/^X//' << 'SHAR_EOF' > guidelines &&
X10th International Obfuscated C Code Contest Guidelines, Hints and Comments
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
XABOUT THIS FILE:
X
X    This file is intended to help people who wish to submit entries to
X    the International Obfuscated C Code Contest (IOCCC for short).
X
X    This is not the IOCCC rules, though it does contain comments about
X    them.  The guidelines should be viewed as hints and suggestions.
X    Entries that violate the guidelines but remain within the rules are
X    allowed.  Even so, you are safer if you remain within the guidelines.
X
X    You should read the current IOCCC rules, prior to submitting entries.
X    The rules are typically sent out with these guidelines.
X
X    Changes from the 1993 draft are noted by change bars.  --->		      |
X
X
XWHAT IS NEW IN 1993:
X
X    The entry format is better (for us anyway).  The program mkentry.c
X    has been updated.  See ENTRY FORMAT.
X
X    We will reject entries that cannot be compiled using an ANSI C
X    compiler.  Certain old Obfuscation hacks that cause ANSI C compilers
X    fits are no longer permitted.  Some of the new issues deal with
X    non-integral array types, variable number of arguments, C preprocessor
X    directives and the exit() function.  See OUR LIKES AND DISLIKES.
X
X
XHINTS AND SUGGESTIONS:
X
X    You are encouraged to examine the winners of previous contests.  See
X    FOR MORE INFORMATION for details on how to get previous winners.
X
X    Keep in mind that rules change from year to year, so some winning entries
X    may not be valid entries this year.  What was unique and novel one year
X    might be 'old' the next year.
X
X    An entry is usually examined in a number of ways.  We typically apply
X    a number of tests to an entry:
X
X	* look at the original source
X	* convert ANSI tri-graphs to ASCII
X	* C pre-process the source ignoring '#include' lines
X	* C pre-process the source ignoring '#define' and '#include' lines
X	* run it through a C beautifier
X	* examine the algorithm
X	* lint it
X	* compile it
X	* execute it
X
X    You should consider how your entry looks in each of the above tests.
X    You should ask yourself if your entry remains obscure after it has been
X    'cleaned up' by the C pre-processor and a C beautifier.
X
X    Your entry need not do well under all, or in most tests.  In certain
X    cases, a test is not important.  Entries that compete for the
X    'strangest/most creative source layout' need not do as well as
X    others in terms of their algorithm.  On the other hand, given
X    two such entries, we are more inclined to pick the entry that
X    does something interesting when you run it.
X
X    We try to avoid limiting creativity in our rules.  As such, we leave
X    the contest open for creative rule interpretation.  As in real life
X    programming, interpreting a requirements document or a customer request
X    is important.  For this reason, we often award 'worst abuse of the
X    rules' to an entry that illustrates this point in an ironic way.
X
X    If you do plan to abuse the rules, we suggest that you let us know
X    in the remarks section.  Please note that an invitation to abuse
X    is not an invitation to break.  We are strict when it comes to the
X    3217 byte size limit.  Also, abusing the entry format tends to
X    annoy more than amuse.
X
X    We do realize that there are holes in the rules, and invite entries
X    to attempt to exploit them.  We will award 'worst abuse of the rules'
X    and then plug the hole next year.  Even so, we will attempt to use
X    the smallest plug needed, if not smaller.  :-)
X
X    Check out your program and be sure that it works.  We sometimes make
X    the effort to debug an entry that has a slight problem, particularly
X    in or near the final round.  On the other hand, we have seen some
X    of the best entries fall down because they didn't work.
X
X    We tend to look down on a prime number printer, that claims that
X    16 is a prime number.  If you do have a bug, you are better off
X    documenting it.  Noting "this entry sometimes prints the 4th power
X    of a prime by mistake" would save the above entry.  And sometimes,
X    a strange bug/feature can even help the entry!  Of course, a correctly
X    working entry is best.
X
X
XOUR LIKES AND DISLIKES:
X
X    Doing masses of #defines to obscure the source has become 'old'.  We
X    tend to 'see thru' masses of #defines due to our pre-processor tests
X    that we apply.  Simply abusing #defines or -Dfoo=bar won't go as far
X    as a program that is more well rounded in confusion.
X
X    Many ANSI C compilers dislike the following code, and so do we:
X
X	#define d define
X	#d foo		   <-- don't expect this to turn into #define foo
X
X	int i;
X	j;		   <-- don't use such implicit type declaration
X	int k;
X
X    We suggest that you compile your entry with an ANSI C compiler.  If you
X    must use non-ANSI C, such as K&R C, you must avoid areas that result in
X    compile/link errors for ANSI C compilers.
X
X    Unfortunately, some ANSI C compilers require array indexes to be of       |
X    integral type.  Thus, the following classical obfuscation hacks should    |
X    not be used in 1993.  This rule may be relaxed in future contests.	      |
X
X	int i;
X	char *c;
X	i[c];		   <--- use c[i] instead
X	(i+3)["string"];   <--- use "string"[i+3] instead
X
X    If your entry uses functions that have a variable number of
X    arguments, be careful. Systems implement va_list as a wide variety
X    of ways.  Because of this, a number of operations using va_list are
X    not portable and must not be used:
X
X	* assigning a non-va_list variable to/from a va_list variable
X	* casting a non-va_list variable into/from a va_list variable
X	* passing a va_list variable to a function expecting a non-va_list arg
X	* passing a non-va_list variable to a function expecting a va_list arg
X	* performing arithmetic on va_list variables
X	* using va_list as a structure or union
X
X    In particular, do not treat va_list variables as if they were a char **'s.
X
X    Avoid using <varargs.h>, use <stdarg.h> instead.
X
X    If you use C preprocessor directives (#define, #if, #ifdef, ...),
X    the leading '#' must be the first character on a line.  While some
X    C preprocessors allow whitespace the leading '#', many do not.
X
X    Because the exit() function returns void on some systems, entries
X    must not assume that it returns an int.
X
X    Small programs are best when they are short, obscure and concise.
X    While such programs are not as complex as other winners, they do
X    serve a useful purpose.  They are often the only program that people
X    attempt to completely understand.  For this reason, we look for
X    programs that are compact, and are instructional.
X
X    One line programs should be short one line programs, say around 80
X    bytes long.  Getting close to 160 bytes is a bit too long in our opinion.
X
X    We tend to dislike programs that:
X
X	* are very hardware specific
X	* are very OS or Un*x version specific
X	     (index/strchr differences are ok, but socket/streams specific
X	      code is likely not to be)
X	* dump core or have compiler warnings
X	     (it is ok only if you warn us in the 'remark' header item)
X	* won't compile under both BSD or SYS V Un*x
X	* abusing the build file to get around the size limit
X	* obfuscate by excessive use of ANSI tri-graphs
X	* are longer than they need to be
X	* are similar to previous winners
X	* are identical to previous losers  :-)
X
X    Unless you are cramped for space, or unless you are entering the
X    'best one liner' category, we suggest that you format your program
X    in a more creative way than simply forming excessively long lines.
X
X    The build file should not be used to try and get around the size
X    limit.  It is one thing to make use of a several -D's to help out,
X    but it is quite another to use 200+ bytes of -D's in order to
X    try and squeeze the source under the size limit.  You should feel
X    free to make use of the build file space, but you are better off
X    if you show some amount of restraint.
X
X    We allowed whitespace, and in certain cases ; { or } do not impact
X    your program size (up to a certain point), because we want to get
X    away from source that is simply a compact blob of characters.
X
X    Given two versions of the same program, one that is a compact blob
X    of code, and the other that is formatted more like a typical C
X    program, we tend to favor the second version.  Of course, a third
X    version of the same program that is formatted in an interesting
X    and/or obfuscated way, would definitely win over the first two!
X
X    We suggest that you avoid trying for the 'smallest self-replicating'
X    program.  We are amazed at the many different sizes that claim
X    to be the smallest.  There is nothing wrong with self-replicating
X    programs.  In fact, a number of winners have been self-replicating.
X    You might want to avoid the claim of 'smallest', lest we (or others)
X    know of a smaller one!
X
X    X client entries should be as portable as possible.  Entries that
X    adapt to a wide collection of environments will be favored.  Don't
X    depend on a particular type of display.  For example, don't depend
X    on color or a given size.  Don't require backing store.
X
X    X client entries should avoid using X related libraries and
X    software that is not in wide spread use.  We ask that such X client
X    entries restrict themselves to only the low level Xlib and the
X    Athena widget set (libX11.a, libXaw.a, libXmu.a and libXt.a).
X    Don't use M*tif, Xv*ew, or OpenL*ok toolkits, since not everyone
X    has them.  Avoid depending on a particular window manager.  Not
X    everyone has X11r5, and some people are stuck back in X11r4 (or
X    earlier), so try to target X11r5 without requiring X11r5.  Better
X    yet, try to make your entry run on all version 11 X Window Systems.
X
X    X client entries should not to depend on particular items on
X    .Xdefaults.  If you must do so, be sure to note the required lines
X    in the ---remark--- section.
X
X    We like programs that:
X
X	* are as concise and small as they need to be
X	* do something at least quasi-interesting
X	* pass lint without complaint (not a requirement, but it is nice)
X	* are portable
X	* are unique or novel in their obfuscation style
X	* MAKE USE OF A NUMBER OF DIFFERENT TYPES OF OBFUSCATION
X	* make us laugh and/or throw up  :-)
X
X    Some types of programs can't excel in some areas.  Of course, your
X    program doesn't have to excel in all areas, but doing well in several
X    areas really does help.
X
X    We freely admit that interesting, creative or humorous comments in
X    the ---remark--- section helps your chance of winning.  If you had to
X    read of many twisted entries, you too would enjoy a good laugh or two.
X    We think the readers of the contest winners do as well.
X
X    Be creative!
X
X
XENTRY FORMAT:
X
X    In order to help us process the many entries, we must request your
X    assistance by formatting your entries in a certain way.  This format,
X    in addition, allows us to quickly separate information about the
X    author from the program itself.  (see JUDGING PROCESS)
X
X    We have provided the program, mkentry, as an example of how to
X    format entries.  You should be aware of the following warning that
X    is found in mkentry.c:
X
X	This program attempts to implement the IOCCC rules.  Every
X	attempt has been made to make sure that this program produces
X	an entry that conforms to the contest rules.  In all cases,
X	where this program differs from the contest rules, the
X	contest rules will be used.  Be sure to check with the
X	contest rules before submitting an entry.
X
X    You are not required to use mkentry.  It is convenient, however,
X    as it attempts to uuencode the needed files, and attempt to check
X    the entry against the size rules.
X
X    If you have any suggestions, comments, fixes or complaints about
X    the mkentry.c program, please send Email to the judges.  (see below)
X
X    The following is a sample entry:
X
X---entry---
Xrule:	1993
Xfix:	n
Xtitle:	chonglab
Xentry:	0
Xdate:	Mon Mar  1 08:45:20 1993
Xhost:	Un*x v6, pdp11/45
X	2.9BSD, pdp11/70
X---remark---
X    This is a non-obfuscated obfuscated C program.
X
X    It is likely not to win a prize.  But what do you expect from
X    a short example!
X---author---
Xname:	Landon Curt Noll
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	chongo@toad.com
Xanon:	n
X---author---
Xname:	Larry Bassel
Xorg:	IOCCC Judging Group
Xaddr:	Toad Hall
X	PO Box 170608
X	San Francisco, California
X	94117-0608
X	USA
Xemail:	hoptoad!sun!lab
X	lab@sun.com
Xanon:	n
X---info---
Xbegin 444 info.file
XM0V]P>7)I9VAT("AC*2!,86YD;VX@0W5R="!.;VQL+"`Q.3DS+@I!;&P@4FEG
XM:'1S(%)E<V5R=F5D+B`@4&5R;6ES<VEO;B!F;W(@<&5R<V]N86PL(&5D=6-A
XM=&EO;B!O<B!N;VXM<')O9FET('5S92!I<PIG<F%N=&5D('!R;W9I9&5D('1H
XM:7,@=&AI<R!C;W!Y<FEG:'0@86YD(&YO=&EC92!A<F4@:6YC;'5D960@:6X@
XM:71S(&5N=&ER971Y"F%N9"!R96UA:6YS('5N86QT97)E9"X@($%L;"!O=&AE
XM<B!U<V5S(&UU<W0@<F5C96EV92!P<FEO<B!P97)M:7-S:6]N(&EN('=R:71I
XM;F<*9G)O;2!,86YD;VX@0W5R="!.;VQL+@H*5&AA="!T:&%T(&ES+"!I<RX*
XM5&AA="!T:&%T(&ES(&YO="P*("`@(&ES(&YO="!T:&%T('1H870@;F]T(&ES
XM+@I4:&%T(&ES+"!T:&%T('1H870@:7,@;F]T+"!I<R$*"@D)+2T@8VAO;F=O
XM(#$Y-S0*"DQA<W0@>65A<BP@;VYE('!E<G-O;B!T;VQD('5S('1H870@=&AE
XM>2!A8W1U86QL>2!D96-O9&5D('1H:7,@9FEL92X*22!W;VYD97(@:&]W(&UA
X9;GD@=VEL;"!D;R!I="!T:&ES('EE87(_"@``
X`
Xend
X---build---
Xbegin 444 build
X28V,@<')O9RYC("UO('!R;V<*
X`
Xend
X---program---
Xbegin 444 prog.c
XM;6%I;B@I"GL*(VEF(&1E9FEN960H05]214=)4U1%4D5$7U9/5$527TE.7U-5
XM3DY95D%,15]#04Q)1D]23DE!7U5302D*("`@('!R:6YT9B@B5F]T92!,86YD
XM;VX@3F]L;"!F;W(@4W5N;GEV86QE($-I='D@0V]U;F-I;"!S96%T(",Q+EQN
X:(BD["B-E;F1I9@H@("`@97AI="@P*3L*?0H`
X`
Xend
X---end---
X
X    Typically the build file should assume that the source is prog.c
X    and will compile into prog.  If an entry wins, we will rename
X    its source and binary to avoid filename collision.  By tradition,
X    we use the name of the entry's title, followed by an optional
X    digit in case of name conflicts.
X
X    If the above entry somehow won the 'least likely to win' award,
X    we would use chonglab.c and chonglab.
X
X    If your entry depends on, or requires that your build, source
X    and/or binary files be a particular name, please say so in the
X    ---remark--- section.  If this case applies, it would be be helpful
X    if you did one of the following:
X
X	* Tell us how to change the filename(s) in your entry.
X
X	* Have the build file make copies of the files.  For example:
X
X		cc prog.c -o special_name		need special binary
X
X	    or  rm -f special_src.c			need special source
X		cp prog.c special_src.c
X		cc special_src.c -o special_name
X
X	    or  rm -f special_build			need special build
X		tail +4 build > special_build
X		sh < special_build
X
X	* Assume that we will use the entry title.  Send us a version of
X	  your build/program files that uses the name convention.  You
X	  should uuencode these files in ---data--- sections.
X
X    If your entry needs to modify its source, info or binary files,
X    please say so in the ---remark--- section.  You should try to avoid
X    touching your original build, source and binary files.  You should
X    arrange to make copies of the files you intend to modify.  This
X    will allow people to re-generate your entry from scratch.
X
X    Remember that your entry may be built without a build file.  We
X    typically incorporate the build lines into a Makefile.  If the
X    build file must exist, say so in the ---remark--- section.
X
X    If your entry needs special info files, you should uuencode them
X    into ---info--- sections.  In the case of multiple info files,
X    use multiple ---info--- sections.  If no info files are needed,
X    then skip the ---info--- section.
X
X    Info files are intended to be input, or detailed information that
X    does not fit well into the ---remark--- section.  For example, an
X    entry that implements a compiler might want to provide some sample
X    programs for the user to compile.  An entry might want to include a
X    lengthy design document, that might not be appropriate for a
X    'hints' file.
X
X    Info files should be used only to supplement your entry.  For
X    example, info files may provide sample input or detailed
X    information about your entry.  Because they are supplemental,
X    the entry should not require them exist.
X
X    In some cases, your info files might be renamed to avoid name
X    conflicts.  If info files should not be renamed for some reason,
X    say so in the ---remark--- section.
X
X    Info files must uudecode into the current directory.  If they
X    absolutely must be renamed, or moved into a sub-directory, say
X    so in the ---remark--- section.
X
X    When submitting multiple entries, be sure that each entry has
X    a unique entry number from 0 to 7.  Your first entry should
X    have entry number 0.
X
X    With the exception of the header, all text outside of the entry
X    format may be ignored.  That is, don't place text outside of the
X    entry and expect the judges to see it.  (Our decoding tools aren't
X    AI progs!) If you need tell the the something, put it in the
X    ---remark--- section, or send a Email to the judges at:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    The date should be given with respect to UTC.  (Some systems refer
X    to this as GMT or GMT0)  The format of the date should be that as
X    returned by asctime() in the C locale.  An example of such a string is:
X
X	Thr Apr 01 00:47:00 1993
X
X    This format is similar to the output of the date(1) command.  The
X    string does not include the timezone name before the year.  On many
X    systems, one of the following command will produce a similar string:
X
X	date -u "+%a %h %d %T 19%y"
X	date -u | sed -e 's/... \(19[0-9][0-9]\)$/\1/'
X	sh -c 'TZ=UTC date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X	sh -c 'TZ=GMT0 date | sed -e "s/... \(19[0-9][0-9]\)$/\1/"'
X
X    You are allowed to update/fix/revise your entry.  To do so, set
X    the 'fix' line in the ---entry--- section to 'y' instead of 'n'.
X    Be sure that the resubmittion uses the same title and entry number
X    as well, as these are used to determine which entry is to be
X    replaced.
X
X
XJUDGING PROCESS:
X
X    Entries are judged by Larry Bassel and Landon Curt Noll.
X
X    Entries are unpacked into individual directories.  The Email message
X    is unpacked into individual files, each containing:
X
X	---entry--- section
X	all ---author--- sections
X	all ---info--- sections
X	---build--- section
X	---program--- section
X	any other text, including the Email message headers
X
X    Prior to judging, the 'any other text' file is scanned to be sure
X    it does not contain useful information (or in case the entry was
X    malformed and did not unpack correctly).  Information from the
X    ---author--- sections are not read until the judging process is
X    complete, and then only from entries that have won an award.
X
X    The above process helps keep us biased for/against any one particular
X    individual.  We are usually kept in the dark as much as you are
X    until the final awards are given.  We like the surprise of finding
X    out in the end, who won and where they were from.
X
X    We attempt to keep all entries anonymous, unless they win an award.
X    Because the main 'prize' of winning is being announced, we make all
X    attempts to send non-winners into oblivion.  We remove all non-winning
X    files, and shred all related paper.  By tradition, we do not even
X    reveal the number of entries that we received.  (for the curious,
X    we do indicate the volume of paper consumed when presenting the IOCCC
X    winners at talks)
X
X    After the Usenix announcement, we attempt to send Email to the
X    authors of the winning entries.  One reason we do this is to give
X    the authors a chance to comment on the way we have presented their
X    entry.  They are given the chance to correct mistakes, typos.  We
X    often accept their suggestions/comments about our remarks as well.
X    This is done prior to posting the winners to the wide world.
X
X    Judging consists of a number of elimination rounds.  During a round,
X    the collection of entries are divided into two roughly equal piles;
X    the pile that advances on to the next round, and the pile that does
X    not.  We also re-examine the entries that were eliminated in the
X    previous round.  Thus, an entry gets at least two readings.
X
X    A reading consists of a number of actions:
X
X	* reading the ---entry--- section
X	* reading the uudecoded ---build--- section
X	* reading the uudecoded ---program--- section
X	* reading the uudecoded ---info--- section(s), if any
X	* passing the source thru the C pre-processor
X	    shipping over any #include files
X	* performing a number of C beautify/cleanup edits on the source
X	* passing the beautified source thru the C pre-processor
X	    shipping over any #include files
X
X    In later rounds, other actions are performed:
X
X	* linting the source
X	* compiling/building the source
X	* running the program
X	* performing misc tests on the source and binary
X
X    Until we reduce the stack of entries down to about 25 entries, entries
X    are judged on an individual basis.  An entry is set aside because it
X    does not, in our opinion, meet the standard established by the round.
X    When the number of entries thins to about 25 entries, we begin to form
X    award categories.  Entries begin to compete with each other for awards.
X    An entry often will compete in several categories.
X
X    The actual award category list will vary depending on the types of entries
X    we receive.  A typical category list might be:
X
X	* best small one line program
X	* best small program
X	* strangest/most creative source layout
X	* most useful obfuscated program
X	* best game that is obfuscated
X	* most creatively obfuscated program
X	* most deceptive C code
X	* best X client (see OUR LIKES AND DISLIKES)
X	* best abuse of ANSI C
X	* worst abuse of the rules
X	* <anything else so strange that it deserves an award>
X
X    We do not limit ourselves to this list.  For example, a few entries are so
X    good/bad that they are declared winners at the start of the final round.
X    We will invent awards categories for them, if necessary.
X
X    In the final round process, we perform the difficult tasks of
X    reducing the remaining entries (typically about 25) down to 8 or 10
X    winners.  Often we are confident that the entries that make it into
X    the final round are definitely better than the ones that do not
X    make it.  The selection of the winners out of the final round, is
X    less clear cut.
X
X    Sometimes a final round entry good enough to win, but is beat out
X    by a similar, but slightly better entry.  For this reason, it is
X    sometimes worthwhile to re-enter an improved version of an entry
X    that failed to win in a previous year.  This assumes, of course,
X    that the entry is worth improving in the first place!
X
X    More often that not, we select a small entry (usually one line), a
X    strange/creative layout entry, and an entry that abuses the contest
X    rules in some way.
X
X    In the end, we traditionally pick one entry as 'best'.  Sometimes such
X    an entry simply far exceeds any of the other entry.  More often, the
X    'best' is picked because it does well in a number of categories.
X
X
XANNOUNCEMENT OF WINNERS:
X
X    The first announcement, occurs at a Summer Usenix conference.  By tradition,
X    this is done during the latter part of the UUNET/IOCCC BOF, just prior to
X    the Berkeley BSD, and BSDI BOF.
X
X    Winning entries will be posted in late June to the following groups:
X
X	    comp.lang.c		  comp.unix.wizards	alt.sources
X
X    In addition, pointers to these postings are posted to the following
X
X	    comp.sources.d	  alt.sources.d		misc.misc
X	    comp.sources.misc	  comp.windows.x
X
X    Winning entries will be deposited into the uunet archives.  See
X    below for details.
X
X    Often, winning entries are published in selected magazines.  Winners
X    have appeared in books ("The New Hackers Dictionary") and on T-Shirts.
X
X    Last, but not least, winners receive international fame and flames!  :-)
X
X
XFOR MORE INFORMATION:
X
X    You may contact the judges by sending Email to the following address:
X
X	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X	judges@toad.com					 submitting entries)
X
X    Questions and comments about the contest are welcome.
X
X    The rules and the guidelines may (and often do) change from year to	      |
X    year.  You should be sure you have the current rules and guidelines	      |
X    prior to submitting entries.  To obtain them, send Email to the address   |
X    above and use the subject 'send rules'.				      |
X
X    One may obtain winners of previous contests (1984 to date), via ftp from: |
X
X	host: ftp.uu.net	(192.48.96.9)				      |
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc						      |
X
X    As a last resort, previous winners may be obtained by sending Email	      |
X    to the above address.  Please use the subject 'send YEAR winners',	      |
X    where YEAR is a single 4 digit year, a year range, or 'all'.	      |
X
X
Xchongo <Landon Curt Noll> /\cc/\  	chongo@toad.com			      |
XLarry Bassel			  	lab@sun.com			      |
SHAR_EOF
chmod 0444 guidelines ||
echo "restore of guidelines failed"
set `wc -c guidelines`;Wc_c=$1
if test "$Wc_c" != "25592"; then
	echo original size 25592, current size $Wc_c
fi
echo "End of part 1, continue with part 2"
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
Document_id: 66409
From: chongo@toad.com (Landon C. Noll)
Subject: Reposting: 10th International Obfuscated C Code Contest rules (2 of 2)

We have received a number of requests for a reposting of the
International Obfuscated C Code Contest rules and guidelines.  Also
some people requested that these rules be posted to a wider set of
groups.  Sorry for the cross posting.

Some technical clarifications were made to the rules and guidelines.
(See the diff marks at the right hand edge)  The rules and guidelines
for this year remain the same, so people who have already or are
in the process of submitting entries for the 1993 IOCCC need not worry 
about these changes.

chongo <Landon Curt Noll> /\cc/\        chongo@toad.com
Larry Bassel                            lab@sun.com

=-=

#!/bin/sh
# This is part 02 of a multipart archive
# ============= mkentry.c ==============
echo "x - extracting mkentry.c (Text)"
sed 's/^X//' << 'SHAR_EOF' > mkentry.c &&
X/* @(#)mkentry.c	1.25 4/5/93 15:58:08 */
X/*
X * Copyright (c) Landon Curt Noll & Larry Bassel, 1993.
X * All Rights Reserved.  Permission for personal, education or non-profit use
X * is granted provided this this copyright and notice are included in its
X * entirety and remains unaltered.  All other uses must receive prior
X * permission in writing from both Landon Curt Noll and Larry Bassel.
X */
X/*
X * mkentry - make an International Obfuscated C Code Contest entry
X *
X * usage:
X *	mkentry -r remarks -b build -p prog.c -o ioccc.entry
X *
X *	-r remarks		file with remarks about the entry
X *	-b build		file containing how prog.c should be built
X *	-p prog.c		the obfuscated program source file
X *	-o ioccc.entry		ioccc entry output file
X *
X * compile by:
X *	cc mkentry.c -o mkentry
X */
X/*
X * Placed in the public domain by Landon Curt Noll, 1992.
X *
X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
X */
X/*
X * WARNING:
X *
X * This program attempts to implement the IOCCC rules.  Every attempt
X * has been made to make sure that this program produces an entry that
X * conforms to the contest rules.  In all cases, where this program
X * differs from the contest rules, the contest rules will be used.  Be
X * sure to check with the contest rules before submitting an entry.
X *
X * FOR MORE INFORMATION:
X *
X *   You may contact the judges by sending Email to the following address:
X *
X *	...!{apple,pyramid,sun,uunet}!hoptoad!judges	(not the address for
X *	judges@toad.com					 submitting entries)
X *
X *   Questions and comments about the contest are welcome.
X *
X *  The rules and the guidelines may (and often do) change from year to
X *  year.  You should be sure you have the current rules and guidelines
X *  prior to submitting entries.  To obtain them, send Email to the address
X *  above and use the subject 'send rules'.
X *
X *  One may obtain winners of previous contests (1984 to date), via ftp from:
X *
X *	host: ftp.uu.net	(192.48.96.9)
X *	user: anonymous
X *	pass: yourname@yourhost
X *	dir:  ~/pub/ioccc
X *
X *  As a last resort, previous winners may be obtained by sending Email
X *  to the above address.  Please use the subject 'send YEAR winners',
X *  where YEAR is a single 4 digit year, a year range, or 'all'.
X *
X * Because contest rules change from year to year, one should only use this
X * program for the year that it was intended.  Be sure that the RULE_YEAR
X * define below matches this current year.
X */
X
X#include <stdio.h>
X#include <ctype.h>
X#include <time.h>
X#include <sys/types.h>
X#include <sys/stat.h>
X
X/* logic */
X#ifndef TRUE
X# define TRUE 1
X#endif /* TRUE */
X#ifndef FALSE
X# define FALSE 0
X#endif /* FALSE */
X#define EOF_OK TRUE
X#define EOF_NOT_OK FALSE
X
X/* global limits */
X#define RULE_YEAR 1993		/* NOTE: should match the current year */
X#define START_DATE "1Mar92 0:00 UTC"	/* first confirmation received */
X#define MAX_COL 79		/* max column a line should hit */
X#define MAX_BUILD_SIZE 256	/* max how to build size */
X#define MAX_PROGRAM_SIZE 3217	/* max program source size */
X#define MAX_PROGRAM_SIZE2 1536	/* max program source size not counting
X				   whitespace and {}; not followed by
X				   whitespace or EOF */
X#define MAX_TITLE_LEN 12	/* max chars in the title */
X#define MAX_ENTRY_LEN 1		/* max length in the entry input line */
X#define MAX_ENTRY 8		/* max number of entries per person per year */
X#define MAX_FILE_LEN 1024	/* max filename length for a info file */
X
X/* where to send entries */
X#define ENTRY_ADDR1 "...!{apple,pyramid,sun,uunet}!hoptoad!obfuscate"
X#define ENTRY_ADDR2 "obfuscate@toad.com"
X
X/* uuencode process - assumes ASCII */
X#define UUENCODE(c) (encode_str[(int)(c)&0xff])
X#define UUENCODE_LEN 45		/* max uuencode chunk size */
X#define UUINFO_MODE 0444	/* mode of an info file's uuencode file */
X#define UUBUILD_MODE 0444	/* mode of the build file's uuencode file */
X#define UUBUILD_NAME "build"	/* name for the build file's uuencode file */
X#define UUPROG_MODE 0444	/* mode of the program's uuencode file */
X#define UUPROG_NAME "prog.c"	/* name for the program's uuencode file */
X
X/* encode_str[(char)val] is the uuencoded character of val */
Xchar encode_str[256+1] = "`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
X
X/* global declarations */
Xchar *program;			/* our name */
Xlong start_time;		/* the startup time */
X
X/* forward declarations */
Xvoid parse_args();
Xvoid usage();
XFILE *open_remark();
XFILE *open_build();
XFILE *open_program();
XFILE *open_output();
Xvoid output_entry();
Xvoid output_remark();
Xvoid output_author();
Xvoid output_info();
Xvoid output_build();
Xvoid output_program();
Xvoid output_end();
Xint get_line();
Xvoid output_till_dot();
Xint col_len();
Xvoid check_io();
Xvoid uuencode();
X
Xmain(argc, argv)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X{
X    FILE *remark=NULL;	/* open remarks stream */
X    FILE *build=NULL;	/* open build file stream */
X    FILE *prog=NULL;	/* open program stream */
X    FILE *output=NULL;	/* open output stream */
X    char *rname=NULL;	/* file with remarks about the entry */
X    char *bname=NULL;	/* file containing how prog.c should be built */
X    char *pname=NULL;	/* the obfuscated program source file */
X    char *oname=NULL;	/* ioccc entry output file */
X    struct tm *tm;	/* startup time structure */
X
X    /*
X     * check on the year
X     */
X    start_time = time((long *)0);
X    tm = gmtime(&start_time);
X    if (tm->tm_year != RULE_YEAR-1900) {
X	fprintf(stderr,
X	"%s: WARNING: this program applies to %d, which may differ from %d\n\n",
X	    argv[0], RULE_YEAR, 1900+tm->tm_year);
X    }
X
X    /*
X     * parse the command line args
X     */
X    parse_args(argc, argv, &rname, &bname, &pname, &oname);
X
X    /*
X     * open/check the input and output files
X     *
X     * We open and truncate the output file first, in case it is the same
X     * as one of the input files.
X     */
X    output = open_output(oname);
X    remark = open_remark(rname);
X    build = open_build(bname);
X    prog = open_program(pname);
X    if (output==NULL || remark==NULL || build==NULL || prog==NULL) {
X	exit(1);
X    }
X
X    /*
X     * output each section
X     */
X    output_entry(output, oname);
X    output_remark(output, oname, remark, rname);
X    output_author(output, oname);
X    output_info(output, oname);
X    output_build(output, oname, build, bname);
X    output_program(output, oname, prog, pname);
X    output_end(output, oname);
X
X    /*
X     * flush the output
X     */
X    if (fflush(output) == EOF) {
X	fprintf(stderr, "%s: flush error in %s: ", program, oname);
X	perror("");
X	exit(2);
X    }
X
X    /*
X     * final words
X     */
X    printf("\nYour entry can be found in %s.  You should check this file\n",
X	oname);
X    printf("correct any problems and verify that the uudecode utility will\n");
X    printf("correctly decode your build file and program.\n\n");
X    printf("This program has been provided as a guide for submitters.  In\n");
X    printf("cases where it conflicts with the rules, the rules shall apply.\n");
X    printf("It is your responsibility to ensure that your entry conforms to\n");
X    printf("the current rules.\n\n");
X    printf("Email your entries to:\n");
X    printf("\t%s\n", ENTRY_ADDR1);
X    printf("\t%s\n\n", ENTRY_ADDR2);
X    printf("Please use the following subject when you Email your entry:\n");
X    printf("\tioccc entry\n\n");
X    /* all done */
X    exit(0);
X}
X
X/*
X * parse_args - parse the command line args
X *
X * Given the command line args, this function parses them and sets the
X * required name flags.  This function will return only if the command
X * line syntax is correct.
X */
Xvoid
Xparse_args(argc, argv, rname, bname, pname, oname)
X    int argc;		/* arg count */
X    char **argv;	/* the args */
X    char **rname;	/* file with remarks about the entry */
X    char **bname;	/* file containing how prog.c should be built */
X    char **pname;	/* the obfuscated program source file */
X    char **oname;	/* ioccc entry output file */
X{
X    char *optarg;	/* -flag option operand */
X    int flagname;	/* the name of the -flag */
X    int i;
X
X    /*
X     * Not everyone has getopt, so we must parse args by hand.
X     */
X    program = argv[0];
X    for (i=1; i < argc; ++i) {
X
X	/* determine the flagname */
X	if (argv[i][0] != '-') {
X	    usage(1);
X	    /*NOTREACHED*/
X	}
X	flagname = (int)argv[i][1];
X
X	/* determine the flag's operand */
X	if (flagname != '\0' && argv[i][2] != '\0') {
X	    optarg = &argv[i][2];
X	} else {
X	    if (i+1 >= argc) {
X		usage(2);
X		/*NOTREACHED*/
X	    } else {
X		optarg = argv[++i];
X	    }
X	}
X
X	/* save the flag's operand in the correct global variable */
X	switch (flagname) {
X	case 'r':
X	    *rname = optarg;
X	    break;
X	case 'b':
X	    *bname = optarg;
X	    break;
X	case 'p':
X	    *pname = optarg;
X	    break;
X	case 'o':
X	    *oname = optarg;
X	    break;
X	default:
X	    usage(3);
X	    /*NOTREACHED*/
X	}
X    }
X
X    /*
X     * verify that we have all of the required flags
X     */
X    if (*rname == NULL || *bname == NULL || *pname == NULL || *oname == NULL) {
X	usage(4);
X	/*NOTREACHED*/
X    }
X    return;
X}
X
X/*
X * usage - print a usage message and exit
X *
X * This function does not return.
X */
Xvoid
Xusage(exitval)
X    int exitval;		/* exit with this value */
X{
X    fprintf(stderr,
X	"usage: %s -r remarks -b build -p prog.c -o ioccc.entry\n\n", program);
X    fprintf(stderr, "\t-r remarks\tfile with remarks about the entry\n");
X    fprintf(stderr, "\t-b build\tfile containing how prog.c should be built\n");
X    fprintf(stderr, "\t-p prog.c\tthe obfuscated program source file\n");
X    fprintf(stderr, "\t-o ioccc.entry\tioccc entry output file\n");
X    exit(exitval);
X}
X
X/*
X * open_remark - open/check the remark file
X *
X * The remark file should be indented by 4 spaces, and should not extend
X * beyond column MAX_COL.  These are not requirements, so we only warn.
X *
X * This function returns NULL on I/O or format error.
X */
XFILE *
Xopen_remark(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    char buf[BUFSIZ+1];		/* input buffer */
X    int toolong=0;		/* number of lines that are too long */
X    int non_indent=0;		/* number of lines not indented by 4 spaces */
X
X    /*
X     * open the remark input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open remark file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * look at each line
X     */
X    while (fgets(buf, BUFSIZ, stream) != NULL) {
X
X	/* count lines that do not start with 4 spaces */
X	if (buf[0] != '\n' && strncmp(buf, "    ", 4) != 0) {
X	    ++non_indent;
X	}
X
X	/* count long lines */
X	if (col_len(buf) > MAX_COL) {
X	    /* found a line that is too long */
X	    ++toolong;
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* note long lines if needed */
X    if (toolong > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s extend beyond the 80th column\n",
X	    program, toolong, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* note non-indented lines, if needed */
X    if (non_indent > 0) {
X	fprintf(stderr,
X	    "%s: WARNING: %d line(s) from %s are not indented by 4 spaces\n",
X	    program, non_indent, filename);
X	fprintf(stderr,
X	    "%s:          This is ok, but it would be nice to avoid\n\n",
X	    program);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_build - open/check the build file
X *
X * The how to build file must not be longer than MAX_BUILD_SIZE bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_build(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X
X    /*
X     * open the how to build input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat how to build file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_BUILD_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the how to build file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_BUILD_SIZE);
X	return(NULL);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * open_program - open/check the program source file
X *
X * The program source file must be <= 3217 bytes.  The number of
X * non-whitespace and }{; chars not followed by whitespace must
X * be <= 1536 bytes.
X *
X * This function returns NULL on I/O or size error.
X */
XFILE *
Xopen_program(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X    struct stat statbuf;	/* the status of the open file */
X    int count;			/* special count size */
X    int c;			/* the character read */
X
X    /*
X     * open the program source input file
X     */
X    stream = fopen(filename, "r");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open program source file: %s: ",
X	    program, filename);
X	perror("");
X	exit(7);
X    }
X
X    /*
X     * determine the size of the file
X     */
X    if (fstat(fileno(stream), &statbuf) < 0) {
X	fprintf(stderr, "%s: cannot stat program source file: %s: ",
X	    program, filename);
X	perror("");
X	return(NULL);
X    }
X    if (statbuf.st_size > MAX_PROGRAM_SIZE) {
X	fprintf(stderr,
X	    "%s: FATAL: the program source file: %s, is %d bytes long\n",
X	    program, filename, statbuf.st_size);
X	fprintf(stderr,
X	    "%s:        it may not be longer than %d bytes\n",
X	    program, MAX_PROGRAM_SIZE);
X	return(NULL);
X    }
X
X    /*
X     * count the non-whitespace, non {}; followed by whitespace chars
X     */
X    count = 0;
X    c = 0;
X    while ((c=fgetc(stream)) != EOF) {
X	/* look at non-whitespace */
X	if (!isascii(c) || !isspace(c)) {
X	    switch (c) {
X	    case '{':		/* count if not followed by EOF or whitespace */
X	    case '}':
X	    case ';':
X		/* peek at next char */
X		c = fgetc(stream);
X		if (c != EOF && isascii(c) && !isspace(c)) {
X		    /* not followed by whitespace or EOF, count it */
X		    ungetc(c, stream);
X		    ++count;
X		}
X		break;
X	    default:
X		++count;
X		break;
X	    }
X	}
X    }
X
X    /* watch for I/O errors */
X    check_io(stream, filename, EOF_OK);
X
X    /* look at the special size */
X    if (count > MAX_PROGRAM_SIZE2) {
X	fprintf(stderr,
X	    "%s: FATAL: the number of bytes that are non-whitespace, and\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        that are not '{', '}', ';' followed by whitespace\n",
X	    program);
X	fprintf(stderr,
X	    "%s:        or EOF must be <= %d bytes\n",
X	    program, MAX_PROGRAM_SIZE2);
X	fprintf(stderr,
X	    "%s:        in %s, %d bytes were found\n",
X	    program, filename, count);
X	return(NULL);
X    }
X
X    /* return the open file */
X    rewind(stream);
X    return(stream);
X}
X
X/*
X * open_output - open/check the entry output file
X *
X * This function returns NULL on open error.
X */
XFILE *
Xopen_output(filename)
X    char *filename;
X{
X    FILE *stream;		/* the opened file stream */
X
X    /*
X     * open the ioccc entry output file
X     */
X    stream = fopen(filename, "w");
X    if (stream == NULL) {
X	fprintf(stderr, "%s: cannot open ioccc entry file for output: %s: ",
X	    program, filename);
X	perror("");
X	exit(8);
X    }
X
X    /* return the open file */
X    return(stream);
X}
X
X/*
X * output_entry - output the ---entry--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_entry(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char title[MAX_TITLE_LEN+1+1];	/* the entry's title */
X    char buf[MAX_COL+1+1];		/* I/O buffer */
X    int entry=0;			/* entry number */
X    int ret;				/* fields processed by fscanf */
X    int ok_line=0;			/* 0 => the line is not ok */
X    char skip;				/* input to skip */
X    FILE *date_pipe;			/* pipe to a date command */
X    time_t epoch_sec;			/* seconds since the epoch */
X    char *p;
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---entry---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the rule year
X     */
X    fprintf(output, "rule:\t%d\n", RULE_YEAR);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /* determine if this is a fix */
X    printf("Is this a fix, update or resubmittion to a ");
X    printf("previous entry (enter y or n)? ");
X    while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    if (buf[0] == 'y') {
X	fprintf(output, "fix:\ty\n");
X	check_io(output, oname, EOF_NOT_OK);
X	printf("\nBe sure that the title and entry number that you give\n");
X	printf("are the same of as the entry you are replacing\n");
X    } else {
X	fprintf(output, "fix:\tn\n");
X	check_io(output, oname, EOF_NOT_OK);
X    }
X
X    /*
X     * write the title
X     */
X    printf("\nYour title must match expression be a [a-zA-Z0-9_=] character\n");
X    printf("followed by 0 to %d more [a-zA-Z0-9_=+-] characters.\n\n",
X	MAX_TITLE_LEN-1);
X    printf("It is suggested, but not required, that the title should\n");
X    printf("incorporate your username; in the\n");
X    printf("case of multiple authors, consider using parts of the usernames\n");
X    printf("of the authors.\n\n");
X    printf("enter your title: ");
X    do {
X	/* prompt and read a line */
X	if ((ok_line = get_line(title, MAX_TITLE_LEN+1, MAX_COL-9)) <= 0) {
X	    printf("\ntitle is too long, please re-enter: ");
X	    continue;
X	}
X
X	/* verify the pattern, not everyone has regexp, so do it by hand */
X	if (!isascii((int)title[0]) ||
X	    !(isalnum((int)title[0]) || title[0] == '_' || title[0] == '=')) {
X	    printf("\ninvalid first character in the title\n\n");
X	    printf("enter your title: ");
X	    ok_line = 0;
X	} else {
X	    for (p=(&title[1]); *p != '\0' && *p != '\n'; ++p) {
X		if (!isascii((int)*p) ||
X		    !(isalnum((int)*p) ||
X		      *p == '_' || *p == '=' || *p == '+' || *p == '-')) {
X		    printf("\ninvalid character in the title\n\n");
X		    printf("enter your title: ");
X		    ok_line = 0;
X		}
X	    }
X	}
X    } while (ok_line <= 0);
X    fprintf(output, "title:\t%s", title);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the entry number
X     */
X    printf("\nEach person may submit up to %d entries per year.\n\n",
X	MAX_ENTRY);
X    printf("enter an entry number from 0 to %d inclusive: ", MAX_ENTRY-1);
X    do {
X	/* get a valid input line */
X	fflush(stdout);
X	ret = fscanf(stdin, "%d[\n]", &entry);
X	check_io(stdin, "stdin", EOF_NOT_OK);
X	/* skip over input until newline is found */
X	do {
X	    skip = fgetc(stdin);
X	    check_io(stdin, "stdin", EOF_NOT_OK);
X	    if (skip != '\n') {
X		/* bad text in input, invalidate entry number */
X		entry = -1;
X	    }
X	} while (skip != '\n');
X
X	/* check if we have a number, and if it is in range */
X	if (ret != 1 || entry < 0 || entry > MAX_ENTRY-1) {
X	    printf(
X	      "\nThe entry number must be between 0 and %d inclusive\n\n",
X		MAX_ENTRY-1);
X	    printf("enter the entry number: ");
X	}
X    } while (ret != 1 || entry < 0 || entry > MAX_ENTRY-1);
X    fprintf(output, "entry:\t%d\n", entry);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the submission date
X     */
X    /* returns a newline */
X    epoch_sec = time(NULL);
X    fprintf(output, "date:\t%s", asctime(gmtime(&epoch_sec)));
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * write the OS/machine host information
X     */
X    printf(
X      "\nEnter the machine(s) and OS(s) under which your entry was tested.\n");
X    output_till_dot(output, oname, "host:");
X}
X
X/*
X * output_remark - output the ---remark--- section
X *
X * Read the needed information form stdin, and write the entry section.
X */
Xvoid
Xoutput_remark(output, oname, remark, rname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *remark;		/* stream to the file containing remark text */
X    char *rname;		/* name of the remark file */
X{
X    char buf[BUFSIZ+1];		/* input/output buffer */
X
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---remark---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * copy the remark file to the section
X     */
X    while (fgets(buf, BUFSIZ, remark) != NULL) {
X	fputs(buf, output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    check_io(remark, rname, EOF_OK);
X
X    /* be sure that the remark section ends with a newline */
X    if (buf[strlen(buf)-1] != '\n') {
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X}
X
X/*
X * output_author - output the ---author--- section
X *
X * Read the needed information from stdin, and write the author section.
X * If multiple authors exist, multiple author sections will be written.
X */
Xvoid
Xoutput_author(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char buf[MAX_COL+1+1];	/* I/O buffer */
X    int more_auths;		/* TRUE => more authors to note */
X    int auth_cnt=0;		/* number of authors processed */
X
X    /*
X     * prompt the user for the author section
X     */
X    printf("\nEnter information about each author.  If your entry is after\n");
X    printf("%s and before the contest deadline, the judges\n", START_DATE);
X    printf("will attempt to Email back a confirmation to the first author\n");
X
X    /*
X     * place author information for each author in an individual section
X     */
X    do {
X
X	/* write the start of the section */
X	fprintf(output, "---author---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the author */
X	printf("\nAuthor #%d name: ", ++auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nname too long, please re-enter: ");
X	}
X	fprintf(output, "name:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the organization */
X	printf("\nEnter the School/Company/Organization of author #%d\n",
X	    auth_cnt);
X	printf("\nAuthor #%d org: ", auth_cnt);
X	while (get_line(buf, MAX_COL+1, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter: ");
X	}
X	fprintf(output, "org:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* write the address */
X	printf(
X	    "\nEnter the postal address for author #%d.  Be sure to include\n",
X	    auth_cnt);
X	printf("your country and do not include your name.\n");
X	output_till_dot(output, oname, "addr:");
X
X	/* write the Email address */
X	printf(
X	    "\nEnter the Email address for author #%d.  Use an address from\n",
X	    auth_cnt);
X	printf(
X	    "a registered domain or well known site.  If you give several\n");
X	printf("forms, list them one per line.\n");
X	output_till_dot(output, oname, "email:");
X
X	/* write the anonymous status */
X	printf("\nShould author #%d remain anonymous (enter y or n)? ",
X	    auth_cnt);
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	fprintf(output, "anon:\t%s", buf);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* determine if there is another author */
X	printf("\nIs there another author (enter y or n)? ");
X	while (get_line(buf, 1+1, 0) <= 0 || !(buf[0]=='y' || buf[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X	if (buf[0] == 'y') {
X	    more_auths = TRUE;
X	} else {
X	    more_auths = FALSE;
X	}
X    } while (more_auths == TRUE);
X    return;
X}
X
X/*
X * output_info - output the ---info--- section(s)
X *
X * Read the needed information from stdin, and write the info section.
X * If multiple info files exist, multiple info sections will be written.
X */
Xvoid
Xoutput_info(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    char infoname[MAX_FILE_LEN+1];	/* filename buffer */
X    char yorn[1+1];		/* y or n answer */
X    char *uuname;		/* name to uuencode as */
X    FILE *infile;		/* info file stream */
X
X    /*
X     * prompt the user for info information
X     */
X    printf("\nInfo files should be used only to supplement your entry.\n");
X    printf("For example, info files may provide sample input or detailed\n");
X    printf("information about your entry.  Because they are supplemental,\n");
X    printf("the entry should not require them to exist.\n\n");
X
X    /*
X     * while there is another info file to save, uuencode it
X     */
X    printf("Do you have a info file to include (enter y or n)? ");
X    while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	printf("\nplease answer y or n: ");
X    }
X    while (yorn[0] == 'y') {
X
X	/* read the filename */
X	printf("\nEnter the info filename: ");
X	while (get_line(infoname, MAX_FILE_LEN+1, 0) <= 0) {
X	    printf("\nInfo filename too long, please re-enter: ");
X	}
X
X	/* compute the basename of the info filename */
X	/* remove the trailing newline */
X	uuname = &infoname[strlen(infoname)-1];
X	*uuname = '\0';
X	/* avoid rindex/shrrchr compat issues, do it by hand */
X	for (--uuname; uuname > infoname; --uuname) {
X	    if (*uuname == '/') {
X		++uuname;
X		break;
X	    }
X	}
X
X	/* attempt to open the info file */
X	infile = fopen(infoname, "r");
X	if (infile == NULL) {
X	    fprintf(stderr, "\n%s: cannot open info file: %s: ",
X		program, infoname);
X	    perror("");
X	    continue;
X	}
X
X	/*
X	 * write the start of the section
X	 */
X	fprintf(output, "---info---\n");
X	check_io(output, oname, EOF_NOT_OK);
X
X	/* uuencode the info file */
X	uuencode(output, oname, infile, infoname, UUINFO_MODE, uuname);
X
X	printf("\nDo you have another info file to include (enter y or n)? ");
X	while (get_line(yorn, 1+1, 0) <= 0 || !(yorn[0]=='y' || yorn[0]=='n')) {
X	    printf("\nplease answer y or n: ");
X	}
X    };
X    return;
X}
X
X/*
X * output_build - output the ---build--- section
X *
X * Read the needed information from stdin, and write the build section.
X */
Xvoid
Xoutput_build(output, oname, build, bname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *build;		/* open build file stream */
X    char *bname;		/* name of the build file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---build---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, build, bname, UUBUILD_MODE, UUBUILD_NAME);
X    return;
X}
X
X/*
X * output_program - output the ---program--- section
X *
X * Read the needed information form stdin, and write the program section.
X */
Xvoid
Xoutput_program(output, oname, prog, pname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    FILE *prog;			/* open program stream */
X    char *pname;		/* name of program file */
X{
X    /*
X     * write the start of the section
X     */
X    fprintf(output, "---program---\n");
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * uuencode the program file
X     */
X    uuencode(output, oname, prog, pname, UUPROG_MODE, UUPROG_NAME);
X    return;
X}
X
X/*
X * output_end - output the ---end--- section
X *
X * Read the needed information form stdin, and write the 'end section'.
X */
Xvoid
Xoutput_end(output, oname)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X{
X    /*
X     * write the final section terminator
X     */
X    fprintf(output, "---end---\n");
X    check_io(output, oname, EOF_NOT_OK);
X    return;
X}
X
X/*
X * get_line - get an answer from stdin
X *
X * This function will flush stdout, in case a prompt is pending, and
X * read in the answer.
X *
X * This function returns 0 if the line is too long, of the length of the
X * line (including the newline) of the line was ok.  This function does
X * not return if ERROR or EOF.
X */
Xint
Xget_line(buf, siz, maxcol)
X    char *buf;			/* input buffer */
X    int siz;			/* length of input, including the newline */
X    int maxcol;			/* max col allowed, 0 => disable check */
X{
X    int length;			/* the length of the input line */
X
X    /* flush terminal output */
X    fflush(stdout);
X
X    /* read the line */
X    if (fgets(buf, siz+1, stdin) == NULL) {
X	/* report the problem */
X	check_io(stdin, "stdin", EOF_NOT_OK);
X    }
X
X    /* look for the newline */
X    length = strlen(buf);
X    if (buf[length-1] != '\n') {
X	int eatchar;		/* the char being eaten */
X
X	/* no newline found, line must be too long, eat the rest of the line */
X	do {
X	    eatchar = fgetc(stdin);
X	} while (eatchar != EOF && eatchar != '\n');
X	check_io(stdin, "stdin", EOF_NOT_OK);
X
X	/* report the situation */
X	return 0;
X    }
X
X    /* watch for long lines, if needed */
X    if (maxcol > 0 && (length > maxcol || col_len(buf) > maxcol)) {
X	/* report the situation */
X	return 0;
X    }
X
X    /* return length */
X    return length;
X}
X
X/*
X * output_till_dot - output a set of lines until '.' by itself is read
X *
X * This routine will read a set of lines until (but not including)
X * a single line with '.' is read.  The format of the output is:
X *
X *	leader:\tfirst line
X *	\tnext line
X *	\tnext line
X *	   ...
X *
X * This routine will not return if I/O error or EOF.
X */
Xvoid
Xoutput_till_dot(output, oname, leader)
X    FILE *output;		/* entry's output file stream */
X    char *oname;		/* name of the output file */
X    char *leader;		/* the lead text for the first line */
X{
X    char buf[BUFSIZ+1];		/* input buffer */
X    int count;			/* lines read */
X    int done=FALSE;		/* TRUE => finished reading input */
X
X    /* instruct the user on how to input */
X    printf("\nTo end input, enter a line with a single period.\n");
X
X    /* read lines until '.' or EOF */
X    count = 0;
X    while (!done) {
X	/* issue the prompt */
X	printf("%s\t", (count>0) ? "" : leader);
X	fflush(stdout);
X
X	/* get the line */
X	if (get_line(buf, BUFSIZ, MAX_COL-9) <= 0) {
X	    printf("\nline too long, please re-enter:\n\t");
X	    continue;
X	}
X
X	/* note if '.' was read */
X	if (strcmp(buf, ".\n") == 0) {
X	    done = TRUE;
X	}
X
X	/* write line if we read something */
X	if (!done) {
X	    fprintf(output, "%s\t%s", (count++>0) ? "" : leader, buf);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X    }
X
X    /* if no lines read, at least output something */
X    if (count <= 0) {
X	fprintf(output, "%s\t.\n", leader);
X	check_io(output, oname, EOF_NOT_OK);
X    }
X    return;
X}
X
X/*
X * col_len - determine the highest that a string would reach
X *
X * Given a string, this routine returns that a string would reach
X * if the string were printed at column 1.  Tab stops are assumed
X * to start at 9, 17, 25, 33, ...
X */
Xint
Xcol_len(string)
X    char *string;		/* the string to examine */
X{
X    int col;	/* current column */
X    char *p;	/* current char */
X
X    /* scan the string */
X    for (col=0, p=string; *p != '\0' && *p != '\n'; ++p) {
X	/* note the column shift */
X	col = (*p=='\t') ? 1+((col+8)/8*8) : col+1;
X    }
X    if (*p == '\n') {
X	--col;
X    }
X
X    /* return the highest column */
X    return col;
X}
X
X/*
X * check_io - check for EOF or I/O error on a stream
X *
X * Does not return if EOF or I/O error.
X */
Xvoid
Xcheck_io(stream, name, eof_ok)
X    FILE *stream;		/* the stream to check */
X    char *name;			/* the name of this stream */
X    int eof_ok;			/* EOF_OK or EOF_NOT_OK */
X{
X    /* test for I/O error */
X    if (ferror(stream)) {
X	fprintf(stderr, "%s: error on %s: ", program, name);
X	perror("");
X	exit(1);
X
X    /* test for EOF */
X    } else if (eof_ok == EOF_NOT_OK && feof(stream)) {
X	fprintf(stderr, "%s: EOF on %s\n", program, name);
X	exit(1);
X    }
X    return;
X}
X
X/*
X * uuencode - uuencode a file
X *
X * Perform the uuencoding process identical to the process performed
X * by the uuencode(1) utility.
X *
X * This routine implements the algorithm described in the uuencode(5)
X * 4.3BSD Reno man page.
X */
Xvoid
Xuuencode(output, oname, infile, iname, umode, uname)
X    FILE *output;		/* output file stream */
X    char *oname;		/* output filename */
X    FILE *infile;		/* input file stream */
X    char *iname;		/* input filename */
X    int umode;			/* the mode to put on the uuencode file */
X    char *uname;		/* name to put on the uuencode file */
X{
X    char buf[UUENCODE_LEN+1];	/* the uuencode buffer */
X    int read_len;		/* actual number of chars read */
X    int val;			/* 6 bit chunk from buf */
X    char filler='\0';		/* filler uuencode pad text */
X    char *p;
X
X    /*
X     * output the initial uuencode header
X     */
X    fprintf(output, "begin %o %s\n", umode, uname);
X    check_io(output, oname, EOF_NOT_OK);
X
X    /*
X     * clear out the input buffer
X     */
X    for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	*p = '\0';
X    }
X
X    /*
X     * We will process UUENCODE_LEN chars at a time, forming
X     * a single output line each time.
X     */
X    while ((read_len=fread(buf,sizeof(buf[0]),UUENCODE_LEN,infile)) > 0) {
X
X	/*
X	 * the first character is the length character
X	 */
X	fputc(UUENCODE(read_len), output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * We will convert 24 bits at a time.  Thus we will convert
X	 * 3 sets of 8 bits into 4 sets of uuencoded 6 bits.
X	 */
X	for (p=buf; read_len>0; read_len-=3, p+=3) {
X
X	    /* bits 0 to 5 */
X	    val = (p[0]>>2)&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 6 to 11 */
X	    val = ((p[0]<<4)&0x30) | ((p[1]>>4)&0x0f);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 12 to 17 */
X	    val = ((p[1]<<2)&0x3c) | ((p[2]>>6)&0x03);
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X
X	    /* bits 18 to 23 */
X	    val = p[2]&0x3f;
X	    fputc(UUENCODE(val), output);
X	    check_io(output, oname, EOF_NOT_OK);
X	}
X
X	/* end of UUENCODE_LEN line */
X	fputc('\n', output);
X	check_io(output, oname, EOF_NOT_OK);
X
X	/*
X	 * clear out the input buffer  (don't depend on bzero() or memset())
X	 */
X	for (p=buf; p < &buf[sizeof(buf)/sizeof(buf[0])]; ++p) {
X	    *p = '\0';
X	}
X    }
X
X    /* check the last read on the input file */
X    check_io(infile, iname, EOF_OK);
X
X    /* write end of uuencode file */
X    fprintf(output, "%c\nend\n", UUENCODE(filler));
X    check_io(output, oname, EOF_NOT_OK);
X}
SHAR_EOF
chmod 0444 mkentry.c ||
echo "restore of mkentry.c failed"
set `wc -c mkentry.c`;Wc_c=$1
if test "$Wc_c" != "34482"; then
	echo original size 34482, current size $Wc_c
fi
# ============= obfuscate.info ==============
echo "x - extracting obfuscate.info (Text)"
sed 's/^X//' << 'SHAR_EOF' > obfuscate.info &&
X1993 Obfuscated contest information
X
XCopyright (c) Landon Curt Noll & Larry Bassel, 1993.
XAll Rights Reserved.  Permission for personal, education or non-profit use is
Xgranted provided this this copyright and notice are included in its entirety
Xand remains unaltered.  All other uses must receive prior permission in writing
Xfrom both Landon Curt Noll and Larry Bassel.
X
XThe International Obfuscated C Code Contest (IOCCC), in the sprit of
Xco-operation, is willing mention other programming contents, as space
Xpermits.
X
XHow to have your contest included in this file:
X
X    If you wish the IOCCC judges to include your contest in this file,
X    send a request to:
X
X	judges@toad.com
X
X    We request that contest descriptions be limited to 50 lines and to
X    not exceed 2500 bytes.  We typically request that your contest
X    include a current description of the IOCCC.
X
X    In order to be included in this file for given year, we must
X    receive a current description no EARLIER than Jan 1 00:00:00 UTC and
X    no LATER than Feb 15 00:00:00 UTC.  Agreement to publish your
X    contest must also be obtained prior to Feb 15.  Annual contests
X    that fail to submit a new entry will be dropped from this file.
X
XOfficial Disclaimer:  (pardon the officialese)
X
X    The contents noted below, other than the IOCCC, are not affiliated
X    with the IOCCC, nor are they endorsed by the IOCCC.  We reserve the
X    right to refuse to print information about a given contest.
X
X    The information below was provided by the particular contest
X    organizer(s) and printed by permission.  Please contact the
X    contest organizer(s) directly regarding their contents.
X
XWith that official notice given, we present for your ENJOYMENT, the following
Xinformation about contents:
X
X---------------------------------------------------------------------------
X
X    10th International Obfuscated C Contest
X
X	"The original obfuscated contest"
X
X    Obfuscate:  tr.v.  -cated, -cating, -cates.  1. a.  To render obscure.
X                b.  To darken.  2. To confuse:  Their emotions obfuscated
X		their judgment.  [LLat. obfuscare, to darken : ob(intensive) +
X                Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
X                obfuscatory adj.
X
X    GOALS OF THE CONTEST:
X
X        * To write the most Obscure/Obfuscated C program under the rules below.
X        * To show the importance of programming style, in an ironic way.
X        * To stress C compilers with unusual code.
X        * To illustrate some of the subtleties of the C language.
X        * To provide a safe forum for poor C code.  :-)
X
X    The IOCCC is the grandfather of USENET programming contests.  Since
X    1984, this contest demonstrated that a program that simply works
X    correctly is not sufficient.  The IOCCC has also done much to add
X    the arcane word 'obfuscated' back into the English language.
X    (see "The New Hacker's Dictionary" by Eric Raymond)
X
X    You are strongly encouraged to read the new contest rules before
X    sending any entries.  The rules, and sometimes the contest Email
X    address itself, change over time.  A valid entry one year may
X    be rejected in a later year due to changes in the rules.  The typical
X    start date for contests is in early March.  Contest rules are normally not
X    finalized and posted until the beginning of the contest.  The typical
X    closing date for contests are in early May.
X
X    The rules and the guidelines may (and often do) change from year to
X    year.  You should be sure you have the current rules and guidelines
X    prior to submitting entries.  To obtain them, send Email to the address
X    above and use the subject 'send rules'.
X
X    One may obtain winners of previous contests (1984 to date), via ftp from:
X
X	host: ftp.uu.net	(192.48.96.9)
X	user: anonymous
X	pass: yourname@yourhost
X	dir:  ~/pub/ioccc
X
X    As a last resort, previous winners may be obtained by sending Email
X    to the above address.  Please use the subject 'send YEAR winners',
X    where YEAR is a single 4 digit year, a year range, or 'all'.
X
X---------------------------------------------------------------------------
X
X    0th International Obfuscated Perl Contest
X	By: Landon Noll & Larry Wall
X
X    This content is being planned.  Someday when Landon & Larry are not too
X    busy, they will actually get around to posting the first set of rules!
X
X    Landon says: "Yes, I know that I said we would have a contest in 1993,
X		  but other existing projects got in the way.  Hopefully
X		  something will be developed after Nov 1993."
X
X---------------------------------------------------------------------------
X
X                2nd International obFUsCaTeD POsTsCripT Contest
X                     Jonathan Monsarrat (jgm@cs.brown.edu)
X                         Alena Lacova (alena@nikhef.nl)
X
X    A  contest of  programming skills  and  knowledge, exclusively  for the
X    PostScript programming language. Its purpose:
X
X    * To spread knowledge of PostScript and its details.
X    * To applaud those with the best tricks.
X    * To prove  that humans can  beat those damnable  machine generators at
X      their own game by writing  the most obscure and mysterious PostScript
X      programs ever.
X
X    Winners will receive the fame and attention that goes with having their
X    program entry posted as a winner to programmers world-wide.
X
X    The 1993 contest rules and results are available by ftp as
X    ``wilma.cs.brown.edu:pub/postscript/obfuscated*.shar'', or individually
X    in the obfuscated directory. The judges will post the 1994 rules
X    in November to comp.lang.postscript on Usenet, and other places.
X    Send questions to jgm@cs.brown.edu.
X
X    Categories include: Best Obfuscated PostScript, Best Artwork,
X    Most Compact, Best Interactive Program, Most Useful, and
X    anything so unusual and creative that it deserves an award.
X
X    The judges will choose the winners of each category.
X
X    Alena Lacova  is a system  administrator at NIKHEF  (Institute for High
X    Energy and Nuclear  Physics) in the  Netherlands. She is  the author of
X    The PostScript Chaos  Programs, which draw  Julia sets, Mandelbrot sets
X    and other kinds of fractal functions.
X
X    Jonathan Monsarrat is a graduate  student from MIT and Brown University
X    in  the  U.S.A. He  is  the  FAQ maintainer  for  the  Usenet newsgroup
X    comp.lang.postscript and the author of The PostScript Zone and LameTeX.
X .
X
SHAR_EOF
chmod 0444 obfuscate.info ||
echo "restore of obfuscate.info failed"
set `wc -c obfuscate.info`;Wc_c=$1
if test "$Wc_c" != "6418"; then
	echo original size 6418, current size $Wc_c
fi
exit 0
-- 
Sunnyvale residents: Vote Landon Noll for Sunnyvale City Council seat 1.

Newsgroup: comp.windows.x
Document_id: 66410
From: brown@ftms.UUCP (Vidiot)
Subject: Re: problem with xvertext package

In article <1993Mar31.181357.28381@sierra.com> dkarr@sierra.com (David Karr) writes:
<I might have a need in the future to display rotated text.  I noticed the
<"xvertext" package on the net.  It looks very good, but it has one slight
<problem.  The API to it assumes you have a font name, not an already loaded
<font.  It shouldn't be too difficult to split up the function into two
<interface routines, one with a font name, and one with an XFontStruct, but
<I thought I would ask the author (Alan Richardson
<(mppa3@uk.ac.sussex.syma)) first in case he was planning this already.
<Unfortunately, his email address bounced.  Does Alan R. or the current
<maintainer of "xvertext" see this?

The e-mail address you mentioned above is for use with the U.K.  As you know,
the Brits do everything backwards :-)  So, the real address from the states is:

	mppa3@syma.sussex.ac.uk

Give it a try.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 66411
From: Bill.Kayser@delft.SGp.slb.COM (Bill Kayser)
Subject: Re: gadgets vs widgets


> 
> > Motif managers take a very simplistic approach to the way they handle events 
> > for gadgets: they track for all events(such as Motion Notify) wether or not 
> > the gadget expresses interest in the events. As a result, gadgets typically
> > generate a great deal more network traffic.  Those with X terminals might find 
> > a noticable network performance drop as a result.
> > 
> > Really?  What's the point using Gadgets then?
> 
> It is a case of memory vs. network performance tradeoff.  Gadgets
> save both client and server memory.  But memory is easily expandable while
> network performance is not, so if I were designing Motif I would
> at least make it *possible* to avoid using gadgets.  At present you
> really don't have a choice because Motif forces you to use gadgets
> in menus and in various other places.
> 
> Adrian Nye
> O'Reilly and Associates, Inc.


I've been using the XmGraph widget that's been floating around and I
noticed the performance is significantly better using Gadgets, perhaps
even 100% faster.  I had heard in an old programming course that gadgets
were no longer any benefit to performance, and that it's just as well
to use widgets everywhere.  So why would ~50 pushbutton gadgets be a lot
quicker than 50 pushbuttons in the graph?  Should I start putting gadgets
back into my long pulldown menus? 

XmGraph manages children connected by XmArc widgets in a directed network
type graph with automatic layout capability.


Bill

---------------------------------------------------------------------------
                                         Schlumberger Geco-Prakla
                                         Internet : kayser@delft.sgp.slb.com

Newsgroup: comp.windows.x
Document_id: 66412
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

epstein@trwacs.fp.trw.com (Jeremy Epstein) writes:

>dmm@head-cfa.harvard.edu (David Meleedy) writes:

>[Description of compiling problems deleted.]

>>gcc -fpcc-struct-return -o bmtoa bmtoa.o -O2 -funroll-loops   -L../.././lib/Xmu 
>>-lXmu -L../.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L/afs/cfa/syste
>>m/sun4c_413/usr/head/lib/X11/X11R5    
>>ld: Undefined symbol
>>   _XGetVisualInfo
>>   _XFree
>>   _XInternAtom

>[etc.]

>There's a bug in SunOS 4.1.3, which is alluded to in the FAQ (although
>there it's talking about X11R4 as being affected).  You need to force
>libXmu to be linked statically, rather than dynamically, which works
>around the linker error.  The simplest thing to do is edit each of
>the Makefiles where there's a failure and change the line which reads:
>	XMULIB = -L$(XMUSRC) -lXmu
>to:
>	XMULIB = -L$(XMUSRC) -Bstatic -lXmu -Bdynamic

No. This is only relevant for OpenWindows 3.x as shipped with SunOS.
It is not relevant for MIT R5. MIT R5 should compile without problems.

Casper

Newsgroup: comp.windows.x
Document_id: 66413
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Help building X11R5 with gcc

In article <1993Apr6.024257.8480@etrog.se.citri.edu.au>
tim@kimba.catt.citri.edu.au (Tim Liddelow) writes:
|> Can people please send me any hints on building X11R5 with gcc 2.3.3 ?  Is
|> there any pitfalls to be avoided ?  Any hints ?  I would appreciate hearing other
|> peoples' stories on this.

I have been building X11 with gcc since 2.1 and the only time I had
trouble was when the position independant code option broke (so I
couldn't use gcc to build Sun shared libraries). The important thing to
do is to follow the tips given in the gcc release. Gcc generates code
that requires libgcc2 and you should take that into account when
deciding which compiler to use for the libraries.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
Document_id: 66414
From: cheong@solomon.technet.sg (SCSTECH admin)
Subject: Getting Pseudo TTY in X/Motif

Hi,

I am about to write an application in X/Motif that will require the
embedding of a pseudo tty. So, before I re-invent the wheel, has anyone
written/gotten a motif widget that does the job ? Otherwise, I would
appreciate any pointers to make such a beast.

My environment is X11R4/Motif 1.1 and X11R5/Motif 1.2 (if this helps).


Thanks in advance.


Arthur Lim
Email : arthur@mailhost.scs.com.sg


Newsgroup: comp.windows.x
Document_id: 66415
From: wilie.wilson@analog.com ( willie wilson )
Subject: Experiences of DESQview/X? 

I need to have PCs and SPARCstations run the same application ( namely
MicroSoft Project ). The original system ran on the PC. Now it needs to
be expanded to allow UNIX users to work with the application. The
current proposal is to use DESQview/X as a display server for the
application.

I would like to know your experiences with using DESQview/X to run an
application on a PC and displaying on a SPARCstation. I've heard that
the network traffic is slow.

Replies only by e-mail please.

Thanks, in advance.
---
               ,__o
             _-\_<,
...Willie   (*)/'(*)
willie.wilson@analog.com


Newsgroup: comp.windows.x
Document_id: 66416
From: Bill.Kayser@delft.SGp.slb.COM (Bill Kayser)
Subject: Re: TeleUse, UIM/X, and C++


> 
> Does anyone have any good ideas on how to integrate C++ code elegantly
> with TeleUse, UIM/X / Interface Architect generated code?
> 
> Source would be great, but any suggestions are welcome.

It's my understanding that the next release of UIM/X, due out
last February :-) has full support for C++.

I use XDesigner which does not have the interpreter or UI meta languages
of these other tools but does fully support C++ code generation,
reusable templates via C++ classes which are generated, a variety of
other handy features for using C++ and layout functions in different
ways, and generates Motif 1.2 code (including drag 'n drop, 
internationalization, etc.).  Fits in quite nicely with Doug Young's
paradigm for C++/Motif.

Available in the US from VI Corp, in Europe from Imperial Software,
London (see FAQ for details).

Bill
________________________________________________________________________
                                           Schlumberger Geco Prakla
                                           kayser@delft.sgp.slb.com

Newsgroup: comp.windows.x
Document_id: 66417
From: ware@oboe.cis.ohio-state.edu (Peter Ware)
Subject: Re: Private Colormaps & Widget creation

You are right in supposing that the problem is with the XmNcolormap
(XtNcolormap for truly literate beings) not being set.  What you want
to do is start your application with your new colormap.  This can be a
chicken and egg sort of problem, however.  If you look at the Xt FAQ
there is an example that should show how it can be done.  If not, let
me know and maybe I can improve the example.

--pete
--
Pete Ware					ware@cis.ohio-state.edu
CIS Dept, Ohio State University			w/ (614) 292-7318
228 Bolz Hall, 2036 Neil Ave.			h/ (614) 538-0965
Columbus, OH 43210

Newsgroup: comp.windows.x
Document_id: 66418
From: wilk@Informatik.TU-Muenchen.DE (Christian Wilk)
Subject: XtShellStrings,XtStrings?


Hello,

does somebody know the functions  XtShellStrings and XtStrings?
I haven't found them in any librarys not Xm, Xt, nor X11, and I need
them to install a tool.

Any hints greatly appreciated! Please reply via e-mail.

Thanks in advance!
_______________________________________________________________________________

christian wilk			 I've seen things you people wouldn't believe.
technical university of munich	 Attack ships on fire off the shoulder of Orion.
munich, germany			 I watched C-beams glitter in the dark near the
				 Tannhauser gate. All those moments will be lost
wilk@informatik.tu-muenchen.de   in time - like tears in rain. Time to die.
								-- Roy Batty
_______________________________________________________________________________

Newsgroup: comp.windows.x
Document_id: 66419
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: XtShellStrings,XtStrings?

In article <1993Apr5.145635.16857@Informatik.TU-Muenchen.DE>
wilk@Informatik.TU-Muenchen.DE (Christian Wilk) writes:
|> 
|> Hello,
|> 
|> does somebody know the functions  XtShellStrings and XtStrings?
|> I haven't found them in any librarys not Xm, Xt, nor X11, and I need
|> them to install a tool.
|> 
|> Any hints greatly appreciated! Please reply via e-mail.

They aren't functions, they are character arrays. The standard strings
are either defined as string constants or character pointers into
XtShellStrings and XtStrings determined by XTSTRINGDEFINES. Your
libraries were compiled with this defined and your application with it
undefined so simply recompile one or the other. It is probably worth
adding -DXTSTRINGDEFINES to your CFLAGS.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
Document_id: 66420
From: rbw@jet.uk (Dr Richard B Wilkinson)
Subject: XBell

I have a program produces a continuous tone by calling XBell
repeatedly at an interval equal to the duration of the bell. If it is
run more than once on a display, the tones are buffered in the X
server and the tone contunues after all occurrences of the program
have exited. Is there a convenient way of preventing this, e.g., by
emptying the X server bell buffer when each program exits?
- Disclaimer: Please note that the above is a personal view and should not 
  be construed as an official comment from the JET project.

Newsgroup: comp.windows.x
Document_id: 66421
From: michaelr@spider.co.uk (Michael S. A. Robb)
Subject: Re: Honors Degrees: Do they mean anything?

In article <TKLD.93Apr2123341@burns.cogsci.ed.ac.uk> tkld@cogsci.ed.ac.uk (Kevin Davidson) writes:
>
>>   In my opinion, a programming degree is still worth having.
>
> Yes, but a CS degree is *not* a programming degree. Does anybody know of
>a computing course where *programming* is taught ? Computer Science is
>a branch of maths (or the course I did was).
> I've also done a Software Engineering course - much more practical and likely
>to be the sort of thing an employer really wants, rather than what they think
>they want, but also did not teach programming. The ability to program was
>an entry requirement.

At Robert Gordon University, programming was the main (most time-consuming) 
start of the course. The first two years consisted of five subjects:
Software Engineering (Pascal/C/UNIX), Computer Engineering (6502/6809/68000 
assembler), Computer Theory (LISP/Prolog), Mathematics/Statistics and 
Communication Skills (How to pass interviews/intelligence tests and group
discussions e.g. How to survive a helicopter crash in the North Sea).
The third year (Industrial placement) was spent working for a computer company 
for a year. The company could be anywhere in Europe (there was a special 
Travel Allowance Scheme to cover the visiting costs of professors).  
The fourth year included Operating Systems(C/Modula-2), Software Engineering 
(C/8086 assembler), Real Time Laboratory (C/68000 assembler) and Computing 
Theory (LISP).  There were also Group Projects in 2nd and 4th Years, where 
students worked in teams to select their own project or decide to work for an 
outside company (the only disadvantage being that specifications would change 
suddenly).
 
In the first four years, there was a 50%:50% weighting between courseworks and 
exams for most subjects. However in the Honours year, this was reduced to a 
30%:70% split between an Individual Project and final exams (no coursework 
assessment) - are all Computer Science courses like this?

BTW - we started off with 22 students in our first year and were left with 8 by
Honours year. Also, every course is tutored separately. Not easy trying
to sleep when you are in 8 student class :-). 

Cheers,
  Michael 
-- 
| Michael S. A. Robb     | Tel: +44 31 554 9424  | "..The problem with bolt-on
| Software Engineer      | Fax: +44 31 554 0649  |  software is making sure the
| Spider Systems Limited | E-mail:               |  bolts are the right size.."
| Edinburgh, EH6 5NG     | michaelr@spider.co.uk |             - Anonymous

Newsgroup: comp.windows.x
Document_id: 66422
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 4/5

Archive-name: x-faq/part4
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  80)! Where can I get an X-based plotting program?

These usually are available from uucp sites such as uunet or other sites as
marked; please consult the archie server to find more recent versions.

 gnuplot	X (xplot), PostScript and a bunch of other drivers.
	export.lcs.mit.edu [and elsewhere]:contrib/gnuplot3.1.tar.Z

 gl_plot	X output only [?]
	comp.sources.unix/volume18

 graph+
	yallara.cs.rmit.oz.au:/pub/graph+.tar.Z [131.170.24.42]
	comp.sources.unix/volume8

 pdraw,drawplot		2D and 3D X,PS
	scam.berkeley.edu:/src/local/3dplot.tar.Z [128.32.138.1]
	scam.berkeley.edu:/src/local/contour.tar.Z [128.32.138.1]
	scam.berkeley.edu:/src/local/drawplot.tar.Z [128.32.138.1]
	uunet:~ftp/contrib/drawplot.tar.Z

 xgraph		plot, zoom. Outputs PS or HPGL.
	shambhala.berkeley.edu:/pub/xgraph-11.tar.Z [128.32.132.54]
	sun1.ruf.uni-freiburg.de:X11/contrib/xgraph-11.tar.Z [132.230.1.1]
	nisc.jvnc.net:pub/xgraph-11.tar.Z [128.121.50.7]
	comp.sources.x/volume3
	or many other sites 

 ACE/gr (formerly xvgr and xmgr) XY plotting tools
	ftp.ccalmr.ogi.edu [129.95.72.34]
	XView version: /CCALMR/pub/acegr/xvgr-2.09.tar.Z
	Motif version: /CCALMR/pub/acegr/xmgr-2.09.tar.Z
	[mirrored on export in /contrib/acegr]

 XGobi		An interactive dynamic scatter-plotting tool from Bellcore
	lib.stat.cmu.edu: general/xgobi* [log in as statlib with your email
	as the password; or send email to statlib@lib.stat.cmu.edu containing
	the one-line message "send xgobi from general"]
	Information from: Debby Swayne, dfs@bellcore.com.

 Robot		a scientific XView-based graph plotting and data analysis tool
	ftp.astro.psu.edu:pub/astrod/robotx0.46.tar.Z [128.118.147.28]

 plotmtv	a multi-purpose 2D/3D plotter
	tanqueray.berkeley.edu:/pub/Plotmtv1.3.1.tar.Z
	

[2/91. Thanks in part to: emv@ox.com (Ed Vielmetti); geoff@Veritas.COM 
(Geoffrey Leach); Paul A. Scowen (uk1@spacsun.rice.edu); black@beno.CSS.GOV 
(Mike Black)]

----------------------------------------------------------------------
Subject:  81)  Where can I get an X-based spreadsheet?

A version of "sc" for X and which supports Lotus files is available from
vernam.cs.uwm.edu in xspread2.0.tar.Z. It also includes graphing functions.
Information: soft-eng@cs.uwm.edu.

The GNU package OLEO is available in prep.ai.mit.edu:pub/gnu/oleo-1.2.2.tar.Z;
it can generate PostScript renditions of spreadsheets.

Also:

Several of the below are part of integrated office-productivity tools which may
also include word-processing, email, conferencing, image processing, and 
drawing/painting, among other features.

Vendor                        Product    Contact Information 
------                        -------    -------------------
Access Technology             20/20      508-655-9191
Informix                      WingZ      800-331-1763
Quality Software Products     Q-Calc/eXclaim    800-628-3999 (CA:213-410-0303) 
Unipress                      Q-Calc     201-985-8000
Uniplex                       Uniplex    214-717-0068, 800-356-8063
Digital			      DECdecision   1-800-DIGITAL
Applix			      Aster*x	 508-870-0300, 1-800-8APPLIX.
AIS			      XESS	 919-942-7801, info@ais.com
BBN Software Products         BBN/Slate  617-873-5000 slate-offer@bbn.com
Elsid Software Systems	      Ripcam	 613-228-9468

SAS by the SAS Institute now has a spreadsheet module; the X version is
available on the current popular RISC platforms.

----------------------------------------------------------------------
Subject:  82)  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 (pete@egh-qc.co.uk); 7/92]
[thanks to Atul Chhabra (atul@nynexst.com); 10/92]

----------------------------------------------------------------------
Subject:  83)  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.5.2 is now available; the major site is prep.ai.mit.edu. 
[11/92] 

	GSPreview (by the Computing Laboratory of the University of Kent at 
Canterbury) is an X user interface (WCL-based) to the Ghostscript 2.4[.1]
interpreter [5/92].  The source is available for anonymous ftp from 
export.lcs.mit.edu as gspreview.2.0.tar.Z.

	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.4.1.tar.Z [1/93]. There are also several executables available
on ftp.cs.wisc.edu:/pub/X/ghostview-exe for various architectures.

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. 

----------------------------------------------------------------------
Subject:  84)  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 export in contrib/xgks-widget.tar.Z. 

----------------------------------------------------------------------
Subject:  85)  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 export.lcs.mit.edu (18.24.0.12), 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 export 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 export as PEXt.tar.Z; it includes a PEX widget making it easier to
include PEX in Xt-based programs.

----------------------------------------------------------------------
Subject:  86)  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 export.lcs.mit.edu;
current version is patchlevel 16 [12/92].

----------------------------------------------------------------------
Subject:  87)  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.

In addition:

	xproof, an X previewer for ditroff has been contributed by Marvin 
Solomon (solomon@cs.wisc.edu); version 3.5 is available on export 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:  88)! Where can I get a WYSIWYG interface builder?

	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 export.lcs.mit.edu.

	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.

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
VUIT 2.0		Motif 1.1	C/UIL[r/w]		DEC 
								(1-800-DIGITAL)
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 2.0 *	Motif 1.1	C(Xm); C/UIL[r/w]	ICS 
					Ada			(617-621-0060)
								info@ics.com
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]
								Telesoft
								(619-457-2700)
							gui_info@telesoft.com
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.0|1.1.2	C(Xm)			AKA EDV
						       +49 (0) 234/33397-0
						       +49 (0) 234/33397-40 fax
UIB			Open Look/Motif	C++(OI)			ParcPlace 
								+1 303-678-4626
								
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.

	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 are planned to have a Motif 
look.  GRAMMI is written in Ada and generates Ada specs and stub bodies. 
(1-800-GRAMMI-1).

	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].
	WINTERP: an Xlisp-based Motif toolkit allows for interpretive 
programming. The copy on the R4 tape is outdated; get a copy off export 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 export.lcs.mit.edu (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.

----------------------------------------------------------------------
Subject:  89)  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 export'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.tar.Z and may also be found 
in the alt.sources archives.

----------------------------------------------------------------------
Subject:  90)  Where can I get an X-based debugger?

	xdbx, an X interface to the dbx debugger, is available via ftp from 
export. 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 export.
	mxgdb is a Motif interface to gdb by Jim Tsillas 
(jtsillas@bubba.ma30.bull.com); version 1.1.5 was released 1/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 export 
(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:  91)! 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.
	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 export 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:
		gatekeeper.dec.com      pub/X11/contrib/XTrap_v31.tar.Z
		export.lcs.mit.edu      contrib/XTrap_v31.tar.Z
	wscrawl can be used as a "multi-person paint program". It's available
on sax.stanford.edu as wscrawl.shar.Z.
	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) offers multi-user confering software 
called Communique.

[Thanks in part to scott@spectra.com (Tim Scott), 5/91, and to Peter Cigehn 
(peter@lulea.trab.se), 8/92 ]

----------------------------------------------------------------------
Subject:  92)  TOPIC: BUILDING THE X DISTRIBUTION [topic needs updating to R5]
----------------------------------------------------------------------
Subject:  93)  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:  94)  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:  95)  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 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:  96)  What is this strange problem building X clients on SunOS 4.1.2?

	In SunOS 4.1.2 Sun fixed a shared-library bug in ld which conflicts
with the way X11R4 builds the shared Xmu library, causing these symbols to be
undefined when building some X11 clients: 
	_get_wmShellWidgetClass
	_get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" appears to work. 

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 MIT 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 export in [1/93]
	contrib/X11R4_sunos4.1.2_patch_version3.Z

----------------------------------------------------------------------
Subject:  97)  Why can't gcc 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:  98)  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:  99)  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: 100)  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: 101)  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 MIT 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: 102)  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: 103)  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@expo.lcs.mit.edu (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: 104)  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: 105)  TOPIC: BUILDING X PROGRAMS 
----------------------------------------------------------------------
Subject: 106)  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.
	- see "System Administration - Imake: Friend of 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.

[1/91;12/91;5/92;8/92]

----------------------------------------------------------------------
Subject: 107)  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.
	export 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).

----------------------------------------------------------------------
Subject: 108)  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: 109)  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 MIT 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: 110)  What are these problems with "_XtInherit not found" on the Sun?
When I run 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]

----------------------------------------------------------------------
Subject: 111)  Why can't I compile my R3 Xaw contrib programs under the new X?
I have a program that worked well under X11R3. When I try to link it under 
the current version of X, I get this message:
	Undefined:
	_XtScrollBarSetThumb
	_XtTextSetInsertionPoint
	_XtTextReplace

	There were several name changes in the Athena widget set (in addition
to the header files moving into <X11/Xaw/>); these are mentioned in the R4
release notes. In this case, these functions are not really Xt functions but
are part of the Xaw text widget and so have been renamed from Xt* to Xaw*.
[10/90]

----------------------------------------------------------------------
Subject: 112)  TOPIC: PROGRAMMING PROBLEMS AND PUZZLES
----------------------------------------------------------------------
Subject: 113)  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: 114)  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: 115)  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 export.lcs.mit.edu in contrib/mdisp.tar.Z. [4/92]

----------------------------------------------------------------------
Subject: 116)  Why does XtGetValues not work for me (sic)?

	The XtGetValues interface for retrieving resources from a widget is
sensitive to the type of variable. Your code may be doing something like this:
	{
	Arg args[3];
	int i;
	int sensitive;		/* oops; wrong data type */
	i=0;
	XtSetArg (args[i], XtNsensitive, &sensitive); i++;
	XtGetValues(widget, args, i );
	...
	}

But XtNsensitive is a Boolean, which on most machines is a single byte; 
declaring the variable "sensitive" as Boolean works properly. This problem 
comes up often when using particular toolkits that redefine the Xt types 
Dimension and Position; code that assumes they are int will have similar 
problems if those types are actually short. In general: you are safe if you
use the actual type of the resource, as it appears in the widget's man page.
[11/90]

----------------------------------------------------------------------
Subject: 117)  Why don't XtConfigureWidget/XtResizeWidget/XtMoveWidget work?

	You're probably trying to use these functions from application code.
They should be used only internally to widgets; these functions are for a 
parent widget to change the geometry of its children. Other promising 
functions, XtMakeGeometryRequest() and XtMakeResizeRequest(), are also for use 
only by widgets, in this case by a child to request a change from its parent.
	The only way for your application to request a geometry change for a
widget is to issue an XtSetValues call setting some of the geometry resources.
Although this will result in the widget-internal functions' being called, your
application code must use the standard XtSetValues interface or risk the 
widgets' data becoming corrupted.
	[The Xlib calls XMoveWindow() and XResizeWindow() should similarly be 
avoided; they shouldn't be used to change XtNx, XtNy, XtNwidth, or XtNheight.]

----------------------------------------------------------------------
Subject: 118)  Why isn't there an XtReparentWidget call like XReparentWindow?

	Although there are various details of the current implementation of
the Xt internals which make reparenting difficult, the major reason that no
such call exists is that it remains undefined what the set of resources for
the "new" widget should be. Resources are typically set based on the location
in the instance hierarchy; what resources should change if the instance moves?
What should happen to the widget's children? And by the time such semantics are
defined, there would probably be little advantage over destroying the old 
widget and creating a new widget in the correct location with the desired 
resources, as setting the resources correctly is the majority of work in 
creating a new widget.

	Note that reparenting is possible in the OI toolkit.

----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
Document_id: 66423
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: whole win on screen?

Window placement on screen
--------------------------

I would like to configure my system (a HP UNIX) to avoid that any corner
of a given window is displayed outside of the visible screen. The whole
window should be visible and it should be impossible to move any window
outside the visible aerea.

1. Can this be done by configuring the window manager's resources

2. Can this be done on applikation level 

3. A hardcoded solution is possible, but is it possible to have a
  upper limit of a given window size


Thank you for information and help


Newsgroup: comp.windows.x
Document_id: 66424
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 5/5

Archive-name: x-faq/part5
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject: 119)  I'm writing a widget and can't use a float as a resource value.

Float resources are not portable; the size of the value may be larger than
the size of an XtPointer. Try using a pointer to a float instead; the Xaw
Scrollbar float resources are handled in this way. 

----------------------------------------------------------------------
Subject: 120)  Is this a memory leak in the X11R4 XtDestroyWidget()?!

Yes. This is the "unofficial" fix-19 for the X11R4 Destroy.c:

*** Destroy.c.1.37	Thu Jul 11 15:41:25 1991
--- lib/Xt/Destroy.c	Thu Jul 11 15:42:23 1991
***************
*** 1,4 ****
--- 1,5 ----
  /* $XConsortium: Destroy.c,v 1.37 90/09/28 10:21:32 swick Exp $ */
+ /* Plus unofficial patches in revisions 1.40 and 1.41 */
  
  /***********************************************************
  Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts,
***************
*** 221,239 ****
       */
  
      int i = 0;
!     DestroyRec* dr = app->destroy_list;
      while (i < app->destroy_count) {
  	if (dr->dispatch_level >= dispatch_level)  {
  	    Widget w = dr->widget;
  	    if (--app->destroy_count)
  		bcopy( (char*)(dr+1), (char*)dr,
! 		       app->destroy_count*sizeof(DestroyRec)
  		      );
  	    XtPhase2Destroy(w);
  	}
  	else {
  	    i++;
- 	    dr++;
  	}
      }
  }
--- 222,245 ----
       */
  
      int i = 0;
!     DestroyRec* dr;
      while (i < app->destroy_count) {
+ 
+ 	/* XtPhase2Destroy can result in calls to XtDestroyWidget,
+ 	 * and these could cause app->destroy_list to be reallocated.
+ 	 */
+ 
+ 	dr = app->destroy_list + i;
  	if (dr->dispatch_level >= dispatch_level)  {
  	    Widget w = dr->widget;
  	    if (--app->destroy_count)
  		bcopy( (char*)(dr+1), (char*)dr,
! 		       (app->destroy_count - i) * sizeof(DestroyRec)
  		      );
  	    XtPhase2Destroy(w);
  	}
  	else {
  	    i++;
  	}
      }
  }

[from Donna Converse, converse@expo.lcs.mit.EDU]

----------------------------------------------------------------------
Subject: 121)  Are callbacks guaranteed to be called in the order registered?

	Although some books demonstrate that the current implementation of Xt
happens to call callback procedures in the order in which they are registered, 
the specification does not guarantee such a sequence, and supplemental 
authoritative documents (i.e. the Asente/Swick volume) do say that the order is
undefined.  Because the callback list can be manipulated by both the widget and
the application, Xt cannot guarantee the order of execution.
	In general, the callback procedures should be thought of as operating 
independently of one another and should not depend on side-effects of other
callbacks operating; if a seqence is needed, then the single callback to be 
registered can explicitly call other functions necessary.

[4/92; thanks to converse@expo.lcs.mit.edu]

----------------------------------------------------------------------
Subject: 122)  Why doesn't XtDestroyWidget() actually destroy the widget?

	XtDestroyWidget() operates in two passes, in order to avoid leaving
dangling data structures; the function-call marks the widget, which is not 
actually destroyed until your program returns to its event-loop. 

----------------------------------------------------------------------
Subject: 123)  How do I query the user synchronously using Xt?
	
	It is possible to have code which looks like this trivial callback,
which has a clear flow of control. The calls to AskUser() block until answer
is set to one of the valid values. If it is not a "yes" answer, the code drops
out of the callback and back to an event-processing loop: 

	void quit(Widget w, XtPointer client, XtPointer call)
	{
		int             answer;
		answer = AskUser(w, "Really Quit?");
		if (RET_YES == answer)
			{
			answer = AskUser(w, "Are You Really Positive?");
			if (RET_YES == answer)
				exit(0);
                }
	}

	A more realistic example might ask whether to create a file or whether 
to overwrite it.
	This is accomplished by entering a second event-processing loop and
waiting until the user answers the question; the answer is returned to the
calling function. That function AskUser() looks something like this, where the 
Motif can be replaced with widget-set-specific code to create some sort of 
dialog-box displaying the question string and buttons for "OK", "Cancel" and 
"Help" or equivalents:

  int AskUser(w, string)
        Widget          w;
        char           *string;
  {
        int             answer=RET_NONE;	/* some not-used marker */
        Widget          dialog;			/* could cache&carry, but ...*/
        Arg             args[3];
        int             n = 0;
        XtAppContext    context;

        n=0;
        XtSetArg(args[n], XmNmessageString, XmStringCreateLtoR(string,
                XmSTRING_DEFAULT_CHARSET)); n++;
        XtSetArg(args[n], XmNdialogStyle, XmDIALOG_APPLICATION_MODAL); n++;
        dialog = XmCreateQuestionDialog(XtParent(w), string, args, n);
        XtAddCallback(dialog, XmNokCallback, response, &answer);
        XtAddCallback(dialog, XmNcancelCallback, response, &answer);
        XtAddCallback(dialog, XmNhelpCallback, response, &answer);
        XtManageChild(dialog);

        context = XtWidgetToApplicationContext (w);
        while (answer == RET_NONE || XtAppPending(context)) {
                XtAppProcessEvent (context, XtIMAll);
        }
        XtDestroyWidget(dialog);  /* blow away the dialog box and shell */
        return answer;
  }

	The dialog supports three buttons, which are set to call the same 
function when tickled by the user.  The variable answer is set when the user 
finally selects one of those choices:

  void response(w, client, call)
        Widget          w;
        XtPointer client;
        XtPointer call;
  {
  int *answer = (int *) client;
  XmAnyCallbackStruct *reason = (XmAnyCallbackStruct *) call;
        switch (reason->reason) {
        case XmCR_OK:
                *answer = RET_YES;	/* some #define value */
                break;
        case XmCR_CANCEL:
                *answer = RET_NO; 
		break;
        case XmCR_HELP:
                *answer = RET_HELP;
                break;
        default:
                return;
        }
}

and the code unwraps back to the point at which an answer was needed and
continues from there.

[Thanks to Dan Heller (argv@sun.com); further code is in Dan's R3/contrib
WidgetWrap library. 2/91]

----------------------------------------------------------------------
Subject: 124)  How do I determine the name of an existing widget?
I have a widget ID and need to know what the name of that widget is.

	Users of R4 and later are best off using the XtName() function, which 
will work on both widgets and non-widget objects.

	If you are still using R3, you can use this simple bit of code to do 
what you want. Note that it depends on the widget's internal data structures 
and is not necessarily portable to future versions of Xt, including R4.

	#include <X11/CoreP.h>
	#include <X11/Xresource.h>
	String XtName (widget)
	Widget widget;	/* WILL work with non-widget objects */
	{
	return XrmNameToString(widget->core.xrm_name);
	}

[7/90; modified with suggestion by Larry Rogers (larry@boris.webo.dg.com) 9/91]

----------------------------------------------------------------------
Subject: 125)  Why do I get a BadDrawable error drawing to XtWindow(widget)?
I'm doing this in order to get a window into which I can do Xlib graphics
within my Xt-based program:

> canvas = XtCreateManagedWidget ( ...,widgetClass,...) /* drawing area */
> ...
> window = XtWindow(canvas);	/* get the window associated with the widget */
> ...
> XDrawLine (...,window,...);	/* produces error */

	The window associated with the widget is created as a part of the 
realization of the widget.  Using a window id of NULL ("no window") could 
create the error that you describe.  It is necessary to call XtRealizeWidget() 
before attempting to use the window associated with a widget. 
	Note that the window will be created after the XtRealizeWidget() call, 
but that the server may not have actually mapped it yet, so you should also 
wait for an Expose event on the window before drawing into it.

----------------------------------------------------------------------
Subject: 126)  Why do I get a BadMatch error when calling XGetImage?

The BadMatch error can occur if the specified rectangle goes off the edge of 
the screen. If you don't want to catch the error and deal with it, you can take
the following steps to avoid the error:

1) Make a pixmap the same size as the rectangle you want to capture.
2) Clear the pixmap to background using XFillRectangle.
3) Use XCopyArea to copy the window to the pixmap.
4) If you get a NoExpose event, the copy was clean. Use XGetImage to grab the
image from the pixmap.
5) If you get one or more GraphicsExpose events, the copy wasn't clean, and 
the x/y/width/height members of the GraphicsExpose event structures tell you 
the parts of the pixmap which aren't good.
6) Get rid of the pixmap; it probably takes a lot of memory.

[10/92; thanks to Oliver Jones (oj@pictel.com)]

----------------------------------------------------------------------
Subject: 127)  How can my application tell if it is being run under X?

	A number of programs offer X modes but otherwise run in a straight
character-only mode. The easiest way for an application to determine that it is
running on an X display is to attempt to open a connection to the X server:
	
	display = XOpenDisplay(display_name);
	if (display)
		{ do X stuff }
	else
		{ do curses or something else }
where display_name is either the string specified on the command-line following
-display, by convention, or otherwise is (char*)NULL [in which case 
XOpenDisplay uses the value of $DISPLAY, if set].

This is superior to simply checking for the existence a -display command-line 
argument or checking for $DISPLAY set in the environment, neither of which is 
adequate. [5/91]

----------------------------------------------------------------------
Subject: 128)  How do I make a "busy cursor" while my application is computing?
Is it necessary to call XDefineCursor() for every window in my application?

	The easiest thing to do is to create a single InputOnly window that is 
as large as the largest possible screen; make it a child of your toplevel 
window and it will be clipped to that window, so it won't affect any other 
application. (It needs to be as big as the largest possible screen in case the 
user enlarges the window while it is busy or moves elsewhere within a virtual 
desktop.) Substitute "toplevel" with your top-most widget here (similar code 
should work for Xlib-only applications; just use your top Window):

     unsigned long valuemask;
     XSetWindowAttributes attributes;

     /* Ignore device events while the busy cursor is displayed. */
     valuemask = CWDontPropagate | CWCursor;
     attributes.do_not_propagate_mask =  (KeyPressMask | KeyReleaseMask |
         ButtonPressMask | ButtonReleaseMask | PointerMotionMask);
     attributes.cursor = XCreateFontCursor(XtDisplay(toplevel), XC_watch);

     /* The window will be as big as the display screen, and clipped by
        its own parent window, so we never have to worry about resizing */
     XCreateWindow(XtDisplay(toplevel), XtWindow(toplevel), 0, 0,
         65535, 65535, (unsigned int) 0, 0, InputOnly,
         CopyFromParent, valuemask, &attributes);

where the maximum size above could be replaced by the real size of the screen,
particularly to avoid servers which have problems with windows larger than
32767.

When you want to use this busy cursor, map and raise this window; to go back to
normal, unmap it. This will automatically keep you from getting extra mouse
events; depending on precisely how the window manager works, it may or may not
have a similar effect on keystrokes as well.

In addition, note also that most of the Xaw widgets support an XtNcursor 
resource which can be temporarily reset, should you merely wish to change the
cursor without blocking pointer events.

[thanks to Andrew Wason (aw@cellar.bae.bellcore.com), Dan Heller 
(argv@sun.com), and mouse@larry.mcrcim.mcgill.edu; 11/90,5/91]

----------------------------------------------------------------------
Subject: 129)  How do I fork without hanging my parent X program?

	An X-based application which spawns off other Unix processes which 
continue to run after it is closed typically does not vanish until all of its 
children are terminated; the children inherit from the parent the open X 
connection to the display. 
	What you need to do is fork; then, immediately, in the child process, 
		close (ConnectionNumber(XtDisplay(widget)));
to close the file-descriptor in the display information. After this do your 
exec. You will then be able to exit the parent.
	Alternatively, before exec'ing make this call, which causes the file 
descriptor to be closed on exec.
		(void) fcntl(ConnectionNumber(XDisplay), F_SETFD, 1);

[Thanks to Janet Anstett (anstettj@tramp.Colorado.EDU), Gordon Freedman 
(gjf00@duts.ccc.amdahl.com); 2/91. Greg Holmberg (holmberg@frame.com), 3/93.]

----------------------------------------------------------------------
Subject: 130)  Can I make Xt or Xlib calls from a signal handler?

	No. Xlib and Xt have no mutual exclusion for protecting critical 
sections. If your signal handler makes such a call at the wrong time (which 
might be while the function you are calling is already executing), it can leave
the library in an inconsistent state. Note that the ANSI C standard points
out that behavior of a signal handler is undefined if the signal handler calls
any function other than signal() itself, so this is not a problem specific to
Xlib and Xt; the POSIX specification mentions other functions which may be
called safely but it may not be assumed that these functions are called by 
Xlib or Xt functions.
	You can work around the problem by setting a flag in the interrupt
handler and later checking it with a work procedure or a timer event which
has previously been added.

	Note: the article in The X Journal 1:4 and the example in O'Reilly 
Volume 6 are in error.

[Thanks to Pete Ware (ware@cis.ohio-state.edu) and Donna Converse 
(converse@expo.lcs.mit.EDU), 5/92]

----------------------------------------------------------------------
Subject: 131)  What are these "Xlib sequence lost" errors?

	You may see these errors if you issue Xlib requests from an Xlib error 
handler, or, more likely, if you make calls which generate X requests to Xt or 
Xlib from a signal handler, which you shouldn't be doing in any case. 

----------------------------------------------------------------------
Subject: 132)  How can my Xt program handle socket, pipe, or file input?

	It's very common to need to write an Xt program that can accept input 
both from a user via the X connection and from some other file descriptor, but 
which operates efficiently and without blocking on either the X connection or 
the other file descriptor.
	A solution is use XtAppAddInput(). After you open your file descriptor,
use XtAppAddInput() to register an input handler. The input handler will be 
called every time there is something on the file descriptor requiring your 
program's attention. Write the input handler like you would any other Xt 
callback, so it does its work quickly and returns.  It is important to use only
non-blocking I/O system calls in your input handlers.
	Most input handlers read the file descriptor, although you can have an 
input handler write or handle exception conditions if you wish.
	Be careful when you register an input handler to read from a disk file.
You will find that the function is called even when there isn't input pending.
XtAppAddInput() is actually working as it is supposed to. The input handler is 
called whenever the file descriptor is READY to be read, not only when there is
new data to be read. A disk file (unlike a pipe or socket) is almost always 
ready to be read, however, if only because you can spin back to the beginning
and read data you've read before.  The result is that your function will almost
always be called every time around XtAppMainLoop(). There is a way to get the 
type of interaction you are expecting; add this line to the beginning of your 
function to test whether there is new data:
	     if (ioctl(fd, FIONREAD, &n) == -1 || n == 0) return;
But, because this is called frequently, your application is effectively in a 
busy-wait; you may be better off not using XtAppAddInput() and instead setting 
a timer and in the timer procedure checking the file for input.

[courtesy Dan Heller (argv@ora.com), 8/90; mouse@larry.mcrcim.mcgill.edu 5/91;
Ollie Jones (oj@pictel.com) 6/92]

----------------------------------------------------------------------
Subject: 133)  How do I simulate a button press/release event for a widget?

	You can do this using XSendEvent(); it's likely that you're not setting
the window field in the event, which Xt needs in order to match to the widget
which should receive the event.
	 If you're sending events to your own application, then you can use 
XtDispatchEvent() instead. This is more efficient than XSendEvent() in that you
avoid a round-trip to the server.
	Depending on how well the widget was written, you may be able to call
its action procedures in order to get the effects you want.

[courtesy Mark A. Horstman (mh2620@sarek.sbc.com), 11/90]

----------------------------------------------------------------------
Subject: 134)  Why doesn't anything appear when I run this simple program?

> ...
> the_window = XCreateSimpleWindow(the_display,
>      root_window,size_hints.x,size_hints.y,
>      size_hints.width,size_hints.height,BORDER_WIDTH,
>      BlackPixel(the_display,the_screen),
>      WhitePixel(the_display,the_screen));
> ...
> XSelectInput(the_display,the_window,ExposureMask|ButtonPressMask|
> 	ButtonReleaseMask);
> XMapWindow(the_display,the_window);
> ...
> XDrawLine(the_display,the_window,the_GC,5,5,100,100);
> ...

	You are right to map the window before drawing into it. However, the 
window is not ready to be drawn into until it actually appears on the screen --
until your application receives an Expose event. Drawing done before that will 
generally not appear. You'll see code like this in many programs; this code 
would appear after window was created and mapped:
  while (!done)
    {
      XNextEvent(the_display,&the_event);
      switch (the_event.type) {
	case Expose:	 /* On expose events, redraw */
		XDrawLine(the_display,the_window,the_GC,5,5,100,100);
		break;
	...
	}
    }

	Note that there is a second problem: some Xlib implementations don't 
set up the default graphics context to have correct foreground/background 
colors, so this program could previously include this code:
  ...
  the_GC_values.foreground=BlackPixel(the_display,the_screen);	/* e.g. */
  the_GC_values.background=WhitePixel(the_display,the_screen);	/* e.g. */
  the_GC = XCreateGC(the_display,the_window,
                GCForeground|GCBackground,&the_GC_values);
  ...
 
Note: the code uses BlackPixel and WhitePixel to avoid assuming that 1 is 
black and 0 is white or vice-versa.  The relationship between pixels 0 and 1 
and the colors black and white is implementation-dependent.  They may be 
reversed, or they may not even correspond to black and white at all.

Also note that actually using BlackPixel and WhitePixel is usually the wrong 
thing to do in a finished program, as it ignores the user's preference for 
foreground and background.

And also note that you can run into the same situation in an Xt-based program
if you draw into the XtWindow(w) right after it has been realized; it may
not yet have appeared.

----------------------------------------------------------------------
Subject: 135)  What is the difference between a Screen and a screen?

	The 'Screen' is an Xlib structure which includes the information about
one of the monitors or virtual monitors which a single X display supports. A 
server can support several independent screens. They are numbered unix:0.0,
unix:0.1, unix:0.2, etc; the 'screen' or 'screen_number' is the second digit --
the 0, 1, 2 which can be thought of as an index into the array of available 
Screens on this particular Display connection.
	The macros which you can use to obtain information about the particular
Screen on which your application is running typically have two forms -- one
which takes a Screen and one with takes both the Display and the screen_number.
	In Xt-based programs, you typically use XtScreen(widget) to determine 
the Screen on which your application is running, if it uses a single screen.
	(Part of the confusion may arise from the fact that some of the macros
which return characteristics of the Screen have "Display" in the names -- 
XDisplayWidth, XDisplayHeight, etc.)
	
----------------------------------------------------------------------
Subject: 136)  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 export.lcs.mit.edu 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; 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) as /pub/X11/motif++.21.jul.92.tar.Z.
	
	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 export 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 export.mit.edu.au 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: 137)  Where can I obtain alternate language bindings to X?

	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 export.lcs.mit.edu 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). 
	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
export.lcs.mit.edu: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 export obsoletes the version on the R5 contrib
tape. 
	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.

	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).

	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@expo.lcs.mit.edu.

----------------------------------------------------------------------
Subject: 138)  Can XGetWindowAttributes get a window's background pixel/pixmap?

	No.  Once set, the background pixel or pixmap of a window cannot be 
re-read by clients.  The reason for this is that a client can create a pixmap,
set it to be the background pixmap of a window, and then free the pixmap. The 
window keeps this background, but the pixmap itself is destroyed.  If you're 
sure a window has a background pixel (not a pixmap), you can use XClearArea() 
to clear a region to the background color and then use XGetImage() to read 
back that pixel.  However, this action alters the contents of the window, and 
it suffers from race conditions with exposures. [courtesy Dave Lemke of NCD 
and Stuart Marks of Sun]

	Note that the same applies to the border pixel/pixmap. This is a 
(mis)feature of the protocol which allows the server is free to manipulate the
pixel/pixmap however it wants.  By not requiring the server to keep the 
original pixel or pixmap, some (potentially a lot of) space can be saved. 
[courtesy Jim Fulton, MIT X Consortium]

----------------------------------------------------------------------
Subject: 139)  How do I create a transparent window?
	
	A completely transparent window is easy to get -- use an InputOnly
window. In order to create a window which is *mostly* transparent, you have
several choices:
	- the SHAPE extension first released with X11R4 offers an easy way to
make non-rectangular windows, so you can set the shape of the window to fit the
areas where the window should be nontransparent; however, not all servers 
support the extension.
	- a machine-specific method of implementing transparent windows for
particular servers is to use an overlay plane supported by the hardware.  Note 
that there is no X notion of a "transparent color index".
	- a generally portable solution is to use a large number of tiny 
windows, but this makes operating on the application as a unit difficult.
	- a final answer is to consider whether you really need a transparent
window or if you would be satisfied with being able to overlay your application
window with information; if so, you can draw into separate bitplanes in colors
that will appear properly.

[thanks to der Mouse, mouse@lightning.McRCIM.McGill.EDU, 3/92; see also
The X Journal 1:4 for a more complete answer, including code samples for this
last option]

----------------------------------------------------------------------
Subject: 140)  Why doesn't GXxor produce mathematically-correct color values?

	When using GXxor you may expect that drawing with a value of black on a
background of black, for example, should produce white. However, the drawing
operation does not work on RGB values but on colormap indices. The color that
the resulting colormap index actually points to is undefined and visually
random unless you have actually filled it in yourself. [On many X servers Black
and White often 0/1 or 1/0; programs taking advantage of this mathematical
coincidence will break.]
	If you want to be combining colors with GXxor, then you should be 
allocating a number of your own color cells and filling them with your chosen
pre-computed values.
	If you want to use GXxor simply to switch between two colors, then you 
can take the shortcut of setting the background color in the GC (graphics 
context) to 0 and the foreground color to a value such that when it draws over 
red, say, the result is blue, and when it draws over blue the result is red. 
This foreground value is itself the XOR of the colormap indices of red and 
blue.

[Thanks to Chris Flatters (cflatter@zia.aoc.nrao.EDU) and Ken Whaley 
(whaley@spectre.pa.dec.com), 2/91]

----------------------------------------------------------------------
Subject: 141)  Why does every color I allocate show up as black?

	Make sure you're using 16 bits and not 8.  The red, green, and blue 
fields of an XColor structure are scaled so that 0 is nothing and 65535 is 
full-blast. If you forget to scale (using, for example, 0-255 for each color) 
the XAllocColor function will perform correctly but the resulting color is 
usually black. 

[Thanks to Paul Asente, asente@adobe.com, 7/91]

----------------------------------------------------------------------
Subject: 142)  Why can't my program get a standard colormap?
I have an image-processing program which uses XGetRGBColormap() to get the 
standard colormap, but it doesn't work. 

	XGetRGBColormap() when used with the property XA_RGB_DEFAULT_MAP does 
not create a standard colormap -- it just returns one if one already exists.
Use xstdcmap or do what it does in order to create the standard colormap first.

[1/91; from der Mouse (mouse@larry.mcrcim.mcgill.edu)]

----------------------------------------------------------------------
Subject: 143)  Why does the pixmap I copy to the screen show up as garbage? 

	The initial contents of pixmaps are undefined.  This means that most
servers will allocate the memory and leave around whatever happens to be there 
-- which is usually garbage.  You probably want to clear the pixmap first using
XFillRectangle() with a function of GXcopy and a foreground pixel of whatever 
color you want as your background (or 0L if you are using the pixmap as a 
mask). [courtesy Dave Lemke of NCD and Stuart Marks of Sun]

----------------------------------------------------------------------
Subject: 144)  How do I check whether a window ID is valid?
My program has the ID of a window on a remote display. I want to check whether
the window exists before doing anything with it.

	Because X is asynchronous, there isn't a guarantee that the window 
would still exist between the time that you got the ID and the time you sent an
event to the window or otherwise manipulated it. What you should do is send the
event without checking, but install an error handler to catch any BadWindow 
errors, which would indicate that the window no longer exists. This scheme will
work except on the [rare] occasion that the original window has been destroyed 
and its ID reallocated to another window.

[courtesy Ken Lee (klee@synoptics.com), 4/90]

----------------------------------------------------------------------
Subject: 145)  Can I have two applications draw to the same window?

	Yes. The X server assigns IDs to windows and other resources (actually,
the server assigns some bits, the client others), and any application that 
knows the ID can manipulate the resource [almost any X server resource, except
for GCs and private color cells, can be shared].
	The problem you face is how to disseminate the window ID to multiple 
applications. A simple way to handle this (and which solves the problem of the
applications' running on different machines) is in the first application to 
create a specially-named property on the root-window and put the window ID into
it. The second application then retrieves the property, whose name it also
knows, and then can draw whatever it wants into the window.
	[Note: this scheme works iff there is only one instance of the first
application running, and the scheme is subject to the limitations mentioned
in the Question about using window IDs on remote displays.]
	Note also that you will still need to coordinate any higher-level 
cooperation among your applications. 
	Note also that two processes can share a window but should not try to 
use the same server connection. If one process is a child of the other, it 
should close down the connection to the server and open its own connection.

[mostly courtesy Phil Karlton (karlton@wpd.sgi.com) 6/90]

----------------------------------------------------------------------
Subject: 146)  Why can't my program work with tvtwm or swm?

	A number of applications, including xwd, xwininfo, and xsetroot, do not
handle the virtual root window which tvtwm and swm use; they typically return 
the wrong child of root. A general solution is to add this code or to use it in
your own application where you would normally use RootWindow(dpy,screen):

/* Function Name: GetVRoot
 * Description: Gets the root window, even if it's a virtual root
 * Arguments: the display and the screen
 * Returns: the root window for the client
 */
#include <X11/Xatom.h>
Window GetVRoot(dpy, scr)
Display        *dpy;
int             scr;
{
Window          rootReturn, parentReturn, *children;
unsigned int    numChildren;
Window          root = RootWindow(dpy, scr);
Atom            __SWM_VROOT = None;
int             i;

  __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False);
  XQueryTree(dpy, root, &rootReturn, &parentReturn, &children, &numChildren);
  for (i = 0; i < numChildren; i++) {
	Atom            actual_type;
	int             actual_format;
	long            nitems, bytesafter;
	Window         *newRoot = NULL;

	if (XGetWindowProperty(dpy, children[i], __SWM_VROOT, 0, 1,
	    False, XA_WINDOW, &actual_type, &actual_format, &nitems,
            &bytesafter, (unsigned char **) &newRoot) == Success && newRoot) {
			root = *newRoot;
			break;
		}
	}

	return root;
}

[courtesy David Elliott (dce@smsc.sony.com). Similar code is in ssetroot, a
version of xsetroot distributed with tvtwm. 2/91]

A header file by Andreas Stolcke of ICSI on export.lcs.mit.edu:contrib/vroot.h 
functions similarly by providing macros for RootWindow and DefaultRootWindow;
code can include this header file first to run properly in the presence of a
virtual desktop.
	
----------------------------------------------------------------------
Subject: 147)  How do I keep a window from being resized by the user?

	Resizing the window is done through the window manager; window managers
can pay attention to the size hints your application places on the window, but 
there is no guarantee that the window manager will listen. You can try setting 
the minimum and maximum size hints to your target size and hope for the best. 
[1/91]

----------------------------------------------------------------------
Subject: 148)  How do I keep a window in the foreground at all times?

	It's rather antisocial for an application to constantly raise itself
[e.g. by tracking VisibilityNotify events] so that it isn't overlapped -- 
imagine the conflict between two such programs running.  
	The only sure way to have your window appear on the top of the stack
is to make the window override-redirect; this means that you are temporarily
assuming window-management duties while the window is up, so you want to do 
this infrequently and then only for short periods of time (e.g. for popup 
menus or other short parameter-setting windows).

[thanks to der Mouse (mouse@larry.mcrcim.mcgill.edu); 7/92]

----------------------------------------------------------------------
Subject: 149)  How do I make text and bitmaps blink in X?

	There is no easy way.  Unless you're willing to depend on some sort of
extension (as yet non-existent), you have to arrange for the blinking yourself,
either by redrawing the contents periodically or, if possible, by playing games
with the colormap and changing the color of the contents.

[Thanks to mouse@larry.mcrcim.mcgill.edu (der Mouse), 7/91]

----------------------------------------------------------------------
Subject: 150)+ How do I get a double-click in Xlib?

	Users of Xt have the support of the translation manager to help 
get notification of double-clicking.
	There is no good way to get only a double-click in Xlib, because the 
protocol does not provide enough support to do double-clicks.  You have to do 
client-side timeouts, unless the single-click action is such that you can defer
actually taking it until you next see an event from the server.  Thus, you 
have to do timeouts, which means system-dependent code.  On most UNIXish 
implementations, you can use XConnectionNumber to get the file descriptor of 
the X connection and then use select() or something similar on that.
	Note that many user-interface references suggest that a double-click
be used to extend the action indicated by a single-click; if this is the case
in your interface then you can execute the first action and as a compromise
check the timestamp on the second event to determine whether it, too, should
be the single-click action or the double-click action.

[Thanks to mouse@larry.mcrcim.mcgill.edu (der Mouse), 4/93]

----------------------------------------------------------------------
Subject: 151)! How do I render rotated text?
	
	Xlib intentionally does not provide such sophisticated graphics 
capabilities, leaving them up to server-extensions or clients-side graphics
libraries.
	Your only choice, if you want to stay within the core X protocol, is to
render the text into a pixmap, read it back via XGetImage(), rotate it "by 
hand" with whatever matrices you want, and put it back to the server via 
XPutImage(); more specifically:
	1) create a bitmap B and write your text to it.
	2) create an XYBitmap image I from B (via XGetImage).
	3) create an XYBitmap Image I2 big enough to handle the transformation.
	4) for each x,y in I2, I2(x,y) = I(a,b) where 
		a = x * cos(theta) - y * sin(theta)
		b = x * sin(theta) + y * cos(theta)
	5) render I2
	Note that you should be careful how you implement this not to lose
bits; an algorithm based on shear transformations may in fact be better.
	The high-level server-extensions and graphics packages available for X 
also permit rendering of rotated text: Display PostScript, PEX, PHiGS, and GKS,
although most are not capable of arbitrary rotation and probably do not use the
same fonts that would be found on a printer.
	In addition, if you have enough access to the server to install a font
on it, you can create a font which consists of letters rotated at some
predefined angle. Your application can then itself figure out placement of each
glyph.

[courtesy der Mouse (mouse@larry.mcrcim.mcgill.edu), Eric Taylor 
(etaylor@wilkins.bmc.tmc.edu), and Ken Lee (klee@synoptics.com), 11/90;
Liam Quin (lee@sq.com), 12/90]

	InterViews (C++ UI toolkit, in the X contrib software) has support for
rendering rotated fonts in X.  It could be one source of example code.
[Brian R. Smith (brsmith@cs.umn.edu), 3/91]
	Another possibility is to use the Hershey Fonts; they are 
stroke-rendered and can be used by X by converting them into XDrawLine 
requests. [eric@pencom.com, 10/91]

	The xrotfont program by Alan Richardson (mppa3@syma.sussex.ac.uk) 
(posted to comp.sources.x July 14 1992) paints a rotated font by implementing 
the method above and by using an outline (Hershey) font.
	The xvertext package by Alan Richardson (mppa3@syma.sussex.ac.uk) is a 
set of functions to facilitate the writing of text at any angle.  Version 3.0 
was recently released to alt.sources and comp.sources.misc [3/93]; it is also 
on export as contrib/xvertext.3.0.shar.Z. 

	O'Reilly's X Resource Volume 3 includes information from HP about
modifications to the X fonts server which provide for rotated and scaled text.

----------------------------------------------------------------------
Subject: 152)  What is the X Registry? (How do I reserve names?)

	There are places in the X Toolkit, in applications, and in the X
protocol that define and use string names. The context is such that conflicts
are possible if different components use the same name for different things.
	The MIT X Consortium maintains a registry of names in these domains:
orgainization names, selection names, selection targets, resource types,
application classes, and class extension record types; and several others.
	The list as of 7/91 is in the directory mit/doc/Registry on the R5 
tape; it is also available by sending "send docs registry" to the xstuff mail
server.
	To register names (first come, first served) or to ask questions send 
to xregistry@expo.lcs.mit.edu; be sure to include a postal address for
confirmation.

[11/90; condensed from Asente/Swick Appendix H]
----------------------------------------------------------------------


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

Newsgroup: comp.windows.x
Document_id: 66425
From: guy@x.co.uk (Guy Singh)
Subject: Re: >>>>> MOUSE BUTTONS 1,2 & 3 <<<<<<<< urgent !

>>>>> On 5 Apr 93 10:10:23 GMT, it4ik@dmu.ac.uk (I Kler) said:
IK> Nntp-Posting-Host: elm

IK> I know it sounds stupid, but....

IK> Does anyone know how to control individual mouse buttons.
IK> I am writing an application, which currently makes use of
IK> ButtonPressMask, however this is invoked by the pressing
IK> of any mouse button. I want to be able to restrict this
IK> to one of the 3 buttons. I tried Button1PressMask, but
IK> just get undefined errors. I know it can be done, and I
IK> am pretty sure theres an easy answer to it, but I just don't know
IK> what it is.
IK> "time is of the essence ..."

There is no event mask for a particular mouse button press. However in your
event handler you can use the event structure passed in and query it to find
which button was pressed i.e.

void
SomeEventHandler(Widget w, XtPointer data, XEvent *event)
{
    /* Catch the button 1 (usually left button) */
    if ( event->xbutton.button == Button1 ) {
        /* do some action */
    } else {
        /* do nothing and exit from function */
    } 
}
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
Document_id: 66426
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Re: X protocol packet type

In article <93091.144124DEP@SLACVM.SLAC.STANFORD.EDU> <DEP@SLACVM.SLAC.STANFORD.EDU> writes:
>Is there a way to identify an X-protocol packet under DECNET? Under
>TCP/IP?
>
	The information in the packets isn't necessarily
distinctive -- you need to know that it is an X11 connection.
	-- Ethan

Newsgroup: comp.windows.x
Document_id: 66427
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Drawing colour pixmaps - not rectangular


In article <1993Mar31.022947.149@etrog.se.citri.edu.au>, jck@catt.citri.edu.au (Justin Kibell) writes:

|>   I am writing a program which needs to draw colour XPM pixmap files onto a background without having the borders show up. I cannot do xor as the colours all stuff up. I cannot use XCopyPlane() as that is for single planes only. I want to be able to specify a colour in the pixmap to be used as the opaque colour. Is this possible. 
|> 
|> Games such as xjewel have the same problem. How does the mouse pointer do it?
|> 
|> Any help would be helpful? :-)
|> 

You wanna do masking. Build a bitmap (pixmap of depth one) where all pixels
you name "opaque" are 1 (that get copied) and the others are 0. Use this
bitmap as the clip_mask in the gc used for XCopyArea(), and remember to
adjust the clip_origin coordinates to the XCopyArea() blit origin.

The Mouse pointer (besides from that it is driven using RAMDAC analog
mapping on most hardwares) uses a mask, too.

But be warned: blitting through a mask and especially moving around this mask
is annoying slow on most xservers... it flickers even at 40 MIPS...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66428
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Pixmaps, Masks, & Icons - Clues?


In article <44975@sophia.inria.fr>, lehors@koala.inria.fr (Arnaud Le_Hors) writes:
|> In article <BUZZ.93Mar31093626@lion.bear.com>, buzz@bear.com (Buzz Moschetti)
|> writes:
|> > This is a simple X graphics question:
|> > 
|> > Assume you have a valid Window w, an icon pixmap, and the background
|> > mask (also a pixmap) for that icon.  You wish to place the icon at (x,y)
|> > in w *without* the background.
|> > 
|> > Question: What combination of XCopyArea() and GC functions are necessary?
|> > I think the idea is to "merge only those pixels of pixmap into w as
|> > indicated by the corresponding mask pixel value."  Specifically, the
|> > problem involves a pixmap and mask generated by the XPM libs.
|> > 
|> > Any clues would be most appreciated.
|> 
|> 
|> Xpm provides you with symbolic color names which can be specified at load time.
|> So, for doing what you want I would suggest you to define a Background symbol
|> in your pixmap file which you'll set to whatever color is used by the widget or
|> the window on which you want to put your pixmap. 
|> This would surely be the simplest and fastest way to do what you want.  

No. As soon as you blit two of this icons once on top of the other with a
little dislocation, you see the rectangular blit crashes too much of the
icon first blitted, because it draws a full rectangle. The way to do it
is masking: Create a bitmap with all pixels to be merged are 1 and all
not to be merged are 0. Then, set the clip_mask of the gc to this
bitmap, set the clip_x_origin and clip_y_origin of the gc to the x/y
coordinates where you blit the icon to the destination drawable, use GXCopy,
and XCopyArea() the icon pixmap to the destination drawable using this gc.


--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66429
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 1/5

Archive-name: x-faq/part1
Last-modified: 1993/04/04

This article and several following contain the answers to some Frequently Asked 
Questions (FAQ) often seen in comp.windows.x. It is posted to help reduce 
volume in this newsgroup and to provide hard-to-find information of general 
interest.

		Please redistribute this article!

This article includes answers to the following questions, which are loosely
grouped into categories. Questions marked with a + indicate questions new to 
this issue; those with significant changes of content since the last issue are 
marked by !:

  0)  TOPIC: BASIC INFORMATION SOURCES AND DEFINITIONS
  1)! What books and articles on X are good for beginners?
  2)! What courses on X and various X toolkits are available?
  3)! What conferences on X are coming up?
  4)  What X-related public mailing lists are available?
  5)  How can I meet other X developers? 
  6)  What related FAQs are available?
  7)  How do I ask a net-question so as to maximize helpful responses?
  8)  What publications discussing X are available?
  9)  What are these common abbreviations/acronyms?
 10)  What is the ICCCM? (How do I write X-friendly applications?)
 11)  What is the X Consortium, and how do I join?
 12)  Just what are OPEN LOOK and Motif?
 13)  Just what is OpenWindows?
 14)  Just what is DECWindows?
 15)  What is PEX?
 16)  What is "low-bandwidth X" (LBX)? XRemote? PPP? SLIP? CSLIP?
 17)  TOPIC: USING X IN DAY-TO-DAY LIFE
 18)! What are all these different window managers?
 19)  Why does my X session exit when I kill my window manager (sic)?
 20)  Can I save the state of my X session, like toolplaces does?
 21)  How do I use another window manager with DEC's session manager?
 22)  How do I change the keyboard auto-repeat rate?
 23)  How do I remap the keys on my keyboard to produce a string?
 24)! How do I make a screendump or print my application?
 25)  How do I make a color PostScript screendump of the X display?
 26)  How do I make a screendump including the X cursor?
 27)  How do I convert/view Mac/TIFF/GIF/Sun/PICT/img/FAX images in X?
 28)  How can I change the titlebar of my xterm window?
 29)  Where can I find the xterm control sequences?
 30)- Why does the R3 xterm, et al, fail against the R4 server?
 31)  How can I use characters above ASCII 127 in xterm ?
 32)  Why are my xterm menus so small?
 33)  How can I print the current selection?
 34)  How does Xt use environment variables in loading resources?
 35)  How to I have the R4 xdm put a picture behind the log-in window?
 36)  Why isn't my PATH set when xdm runs my .xsession file?
 37)  How do I keep my $DISPLAY when I rlogin to another machine?
 38)  How can I design my own font?
 39)  Why does adding a font to the server not work (sic)?
 40)  How do I convert a ".snf" font back to ".bdf" font?
 41)  What is a general method of getting a font in usable format?
 42)  How do I use DECwindows fonts on my non-DECwindows server?
 43)  How do I add ".bdf" fonts to my DECwindows server?
 44)! How can I set backgroundPixmap in a defaults file? (What is XPM?)
 45)  Why can't I override translations? Only the first item works.
 46)  How can I have xclock or oclock show different timezones?
 47)  I have xmh, but it doesn't work. Where can I get MH?
 48)  Why am I suddenly unable to connect to my Sun X server?
 49)  Why don't the R5 PEX demos work on my mono screen?
 50)! How do I get my Sun Type-[45] keyboard fully supported by Xsun?
 51)  How do I report bugs in X?
 52)  Why do I get "Warning: Widget class version mismatch"?
 53)  Where can I find a dictionary server for xwebster?
 54)  TOPIC: OBTAINING X AND RELATED SOFTWARE AND HARDWARE
 55)  Is X public-domain software?
 56)  How compatible are X11R3, R4, and R5? What changes are there?
 57)! Where can I get X11R5 (source and/or binaries)?
 58)! Where can I get patches to X11R5?
 59)  What is the xstuff mail-archive?
 60)! Where can I get X11R4 (source and binaries)?
 61)  Where can I get OSF/Motif?
 62)  Does Motif work with X11R4? X11R5?
 63)  Where can I get toolkits implementing OPEN LOOK?
 64)! Where can I get other X sources? (including R5 modifications)
 65)! Where can I get interesting widgets?
 66)  Where can I get a good file-selector widget?
 67)  What widget is appropriate to use as a drawing canvas?
 68)  What is the current state of the world in X terminals?
 69)  Where can I get an X server with a touchscreen or lightpen?
 70)  Where can I get an X server on a PC (DOS or Unix)?
 71)  Where can I get an X server on a Macintosh running MacOS?
 72)  Where can I get X for the Amiga?
 73)  Where can I get a fast X server for a workstation?
 74)! Where can I get a server for my high-end Sun graphics board?
 75)  Where can I get an "X terminal" server for my low-end Sun 3/50?
 76)  What terminal emulators other than xterm are available?
 77)! Where can I get an X-based editor or word-processor?
 78)  Where can I get an X-based mailer?
 79)! Where can I get an X-based paint/draw program?
 80)! Where can I get an X-based plotting program?
 81)  Where can I get an X-based spreadsheet?
 82)  Where can I get X-based project-management software?
 83)  Where can I get an X-based PostScript previewer?
 84)  Where can I get an X-based GKS package?
 85)  Where can I get an X-based PEX package?
 86)  Where can I get an X-based TeX or DVI previewer?
 87)  Where can I get an X-based troff previewer?
 88)! Where can I get a WYSIWYG interface builder?
 89)  Where can I find X tools callable from shell scripts?
 90)  Where can I get an X-based debugger?
 91)! How can I "tee" an X program identically to several displays?
 92)  TOPIC: BUILDING THE X DISTRIBUTION [topic needs updating to R5]
 93)  What's a good source of information on configuring the X build?
 94)  Why doesn't my Sun with a cg6 work with R5?
 95)  Why doesn't my Sun with SunOS 4.1 know about _dlsym, etc.?
 96)  What is this strange problem building X clients on SunOS 4.1.2?
 97)  Why can't gcc compile X11R4 on my SPARC?
 98)  What are these I/O errors running X built with gcc?
 99)  What are these problems compiling X11R4 on the older Sun3?
100)  What are these problems compiling the X server on SunOS 4.1.1?
101)  What are these problems using R4 shared libraries on SunOS 4?
102)  Can OLIT programs run with R5 Xt? (_XtQString undefined)
103)  How do I get around the SunOS 4.1 security hole?
104)  How do I get around the frame-buffer security hole?
105)  TOPIC: BUILDING X PROGRAMS 
106)  What is Imake?
107)  Where can I get imake?
108)  I have a program with an Imakefile but no Makefile. What to do?
109)  Why can't I link to the Xlib shape routines?
110)  What are these problems with "_XtInherit not found" on the Sun?
111)  Why can't I compile my R3 Xaw contrib programs under the new X?
112)  TOPIC: PROGRAMMING PROBLEMS AND PUZZLES
113)  Why doesn't my program get the keystrokes I select for (sic)?
114)  How do I figure out what window manager is running?
115)  Is there a skeleton X program available?
116)  Why does XtGetValues not work for me (sic)?
117)  Why don't XtConfigureWidget/XtResizeWidget/XtMoveWidget work?
118)  Why isn't there an XtReparentWidget call like XReparentWindow?
119)  I'm writing a widget and can't use a float as a resource value.
120)  Is this a memory leak in the X11R4 XtDestroyWidget()?!
121)  Are callbacks guaranteed to be called in the order registered?
122)  Why doesn't XtDestroyWidget() actually destroy the widget?
123)  How do I query the user synchronously using Xt?
124)  How do I determine the name of an existing widget?
125)  Why do I get a BadDrawable error drawing to XtWindow(widget)?
126)  Why do I get a BadMatch error when calling XGetImage?
127)  How can my application tell if it is being run under X?
128)  How do I make a "busy cursor" while my application is computing?
129)  How do I fork without hanging my parent X program?
130)  Can I make Xt or Xlib calls from a signal handler?
131)  What are these "Xlib sequence lost" errors?
132)  How can my Xt program handle socket, pipe, or file input?
133)  How do I simulate a button press/release event for a widget?
134)  Why doesn't anything appear when I run this simple program?
135)  What is the difference between a Screen and a screen?
136)  Can I use C++ with X11? Motif? XView?
137)  Where can I obtain alternate language bindings to X?
138)  Can XGetWindowAttributes get a window's background pixel/pixmap?
139)  How do I create a transparent window?
140)  Why doesn't GXxor produce mathematically-correct color values?
141)  Why does every color I allocate show up as black?
142)  Why can't my program get a standard colormap?
143)  Why does the pixmap I copy to the screen show up as garbage? 
144)  How do I check whether a window ID is valid?
145)  Can I have two applications draw to the same window?
146)  Why can't my program work with tvtwm or swm?
147)  How do I keep a window from being resized by the user?
148)  How do I keep a window in the foreground at all times?
149)  How do I make text and bitmaps blink in X?
150)+ How do I get a double-click in Xlib?
151)! How do I render rotated text?
152)  What is the X Registry? (How do I reserve names?)

If you have suggestions or corrections for any of these answers or any 
additional information, please send them directly to uunet!craft!faq;
the information will be included in the next revision (or possibly the one 
after that; thanks for the many suggestions which haven't been incorporated 
yet). 

This version of the FAQ is in the process of having R3 information replaced
by R5 information.

This posting is intended to be distributed at approximately the beginning of 
each month. New versions are archived on export.lcs.mit.edu and are also 
available from mail-server@pit-manager.mit.edu and archive-server@nic.switch.ch
(send "help").

The information contained herein has been gathered from a variety of sources. 
In many cases attribution has been lost; if you would like to claim 
responsibility for a particular item, please let me know. 

Conventions used below: telephone numbers tend to be Bell-system unless 
otherwise noted; prices on items are not included; email addresses are those
that work from the US.

X Window System is a trademark of the Massachusetts Institute of Technology. 
Other trademarks are the property of their respective owners.

(Note: a script by George Ferguson (ferguson@cs.rochester.edu) to pretty-print
this faq is available from ugle.unit.no:/pub/X11/contrib/xfaq2texinfo.)

----------------------------------------------------------------------
Subject:   0)  TOPIC: BASIC INFORMATION SOURCES AND DEFINITIONS
----------------------------------------------------------------------
Subject:   1)! What books and articles on X are good for beginners?

	Ken Lee of SynOptics (klee@synoptics.com) regularly posts to 
comp.windows.x and ba.windows.x a bibliography containing cites of all known 
reference books and how-to manuals and also cites of selected technical 
articles on X and X programming; it is ftp-able as 
	export.lcs.mit.edu:/contrib/Xbibliography and 
	gatekeeper.dec.com:/pub/X11/contrib/Xbibliography

Here is an unordered set of the reference books and tutorials most useful for
beginners; most appear on that list [comments are gathered from a variety of 
places and are unattributable]:

Asente, Paul J., and Swick, Ralph R., "X Window System Toolkit, The Complete
Programmer's Guide and Specification", Digital Press, 1990.  The bible on Xt. A
treasury of information, excellent and invaluable.  Distributed by Digital 
Press, ISBN 1-55558-051-3, order number EY-E757E-DP; and by Prentice-Hall, 
ISBN 0-13-972191-6. Also available through DEC Direct at 1-800-DIGITAL. 
[The examples are on export.lcs.mit.edu in contrib/ and on gatekeeper.dec.com 
(16.1.0.2) in pub/X11/contrib as asente-swick.examples.tar.Z.  They were also 
posted to comp.sources.x as xt-examples/part0[1-5].]

Jones, Oliver, Introduction to the X Window System, Prentice-Hall, 1988, 1989.
ISBN 0-13-499997-5. An excellent introduction to programming with Xlib.  
Written with the programmer in mind, this book includes many practical tips 
that are not found anywhere else. This book is not as broad as the O'Reilly 
Xlib tutorial, but Jones is an experienced X programmer and this shows in the 
quality and depth of the material in the book. Originally written for X11R1, 
recent printings have included corrections and additions and current material.
 
Young, Doug. "The X Window System: Applications and Programming with Xt (Motif 
Version)," Prentice Hall, 1989 (ISBN 0-13-497074-8). The excellent tutorial 
"X Window System Programming and Applications with Xt," (ISBN 0-13-972167-3) 
updated for Motif. [The examples are available on export; the ones from the 
Motif version are in ~ftp/contrib/young.motif.tar.Z.]

Young, Doug and John Pew, "The X Window System: Programming and Applications 
with Xt, OPEN LOOK Edition" (ISBN 0-13-982992-X). The tutorial rewritten for 
OLIT, with new examples and drag/drop information. [Examples are on export in
youg.olit.tar.Z and in you OpenWindows 3 distribution in 
$OPENWINHOME/share/src/olit/olitbook.]

Heller, Dan. "Motif Programmers Manual". The 6th Volume in the O'Reilly series
covers Motif application programming; it's full of good examples. With Motif
reference pages. (ISBN 0-9937175-70-6.)  [The examples are available on uunet
in comp.sources.x and nutshell archives.] [A Motif 1.2 will be out soon.]
 
Scheifler, Robert, and James Gettys, with Jim Flowers and David Rosenthal, "X 
Window System: The Complete Reference to Xlib, X Protocol, ICCCM, XLFD, X 
Version 11, Release 5, Third Edition," Digital Press, 1992. "The Bible" in its 
latest revision, an enhanced version of X documentation by the authors of the 
Xlib documentation. This is the most complete published description of the X 
programming interface and X protocol. It is the primary reference work and is 
not introductory tutorial documentation; additional tutorial works will usually
be needed by most new X programmers.  Digital Press order EY-J802E-DP, ISBN 
0-13-971201-1.
 	
Nye, Adrian, "Xlib Programming Manual, Volume 1" and "Xlib Reference Manual, 
Volume 2," O'Reilly and Associates. A superset of the MIT X documentation; the 
first volume is a tutorial with broad coverage of Xlib, and the second 
contains reference pages for Xlib functions and many useful reference 
appendices.  Both cover X11R5 (and R4). ISBN 0-937175-26-9 (volume 1) and ISBN 
0-937175-27-7 (volume 2). 

Nye, Adrian, and Tim O'Reilly, "X Toolkit Programming Manual, Volume 4,"
O'Reilly and Associates, 1989. The folks at O'Reilly give their comprehensive
treatment to programming with the MIT Intrinsics; R4 versions are now
available, as is a Motif 1.1 version (Volume 4M).

O'Reilly, Tim, ed.,  "X Toolkit Reference Manual, Volume 5," O'Reilly and 
Associates. A professional reference manual for the MIT X11R4 and X11R5 Xt.

Mansfield, Niall. "The X Window System: A User's Guide," Addison-Wesley, 1989.
A tutorial introduction to using X, now upgraded for R4. ISBN 0-201-51341-2.

Quercia, Valerie and Tim O'Reilly. "X Window System User's Guide," O'Reilly and
Associates. A tutorial introduction to using X. ISBN 0-937175-36-6.
Also available in R4 and Motif flavors.

Mui, Linda and Eric Pearce. "X Window System Administrator's Guide for X11 R4 
and R5" [ORA Volume 8]. Help for X users and administrators. 
ISBN 0-937175-83-8.

(Prentice-Hall ordering is 201-767-5937. O'Reilly ordering is 800-998-9938.)

In addition, check the X11R4 and X11R5 core distribution in doc/tutorials for 
some useful papers and tutorials, particularly the file answers.txt.  "Late 
Night's Top Ten X11 Questions" by Dave Lemke (lemke@ncd.com) and Stuart Marks 
(smarks@sun.com) answers other common questions and some of these here in more
detail.

New R5 versions of the O'Reilly references (not yet Volume 6) are now available
[8/92].  A single volume, "Programmer's Supplement for R5" by David Flanagan, 
provides an overview of new R5 features; it includes man pages for Xlib, Xt, 
and Xmu. [ISBN  0-937175-86-2]

----------------------------------------------------------------------
Subject:   2)! What courses on X and various X toolkits are available?

	Advanced Computing Environments periodically offers at least a two-day
Introduction course. Contact Susie Karlson at 415-941-3399 for information.

	AT&T offers training in Xlib and in the Xol set. Contact AT&T Corporate
Education & Training for more info; 1-800-TRAINER in the USA.

	BIM Educational Services offers training in X administration and in
programming with Xt/Motif and Open Windows; the courses are given near 
Brussels. Info: edu@sunbim.be, voice +32-(0)2-7595925, fax +32-(0)2-7599209.

	Communica Software Consultants offers three-day hands-on courses in X 
designed for the X Window System developer and programmer. Contact Chris 
Clarkson, telephone 61 8 3732523, e-mail communica@communica.oz.au. [12/92]

	Cora Computer Technologies (516-485-7343) offers several courses.

	GHCT offers a one week lecture/lab course for programmmers designed by
Douglas Young based on his book "The X Window System: Programming and Applica-
tions with Xt, OSF/Motif Edition". Information: Brian Stell (415-966-8805 or
ghct!brian@sgi.com).

	GHG offers a range of courses on X and Motif. Information: 713-488-8806
or training-info@ghg.hou.tx.us.

	Hands On Learning has live training and self-paced video workshops on 
topics such as using and/or programming X, Xlib, Xm, Xt, and widget-writing. 
Information: 617-272-0088, 800-248-9133.

	Hewlett-Packard (1-800-HPCLASS; or contact your local HP center) offers
a 2-day "Introduction to X", a 5-day Xlib course, a 1-day Xt and Motif 1.1 
seminar, and a 5-day Motif lab course.

	Integrated Computer Solutions, Inc., offers several multi-day, hands-on
courses on X, Xt, and the Xaw and Motif widget sets, in particular. Information
is available at 617-621-0060 and info@ics.com.

	Intelligent Visual Computing teaches several lab courses on-site for
Motif and XView. IVC is at 1-800-776-2810 or +1 919-481-1353 or at 
info@ivc.com.

	Iris Computing Laboratories offers five-day Xlib and Xt courses.
Info: +1-505-988-2670 or info@spectro.com.

	IXI Limited (+44 223 462 131) offers regular X training courses for 
both programmers and non-technical managers. See also: Unipalm, below.

	Learning Tree International offers a four-day course in X Window System
applications development, including Xlib and some information on Motif.  For 
more info call 800-824-9155 (213-417-3484); 613-748-7741 in Canada. Courses are
offered in major North American cities; also in London, Stockholm, Tokyo, and 
elsewhere.

	Lurnix offers 4-day "type-along courses" on Xt; the course is being
ported from Xaw to Xm. Information is available at 800-433-9337 (in CA: -9338).

	Mitch Trachtenberg and Associates offers regular 5-day lab courses on
programming with OSF/Motif, usually in but not limited to Cambridge, MA. 
Info: +1 617-225-0440, info@mta.com.

	Non Standard Logics (+33 (1) 43 36 77 50; requests@nsl.fr) offers
courses on programming with Xlib, Motif, and creating Motif widgets.

	OSF Educational Services (617-621-8778) offers one-day seminars and 
one-week Motif lab courses.

	John A. Pew offers a 5-day course on OLIT, possibly based on his book
on that subject; 408-224-5739.

	SCO (+44 923 816344, scol-info@sco.COM) offers training for its Open 
Desktop (Motif) environment in the UK and Europe.

	Software Pundits (617-270-0639) offers a range of courses.

	Technology Exchange (617-944-3700) offers a 4-day Xlib/Xt/Motif course.

	TeleSoft is now offering a 1-day plus 3-day seminar on X and Motif.
Information: Bruce Sherman (619-457-2700, bds@telesoft.com).

	Unipalm XTech offers OSF's 5-day Motif course and a 1-day overview on 
X.  Information: Unipalm Training at +44 952  211797, xtech@unipalm.co.uk.

	The University of Edinburgh is developing a series of courses on X and
related topics primarily for non-profit-making training in academia but also 
for commercial use. Information: Cliff Booth, Unipalm Ltd, phone +44 223 
420002, fax +44 223 426868.

	Various other vendors are also beginning to offer X training, usually 
specific to a proprietary toolkit or to Xt and a proprietary widget set: DEC 
is offering Xlib courses; Sun offers an XView course.

	Various universities are offering short X courses or overviews: UCLA,
Dartmouth, University of Lowell, University of Canberra (within Australia: 
062-522422) ... 
	UC Berkeley Extension will have a one week X/Motif class for 
programmers in San Francisco starting on July 29.  The class will have a 
hands-on lab. For more information contact UCBX at 415 323 8141.

	Among the best places to find courses are at the various Unix 
conferences -- Uniforum, Usenix, Unix Expo, Xhibition, the MIT X Technical
Conference, the ACM tutorial weeks, &c.

	In addition, the X Consortium posts approximately quarterly a list of
unendorsed speakers and consultants who can provide talks on a variety of X 
topics.

----------------------------------------------------------------------
Subject:   3)! What conferences on X are coming up?

	The Xhibition 93 X trade show and conference, with tutorials, panels, 
presentations, and vendor exhibits, will be held at the San Jose Convention
Center June 7-11, 1993.  Information: +1 617 621 0060, xhibit@ics.com.

	The Tcl/Tk Workshop will be held at UCal Berkeley June 10-11, 1993.
Information: tcl93@cs.berkeley.edu.

	The 1993 Andrew Technical Conference and Consortium Annual Meeting will
be held June 24-25, 1993, in Pittsburgh. Information: 
Wilfred.Hansen@cs.cmu.EDU.

	The European X User Group holds an annual conference which typically 
includes includes paper presentations and a vendor exhibit. EXUG'93, "X in the
Real World and Multimedia" will be held 9/16-9/17 at the Imperial College of
Science and Technology, London. Information: exug@demon.co.uk, niall@uit.co.uk 
or p.whitehead@cc.ic.ac.uk, +44 (0) 223 426534, fax +44 (0) 223 420251.

	The Motif show is held in Washington to coincide with the FedUnix and 
the Federal Open Systems Conference (usually December). Information: 
motif@fedunix.org or paller@fedunix.org, 301-229-1062, fax 301-229-1063.

	The MIT X Technical Conference is typically held in January in Boston.
Registration information is available from registration@expo.lcs.mit.edu.

	The XWorld Conference and Exhibition includes tutorials, panels, 
presentations and vendor exhibits. It is typically held in March in New York 
City.  Information: SIGS Publication Group at 212-274-9135.


	Other trade shows -- UnixExpo, Uniforum, Siggraph -- show an increasing
presence of X, including tutorials and exhibits.

----------------------------------------------------------------------
Subject:   4)  What X-related public mailing lists are available?

	The xpert mailing list is the general, public mailing list on X
maintained by the X Consortium. The mailings are gatewayed, so xpert is almost 
identical to the comp.windows.x Usenet newsgroup. 

	***	If you get comp.windows.x, you don't need to 	***
	***	be added to the xpert mailing list. 		***

	Otherwise, you can join the list to receive X information 
electronically. It is best to find a local distribution; perhaps someone within
your company is already receiving the mailing. As a last resort, send mail to 
xpert-request@expo.lcs.mit.edu with a valid return electronic address. 

	The xannounce mailing list carries major X announcements, such as new
releases (including public patches from MIT), public reviews, adoption of 
standards by the MIT X Consortium, and conference announcements.  It does NOT 
carry advertisements, source code, patches, or questions.  If you already 
receive the Usenet news group comp.windows.x.announce or the xpert mailing 
list, you don't need to be added to the xannounce mailing list.  Otherwise, to 
subscribe, send a request to xannounce-request@expo.lcs.mit.edu. Note: Only 
redistribution addresses will be accepted for this list -- i.e. no personal 
addresses. If you wish to receive xannounce yourself, please contact your mail 
administrator to set up a local redistribution list and to put you on it.  
	comp.windows.x.apps is not gatewayed to a mailing list.

	In addition, the X Consortium sponsors these public lists:
		bug-clx         CLX bug reports and discussions
		x-ada           X and ada
		x11-3d          people interested in X and 3d graphics
		ximage          people interested in image processing and X
		xvideo          discussion of video extensions for X
	To subscribe to one of these lists, assuming no-one in your 
organization already receives it, send mail to <list>-request@expo.lcs.mit.edu
with the Subject line including the name of the LIST in caps and the request
"addition request".  In the body of the message be sure to give an address for 
your local distribution which is accessible from MIT (eddie.mit.edu).

	A mailing list for topics related to OPEN LOOK is sponsored by Greg
Pasquariello of Unify corporation; send to openlook-request@unify.com (or
openlook-request%unify@uunet.uu.net) for information. 
	A mailing list for bugs in the publicly-available version of XView
source, in particular, is sponsored by Sun; send for information to 
xviewbug-trackers-request@sun.com. 
	A mailing list for topics related to Motif is sponsored by Kee Hinckley
of Alfalfa Software, Inc.; send to motif-request@alfalfa.com for information. 
(This group is gatewayed to comp.windows.x.motif.)
	A mailing list for topics related to the XPM pixmap-format is sponsored
by Arnaud Le Hors of Group Bull; send to xpm-talk-request@sa.inria.fr for
information. [1/91]
	A mailing list discussing InterViews can be subscribed to by sending to
interviews-request@interviews.stanford.edu.
	A mailing list (amiga-x11@nic.funet.fi) for topics related to the port 
of X11 to the Amiga can be subscribed by sending to mailserver@nic.funet.fi a 
message containing
		Subject: Adding myself to AMIGA-X11
		SUBS AMIGA-X11 Your Real Name
	A mailing list discussing ParcPlace's (formerly Solbourne's) OI (Object
Interface) toolkit can be subscribed to at oi-users-requests@bbn.com.
	A mailing list discussing multi-threaded Xlib can be subscribed to at
mt-xlib-request@xsoft.xerox.com.

----------------------------------------------------------------------
Subject:   5)  How can I meet other X developers? 

	O'Reilly and Associates sponsors a mailing list for the use of X user 
group organizers; subscribe by sending to listserv@ora.com the message 
"subscribe xgroups your@internet.address".

	Local area X user's groups are listed in Issue 4 of O'Reilly's X 
Resource journal; a list may also be available from xug@ics.com.

	The French X User Group is called AFUX and is based in Sophia Antipolis
by CERICS. Information can be obtained from Miss Vasseur or Miss Forest; BP 
148; 157, rue Albert Einstein; 06561 Valbonne Cedex; Phone: +33 93 95 45 00 / 
45 01; Fax: +33 93 95 48 57.  [10/90]

	The European X User Group was formed in 1989 to represent X users in 
Europe.  It holds technical conferences at regular intervals. The EXUG also 
publishes a regular newsletter which is distributed free of charge to members. 
The EXUG also runs a email mailing list for members which is frequently used to
address issues of European interest in X. The EXUG can be contacted at
P.Whitehead@cc.ic.ac.uk, +44 (071) 225 8754, fax +44 (071) 823 9497.

	GXUGiV is the German X User's Group in Vorbereitung ("in preparation")
being formed for X programmers and users; it is associated with the EXUG. All
interested should contact Olaf Heimburger (+49 30 7 79 54 64; and at
mcvax!unido!tub!olaf).

----------------------------------------------------------------------
Subject:   6)  What related FAQs are available?

	Liam R. E. Quin (lee@sq.sq.com) posts a FAQ on Open Look to 
comp.windows.open-look.  
	Jan Newmarch (jan@pandonia.canberra.edu.au) posts a FAQ on Motif to 
comp.windows.x.motif.
	Peter Ware (ware@cis.ohio-state.edu) posts a FAQ for
comp.windows.x.intrinsics; it is on export in contrib/FAQ-Xt.
	Art Mulder (art@cs.ualberta.ca) posts to comp.windows.x a FAQ on 
maximizing the performance of X.
	Steve Kotsopoulos (steve@ecf.toronto.edu) posts to comp.windows.x a FAQ
about using X on Intel-based Unix systems.
	The FAQ in alt.binaries.pictures contains information on viewing images
with X and on massaging image formats.
	The FAQ in comp.mail.mh (gatewayed to MH-users@ics.uci.edu) includes a 
section on xmh.
	The FAQ in comp.lang.lisp contains information on several interface
tools and toolkits.
	There exists a PEX/PHiGS FAQ.

----------------------------------------------------------------------
Subject:   7)  How do I ask a net-question so as to maximize helpful responses?

	When asking for help on the net or X mailing lists, be sure to include 
all information about your setup and what you are doing.  The more specific you
are, the more likely someone will spot an error in what you are doing.  Without
all the details, people who want to help you often have to guess -- if they are
able to respond at all.

	Always mention what version of X you are using and where you got it 
from. If your server came from a different source as the rest of your X system,
give details of that, too.  Give the machine type, operating system, and O/S 
version for both the client and server machine.  It may also be appropriate to 
mention the window manager, compiler, and display hardware type you are using.

	Then tell exactly what you are doing, exactly what happens, and what
you expected/wanted to happen.  If it is a command that fails, include the 
exact transcript of your session in the message.  If a program you wrote 
doesn't work the way you expect, include as little of the source necessary 
(just a small test case, please!) for readers to reproduce the problem.

----------------------------------------------------------------------
Subject:   8)  What publications discussing X are available?

	The trade magazines (Unix World, Unix Review, Computer Language, etc.)
are publishing more articles on X.  Two X-specific publications include:

	- O'Reilly and Associates publishes "The X Resource: A Practical 
Journal of the X Window System" (103 Morris St. #A, Sebastapol, CA 95472).  
Editorial information: Adrian Nye, adrian@ora.com.

	- The X Journal is started bi-monthly publication September 1991 on a 
variety of X topics. Subscription information: The X Journal, Subscriber 
Services, Dept XXX, P.O. Box 3000, Denville, NJ 07834, USA. Editorial 
information: editors%topgun@uunet.uu.net.

----------------------------------------------------------------------
Subject:   9)  What are these common abbreviations/acronyms?

	Xt: The X Toolkit Intrinsics is a library layered on Xlib which 
provides the functionality from which the widget sets are built. An "Xt-based" 
program is an application which uses one of those widget sets and which uses 
Intrinsics mechanisms to manipulate the widgets.
	Xmu: The Xmu library is a collection of Miscellaneous Utility functions
useful in building various applications and widgets.
	Xaw: The Athena Widget Set is the MIT-implemented sample widget set
distributed with X11 source.
	Xm: The OSF/Motif widget set from the Open Software Foundation; binary
kits are available from many hardware vendors.
	Xhp (Xw): The Hewlett-Packard Widget Set was originally based on R2++, 
but several sets of patches exist which bring it up to R3, as it is distributed
on the X11R4 tapes. Supplemental patches are available to use it with R4/R5.
	CLX: The Common Lisp X Interface is a Common Lisp equivalent to Xlib.
	XDMCP: The X Display Manager Protocol provides a uniform mechanism for 
a display such as an X terminal to request login service from a remote host.
	XLFD: The X Logical Font Description Conventions describes a standard
logical font description and conventions to be used by clients so that they
can query and access those resources.
	RTFM: Common expert-speak meaning "please locate and consult the 
relevant documentation -- Read the Forgotten Manual".
	UTSL: A common expression meaning "take advantage of the fact that you 
aren't limited by a binary license -- Use The Source, Luke".
	API: Application-Programmer Interface. The function calls, etc., in
a programming library.
	BDF: Bitmap Distribution Format; a human-readable format for uncompiled
X fonts.
	GUI: graphical user interface.
	UIL: the User Interface Language, part of OSF/Motif which lets 
programmers specify a widget hierarchy in a simple "outline" form
	WCL: the Widget Creation Language, a package which extends the 
understanding of the Xt resource format such that a widget hierarchy and 
actions on the widgets can be specified through the resources file
	GIL: the file format put out by Sun's OpenWindows Developers Guide 3.0
	UIMS: User Interface Management System

----------------------------------------------------------------------
Subject:  10)  What is the ICCCM? (How do I write X-friendly applications?)

	The Inter-Client Communication Conventions Manual is one of the 
official X Consortium standards documents that define the X environment. It 
describes the conventions that clients must observe to coexist peacefully with 
other clients sharing the same server.  If you are writing X clients, you need 
to read and understand the ICCCM,  in particular the sections discussing the 
selection mechanism and the interaction between your client and the window 
manager.  Get it either:
	- as part of the R4 distribution from MIT
	- in the later editions of the Scheifler/Gettys "X Window System" book
	- as an appendix in the new version of O'Reilly's Volume 0, "X Protocol
Reference Manual." A version in old copies of their Volume 1 is obsolete.
	The version in the Digital Press book is much more readable, thanks to 
the efforts of Digital Press's editors to improve the English and the 
presentation.

[from David Rosenthal, 10/90]

	- the ICCCM was updated for R5; updates are published in O'Reilly's
"Programmer's Supplement for Release 5". The complete document is on the R5
tapes.

	Alternate definition: the ICCCM is generally the M in "RTFM" and is
the most-important of the least-read X documents.

----------------------------------------------------------------------
Subject:  11)  What is the X Consortium, and how do I join?

	The MIT X Consortium was formed in January of 1988 to further the
development of the X Window System and has as its major goal the promotion of 
cooperation within the computer industry in the creation of standard software 
interfaces at all layers in the X Window System environment.
	MIT's role is to provide the vendor-neutral architectural and 
administrative leadership required to make this work. Membership in the 
Consortium open to any organization.  There are two categories of membership, 
Member (for large organizations) and Affiliate (for smaller organizations).
	Most of the Consortium's activities take place via electronic mail, 
with meetings when required.  As designs and specifications take shape,
interest groups are formed from experts in the participating organizations.  
Typically a small multi-organization architecture team leads the design, with 
others acting as close observers and reviewers.  Once a complete specification
is produced, it may be submitted for formal technical review by the Consortium
as a proposed standard.  The standards process typically includes public 
review (outside the Consortium) and a demonstration of proof of concept.
	Your involvement in the public review process or as a Member or 
Affiliate of the Consortium is welcomed.
	Write to: Bob Scheifler, MIT X Consortium, Laboratory for Computer 
Science, 545 Technology Square, Cambridge, MA 02139.

[For complete information see the XCONSORTIUM man page from the X11R4
distribution, from which this information is adapted.] [2/90]

----------------------------------------------------------------------
Subject:  12)  Just what are OPEN LOOK and Motif?

	OPEN LOOK and Motif are two graphical user interfaces (GUIs). OPEN LOOK
was developed by Sun with help from AT&T and many industry reviewers; Motif was
developed by the Open Software Foundation (OSF) with input from many OSF 
members. 

	OPEN LOOK is primarily a user-interface specification and style-guide; 
there are several toolkits which can be used to produce OPEN LOOK applications.
Motif includes an API specification; the only sanctioned Motif toolkit is the 
one from OSF. However, there are other toolkits which can be used to produce 
programs which look and behave like OSF/Motif; one of these, ParcPlace's 
(formerly Solbourne's) OI, is a "virtual toolkit" which provides objects in the
style of OPEN LOOK and Motif, at the user's choice.

	OPEN LOOK GUI is also the name of a product from AT&T, comprising 
their OPEN LOOK Intrinsics Toolkit and a variety of applications.

[Thanks to Ian Darwin, ian@sq.com, 5/91]

----------------------------------------------------------------------
Subject:  13)  Just what is OpenWindows?

	Open Windows (3.0) is a Sun product that encompasses: a window system 
that combines a NeWS and X11-compliant server (X/NeWS); a user-interface 
specification (OPEN LOOK) and a series of toolkits that implement it (including
the SunView-like XView and the Xt-based OLIT); Xlib and Xt implementations; and
a number of utilities (olwm window manager, filemgr, shelltool, etc.).

[thanks to Frank Greco (fgreco@govt.shearson.COM), 8/90; 4/92] 

----------------------------------------------------------------------
Subject:  14)  Just what is DECWindows?

	DECWindows is a DEC product that encompasses: an X11 server; the XUI 
toolkit, including the Dwt widget set and UIL; Xlib and Xt implementations; a 
session manager; and a number of utilities (dxwm window manager, dxcalendar, 
dxpsview, etc.).

(At some point Motif flavors of the toolkit and applications will be shipped.)
[8/90] 

----------------------------------------------------------------------
Subject:  15)  What is PEX?

	PEX is the "PHiGS Extension to X".
	PHiGS stands for "Programmer's Hierarchical Interactive Graphics 
System" and is essentially a library of functions that simplifies the creation 
and manipulation of 3D graphics. Many platforms are capable of performing in 
hardware the computations involved in rendering 3D objects; the extension 
allows the client (PHiGS in this case) to take advantage of the specialized 
hardware for 3D graphics.
	Sun Microsystems is currently contracted to develop a freely 
redistributable (copyright similar to the current X copyright) sample
implementation.  Source and documentation are available in the R5 release.
Several vendors are currently selling independently-developed PEX servers for 
their workstations and X terminals.

[last modified 10/91]

----------------------------------------------------------------------
Subject:  16)  What is "low-bandwidth X" (LBX)? XRemote? PPP? SLIP? CSLIP?

There are several options for using X over serial lines:

SLIP - Serial Line IP; this is both a mechanism and a protocol for sending IP
packets over point-to-point serial links. It has been around for several years,
and implementations are available for many of the major TCP/IP implementations.
Most X Terminal vendors supply this as a checkoff item, although nobody really 
ever uses it since it is horribly slow.  The TCP/IP headers add 40 bytes per 
packet and the TCP/IP encoding of the X protocol is rather verbose (rightfully 
so; it is optimized for packing and unpacking over high-speed links). 

CSLIP - Compressed header SLIP; this is a variant of SLIP that compresses the 
40 bytes of TCP/IP headers down to about 5 or 6 bytes.  It still doesn't do 
anything about reencoding the X protocol.  Modems that do compression can help,
but they increase packet latency (it takes time to dribble the uncompressed 
data through typical serial interfaces, plus the compression assembly time).

PPP - Point-to-Point Protocol; this is an emerging standard for point-to-point
links over serial lines that has a more complete set of option negotiation than
SLIP.  A growing number of people see the combination of PPP for the serial 
line management and CSLIP for the header compression as becoming common for 
running normal TCP/IP protocols over serial lines.  Running raw X over the wire
still needs compression somewhere to make it usable.

XRemote - this is the name of both a protocol and set of products originally
developed by NCD for squeezing the X protocol over serial lines.  In addition 
to using a low level transport mechanism similar to PPP/CSLIP, XRemote removes 
redundancies in the X protocol by sending deltas against previous packets and 
using LZW to compress the entire data stream.  This work is done by either a 
pseudo-X server or "proxy" running on the host or in a terminal server.  There 
are several advantages to doing compression outside the modem:
   (1)	You don't *have* to have compressing modems in there if you wouldn't 
	otherwise be using them (e.g. if you were going to be directly 
	connected), and
   (2)	It reduces the I/O overhead by cutting down on the number of bytes that
	have to cross the serial interface, and
   (3)	In addition to the effects of #2, it reduces the latency in delivering 
	packets by not requiring the modem to buffer up the data waiting for 
	blocks to compress.

LBX - Low Bandwidth X; this is an X Consortium project that is working on a
standard for this area.  It is being chaired by NCD and Xerox and is using 
NCD's XRemote protocol as a stepping stone in developing the new protocol.  LBX
will go beyond XRemote by adding proxy caching of commonly-used information 
(e.g. connection setup data, large window properties, font metrics, keymaps, 
etc.) and a more efficient encoding of the X protocol. The hope is to have a 
Standard ready for public review in the first half of next year and a sample 
implementation available in R6.

Additional technical information about how XRemote works and a few notes on how
LBX might be different are available via anonymous ftp from export.lcs.mit.edu
in contrib/ in the following files:
        XRemote-slides.ps               slides describing XRemote
        XRemote-LBX-diffs.ps            more slides describing some of LBX

[information provided by Jim Fulton, jim@ncd.com; 7/92]

	There is also a set of slides on export from Jim Fulton's talk at
the 7th MIT X Technical Conference.

----------------------------------------------------------------------
Subject:  17)  TOPIC: USING X IN DAY-TO-DAY LIFE
----------------------------------------------------------------------
Subject:  18)! What are all these different window managers?

	The window manager in X is just another client -- it is not part of the
X window system, although it enjoys special privileges -- and so there is
no single window manager; instead, there are many which support different ways 
for the user to interact with windows and different styles of window layout,
decoration, and keyboard and colormap focus. In approximate chronological order
(generally, the more recent ones are more conformant with the ICCCM):

	wm: this simple title-bar window manager was phased out in R2 or R3
	uwm: the Universal Window Manager is still popular for its speed, 
although it is very outdated. Moved to contrib/ on the R4 tape.
	twm (old): Tom's Window Manager was among the first non-MIT window 
managers and offered the user a great deal of customization options in a
re-parenting window manager. 
	awm: the Ardent Window Manager remains a hotbed for hackers and offers
some features (dynamic menus) not found on more current window managers
	cwm: cwm is part of the Andrew system. 
	rtl: Siemen's window manager tiles windows so that they don't overlap
and resizes the window with the focus to its preferred size.
	dxwm: Digital's dxwm is part of the DECwindows offering
	hpwm: HP's window manager offers a 3D look; it is a precursor of mwm
	mwm: the Motif window manager is part of the OSF/Motif toolkit
	tekwm: Tektronix's window manager offering 
	olwm (Sun): olwm implements the OPEN LOOK GUI and some of the Style
Guide functionality
	olwm (AT&T): ditto
	gwm: Bull's Generic Window Manager emulates others with a built-in
Lisp interpreter. Version 1.7h (10/91) is on the R5 contrib tape; 1.7n is on
avahi.inria.fr and export.lcs.mit.edu. [3/93]
	m_swm: the Sigma window manager is on the R4 tape
	pswm: Sun's PostScript-based pswm is part of the OpenWindows release
	swm: Solbourne's swm is based on the OI toolkit and offers multiple
GUI support and also a panned virtual window; configuration information comes
from the resources file
	twm (new): MIT's new Tab Window Manager from the R4 tape is a reworked
twm and is the basis for several derivatives, including the one on the R5 tape
	vtwm: vtwm offers some of the virtual-desktop features of swm, with a
single-root window implementation; it is based on the R4 twm and is available
on archive servers. A new version, vtwm-5.0, is based on R5.9 and is available 
from export. [3/92]
	tvtwm: Tom's Virtual Tab Window Manager is also based on the R4 twm
and provides a virtual desktop modeled on the virtual-root window of swm. It is
available on archive servers
	olvwm: the vtwm-style virtual-desktop added to Sun's olwm. It is 
available on archive servers; version 3.3 [1/93] is on export.
	mvwm: the vtwm-style virtual-desktop added to OSF's mwm. A beta version
is floating around (most recently from suresh@unipalm.co.uk) but requires a 
source license to OSF/Motif 1.1.3 [3/92].
	NCDwm: the window manager local to NCD terminals offers an mwm look 
	XDSwm: the window manager local to Visual Technology's terminals 
	ctwm: Claude Lecommandeur's (lecom@sic.epfl.ch) modification of the R5 
twm offers 32 virtual screens in the fashion of HP vuewm; source is on export.
Version 2.2.2 [2/93] also offers the window overview used in vtwm and tvtwm.
	vuewm: HP's MWM-based window manager offers configurable workspaces.
	4Dwm: SGI's enhanced MWM
	piewm: this version of tvtwm offers pie menus

----------------------------------------------------------------------
Subject:  19)  Why does my X session exit when I kill my window manager (sic)?

	It needn't.  What is probably happening is that you are running your 
window manager as the last job in your .xsession or .xinitrc file; your X 
session runs only as long as the last job is running, and so killing your 
window manager is equivalent to logging out. Instead, run the window manager in
the background, and as the last job instead invoke something safe like:
		exec xterm -name Login -rv -iconic
or any special client of your devising which exits on some user action.
Your X session will continue until you explicitly logout of this window, 
whether or not you kill or restart your window manager.

----------------------------------------------------------------------
Subject:  20)  Can I save the state of my X session, like toolplaces does?

	Although no known window manager directly supports such a feature --
which may be equivalent to writing out a .xinitrc or .xsession file naming the
geometry and WM_COMMAND of each application (but olvwm may have something 
close) -- there is a contributed application which does much of what you are 
looking for, although it is not as complete as the SunView program toolplaces. 
Look for the application "xplaces" on an archive-server near you. There are 
several versions of this program floating around; look for a recent vintage.
[10/90]
	Some new pseudo session-managers such as HP's vuewm provide for the 
saving of sessions including information on the geometry of currently-running
applications and the resource database. 
[Bjxrn Stabell (bjoerns@staff.cs.uit.no); 3/93.]
 
----------------------------------------------------------------------
Subject:  21)  How do I use another window manager with DEC's session manager?

	DEC's session manager will start dxwm up by default. To override this, 
add to your .Xdefaults file something like this line, naming the full pathname:
	sm.windowManagerName:   /wherever/usr/bin/X11/your_favorite_wm

----------------------------------------------------------------------
Subject:  22)  How do I change the keyboard auto-repeat rate?

	You can turn auto-repeat on or off by using "xset r on|off". The X
protocol, however, doesn't provide for varying the auto-repeat rate, which is
a capability not supported by all systems.
	Some servers running on systems that support this, however, may provide
command-line flags to set the rate at start-up time. If you have control over 
server start-up (see the man pages for xinit and xdm), you can invoke the 
server with the chosen settings; for example, you can start the Xsun server 
from MIT with the options "-ar1 350 -ar2 30" to reduce the sensitivity of the 
keyboard.

----------------------------------------------------------------------
Subject:  23)  How do I remap the keys on my keyboard to produce a string?

	There is no method of arranging for a particular string to be
produced when you press a particular key. The xmodmap client, which is useful 
for moving your CTRL and ESC keys to useful places, just rearranges keys and 
does not do "macro expansion."
	Some (few) clients, including xterm and several X-based editors, 
accept a translation resource such as:
	xterm*VT100.Translations: #override \
		<Key>F1: string("setenv DISPLAY unix:0")
which permits the shorthand F1 to be pressed to reset the display locally
within an xterm; it takes effect for new xterm clients. To include control
characters in the string, use \nnn, where nnn is the octal encoding of the
control character you want to include.
	Window managers, which could provide this facility, do not yet; nor
has a special "remapper" client been made available.

----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
Document_id: 66430
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 2/5

Archive-name: x-faq/part2
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  24)! How do I make a screendump or print my application?

	The xwd client in the X11 distributions can be used to select a window 
or the background. It produces an XWD-format file of the image of that window. 
The file can be post-processed into something useful or printed with the xpr 
client and your local printing mechanism. You can use this command:
		csh% sleep 10; xwd -root > output.xwd &
and then spend 10 seconds or so setting up your screen; the entire current
display will be saved into the file output.xwd. Note that xwd also has an
undocumented (before R5) -id flag for specifying the window id on the 
command-line. [There are also unofficial patches on export to xwd for 
specifying the delay and the portion of the screen to capture.]

	Two publicly-available programs which allow interactive definition of 
arbitrary portions of the display and built-in delays are asnap and xgrabsc.
There are several versions of xgrabsc; version 2.2, available on export [8/92]
is the most recent.
	xsnap includes some asnap features and supersedes it; it also renders 
XPM output [version unknown]. It is available on export or avahi.inria.fr;
see xsnap-pl2.tar.Z.
	A screen-dump and merge/edit program combining features of xwd and xpr
is available from vernam.cs.uwm.edu as xdump1.0.tar.Z. Information: 
soft-eng@cs.uwm.edu.
	xprint, by Alberto Accomazzi (alberto@cfa.harvard.edu) is available
from cfa0 (128.103.40.1) in xprint.export-2.1.tar.Z.

	To post-process the xwd output of some of these tools, you can use xpr,
which is part of the X11 distribution. Also on several archives are xwd2ps
and XtoPS, which produce Encapsulated PostScript with trimmings suitable for 
use in presentations (see export.lcs.mit.edu:contrib/xwd2ps.tar.Z and
contrib/ImageMagick.tar.Z). Also useful is the PBMPLUS package on many archive
servers; and the Xim package contains Level 2 color PostScript output.

	The XV program can grab a portion of the X display, manipulate it, and
save it in one of the available formats. ImageMagick has similar capabilities.

	Also: 

	Bristol Technology (info@bristol.com, 203-438-6969) offers Xprinter 
2.0, an Xlib API for PostScript and PCL printers; a demo is on ftp.uu.net
in vendor/Bristol/Xprinter.

	ColorSoft 9619-459-8500) offers OPENprint package includes a screen-
capture facility, image-processing, and support for PostScript and 
non-PostScript printers.

	Some vendors' implementations of X (e.g. DECWindows and OpenWindows) 
include session managers or other desktop programs which include "print portion
of screen" or "take a snapshot" options. Some platforms also have tools which 
can be used to grab the frame-buffer directly; the Sun systems, for example, 
have a 'screendump' program which produces a Sun raster file. Some X terminals 
have local screen-dump utilities to write PostScript to a local serial printer.

	Some vendors' implementations of lpr (e.g. Sony) include direct 
support for printing xwd files, but you'll typically need some other package 
to massage the output into a useful format which you can get to the printer.

----------------------------------------------------------------------
Subject:  25)  How do I make a color PostScript screendump of the X display?

	If you need color PostScript in particular, you can 
	- grab the screen-image using a program which can produce color 
PostScript, such as xgrabsc and xv 
	- grab the screen-image using xwd and post-process xwd into color PS.
You can do this using xwd2ps or the XtoPS program from the ImageMagick 
distribution. The PBMPLUS package is also good for this, as is the Xim package.

----------------------------------------------------------------------
Subject:  26)  How do I make a screendump including the X cursor?

	This can't be done unless the X server has been extended. Consider 
instead a system-dependent mechanism for, e.g.,  capturing the frame-buffer.

----------------------------------------------------------------------
Subject:  27)  How do I convert/view Mac/TIFF/GIF/Sun/PICT/img/FAX images in X?

	The likeliest program is an incarnation of Jef Poskanzer's useful++ 
Portable Bitmap Toolkit, which includes a number of programs for converting 
among various image formats. It includes support for many types of bitmaps, 
gray-scale images, and full-color images. PBMPLUS has been updated recently;
the most recent version [12/91] is on export in contrib/pbmplus10dec91.tar.Z.
	Another tool is San Diego Supercomputing Center's IMtools ('imconv' in 
particular), which packages the functionality of PBM into a single binary.
It's available anonymous ftp from sdsc.edu (132.249.20.22).

	Useful for viewing some image-formats is Jim Frost's xloadimage, a
version of which is in the R4 directory contrib/clients/xloadimage; there are 
later versions available, including contrib/xloadimage.3.03.tar.Z on export.  
Graeme Gill's updates to an earlier version of xloadimage are also on export; 
see xli.README and xli.tar.Z.uu; version 1.14 was released 2/93.

	xv (X Image Viewer), written by bradley@cis.upenn.edu (John Bradley), 
can read and display pictures in Sun Raster, PGM, PBM, PPM, X11 bitmap, TIFF, 
GIF and JPEG. It can manipulate on the images: adjust, color, intensity, 
contrast, aspect ratio, crop). It can save images in all of the aforementioned 
formats plus PostScript. It can grab a portion of the X display, manipulate on 
it, and save it in one of the available formats. The program was updated 5/92; 
see the file contrib/xv-2.21.tar.Z on export.lcs.mit.edu.

	The Fuzzy Pixmap Manipulation, by Michael Mauldin <mlm@nl.cs.cmu.edu>.
Conversion and manipulation package, similar to PBMPLUS.  Version 1.0 available
via FTP as nl.cs.cmu.edu:/usr/mlm/ftp/fbm.tar.Z, uunet.uu.net:pub/fbm.tar.Z, 
and ucsd.edu:graphics/fbm.tar.Z.

	The Img Software Set, by Paul Raveling <raveling@venera.isi.edu>, reads
and writes its own image format, displays on an X11 screen, and does some image
manipulations.  Version 1.3 is available via FTP on expo.lcs.mit.edu as
contrib/img_1.3.tar.Z, along with large collection of color images.

	The Utah RLE Toolkit is a conversion and manipulation package similar 
to PBMPLUS.  Available via FTP as cs.utah.edu:pub/urt-*, 
weedeater.math.yale.edu:pub/urt-*, and freebie.engin.umich.edu:pub/urt-*.

	Xim, The X Image Manipulator, by Philip Thompson, does essential 
interactive displaying, editing, filtering, and converting of images. There is 
a version in the X11R4 contrib area; but a more recent version (using R4 and 
Motif 1.1) is available from gis.mit.edu (18.80.1.118). Xim reads/writes gif, 
xwd, xbm, tiff, rle, xim, (writes level 2 eps) and other formats and also has a
library and command-line utilities for building your own applications.

	ImageMagick [2.3; 2/93] by cristy@dupont.com can be retrieved from 
export's contrib area. It is a collection of utilities to transform and display
images on any X server. The tool uses the MIFF format; filters to and from MIFF
from other popular formats (PPM, TIFF, GIF, SUN Raster, etc) are included.

	xtiff is a tool for viewing a TIFF file in an X window.  It was written
to handle as many different kinds of TIFF files as possible while remaining
simple, portable and efficient.  xtiff illustrates some common problems
with building pixmaps and using different visual classes.  It is distributed
as part of Sam Leffler's libtiff package and it is also available on
export.lcs.mit.edu, uunet.uu.net and comp.sources.x. [dbs@decwrl.dec.com,10/90]
xtiff 2.0 was announced in 4/91; it includes Xlib and Xt versions.

	A version of Lee Iverson's (leei@McRCIM.McGill.EDU) image-viewing tool
is available as contrib/vimage-0.9.3.tar.Z on export.lcs.mit.edu.  The package 
also includes an ImageViewPort widget and a FileDialog widget. [12/91;5/92] 

[some material from Larry Carroll (larryc@poe.jpl.nasa.gov), 5/91]

----------------------------------------------------------------------
Subject:  28)  How can I change the titlebar of my xterm window?

	The solution involves sending an escape sequence to xterm which will
cause it to update the property which the window manager relies upon for the
string which appears in the window titlebar.
	A solution is as easy as typing this in an xterm running a shell:
		echo "ESC]2;TEXT^G"
where ESC is the escape key, TEXT is the string you wish to have displayed,
and ^G is a Control-G (the BEL character).

	Here is a more complicated csh alias which changes the titlebar to
the current working directory when you change directories:
		alias newcd 'cd \!*; echo -n ESC]2\;$cwd^G'

	The digit '2' in these strings indicates to xterm that it should 
change only the title of the window; to change both the title and the name 
used in the icon, use the digit '0' instead, and use '1' to change only the 
icon name.

	Note: another way to do this, which prevents an incorrect display of
the local directory if a modified `cd` is used in a subshell, is to wrap the
escape sequences into the PS1 prompt itself.

	Note: on an IBM RS/6000 is may be necessary to begin the sequence with
a ^V.

----------------------------------------------------------------------
Subject:  29)  Where can I find the xterm control sequences?

The best source of such information is in your R5 sources in the file 
ctlseqs.ms; a PostScript version is in mit/hardcopy/clients/ctlseqs.PS.Z.

O'Reilly's Volume 3, the X User's Guide, includes an R5 version of the control 
sequences; the standard volume will be available 3/93, and a Motif version of 
the book is available now. The current (R4) guide includes an outdated version
of the control sequences. [1/93]

Other good sources of information include the R4 version of that document
and also the file in the R4 sources called mit/clients/xterm/ctlseq2.txt, a 
compilation put together by Skip Montanaro (GE CR&D) listing the VT100 
sequences. It dates from R3 but is fairly accurate.  A hardcopy version was 
published in the December 1989 XNextEvent (the XUG newsletter).

In a pinch, a VT100 manual will do.

[last updated 10/91]

----------------------------------------------------------------------
Subject:  30)- Why does the R3 xterm, et al, fail against the R4 server?
----------------------------------------------------------------------
Subject:  31)  How can I use characters above ASCII 127 in xterm ?

	In order to use special characters such as the o-umlaut, you need to 
"stty pass8" but also to use a charcell ISO8859 font, such as 
	XTerm*font: 	-*-*-medium-r-normal-*-*-130-*-*-c-*-iso8859-1
	XTerm*boldfont:	-*-*-bold-r-normal-*-*-130-*-*-c-*-iso8859-1
[The family is intentionally unspecified in this example.]

In addition, you may want to set this in your shell:
	setenv LC_CTYPE iso_8859_1

        For a given character above 127, you can determine the key to use with 
the Alt modifier by finding the equivalent character below 127 (try using
`man ascii`). For example, o-umlaut (v) is Alt-v and the section character (') 
is Alt-'. 

[thanks to Greg Holmberg (greg%thirdi@uunet.uu.net) and Stephen Gildea 
(gildea@expo.lcs.mit.edu); 6/92]

----------------------------------------------------------------------
Subject:  32)  Why are my xterm menus so small?

	You are probably setting the geometry small accidentally. If you give 
a resource specification like this:
		xterm*geometry: 80x24
then you are asking for all widgets under xterm to have their geometry set to
80x24. For the main window, this is OK, as it uses characters for its size. 
But its popup menus don't; they are in pixels and show up small. To set only
the terminal widget to have the specified geometry, name it explicitly:
		xterm*VT100.geometry: 80x24

----------------------------------------------------------------------
Subject:  33)  How can I print the current selection?

	You could paste it into an xterm after executing the lpr command. 
However, a program by Richard Hesketh (rlh2@ukc.ac.uk) specifically for 
manipulating the selection will help; e.g. 
	% xselection PRIMARY | lpr
finds the primary selection and prints it. This command can be placed in a 
window-manager menu or in shell-scripts. xselection also permits the setting of
the selection and other properties. A version is on export.
	Also available is ria.ccs.uwo.ca:pub/xget_selection.tar.Z, which can be
adapted to do this.

----------------------------------------------------------------------
Subject:  34)  How does Xt use environment variables in loading resources?

	You can use several environment variables to control how resources are 
loaded for your Xt-based programs -- XFILESEARCHPATH, XUSERFILESEARCHPATH, and 
XAPPLRESDIR.  These environment variables control where Xt looks for 
application-defaults files as an application is initializing.  Xt loads at most
one app-defaults file from the path defined in XFILESEARCHPATH and another from
the path defined in XUSERFILESEARCHPATH.

	Set XFILESEARCHPATH if software is installed on your system in such a 
way that app-defaults files appear in several different directory hierarchies.
Suppose, for example, that you are running Sun's Open Windows, and you also 
have some R4 X applications installed in /usr/lib/X11/app-defaults. You could 
set a value like this for XFILESEARCHPATH, and it would cause Xt to look up 
app-defaults files in both /usr/lib/X11 and /usr/openwin/lib (or wherever your
OPENWINHOME is located):
	setenv XFILESEARCHPATH /usr/lib/X11/%T/%N:$OPENWINHOME/lib/%T/%N

The value of this environment variable is a colon-separated list of pathnames.  The pathnames contain replacement characters as follows (see 
XtResolvePathname()):

        %N      The value of the filename parameter, or the
                application's class name.
        %T      The value of the file "type".  In this case, the
                literal string "app-defaults"
        %C      customization resource (R5 only)
        %S      Suffix.  None for app-defaults.
        %L      Language, locale, and codeset (e.g. "ja_JP.EUC")
        %l      Language part of %L  (e.g. "ja")
        %t      The territory part of the display's language string
        %c      The codeset part of the display's language string

	Let's take apart the example.  Suppose the application's class name is 
"Myterm". Also, suppose Open Windows is installed in /usr/openwin. (Notice the 
example omits locale-specific lookup.)
	/usr/lib/X11/%T/%N        means /usr/lib/X11/app-defaults/Myterm
	$OPENWINHOME/lib/%T/%N    means /usr/openwin/lib/app-defaults/Myterm

	As the application initializes, Xt tries to open both of the above 
app-defaults files, in the order shown.  As soon as it finds one, it reads it 
and uses it, and stops looking for others.  The effect of this path is to 
search first in /usr/lib/X11, then in /usr/openwin.

	Let's consider another example. This time, let's set 
XUSERFILESEARCHPATH so it looks for the file Myterm.ad in the current working 
directory, then for Myterm in the directory ~/app-defaults.
	setenv XUSERFILESEARCHPATH ./%N.ad:$HOME/app-defaults/%N

	The first path in the list expands to ./Myterm.ad.  The second expands 
to $HOME/app-defaults/Myterm.  This is a convenient setting for debugging 
because it follows the Imake convention of naming the app-defaults file 
Myterm.ad in the application's source directory, so you can run the application
from the directory in which you are working and still have the resources loaded
properly.  NOTE: when looking for app-default files with XUSERFILESEARCHPATH,
for some  bizarre reason, neither the type nor file suffix is defined so %T and
%S are useless.

	With R5, there's another twist.  You may specify a customization 
resource value.  For example, you might run the "myterm" application like this:
	myterm -xrm "*customization: -color"

	If one of your pathname specifications had the value
"/usr/lib/X11/%T/%N%C" then the expanded pathname would be
"/usr/lib/X11/app-defaults/Myterm-color" because the %C substitution character 
takes on the value of the customization resource.

	The default XFILESEARCHPATH, compiled into Xt, is:
		/usr/lib/X11/%L/%T/%N%C:\  (R5)
		/usr/lib/X11/%l/%T/%N%C:\  (R5)
		/usr/lib/X11/%T/%N%C:\     (R5)
		/usr/lib/X11/%L/%T/%N:\
		/usr/lib/X11/%l/%T/%N:\
		/usr/lib/X11/%T/%N

	(Note: some sites replace /usr/lib/X11 with a ProjectRoot in
this batch of default settings.)

	The default XUSERFILESEARCHPATH, also compiled into Xt, is 
		<root>/%L/%N%C:\  (R5)
		<root>/%l/%N%C:\  (R5)
		<root>/%N%C:\     (R5)
		<root>/%L/%N:\
		<root>/%l/%N:\
		<root>/%N:

	<root> is either the value of XAPPLRESDIR or the user's home directory 
if XAPPLRESDIR is not set.  If you set XUSERFILESEARCHPATH to some value other 
than the default, Xt ignores XAPPLRESDIR altogether.

	Notice that the quick and dirty way of making your application find 
your app-defaults file in your current working directory is to set XAPPLRESDIR 
to ".", a single dot.  In R3, all this machinery worked differently; for R3 
compatibilty, many people set their XAPPLRESDIR value to "./", a dot followed 
by a slash.

[Thanks to Oliver Jones (oj@world.std.com); 2/93.]

----------------------------------------------------------------------
Subject:  35)  How to I have the R4 xdm put a picture behind the log-in window?

The answer lies in changing xdm's xrdb resource in the xdm-config file to run a
program to change the background before loading the resources; for example, 
your /usr/lib/X11/xdm/xdm-config file may add the line 
	DisplayManager.0.authorize: false 
to permit unrestricted access to the display before log-in (beware!) and also 
	DisplayManager*xrdb:	/usr/lib/X11/xdm/new.xrdb
where that file does something (for all connections) along the lines of:
	#!/bin/sh
	#comes in with arguments: -display :0 -load /usr/lib/X11/xdm/Xresources
	/usr/bin/X11/xsetroot -display $2 -bitmap /usr/lib/X11/xdm/new.bitmap
	/usr/bin/X11/xrdb $*
Substitute xloadimage or xv for xsetroot, to taste.  Note that this is a 
general hack that can be used to invoke a console window or any other client.

[Thanks to Jay Bourland (jayb@cauchy.stanford.edu), 9/91]

----------------------------------------------------------------------
Subject:  36)  Why isn't my PATH set when xdm runs my .xsession file?

	When xdm runs your .xsession it doesn't source your .cshrc or .login
files. You can set the path explicitly as you normally could for any SH script;
or you can place all environment-setting statements in a separate file and
source it from both the .xsession file and your shell configuration file; or,
if you set your PATH in your .cshrc file, the normal place, you can make your 
.xsession have PATH set simply by making it a csh script, i.e. by starting
your .xsession file off with "#!/bin/csh". 
	If this doesn't work, also try starting off with:
		#!/bin/sh
		# Reset path:
		PATH=`csh -c 'echo $PATH'` ; export PATH

----------------------------------------------------------------------
Subject:  37)  How do I keep my $DISPLAY when I rlogin to another machine?

	There are several ways to avoid having to do a "setenv DISPLAY ..."
whenever you log in to another networked UNIX machine running X.
	One solution is to use the clients/xrsh on the R5 contrib tape.  It 
includes xrsh, a script to start an X application on remote machine, and
xrlogin, a script to start a local xterm running rlogin to a remote machine.
A more recent version is on export in xrsh-5.4.shar.
	One solution is to use the xrlogin program from der Mouse
(mouse@larry.mcrcim.mcgill.edu). You can ftp caveat-emptor versions from
132.206.1.1, in X/xrlogin.c and X/xrlogind.c. The program packages up $TERM and
$DISPLAY into a single string, which is stuffed into $TERM.  rlogin then 
propagates $TERM normally; your .cshrc on the remote machine should contain
		eval `xrlogind`
where xrlogind is a program that checks $TERM and if it is of the special 
format it recognizes, unpacks it and spits out setenv and unsetenv commands to 
recreate the environment variables. [11/90]

	In addition, if all you need to do is start a remote X process on 
another host, and you find
		rsh <HOST> -n /usr/bin/X11/xterm -display $DISPLAY 
too simple (DISPLAY must have your real hostname), then this version of xrsh 
can be used to start up remote X processes. The equivalent usage would be 
		xrsh <HOST> xterm

  #! /bin/sh
  # start an X11 process on another host
  # Date: 8 Dec 88 06:29:34 GMT
  # From: Chris Torek <chris@mimsy.umd.edu>
  # rsh $host -n "setenv DISPLAY $DISPLAY; exec $@ </dev/null >&/dev/null"
  #
  # An improved version:
  # rXcmd (suggested by John Robinson, jr@bbn.com)
  #       (generalized for sh,ksh by Keith Boyer, keith@cis.ohio-state.edu)
  #
  # but they put the rcmd in ()'s which left zombies again.  This
  # script combines the best of both.
  
  case $# in
  [01])  echo "Usage: $0 host x-cmd [args...]";;
  *)
  	case $SHELL in
  	*csh*)  host="$1"; shift
  		xhost "$host" > /dev/null
  		rsh "$host" -n \
  			"setenv TERM xterm; setenv DISPLAY `hostname`:0; \
  			exec $* </dev/null >& /dev/null" &
  		;;
  	*sh)
  		host="$1"; shift
  		xhost "$host" > /dev/null
  		rsh "$host" -n \
  			"TERM=xterm export TERM; \
  			DISPLAY=`hostname`:0 export DISPLAY; \
  			LD_LIBRARY_PATH=/usr/X11/lib export LD_LIBRARY_PATH; \
  			PATH=\$PATH:/usr/X11/bin:/usr/bin/X11:/usr/local/bin; \
			export PATH; \
  			exec $* < /dev/null > /dev/null 2>&1" &
  		;;
  	esac
  	;;
  esac

----------------------------------------------------------------------
Subject:  38)  How can I design my own font?

	One way is to use the "bitmap" client or some other bitmap-editor (e.g.
Sun's icon-editor tool, post-processed with pbmplus) to design the individual 
characters and then to do some large amount of post-processing to concatenate 
them into the BDF format. See Ollie Jones's article in the November 91 X 
Journal for more information.
	The R3 contrib/ area (in fonts/utils/ and in clients/xtroff) contained 
a number of useful utilities, including some to convert between BDF font format
and a simple character format which can be edited with any text editor.
	An easier way is to use the "xfed" client to modify an existing font; a
version is on the R4 or R5 X11R5 contrib tape in contrib/clients/xfed. Xfed is 
available for anonymous ftp on ftp.Informatik.Uni-Dortmund.DE [129.217.64.63], 
possibly as file /pub/windows/X/Diverse-X11-Sourcen/xfed.tar.Z. It can produce
BDF-format fonts which can be compiled for a variety of X servers.
	The xfedor client from Group Bull permits creation of bitmaps, cursors,
XPM1 pixmaps, and fonts. Binaries for common machines are on avahi.inria.fr in
/pub; in addition, the sources (an old Xlib implementation) have been placed 
[5/91] in export:/contrib. 
	If you are a MetaFont user you can use "mftobdf" from the SeeTeX
distribution to convert PK, GF, and PXL fonts to BDF format; the distribution
is on ftp.cs.colorado.edu and on export.lcs.mit.edu.
	The GNU package fontutils-0.4.tar.Z on prep.ai.mit.edu includes xbfe,
a font editor, and a number of utilities for massaging font formats.
	The O'Reilly X Resource issue #2 contains an article on using these
tools to modify a font.
	Fonts can be resized with Hiroto Kagotani's bdfresize; a new version is
in ftp.cs.titech.ac.jp:/X11/contrib.

----------------------------------------------------------------------
Subject:  39)  Why does adding a font to the server not work (sic)?

	After you have built the font using your system's font-compiler, 
installed it in some directory, and run `mkfontdir` or your system's equivalent
(e.g. bldfamily for OpenWindows) in that directory, be sure to use `xset +fp 
$dir` to add that full path-name to the server's font-path, *or* if the 
directory is already in the path, use `xset fp rehash` so that the new fonts in
that directory are actually found; it is this last step that you're probably 
leaving out. (You can also use `xset q` to make sure that that directory is in 
the path.)
	Sometimes your "xset +fp $dir" command fails with a BadValue error:
		X Error of failed request:BadValue
			(integer parameter out of range for operation)
		Major opcode of failed request:  51 (X_SetFontPath)

	This means the X server cannot find or read your font directory, or
that your directory does not look like a font directory to the server.  (The
mention of an "integer parameter" in the message is spurious.)

-- Is the font directory you're specifying readable from the SERVER's file
   system?  Remember, it's the server, not the client, which interprets your
   font directory.  Trouble in this area is especially likely when you issue an
   xset command with shell metacharacters in it (e.g. "xset +fp ~/myfonts") and
   the server is an X terminal or managed by xdm.

-- Is the directory really a font directory?  If you're running an MIT server
   (or most varieties of vendor servers) look in the directory for the file
   "fonts.dir".  If you can't find that file, run mkfontdir(1).  (If you're
   running OpenWindows, look for the file "Families.list".  If you can't find
   it, run bldfamily(1).)

-- If you're in a site where some people run X11Rn servers and others run a
   proprietary server with nonstandard font formats (OpenWindows, for
   example), make sure the font directory is right for the server you're using.
   Hint: if the directory contains .pcf and/or .snf files, it won't work for
   Open Windows.  If the directory contains .ff and/or .fb files, it won't work
   for X11Rn.

[thanks to der Mouse (mouse@larry.mcrcim.mcgill.edu) and to Oliver Jones 
(oj@pictel.com); 7/92 ]

----------------------------------------------------------------------
Subject:  40)  How do I convert a ".snf" font back to ".bdf" font?

	A tool called "snftobdf 1.4" is part of the bdftools package, which is 
available from export.lcs.mit.edu:contrib/bdftools.tar.Z and from 
crl.nmsu.edu:pub/misc/bdftools.tar.Z.  [2/91]

----------------------------------------------------------------------
Subject:  41)  What is a general method of getting a font in usable format?

	der Mouse's getbdf is one solution; it connects to a server and 
produces a .BDF file for any font the server is willing to let it.  It can be 
used as an anything-to-BDF converter, but requires access to a server that can 
understand the font file, thus is both more and less powerful than other tools 
such as snftobdf. getbdf is on 132.206.1.1 in X/getbdf.c or available via mail 
from mouse@larry.McRCIM.McGill.EDU. [5/91]
	In addition, the R5 program "fstobdf" can produce bdf for any font that
the R5 server has access to.

----------------------------------------------------------------------
Subject:  42)  How do I use DECwindows fonts on my non-DECwindows server?

	The DECwindows fonts typically don't exist on a non-DEC installation,
but rewrite rules can be used to alias fonts used by DECwindows applications to
standard MIT fonts of similar characteristics and size. Pick up the file 
contrib/DECwindows_on_X11R4_font.aliases from export.lcs.mit.edu; this file is 
for a standard MIT R4 server.  It can also serve as a starting point for 
creating a similar aliases file for the Open Windows server or other servers 
which do not use the MIT font scheme.

----------------------------------------------------------------------
Subject:  43)  How do I add ".bdf" fonts to my DECwindows server?

	The format of fonts preferred by DEC's X server is the ".pcf" format.
You can produce this compiled format from the .bdf format by using DEC's dxfc
font-compiler. Note that the DEC servers can also use raw .bdf fonts, with a
performance hit.

----------------------------------------------------------------------
Subject:  44)! How can I set backgroundPixmap in a defaults file? (What is XPM?)
I want to be able to do something like this:
	xclock*backgroundPixmap:      /usr/include/X11/bitmaps/rootweave

	You can't do this. The backgroundPixmap resource is a pixmap of the 
same depth as the screen, not a bitmap (which is a pixmap of depth 1). Because 
of this, writing a generic String to Pixmap converter is impossible, since 
there is no accepted convention for a file format for pixmaps. Therefore, 
neither the X Toolkit or the Athena widget set define a String to Pixmap 
converter, because there is no converter you cannot specify this value as a 
resource.  The Athena widget set does define a String to Bitmap converter for 
use in many of its widgets, however.
[courtesy Chris D. Peterson (now kit@ics.com), 4/90]

However:
	A specific converter which encapsulates much of the functionality of 
the xloadimage package by Jim Frost was posted 12/90 by Sebastian Wangnick 
(basti@unido.informatik.uni-dortmund.de); it permits loading of a number of 
image formats as a pixmap.

	The leading general-purpose format for pixmaps is the XPM format used 
by Groupe Bull in several of its programs, including the GWM window manager, by
AT&T in its olpixmap editor, and by ICS in its interface builder. XPM 
distribution, available on export as contrib/xpm.tar.Z, includes read/write 
routines which can easily be adapted to converters by new widgets which want to
allow specification of pixmap resources in the above manner.  See information
on the xpm-talk mailing list above. XPM 3.0f was announced in 3/93 and is
available from export.lcs.mit.edu and avahi.inria.fr; an older version is on 
the R5 contrib tape. [A set of XPM icons collected by Anthony Thyssen 
(anthony@kurango.cit.gu.edu.au) is on export in contrib/AIcons.]

----------------------------------------------------------------------
Subject:  45)  Why can't I override translations? Only the first item works.

	You probably have an extra space after the specification of the first 
item, like this:
	basic*text.translations:  #override \
	Ctrl<Key>a:    beginning-of-line() \n\ 	
	Ctrl<Key>e:    end-of-line()
					      ^ extra space
The newline after that space is ending the translation definition.
[Thanks to Timothy J. Horton, 5/91]

----------------------------------------------------------------------
Subject:  46)  How can I have xclock or oclock show different timezones?

	One solution is xchron, in Volume 6 of comp.sources.x, which can show
the time for timezones other than the local one. 
	Alternatively, you can probably set the timezone in the shell from
which you invoke the xclock or oclock, or use a script similar to this:
	#!/bin/sh
	TZ=PST8PDT xclock -name "San_Luis_Obispo_CA" 2> /dev/null &
	TZ=EST5EDT xclock -name "King_Of_Prussia_PA" 2> /dev/null &

----------------------------------------------------------------------
Subject:  47)  I have xmh, but it doesn't work. Where can I get MH?

	The xmh mail-reader requires the Rand MH mail/message handling system,
which is not part of the UNIX software distribution for many machines. A list 
of various ftp, uucp, e-mail and US-mail sites for both xmh and MH is given in 
the monthly MH FAQ; one source is ics.uci.edu in the file pub/mh/mh-6.7.tar.Z.
If you do not receive the comp.mail.mh newsgroup or the MH-users mailing list, 
you can request a copy of the FAQ, which also includes a section on xmh, 
by sending mail to mail-server@pit-manager.mit.edu containing the request
"send usenet/news.answers/mh-faq".

----------------------------------------------------------------------
Subject:  48)  Why am I suddenly unable to connect to my Sun X server?
After a seemingly random amount of time after the X server has been started, no
other clients are able to connect to it.

	The default cron cleanup jobs supplied by Sun (for 4.0.3, at least)
delete "old" (unreferenced) files from /tmp -- including /tmp/.X11-unix, which 
contains the socket descriptor used by X. The solution is to add "! -type s" to
the find exclusion in the cron job.
[10/90]

----------------------------------------------------------------------
Subject:  49)  Why don't the R5 PEX demos work on my mono screen?

The R5 sample server implementation works only on color screens, sorry.

----------------------------------------------------------------------
Subject:  50)! How do I get my Sun Type-[45] keyboard fully supported by Xsun?
 
Many users wants the Num Lock key to light the Num Lock LED and have the 
appropriate effect on the numeric keypad. The Xsun server as distributed by MIT
doesn't do this but there are two different patches available.
 
The first patch is written by Jonathan Lemon and fixes the Num Lock related 
problems. It is available from export.lcs.mit.edu in the file
contrib/Xsun-R5.numlock_patch.Z .
 
The second is written by Martin Forssen and fixes the Num Lock and Compose keys
and adds support for the different national keyboard layouts for Type-4 and 
Type-5 keyboards. This patch is available from export.lcs.mit.edu in
contrib/sunkbd1216-0314.tar.Z or via email from maf@dtek.chalmers.se.
 
[thanks to Martin Forssen (maf@dtek.chalmers.se or maf@math.chalmers.se), 8/92]

A set of patches by William Bailey (dbgwab@arco.com) was posted to newsgroups
11/92 to provide support for the Type-5 keyboard.

----------------------------------------------------------------------
Subject:  51)  How do I report bugs in X?

	Generally, report bugs you find to the organization that supplied you
with the X Window System. If you received the R5 source distribution directly 
from MIT, please read the file mit/bug-report for instructions. [Look in
mit/doc/bugs/bug-report in R4.]

[Thanks to Stephen Gildea <gildea@expo.lcs.mit.edu>, 5/91; 12/91]

----------------------------------------------------------------------
Subject:  52)  Why do I get "Warning: Widget class version mismatch"?

	This error, which typically goes on to say, "widget 11004 vs. 
intrinsics 11003" indicates that the header files you included when building 
your program didn't match the header files that the Xt library you're linking 
against was built with; check your -I include path and -L link-path to be sure.
	However, the problem also occurs when linking against a version of the 
X11R4 Xt library before patch 10; the version number was wrong. Some Sun OW
systems, in particular, were shipped with the flawed version of the library, 
and applications which link against the library typically give the warnings you
have seen.

----------------------------------------------------------------------
Subject:  53)  Where can I find a dictionary server for xwebster?

	Webster's still owns the copyright to the on-line copies of Webster's
Dictionary which are found at various (university) sites. After it became aware
that these sites were then acting as servers for other sites running xwebster 
and gnuemacs-webster, it asked that server sites close off external access.
	[The NeXT machine apparently is also licensed to have the dictionary. A
Webster daemon for NeXT machines is available from iuvax.cs.indiana.edu 
(129.79.254.192) in "pub/webster/NeXT-2.0".]
	Unless you want to get a legal on-line copy yourself or can find a site
which can grant you access, you are probably out of luck. 

	However, if you are a legitimate site, you'll want to pick up the
latest xwebster, as-is on export:contrib/xwebster.tar.Z [10/91]; the file 
xwebster.README includes discussions of the availability, illegality, and 
non-availability of dictionary servers. 
	
[courtesy steve@UMIACS.UMD.EDU (Steve Miller) and mayer@hplabs.hp.com (Niels 
Mayer) 11/90]

----------------------------------------------------------------------
Subject:  54)  TOPIC: OBTAINING X AND RELATED SOFTWARE AND HARDWARE
----------------------------------------------------------------------
Subject:  55)  Is X public-domain software?

	No. The X software is copyrighted by various institutions and is not 
"public domain", which has a specific legal meaning. However, the X 
distribution is available for free and can be redistributed without fee.
	Contributed software, though, may be placed in the public domain by
individual authors.

----------------------------------------------------------------------
Subject:  56)  How compatible are X11R3, R4, and R5? What changes are there?

The Release Notes for each MIT release of X11 specify the changes from the 
previous release.  The X Consortium tries very hard to maintain compatibility 
across releases.  In the few places where incompatible changes were necessary, 
details are given in the Release Notes.  Each X11 distribution site on the 
network also offers the Release Notes that go with the release they offer; the 
file typically can be found at the top of the distribution tree.

[Stephen Gildea, 1/92]

The comp.windows.x.intrinsics FAQ-Xt lists Xt differences among these versions.

----------------------------------------------------------------------
Subject:  57)! Where can I get X11R5 (source and/or binaries)?

Information about MIT's distribution of the sources on 6250bpi and QIC-24 tape 
and its distribution of hardcopy of the documents is available from 
Software Center, Technology Licensing Office, Massachusetts Institute of 
Technology, 28 Carleton Street, Room E32-300, Cambridge MA 02142-1324,
phone: 617-258-8330.

You will need about 100Mb of disk space to hold all of Core and 140MB to hold
the Contrib software donated by individuals and companies. 

PLEASE use a site that is close to you in the network.

Note that the RELEASE notes are generally available separately in the same
directory; the notes list changes from previous versions of X and offer a
guide to the distribution.

			  North America anonymous FTP:

California	gatekeeper.dec.com		pub/X11/R5
		16.1.0.2
California	soda.berkeley.edu		pub/X11R5
		128.32.131.179
Indiana		mordred.cs.purdue.edu		pub/X11/R5
		128.10.2.2
Maryland	ftp.brl.mil			pub/X11R5
		128.63.16.158
		(good for MILNET sites)
Massachusetts	crl.dec.com			pub/X11/R5
		192.58.206.2
Massachusetts	export.lcs.mit.edu		pub/R5
		18.24.0.12
		(crl.dec.com is better)
Michigan	merit.edu			pub/X11R5
		35.1.1.42
Missouri	wuarchive.wustl.edu		packages/X11R5
		128.252.135.4
Montana		ftp.cs.montana.edu		pub/X.V11R5
		192.31.215.202
New Mexico	pprg.eece.unm.edu		pub/dist/X11R5
		129.24.24.10
New York	azure.acsu.buffalo.edu		pub/X11R5
		128.205.7.6
North Carolina	cs.duke.edu			dist/sources/X11R5
		128.109.140.1
Ohio		ftp.cis.ohio-state.edu		pub/X.V11R5
		128.146.8.52
Ontario		ftp.cs.utoronto.ca		pub/X11R5
		128.100.1.105
Washington DC	x11r5-a.uu.net			X/R5
		192.48.96.12
Washington DC	x11r5-b.uu.net			X/R5
		137.39.1.12

		   Europe/Middle East/Australia anonymous FTP:

Australia	munnari.oz.au			X.V11/R5
		128.250.1.21
Denmark		freja.diku.dk			pub/X11R5
		129.142.96.1
United Kingdom	src.doc.ic.ac.uk		graphics/X.V11R5
		146.169.3.7
		hpb.mcc.ac.uk			pub/X11r5
		130.88.200.7
Finland		nic.funet.fi			pub/X11/R5
		128.214.6.100
France		nuri.inria.fr			X/X11R5
		128.93.1.26
Germany		ftp.germany.eu.net		pub/X11/X11R5
		192.76.144.129
Israel		cs.huji.ac.il			pub/X11R5
		132.65.6.5
Italy		ghost.sm.dsi.unimi.it		pub/X11R5
		149.132.2.1
Netherlands	archive.eu.net			windows/X/R5
		192.16.202.1
Norway		ugle.unit.no			pub/X11R5
		129.241.1.97
Norway		nac.no				pub/X11R5
		129.240.2.40
Switzerland	nic.switch.ch			software/X11R5
		130.59.1.40

			 Japan anonymous FTP:

Kanagawa	sh.wide.ad.jp			X11R5
		133.4.11.11
Kwansai		ftp.ics.osaka-u.ac.jp		X11R5
		133.1.12.30
Kyushu		wnoc-fuk.wide.ad.jp		X11R5
		133.4.14.3
TISN		utsun.s.u-tokyo.ac.jp		X11R5
		133.11.11.11
Tokyo		kerr.iwanami.co.jp		X11R5
		133.235.128.1
Tokyo		scslwide.sony.co.jp		pub/X11R5
		133.138.199.1

				UUCP:

uunet		for UUNET customers		~/X/R5
decwrl		existing neighbors only		~/pub/X11/R5
osu-cis						~/X.V11R5
		(not online until ~ 9 Sept)
utai		existing neighbors only		~/ftp/pub/X11R5
hp4nl		Netherlands only		~uucp/pub/windows/X/R5
		


				 NFS:
Missouri	wuarchive.wustl.edu		/archive/packages/X11R5
		128.252.135.4			mount point: /archive
							
				 AFS:
Pennsylvania	/afs/grand.central.org/pub/X11R5

		     NIFTP (hhcp, cpf, fcp, ...):
United Kingdom	uk.ac.ic.doc.src		<X.V11R5>
		00000510200001
		user "guest"

			      anon FTAM:
United Kingdom	000005102000 (Janet)		X.V11R5
		146.169.3.7 (Internet)
		204334504108 (IXI)

			       ACSNet:
Australia	munnari.oz (fetchfile)		X.V11/R5
		Please fetch only one file
		at a time, after checking
		that a copy is not available
		at a closer site.

[9/2/91; updated for contrib 10/91]

Anyone in Europe can get a copy of the MIT X.V11R5 distribution, including
the core and contributed software and all official patches, free of charge.
The only requirement is to agree to return the tapes, or equivalent new tapes.
Only QIC and TK format cartridges can be provided.  Contact: Jamie Watson,
Adasoft AG, Nesslerenweg 104, 3084 Wabern, Switzerland.
Tel: +41 31 961.35.70 or +41 62 61.41.21; Fax: +41 62 61.41.30; jw@adasoft.ch.

UK sites can obtain X11 through the UKUUG Software Distribution Service, from 
the Department of Computing, Imperial College, London, in several tape formats.
You may also obtain the source via Janet (and therefore PSS) using Niftp (Host:
uk.ac.ic.doc.src Name: guest Password: your_email_address).  Queries should be 
directed to Lee McLoughlin, 071-589-5111#5037, or to info-server@doc.ic.ac.uk 
or ukuug-soft@uk.ac.ic.doc (send a Subject line of "wanted". Also offered are 
copies of comp.sources.x, the export.lcs.mit.edu contrib and doc areas and most
other announced freely distributable packages. 

X11R5 and X11R4 source along with X11R5 contrib code, prebuilt X binaries for
major platforms, and source code examples from O'Reilly's books is available on
an ISO-9660-format CD-ROM from O'Reilly & Associates. [as of 3/92].

X11R5 source is available on ISO-9660-format CD-ROM for members of the Japan
Unix Society from Hiroaki Obata, obata@jrd.dec.com.

X11R5 source along with GNU source, the comp.sources.x archives, and SPARC
binaries is available on an ISO-9660-format CD-ROM from PDQ Software,
510-947-5996 (or Robert A. Bruce, rab@sprite.Berkeley.EDU).

X11R5 source is available from Automata Design Associates, +1 215-646-4894.

Various users' groups (e.g. SUG) offer X sources cheaply, typically on CD-ROM.

Source for the Andrew User Interface System 5.1 and binaries for common systems
are available on CD-ROM. Information: info-andrew-requests@andrew.cmu.edu,
412-268-6710, fax 412-621-8081.

Binaries for X11R5, with shared libX11 and libXmu, for A/UX 2.0.1 are now 
available from wuarchive.wustl.edu:/archive/systems/aux/X11R5.  Patches for 
X11R5 compiled with gcc (but not shared libraries) are also available.
[John L. Coolidge (coolidge@cs.uiuc.edu, 10/91)]

Binaries by Rich Kaul (kaul@ee.eng.ohio-state.edu) for the Sun386i running 
SunOS 4.0.2 are available on dsinc.dsi.com (please only after-hours USA EST).

Binaries for the Sun386i are available from compaq.com (131.168.249.254) in
pub/sun-386i/sources and from vernam.cs.uwm.edu (129.89.9.117).

A binary tree for the Next by Douglas Scott (doug@foxtrot.ccmrc.ucsb.edu) is on
foxtrot.ccmrc.ucsb.edu; it is missing the server, though.

Binaries for the Sun386i are in vernam.cs.uwm.edu:/sun386i.

Binaries for the HP-PA are on hpcvaaz.cv.hp.com (15.255.72.15).

Source and binaries for HP-UX 8.*/9.0(S300/400/700/800) and Domain 10.4 (68K,
DN 10K) are available through the Interworks Users Group; contact Carol Relph
at 508-436-5046, fax 508-256-7169, or relph_c@apollo.hp.com.

Patches to X11R5 for Solaris 2.1 by Casper H.S. Dik (casper@fwi.uva.nl) et al
are on export in contrib/{R5.SunOS5.patch.tar.Z,R5.SunOS5.patch.README}.

Patches to X11R5 for the Sun Type 5 keyboard and the keyboard NumLock are 
available from William Bailey (dbgwab@arco.com).

Also:

Binaries are available from Unipalm (+44 954 211797, xtech@unipalm.co.uk), 
probably for the Sun platforms. 
----------------------------------------------------------------------


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

Newsgroup: comp.windows.x
Document_id: 66431
From: duvvuri@flashflood.cs.odu.edu (D.V.Prakash)
Subject: Pointer/Cursor


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 
I am new to Xlib



replies will be greatly appreciated

Thank you

Prakash
< duvvuri@cs.odu.edu >

Newsgroup: comp.windows.x
Document_id: 66432
From: karenb@westford.ccur.com (Karen Bircsak)
Subject: lost in (TekHVC color) space

(please respond via email!)

Has anybody actually seen the Tek color space stuff working?  I'm not
having any luck with either the xtici editor from export.lcs.mit.edu or with
O'Reilly's ftp-able example xcms from ftp.uu.net.

The O'Reilly example fails for almost every set of inputs because
XcmsTekHVCQueryMaxV returns a smaller value than XcmsTekHVCQueryMinV does
(which makes no sense to me).

The xtici editor fails in XcmsStoreColors, apparently because the
mathematical manipulations of the color specs results in invalid values.  So
you can't actually edit any colors.

We have X11 R5 patch level 22; 8-bit pseudoColor visual.  I've poked around 
in the xcms code in Xlib, but without some understanding of the theory I have 
no idea what's going wrong.  Can somebody confirm if either of the 
above-mentioned programs work on their systems, or let me know if they fail 
for you too?  Please include what hardware/software/patch levels you have.

Any hints?

Please respond with email as I don't regularly read this group.

Thanks,
Karen

-------------------------------------------------------------------------
Karen Bircsak
Concurrent Computer Corporation

karenb@westford.ccur.com
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 66433
From: dbl@visual.com (David B. Lewis)
Subject: comp.windows.x Frequently Asked Questions (FAQ) 3/5

Archive-name: x-faq/part3
Last-modified: 1993/04/04

----------------------------------------------------------------------
Subject:  58)! Where can I get patches to X11R5?

	The release of new public patches by the MIT X Consortium is announced
in the comp.windows.x.announce newsgroup.

	Patches themselves are available via ftp from export and from other
sites from which X11 is available. They are now also distributed through the 
newsgroup comp.sources.x. Some source re-sellers may be including patches in 
their source distributions of X11.

	People without ftp access can use the xstuff mail server. It now has 
23 patches for X11R5 [3/93].  Send to xstuff@expo.lcs.mit.edu the Subject line
		send fixes #
where # is the name of the patch and is usually just the number of the patch.

	Here are a few complications:
	1) fix 5 is in four parts; you need to request "5a", "5b", "5c" and 
"5d" separately
	2) the file sunGX.uu, which was part of an earlier patch, was 
re-released with patch 7 [note: the file doesn't work with Solaris]
	3) fix 8 is in two parts: "8a" and "8b"
	4) fix 13 is in three parts: "13a", "13b", and "13c"
	5) fix 16 is in two parts: "16a" and "16b"
	6) fix 18 replaces the R5fix-test1 for the X Test Suite, which 
previously was optional
	7) fix 19 also needs PEXlib.tar.Z, which you can obtain from xstuff
by asking for "PEXlib.uu.[1234]".
	8) fix 22 is in 9 parts, "22a" through "22i"

----------------------------------------------------------------------
Subject:  59)  What is the xstuff mail-archive?

	The xstuff server is a mail-response program. That means that you mail 
it a request, and it mails back the response.
	Any of the four possible commands must be the first word on a line. The
xstuff server reads your entire message before it does anything, so you can 
have several different commands in a single message (unless you ask for help). 
The xstuff server treats the "Subject:" header line just like any other line 
of the message.
	The archives are organized into a series of directories and 
subdirectories.  Each directory has an index, and each subdirectory has an 
index. The top-level index gives you an overview of what is in the 
subdirectories, and the index for each subdirectory tells you what is in it.

	1) The command "help" or "send help" causes the server to send you a 
more detailed version of this help file.
	2) if your message contains a line whose first word is "index", then 
the server will send you the top-level index of the contents of the archive. If
there are other words on that line that match the name of subdirectories, then 
the indexes for those subdirectories are sent instead of the top-level index. 
For example, you can say "send index fixes" (or "index fixes"). A message that 
requests an index cannot request data.
	3) if your message contains a line whose first word is "send", then the
xstuff server will send you the item(s) named on the rest of the line. To name 
an item, you give its directory and its name. For example
                send fixes 1 4 8a 8b 9
	You may issue multiple send requests. The xstuff server contains many 
safeguards to ensure that it is not monopolized by people asking for large 
amounts of data. The mailer is set up so that it will send no more than a fixed
amount of data each day. If the work queue contains more requests than the 
day's quota, then the unsent files will not be processed until the next day. 
Whenever the mailer is run to send its day's quota, it sends the requests out 
shortest-first.
	4) Some mailers produce mail headers that are unusable for extracting 
return addresses.  If you use such a mailer, you won't get any response.  If 
you happen to know an explicit path, you can include a line like
        path foo%bar.bitnet@mitvma.mit.edu
or
        path bar!foo!frotz
in the body of your message, and the daemon will use it.

	The xstuff server itself can be reached at xstuff@expo.lcs.mit.edu. If 
your mailer deals in "!" notation, try sending to 
{someplace}!mit-eddie!expo.lcs.mit.edu!xstuff.

[based on information from the MIT X Consortium, 8/89, 4/90.]

----------------------------------------------------------------------
Subject:  60)! Where can I get X11R4 (source and binaries)?

	Integrated Computer Solutions, Inc., ships X11R4 on half-inch, 
quarter-inch, and TK50 formats. Call 617-621-0060 for ordering information.

	The Free Software Foundation (617-876-3296) sells X11R4 on half-inch 
tapes and on QIC-24 cartridges.  

	Yaser Doleh (doleh@math-cs.kent.EDU; P.O. Box 1301, Kent, OH 44240) is
making X11R4 available on HP format tapes, 16 track, and Sun cartridges. [2/90]

	European sites can obtain a free X11R4 distribution from Jamie Watson,
who may be reached at chx400!pan!jw or jw@pan.uu.ch. [10/90]

	Non Standard Logics (+33 (1) 43 36 77 50; requests@nsl.fr) makes source
available.

	IXI Limited (+44 223 462 131) is selling X11R4 source on quarter-inch 
cartridge formats and on 5.25" and 3.5" floppy, with other formats available on
request. [IXI, 2/90]

	Virtual Technologies (703-430-9247) provides the entire X11R4 
compressed source release on a single QIC-24 quarter-inch cartridge and also on
1.2meg or 1.44 meg floppies upon request. [Conor Cahill 
(cpcahil@virtech.uu.net) 2/90]

	Young Minds (714-335-1350) makes the R4 and GNU distributions available
on a full-text-indexed CD-ROM.

[Note that some distributions are media-only and do not include docs.]

	X11R4 is ftp-able from export.lcs.mit.edu; these sites are preferable, 
though, and are more direct:

                        Machine                  Internet      FTP
    Location            Name                     Address       Directory
    --------            -------                  --------      -------------
(1) West USA            gatekeeper.dec.com       16.1.0.2      pub/X11/R4
    Central USA         mordred.cs.purdue.edu    128.10.2.2    pub/X11/R4
(2) Central USA         giza.cis.ohio-state.edu  128.146.8.61  pub/X.V11R4
    Southeast USA       uunet.uu.net             192.48.96.2   X/R4
(3) Northeast USA       crl.dec.com              192.58.206.2  pub/X11/R4
(4) UK Janet            src.doc.ic.ac.uk         129.31.81.36  X.V11R4
    UK niftp            uk.ac.ic.doc.src                       <XV11R4>
(5) Australia           munnari.oz.au            128.250.1.21  X.V11/R4

The giza.cis.ohio-state.edu site, in particular, is known to have much of the
contrib stuff that can be found on export. 

The release is available to DEC Easynet sites as CRL::"/pub/X11/R4".

Sites in Australia may contact this address: ftp.Adelaide.EDU.AU [129.127.40.3]
and check the directory pub/X/R4. The machine shadows export and archives
comp.sources.x. (Mark Prior, mrp@ucs.adelaide.edu.au, 5/90)

Note: a much more complete list is distributed as part of the introductory 
postings to comp.sources.x.

A set of X11R4 binaries built by Tom Roell (roell@informatik.tu-muenchen.de) 
for the 386/ix will available from export.lcs.mit.edu in /contrib and in 
/pub/i386/X11R4 from 131.159.8.35 in Europe. Stephen Hite 
(shite@sinkhole.unf.edu) can also distribute to folks without ftp facilities 
via disks sent SASE; contact him for USmail and shipping details. [12/90] In 
addition, the binaries are available via uucp from szebra [1-408-739-1520, TB+ 
(PEP); ogin:nuucp sword:nuucp] in /usr2/xbbs/bbs/x.  In addition, the source is
on zok in /usrX/i386.R4server/. [2/91] In addition, if you are in the US, the 
latest SVR4 binary (April 15), patches, and fonts are available on 
piggy.ucsb.edu (128.111.72.50) in the directory /pub/X386, same filenames as 
above. (Please use after 6pm Pacific, as these are large files.) [5/91]

A set of HP 9000/800 binaries is available on hpcvaaz.cv.hp.com (15.255.72.15)
as ~ftp/pub/MitX11R4/libs.x800.Z. [2/91]

A set of X11R4 binaries for the NeXT 2.x have been made available by Howie Kaye
on cunixf.cc.columbia.edu

A set of binaries by John Coolidge (coolidge@cs.uiuc.edu) for the Mac running 
A/UX 2.0 is available from wuarchive.wustl.edu in the file
(/archive/systems/aux/X11R4/Xupdate2.tar.Z). Also in X11R4/diffs is a set of 
patches for making X11R4 with shared libraries with mkshlib.

A complete distribution of SCO X11R4 binaries by Baruch Cochavy 
(blue@techunix.technion.ac.il) can be found on uunet. The server is Roell's 
X386 1.1b, compiled for ET4000 based SVGA boards.

----------------------------------------------------------------------
Subject:  61)  Where can I get OSF/Motif?
	
	You can obtain either OSF/Motif source or binaries from a number of 
vendors. 
	Motif 1.2.2 source is now available; it is based on X11R5.
	Motif 1.1 is based on the R4.18 Intrinsics and is currently [7/92] at 
1.1.5.
	An OSF/Motif source license must be obtained from OSF before source can
be obtained from the Open Software Foundation or any value-added vendor for
any version. Call the Direct Channels Desk at OSF at 617-621-7300 for ordering 
information.
	Various hardware vendors produce developer's toolkits of binaries, 
header files, and documentation; check your hardware vendor, particularly if
that vendor is an OSF member. 
	In addition, independent binary vendors produce Motif toolkits for
machines for which Motif is not supported by a vendor; the kits include varied 
levels of bug-fixing and support for shared libraries and are based on widely
divergent version of Motif:
	Quest (408-988-8880) sells kits for Suns, as well; 
	IXI (+44 223 462 131) offers kits for Sun3 and Sun4. 
	NSL (+33 (1) 43 36 77 50; requests@nsl.fr) offers kits for the Sun 3 
and Sun 4.
	Bluestone Consulting makes a kit for Sun systems.
	ICS (617-62-0060) makes several binary kits, notably for Sun, DEC.
	HP and DEC have announced support for Motif on Sun systems.
	Unipalm (+44-954-211-797) currently offers for Sun systems a Motif 
Development Kit including X11R4 and based on Motif 1.1.2. The US distributor is
Expert Object Corp (708-926-8500).
	BIM ships Motif 1.1 binaries for Suns. Shared library support is 
included. Contact Alain Vermeiren (av@sunbim.be) or Danny Backx (db@sunbim.be) 
at +32(2)759.59.25 (Fax : +32(2)759.47.95) (Belgium).
	SILOGIC (+33 61.57.95.95) ships Motif 1.2 and Motif 1.1 on Sun 
machines.
	S.I. Systems offers Motif 1.2 for Solaris 2.1; info: 1-800-755-8649 in
USA and Canada.
	Metro Link Inc. (305-970-7353, sales@metrolink.com; in Europe contact
ADNT, (33 1) 3956 5333, UniVision (UK) Ltd. (44) 628 82 22 81) ships an 
implementation of X11R4 and Motif 1.1.2 (including a shared-library 
implementation of libXm.a) for the 386/486 Unix market.  Motif 1.1.2 is 
also available for Sun Sparc based workstations. It has also announced 
Motif 1.2 for Solaris systems.

----------------------------------------------------------------------
Subject:  62)  Does Motif work with X11R4? X11R5?

	Motif 1.2 is based on X11R5.
	Motif 1.1, available in source form from OSF as of August 1990, uses 
the "vanilla" X11R4 Intrinsics, where "vanilla" means "with just a few 
patches"; the file fix-osf which OSF distributes is obsoleted by MIT's patches 
15-17.  The file fix-osf-1.1.1 distributed with the 1.1.1 version or its 
subsequent modification needs to be applied after MIT fix-18, though.

	Motif 1.1.1 to 1.1.3 will work with X11R5 if X11R5 is compiled with
-DMOTIFBC; 1.1.4 and later should work with the vanilla R5, although there are 
some known new geometry-management problems.
	
----------------------------------------------------------------------
Subject:  63)  Where can I get toolkits implementing OPEN LOOK?

	Sun's XView has a SunView-style API. A version is on the X11R4 tape;
the latest [2/92] 3.0 sources are on export in contrib/xview3/.
	XView and X binaries for the Sun 386i ("roadrunner") are available for 
ftp from svin01.win.tue.nl (131.155.70.70), directory pub/X11R4_386i.
	Supported binaries of XView 2.0 or 3.0 include: 

XView for non-Sun Platforms  (domestic and selected international vendors).
Several are also available from Sun; contact your local sales office.

Amiga		GfxBase, Inc.		1881 Ellwell Drive
(AmigaDOS)	(408) 262-1469		Milpitas, CA 95035
		Fax: (408) 262-8276

SGI
Sony (NEWS-OS)
IBM RS/6000
HP 9000
DECstation	UniPress Software	2025 Lincoln Highway
(Ultrix)	(908) 985-8000		Edison, NJ 08817
		Fax: (908) 287-4929

		UniPress Software, Ltd.		PO Box 70
		44-624-661-8850			Viking House
		Fax: 44-624-663-453		Nelson Street
						Douglas, Isle of Man
						United Kingdom

DEC VAXstation	TGV			603 Mission Street
(VMS)		(800) TGV-3440		Santa Cruz, CA 95060
		(408) 427-4366
		Fax: (408) 427-4365

		Unipalm Ltd.			145-147 St. Neots Road
		44-0954-211797			Hardwick
		Fax: 44-0954-211244		Cambridge CB3 7QJ
						England

Intel 386	Quarterdeck Office	150 Pico Boulevard
(DOS)		Systems			Santa Monica, CA 90405
		(213) 392-9851
		Fax: (213) 399-3802

Intel 386	SunSoft Corporation	6601 Center Drive West
(Interactive	310-348-8649		Suite 700
 UNIX and				Los Angeles, CA  90045
 SCO UNIX)	

Stardent	Scripps Institute	Clinic MB-5
(Stellix OS	Fax: (619) 554-4485	10666 N. Torrey Pines Road
 and Titan OS)	Include mailstop MB-5	La Jolla, CA 92057
		By ftp: 192.42.82.8 in pub/binary/{Xview.README,XView.tar.Z}

	AT&T's OPEN LOOK GUI 3.0 Xt-based toolkit is now generally available 
[2/92]; contact 1-800-828-UNIX#544 for information. Binaries are produced
for SPARC systems by International Quest Corporation (408-988-8289). A version
of the toolkit is also produced under the name OLIT by Sun. 
	More recent versions of OLIT have been ported to IBM 6000 and DEC MIPS 
by both UniPress and ICS. OLIT is also available for HP from Melillo Consulting
(908-873-0075). MJM (Somerset, NJ) makes OLIT 4.0 for HP 7xx series running
HPUX 8.0, DECstations, and RS/6000s [thanks to Joanne Newbauer, 
jo@attunix.att.com, 908-522-6677.]

	Sun is shipping OpenWindows 3.0; contact your local sales 
representative for more details; the package includes toolkit binaries and 
header files.

	ParcPlace's (formerly Solbourne's) extensible C++-based Object 
Interface Library, which supports run-time selection between Open Look or 
Motif, is available from 303-678-4626. [5/92]

----------------------------------------------------------------------
Subject:  64)! Where can I get other X sources? (including R5 modifications)

	The MIT Software Center ships the X Test Suite on tape.

	A multi-threaded version of Xlib based on X11R5 patch 12 is now 
available for anonymous FTP from (new version 1/93):
        DEC on gatekeeper.dec.com (16.1.0.2) in /pub/X11/contrib/mt-xlib-1.1
        MIT on export.lcs.mit.edu (18.24.0.12) in /contrib/mt-xlib-1.1

	HP has made available drivers to permit the building of the X11R5
sample server on the HP 9000 Series 700 workstations; the files are on
export.lcs.mit.edu in ~ftp/contrib/R5.HP.SRV. [8/92]

	User-contributed software is distributed through the newsgroup
comp.sources.x, moderated by Chris Olson (chris@imd.sterling.com); also check 
that group for posting information.

	Richard Hesketh (rlh2@ukc.ac.uk) has been creating a list of freely-
available X sources.  The list is stored on export.lcs.mit.edu in contrib as
x-source-list.Z. It lists the main storage locations for the program and 
international sites from which it may be ftp'ed.

	The machine export.lcs.mit.edu has a great deal of user-contributed
software in the contrib/ directory; a good deal of it is present in current or 
earlier versions on the X11R3, X11R4, and X11R5 contrib tapes. There are also
directories for fixes to contrib software.  The file on export in
contrib/00-index.txt is a quick overall index of the software in that area,
provided by Daniel Lewart (d-lewart@uiuc.edu).

	These sites used to and may still mirror export and are of particular 
use for Australasia: Anonymous ftp: ftp.Adelaide.EDU.AU; ACSnet Fetchfile: 
sirius.ua.oz.

	The material on giza.cis.ohio-state.edu, which tends to duplicate 
the export archives, is also available via anonymous UUCP from osu-cis, at TB+ 
and V.32 speeds.  Write to uucp@cis.ohio-state.edu (same as osu-cis!uucp) for 
instructions. [the archive is now maintained by Karl Kleinpaste]

	A new west-coast UUCP X11 Archive is administered by Mark Snitily 
(mark@zok.uucp) and contains the full X11 distribution, the XTEST
distribution, an entire archive of comp.sources.x and other goodies.
	The machine zok has a TB+ modem which will connect to 19.2K, 2400, 
1200 baud (in that order).  The anonymous UUCP account is UXarch with password 
Xgoodies.  The modem's phone number is 408-996-8285.
	A sample Systems (or L.sys) entry might be:
   		zok Any ACU 19200 4089968285 in:--in: UXarch word: Xgoodies
	To get a current listing of the files that are available, download
the file "/usrX/ls-lR.Z".
	A full subject index of the comp.sources.x files is available in the
file "/usrX/comp.sources.x/INDEX".
	The machine has just the one modem, so please do not fetch large 
amounts of data at one sitting.
[courtesy Mark Snitily, 2/90]

In addition, UUNET Source Archives (703-876-5050) tracks comp.sources.x and 
provides 800MB+ of compressed programs on 6250 bpi tapes or 1/4" tapes.  It 
also mirrors export/contrib in its packages/X directory.
	
----------------------------------------------------------------------
Subject:  65)! Where can I get interesting widgets?

	The Free Widget Foundation (FWF) library sponsored by Brian Totty 
(totty@cs.uiuc.edu) is now [2/93] available on a.cs.uiuc.edu (128.174.252.1) 
in pub/fwf-v3.41.shar.Z. The set of widgets there is intended to form the basis
for future contributions. To be added to the discussion list, send to
listserv@cs.uiuc.edu a message saying "subscribe <listname> <your-full-name>"
where <listname> is one of free-widgets-announce, free-widgets-development, or 
free-widgets-bugs.  Version 3.4 is current; look for 4.0 in 4/93.
	The Xew widget set contains widgets for data representation.  Version 
1.2 [4/93] is on export contrib/Xew-1.2.tar.Z.
	Peter Ware's Xo "Open Widget" set, which has Motif-like functionality, 
is on archive.cis.ohio-state.edu as pub/Xo/Xo-2.1.tar.Z [8/92].
	The AthenaTools Plotter Widget Set Version 6-beta [7/92] maintained by
Peter Klingebiel (klin@iat.uni-paderborn.de) includes many graph and plotting 
widgets; a copy is on export in plotter.v6b.tar.Z, plotter.doc.tar.Z,
plotter.afm.tar.Z, and plotter.README. The latest versions may in fact be on
ftp@uni-paderborn.de (131.234.2.32) in /unix/tools.
	An advance version of Marc Quinton's Motif port of the FWF MultiList 
widget is in ftp.stna7.stna.dgac.fr:pub/MultiList.tar.Z [143.196.9.31].
	Additional widgets are available on the contrib/ portion of the X11R4
tapes; these include the Xcu set.
	Paul Johnston's (johnston@spc5.jpl.nasa.gov) X Control Panel widget set
emulates hardware counterparts; sources are on export.lcs.mit.edu in 
Xc-1.3.tar.Z.
	O'Reilly Volume 4, Doug Young's book, the Asente/Swick book, and Jerry 
Smith's "Object-oriented Programming with the X Window System Toolkits" all 
include details on writing widgets and include several useful widgets; sources 
are typically on export and/or UUNET. 
	The Dirt interface builder includes the libXukc widet set which extends
the functionality of Xaw. 
	A graph widget and other 2D-plot and 3D-contour widgets by Sundar 
Narasimhan (sundar@ai.mit.edu) are available from ftp.ai.mit.edu as
/com/ftp/pub/users/sundar/graph.tar.Z. The graph widget has been updated [3/91]
with documentation and histogram capabilities.
	A graph widget is available from ftp.stna7.stna.dgac.fr in
pub/Graph.tar.Z; it uses a segment list for drawing and hence supports a zoom
operation.
	Ken Lee's Xm widget (demo) that uses Display PostScript to draw labels 
at a non-horizontal angle is on export in contrib/dpslabel.tar.Z.
	The Table widget (works like troff TBL tables) is available in several
flavors, one of which is with the Widget Creation Library release.
	Bell Communications Research has developed a Matrix widget for complex
application layouts; it's on export in contrib/Xbae-widgets-3.8.tar.Z [2/93. 
The distribution also includes a "caption" widget to associate labels with 
particular GUI components. (7/92)
	Dan Connolly's (connolly@convex.COM) XcRichText interprets RTF data;
it's on export as contrib/XcRichText-1.1.tar.Z.
	The XmGraph Motif-based graphing widget is on iworks.ecn.uiowa.edu in
/comp.hp/GUI_classic/XmGraph.tar.Z although it may not be stable.
	A TeX-style Layout widget by Keith Packard is described in the 
proceedings of the 7th MIT Technical Conference (O'Reilly X Resource volume 5);
source is available on export contrib/Layout.tar.Z.

	A version of Lee Iverson's (leei@McRCIM.McGill.EDU) image-viewing tool
is available as contrib/vimage-0.9.3.tar.Z on export.lcs.mit.edu.  The package 
also includes an ImageViewPort widget and a FileDialog widget. [12/91;5/92] 
	In addition, the PEXt toolkit by Rich Thomson (rthomson@dsd.es.com) is 
available on export as PEXt.tar.Z; it includes a PEX widget making it easier to
use PEX in Xt-based programs.
	A Motif port of the Xaw clock widget is in ftp.stna7.stna.dgac.fr
in pub/Clock.tar.Z.
	A modification of the Xaw ScrollBar widget which supports the arrowhead
style of other toolkits is on export in contrib/Xaw.Scrollbar.mta.Z.

	A beta 0.3 (11/92) release of the R5 Xaw widgets with a 3D visual 
appearance by Kaleb Keithley (kaleb@thyme.jpl.nasa.gov) is available on export 
in contrib/Xaw3d/R5/Xaw3d-0.3.tar.Z. The library, which is binary-compatible 
with the MIT Xaw, implements a 3D subclass which handles the extra drawing.

Also:
	The Xmt "Motif Tools", Dovetail Systems's shareware library of 9 
widgets and many convenience functions, is available from 
export.lcs.mit.edu:contrib and ftp.ora.com:/pub/xbook/Xmt in xmt-README and 
xmt-1.0.tar.Z.
	The Xtra XWidgets set includes widgets for pie and bar charts, XY 
plots, Help, spreadsheets, data entry forms, and line and bar graphs.  Contact 
Graphical Software Technology at 310-328-9338 (info@gst.com) for information.
	The XRT/graph widget, available for Motif, XView and OLIT, displays
X-Y plots, bar and pie charts, and supports user-feedback, fast updates and
PostScript output. Contact KL Group Inc. at 416-594-1026 (info@klg.com).
	A set of data-entry widgets for Motif is available from Marlan 
Software, 713-467-1458 (gwg@world.std.com).
	A set of graph widgets is available from Expert Database Systems
(212-370-6700).
	A set of OSF/Motif compound widgets and support routines for 2D
visualization is available from Ms Quek Lee Hian, National Computer Board,
Republic of Singapore; Tel : (65)7720435; Fax : (65)7795966; 
leehian@iti.gov.sg, leehian@itivax.bitnet.
	The ICS Widget Databook includes a variety of control widgets and 
special-purpose widgets, available on a variety of platforms.  Information: 
617-621-0060, info@ics.com.
	Information on graphing tools may be obtained from info@TomSawyer.com 
(+1-510-848-0853, fax: +1-510-848-0854).

----------------------------------------------------------------------
Subject:  66)  Where can I get a good file-selector widget?

	The Free Widget Foundation set offers a FileSelector widget, with 
separate directory path and file listing windows, and the FileComplete, which
has emacs-style file completion and ~ expansion. 
	Other available file-requestor widgets include the XiFileSelector from 
Iris Software's book, the xdbx file-selector extracted by David Nedde 
(daven@wpi.wpi.edu), and the FileNominator from the aXe distribution.
	The GhostView, Xfig, and vimage packages also include file-selector 
widgets.

----------------------------------------------------------------------
Subject:  67)  What widget is appropriate to use as a drawing canvas?

	Some widget sets have a widget particularly for this purpose -- a
WorkSpace or DrawingArea which doesn't display anything but lets your Xt 
application know when it has been re-exposed, resized, and when it has received
user key and mouse input. 
	The best thing to do for other widget sets -- including the Athena set 
-- is to create or obtain such a widget; this is preferable to drawing into a 
core widget and grabbing events with XtAddEventHandler(), which loses a number 
of benefits of Xt and encapsulation of the functionality .  
	At least one version has been posted to comp.sources.x (name???). 
	The publicly-available programs xball and xpic include other versions. 
	The Athena Widget manual (mit/doc/Xaw/Template in the R5 distribution) 
includes a tutorial and source code to a simple widget which is suitable for 
use. 
	The Free Widget Foundation set contains a Canvas widget.

----------------------------------------------------------------------
Subject:  68)  What is the current state of the world in X terminals?

Jim Morton (jim@applix.com) posts quarterly to comp.windows.x a list of 
manufacturers and terminals; it includes pricing information. 

Notable buyers-guide surveys include:
	- the September 1991 issue of Systems Integration

----------------------------------------------------------------------
Subject:  69)  Where can I get an X server with a touchscreen or lightpen?

	Labtam (+61 3 587 1444, fax +61 3 580 5581) offers a 19" Surface 
Acoustic Wave touch-screen option on its Xengine terminals.
	Tektronix (1-800-225-5434) provides an X terminal with the Xtouch 
touch-screen. This terminal may also be resold through Trident Systems
(703-273-1012).
	Metro Link (305-970-7353) supports the EloGraphics Serial Touch Screen 
Controllers.

----------------------------------------------------------------------
Subject:  70)  Where can I get an X server on a PC (DOS or Unix)?

	MIT X11R5 already provides a server to many 386/486 *Unixes* with 
support for many of the popular video graphics adapters; and for other 
non-MSDOS PCs you can obtain a server from these sources:

	XFree86 (formerly X386 1.2E) is an enhanced version of X386 1.2, which 
was distributed with X11R5; it includes many bug fixes, speed improvements, and
other enhancements. Source for version 1.2 [2/93] is on export.lcs.mit.edu in 
pub/contrib, ftp.physics.su.oz.au in /X386, and ftp.win.tue.nl in /pub/X386. In
addition, binaries are on ftp.physics.su.oz.au, and ftp.win.tue.nl among other 
systems. Info: x386@physics.su.oz.au.
	Note: this package obsoletes Glenn Lai's Speedup patches for an 
enhanced X11R5 server for 386 UNIXes with ET4000 boards (SpeedUp.tar.Z on 
export).


	Metro Link Inc. (305-970-7353, sales@metrolink.com; in Europe contact
ADNT, (33 1) 3956 5333) ships an implementation of X11R4 for the 386/486 Unix
market.

	SGCS offers X386 Version 1.3, based on Thomas Roell's X11R5 two-headed
server, in binary and source form. Information: 408-255-9665, info@sgcs.com.

	ISC, SCO, UHC, and other well-known operating-system vendors typically
offer X servers.

	For MSDOS PCs:

Daniel J. McCoy (mccoy@gothamcity.jsc.nasa.gov) has started posting monthly a 
list of non-UNIX servers for PCs, Macs, and Amigas; it includes pricing 
information. The current copy is kept on export in contrib as 
XServers-NonUNIX.txt.Z. 

An article on PC X servers appears in the March 2, 1992 Open Systems Today.

	Also of possible use:

	Net-I from Programit (212-809-1707) enables communication among 
DOS, OS/2 and Unix machines and can be used to display PC sessions on your
Unix X display.


----------------------------------------------------------------------
Subject:  71)  Where can I get an X server on a Macintosh running MacOS?

	eXodus from White Pine Software (603-886-9050) runs on any Mac with
at least 1MB of memory and runs the X server within a standard Macintosh 
window.  Version 3.0 [6/91] supports intermixing of X and Mac windows and
the ADSP protocol. The version supports the SHAPE extension and includes
DECwindows support.

	Apple's MacX runs on MacPlus or newer machines with >= 2MB of memory
and system software 6.0.4 or later. Version 1.1 is fully X11R4-based.  It 
supports full ICCCM-compatible cut and paste of text AND graphics between the 
Macintosh and X11 worlds, the SHAPE extension (including SHAPEd windows on the 
Macintosh desktop), an optional built-in ICCCM-compliant window manager, X11R4 
fonts and colors, a built-in BDF font compiler, and built-in standard 
colormaps. Upgrades to MacX are available by ftp from aux.support.apple.com. 
Info: 408-996-1010.  
	[Note: MacX is also the name of a vax-mac xmodem transfer utility.]

	Also: 

	Liken (1-800-245-UNIX or info@qualix.com) software enables monochrome
68000 Mac applications to run on a SPARC system running X. 
	Xport (1-800-245-UNIX (415-572-0200) or xport@qualix.com) enables Mac 
applications to display on an X-based workstation by turning the Mac into an X 
client.
	Intercon has a product called Planet-X which enables Mac applications
to display on an X server.

----------------------------------------------------------------------
Subject:  72)  Where can I get X for the Amiga?

	The new Amiga 3000 machines offer an X server and OPEN LOOK tools and
libraries on a full SVR4 implementation.

        GfxBase, Inc. provides "X11 R4.1" for the AmigaDos computer; it 
contains X11R4 clients, fonts, etc., and a Release 4 color server. An optional 
programmer's toolkit includes the header files, libraries, and sample programs.
Info from GfxBase, 408-262-1469. [Dale Luck 
(uunet!{cbmvax|pyramid}!boing!dale); 2/91]

----------------------------------------------------------------------
Subject:  73)  Where can I get a fast X server for a workstation?

	The R5 server should be among the fastest available for most machines.

	Sun sells a "Direct Xlib" product which improves rendering for 
applications running on the same machine as the X server; the replacement Xlib
library accesses graphics hardware directly using Sun's Direct Graphics Access 
(DGA) technology.

	International Quest Corporation (408-988-8289) has an optimized R4 
server for Sun3/4 under SunOS 4.0.

	Unipalm have R4 Servers for Sun3 and Sparc platforms. These are 
optimised to use graphics hardware and will run with Sunview. Information:
+44 954 211797 or xtech@unipalm.co.uk.

	Xgraph's Xtool (408-492-9031) is an X server implemented in SunView 
which boasts impressive results on Sun 3 and SPARC systems. [6/90]

Several companies are making hardware accellerator boards:

	Dupont Pixel Systems (302-992-6911), for Sun.

	Megatek's (619-455-5590) X-cellerator board for the Sun 3 and Sun 4 is 
based on the TI 34020; the company claims performance improvements of 5x to 
10x over the sample X11R3 server.

----------------------------------------------------------------------
Subject:  74)! Where can I get a server for my high-end Sun graphics board?

        Takahashi Naoto (Electrotechnical Laboratory, ntakahas@etl.go.jp) has 
modified the MIT X11R5 server to support the Sun CG8, CG9, and CG12 boards.  
The files are on export in contrib/Xsun24-3.[01].tar.Z.  Note that both files 
are necessary to build Xsun24-3.1.

	The JPL R5 Xsun Multi-screen server is a general purpose replacement
for the MIT server/ddx/sun layer; it provides for the screen to be split among
several monitors and implements several other features above the MIT 
implementation. Available on export.lcs.mit.edu in the file
contrib/R5.Xsun.multi-screen.tar.Z. [Kaleb Keithley, kaleb@thyme.jpl.nasa.gov,
12/91; the file was updated 24 Mar 1993.]

----------------------------------------------------------------------
Subject:  75)  Where can I get an "X terminal" server for my low-end Sun 3/50?

	Seth Robertson (seth@ctr.columbia.edu) has written Xkernel; the current
version [1.4 as of 8/91, 2.0 expected RSN] is on sol.ctr.columbia.edu 
[128.59.64.40] in /pub/Xkernel.gamma. It turns a Sun 3/50 into a pseudo- X 
terminal; most of the overhead of the operating system is side-stepped, so it 
is fairly fast and needs little disk space.
	A similar approach is to run the regular X server by making /etc/init
a shell script which does the minimal setup and then invokes Xsun, like this
example script from mouse@larry.mcrcim.mcgill.EDU:

#! /bin/sh
exec >/dev/console 2>&1
/etc/fsck -p /dev/nd0
case $? in
 	0)	;;
 	4)	/etc/reboot -q -n
 		;;
 	8)	echo ND fsck failed - get help
 		/etc/halt
 		;;
 	12)	echo Interrupted
 		/etc/reboot
 		;;
 	*)	echo Unknown error in reboot fsck - get help
 		/etc/halt
 		;;
esac
/bin/dd if=/tmp-fs of=/dev/nd2 bs=512 count=128 >/dev/null 2>&1
/etc/mount /dev/nd2 /tmp
/etc/ifconfig le0 netmask 255.255.255.0 broadcast 132.206.41.255
/etc/mount -o ro apollo:/u2/x11/lib /local/lib/X11
/etc/route add default 132.206.41.1 1 >/dev/null
set `/etc/ifconfig le0`
exec /Xsun -once -multidisp -mux -query \
	`(sh -vn </local/lib/X11/xdm-servers/$2 2>&1)`

----------------------------------------------------------------------
Subject:  76)  What terminal emulators other than xterm are available?

	PCS has rewritten xterm from scratch using a multi-widget approach that
can be used by applications. A version is on the R5 contrib tape and on
export in contrib/emu.tar.Z [10/91]. For more information, contact 
me@dude.pcs.com.

	mxterm, a Motif-based xterm is available from the Paderborner 
ftp-Server ftp@uni-paderborn.de (131.234.2.32), file 
/unix/X11/more_contrib/mxterm.tar.Z.

	The Color Terminal Widget provides ANSI-terminal emulation compatible
with the VTx00 series; a version is on export in contrib/CTW-1.1.tar.Z. A
Motif version is on ftp.stna7.stna.dgac.fr in pub/Term-1.0.tar.Z.
	
	kterm 4.1.2 is an X11R4-based vt100/vt102 (and Tektronix 4014) terminal
emulator that supports display of Chinese, Japanese, and Korean text (in VT 
mode).  Also supported are: ANSI color sequences, multi-byte word selection, 
limited Compound Text support, and tab and newline preservation in selections.
kterm 4.1.2 is also available from these anonymous ftp sites:
	clr.nmsu.edu:pub/misc/kterm-4.1.2.tar.Z  [128.123.1.14]
	export.lcs.mit.edu:contrib/kterm-4.1.2.tar.Z  [18.24.0.12]
	kum.kaist.ac.kr:pub/unix/Xstuffs/kterm-4.1.2.tar.Z  [137.68.1.65]
[courtesy of Mark Leisher <mleisher@nmsu.edu> ]

	kterm-5.1.1.tar.Z is now on export [12/92].

	mterm, by mouse@larry.McRCIM.McGill.EDU, is an X terminal emulator
which includes ANSI X3.64 and DEC emulation modes.  mterm can be had by ftp to 
larry.mcrcim.mcgill.edu (132.206.1.1), in X/mterm.src/mterm.ball-o-wax.

	Cxterm is a Chinese xterm, which supports both GB2312-1980 and the 
so-called Big-5 encoding.  Hanzi input conversion mechanism is builtin in 
cxterm.  Most input methods are stored in external files that are loaded at run
time.  Users can redefine any existing input methods or create their own ones.
The X11R5 cxterm is the rewritten of cxterm (version 11.5.1) based on X11R5 
xterm; it is in the R5 contrib software.  [thanks to Zhou Ning 
<zhou@tele.unit.no> and Steinar Bang <uunet!idt.unit.no!steinarb>.]

	XVT is available on export's contrib in xvt-1.0.tar.Z and 
xvt-1.0.README. It is designed to offer xterm's functionality with lower swap 
space and may be of particular use on systems driving many X terminals.

	x3270 is in X11R5 contrib/.

Also:
	IBM sells a 3270 emulator for the RS/6000 (part #5765-011); it's based
on Motif. 
	
	Century Software (801-268-3088) sells a VT220 terminal emulator for X. 
VT102, Wyse 50 and SCO Color Console emulation are also available. 

	Grafpoint's TGRAF-X provides emulation of Tektronix 4107, 4125, and 
42xx graphics terminals; it's available for most major platforms. Information
(inc. free demo copies): 800-426-2230; Fax. 408-446-0666; uunet!grafpnt!sales.

	IXI's X.deskterm, a package for integrating character-based 
applications into an X environment, includes a number of terminal-emulation
modules. Information: +44 (0223) 462131. [5/90]

	Pericom produces Teem-X, a set of several emulation packages for a
number of Tek, DEC, Westward, and Data General terminals. The software runs on
Sun 3, Sun 4, Apollo, DEC, ISC, IBM/AIX. Information: US: 609-895-0404, 
UK: +44 (0908) 560022. [5/90]

	SCO's SCOterm (info@sco.COM), part of its Open Desktop environment, is
a Motif-compliant SCO ANSI color console emulator.

----------------------------------------------------------------------
Subject:  77)! Where can I get an X-based editor or word-processor?

	You can ftp a version of GNU Emacs, the extensible, customizable, 
self-documenting, real-time display editor, including X11 support, from
prep.ai.mit.edu [18.71.0.38]:/pub/gnu/emacs-18.59.tar.Z or
informatik.tu-muenchen.de:/pub/GNU/emacs/emacs-18.59.tar.Z.
	
	Epoch is a modified version of Gnu Emacs (18) with additional 
facilities useful in an X environment. Current sources are on cs.uiuc.edu 
(128.174.252.1) in ~ftp/pub/epoch-files/epoch; the current [3/92] version is 
4.0. [In Europe, try unido.informatik.uni-dortmund.de].  There are two 
subdirectories:  epoch contains the epoch source, and gwm contains the source 
to the programmable window manager GWM, with which epoch works well.] 
You can get on the Epoch mailing list by sending a request to 
epoch-request@cs.uiuc.edu.

	Lucid Emacs is a version of GNU Emacs derived from an early version of
Emacs version 19.  It currently requires X Windows to run;  X support is
greatly enhanced over GNU Emacs version 18, including support for multiple X
windows, input and display of all ISO-8859-1 (Latin1) characters, Zmacs/Lispm
style region highlighting, a customizable Motif-like menubar, more powerful
keymap support, flexible text attributes, support on regional and screen-local
basis through X resources and/or lisp, and support for the X11 selection
mechanism. Lucid Emacs is free; the latest version (2/93) is 19.4, and is
available from labrea.stanford.edu in the pub/gnu/lucid/ directory.

	The Andrew system on the X11 contrib tapes has been described as one of
the best word-processing packages available. It supports word processing with 
multi-media embedded objects: rasters, tables/spread sheets, drawings, style 
editor, application builder, embedded programming language, &c. Release 5.1 
became available 2 June 92.  [Fred Hansen (wjh+@ANDREW.CMU.EDU)]
	You may be able to use the Remote Andrew Demo service to try this 
software; try "finger help@atk.itc.cmu.edu" for help.

	The InterViews C++ toolkit contains a WYSIWIG editor called Doc; it 
saves and loads files in a LaTeX-*like* format (not quite LaTeX).  The package 
can also import idraw-PostScript drawings.

	A simple editor aXe (by J.K.Wight@newcastle.ac.uk) is available on 
export and arjuna.newcastle.ac.uk (128.240.150.1) as aXe-4.1.tar.Z [3/93]. It 
is based around the Xaw Text widget.

	TED is a simple Motif-based text editor; it is a wrapper around the 
Motif text widget which offers search/replace, paragraph formatting, and 
navigation features. TED is available from ftp.eos.ncsu.edu (152.1.9.25) as 
/pub/bill.tar.Z; here are also executables there.

	Point, by crowley@unmvax.cs.unm.edu (Charlie Crowley), is Tcl/Tk-based
and offers dyanimic configuration and programming in the Tcl macro language.
The editor is available from unmvax.cs.unm.edu (129.24.16.1) as
pub/Point/point1.1-tar.Z.

	asedit, by Andrzej Stochniol (astoch@ic.ac.uk) is on export in 
contrib/asedit.tar.Z. It is a simple text editor built around the Motif Text 
widget. Version 1.11 was released 1/93.

Also:

	Elan Computer Group (Mountain View, CA; 415-964-2200) has announced the
Avalon Publisher 2.0, an X11/OPEN LOOK WYSIWYG electronic publishing system.

	FrameMaker and FrameWriter are available as X-based binary products for
several machines. Frame is at 800-843-7263 (CA: 408-433-3311).

	WX2 (formerly InDepthEdit) is available from Non Standard Logics 
(+33 (1) 43 36 77 50; requests@nsl.fr).

	Buzzwords International Inc. has an editor called 'Professional Edit' 
that runs under X/Motif for various platforms.  Info: +1-314-334-6317.

	DECwrite is available from DEC for some DEC hardware and SunWrite is
available from Sun.

	IslandWrite will soon be available from Island Graphics (415-491-1000) 
(info@island.com) for some HP & Apollo platforms.

	Interleaf is currently available from Interleaf (800-241-7700, 
MA: 617-577-9800) on all Sun and DEC platforms; others are under development.

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include a multi-font WYSIWG document composer; for several 
systems.

	ArborText, Inc. provides an X11 version of its Electronic Publishing 
program called "The Publisher". The Publisher is available on Sun, HP and 
Apollo workstations. Contact Arbortext at 313-996-3566. [5/90]

	Iris Computing Laboratories offers the "ie" editor. Info:  
+1-505-988-2670 or info@spectro.com.

	BBN/Slate from BBN Software Products includes a menu-driven word
processor with multiple fonts and style sheets.  It supports X on
multiple platforms. (617-873-5000 or slate-offer@bbn.com) [11/90]

	The powerful "sam" editor by Rob Pike is split into a host portion and 
a front-end graphics portion, which now has an X implementation.  sam is now 
available by anonymous ftp from research.att.com, in dist/sam/bundle.Z.  Watch 
that space for updated versions.  There is a mailing list for sam users; 
requests to <sam-fans-request@hawkwind.utcs.toronto.edu>. A set of extensions
which augment the mouse activity with the keyboard is available from 
uxc.cso.uiuc.edu in pub/sam/samx1.0.shar.

	Innovative Solutions (505-883-4252; or Brian Zimbelman, 
is!brian@bbx.basis.com) publishes the user-configurable Motif-based Xamine 
editor.

	Qualix offers a product. Information: info@qualix.com or 800-245-UNIX 
(415-572-0200).

	Typex is a Motif-based editor available for several systems. 
Information: Amcad Research, 408-867-5705, fax -6209.

	WordPerfect offers an X-based version of WordPerfect 5.1 for several
workstations. Information: 801-222-5300 or 800-451-5151.

----------------------------------------------------------------------
Subject:  78)  Where can I get an X-based mailer?

	xmh, an X interface to mh, is distributed with the X11 release.

	Xmail is an X-based window interface to Berkeley-style mail handlers;
it is styled primarily after the Sunview mailtool application and builds on
most Unix systems. The current release [1/92] is 1.4, available in the MIT 
X11R5 contrib tape and from export and uunet. Info: Jeff Markham,
markham@cadence.com.

	MMH (My Mail Handler), a motif interface to the MH mail handler, is 
available from ftp.eos.ncsu.edu (152.1.9.25) in pub/bill.tar.Z; it is bundled
with the TED editor, which it uses for composing messages. Motif 1.1 is 
required; if you don't have it, look for DEC and SPARC executables in the same 
place.  Information and problems to: Erik Scott, escott@eos.ncsu.edu. [1/92]

	The Andrew Toolkit supports the Andrew Message System; it is available
from export and many other X archives and from emsworth.andrew.cmu.edu 
(128.2.30.62), or send email to susan+@andrew.cmu.edu. Release 5.1 became
available 2 June 92.
	You may be able to use the Remote Andrew Demo service to try this 
software; try "finger help@atk.itc.cmu.edu" for help.

	XMailTool is an Xaw-based interface to a BSD-style mail reader; version
2.0 was released 9/92. Information: Bob Kierski, bobo@cray.com or 612-683-5874.

	Cem is a Motif-based mailer using standard mailbox formats; it is on
nelson.tx.ncsu.edu in pub/Cem. Information: Sam Moore (Sam_Moore@ncsu.edu).

Also:

        Alfalfa Software offers Poste, a UNIX-based mailer that has Motif- and 
command-based interfaces.  It includes support for multimedia enclosures, and 
supports both the Internet and X.400 mail standards.  Information: 
info@alfalfa.com, +1 617-497-2922.

	Z-Code Software offers Z-Mail for most Unix systems; binaries support
both tty and Motif interfaces. The mailer includes a csh-like scripting 
language for customizing and extending mail capabilities.  Information: 
info@z-code.com, +1 415 499-8649.

	Several vendors' systems include X-based mailers. DEC offers dxmail; 
Sun offers an X-based mailtool; SCO (info@sco.com) includes SCOmail in its Open
Desktop product.

Several integrated office-productivity tools include mailers:

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include a mailer.

----------------------------------------------------------------------
Subject:  79)! Where can I get an X-based paint/draw program?

	xpic is an object-oriented drawing program. It supports multiple font 
styles and sizes and variable line widths; there are no rotations or zooms.
xpic is quite suitable as an interactive front-end to pic, though the 
xpic-format produced can be converted into PostScript. (The latest version is 
on the R4 contrib tape in clients/xpic.)

	xfig (by Brian V. Smith (bvsmith@lbl.gov)) is an object-oriented 
drawing program supporting compound objects.  The xfig format can be converted 
to PostScript or other formats. Recent versions are on the R5 contrib tape or 
on export in /contrib/R5fixes (version 2.1.6 [11/92]).

        idraw supports numerous fonts and various line styles and arbitrary 
rotations. It supports zoom and scroll and color draws and fills. The file 
format is a PostScript dialect. It can import TIFF files. Distributed as a part
of the InterViews C++ toolkit (current release 3.1, from 
interviews.stanford.edu) .

	A version of Robert Forsman's (thoth@lightning.cis.ufl.edu) xscribble,
an 8-bit paint program for X, is now on ftp.cis.ufl.edu in pub/thoth/. [2/93]

	xpaint is available from ftp.ee.lbl.gov as xpaint.tar.Z.
	A rewrite, Xpaint 2.0, by David Koblas (koblas@netcom.com) was released
2/93 as xpaint2pl3.tar.Z. xpaint is a bitmap/pixmap editing tool.

	A new OpenWindows PostScript-based graphical editor named 'ice' is now 
[2/91] available for anonymous ftp from Internet host lamont.ldgo.columbia.edu 
(129.236.10.30).  ice (Image Composition Environment) is an imaging tool that
allows raster images to be combined with a wide variety of PostScript 
annotations in WYSIWYG fashion via X11 imaging routines and NeWS PostScript 
rasterizing. (It may require OpenWindows and Sun C++ 2.0.)

	tgif by William Cheng (william@oahu.cs.ucla.edu) is available from most
uucp sites and also from export and from cs.ucla.edu. It is frequently updated;
version 2.12-patch18 was released 3/93.

	The "pixmap" program (info: colas@sa.inria.fr) for creating pixmaps is 
on the R5 contrib tape; it resembles the bitmap client. Version 2.1 is now 
available. [11/92]

	Although MetaCard is not generally classified as a paint program, a 
full 24-bit color image editor is built into the program, which can be used for
light image editing and for producing color icons (info@metacard.com). MetaCard
is available via anonymous FTP from ftp.metacard.com, csn.org, or 
128.138.213.21.
	
	pixt by J. Michael Flanery produces XPM output.

Also:

	dxpaint is a bitmap-oriented drawing program most like MacPaint; it's 
good for use by artists but commonly held to be bad for drawing figures or 
drafting. dxpaint is part of DEC's Ultrix release.

	FrameMaker has some draw capabilities. [4/90]

	BBN/Slate from BBN Software Products includes a full-featured draw and
paint program with object grouping and multiple patterns; multiple X platforms.
(617-873-5000 or slate-offer@bbn.com). [11/90]

	Dux Ta-Dah!, 1-800-543-4999

	IslandGraphics offers IslandDraw, IslandPaint, IslandPresent.
Info: 415-491-1000.

	Corel Draw, 613-728-8200; ported to X by Prior Data Sciences 
800-267-2626

	Arts&Letters Composer, 214-661-8960

	Ficor AutoGraph, 513-771-4466

	OpenWindows includes the olpixmap editor.
	SCO ODT includes the SCOpaint editor.
	HP VUE includes the vueicon editor.

Several integrated office-productivity tools include draw/paint capabilities:

	The Aster*x office integration tools from Applix (1-800-8APPLIX, 
MA: 508-870-0300) include draw/paint capabilities.

[thanks in part to Stephen J. Byers (af997@cobcs1.cummins.com) and to 
J. Daniel Smith (dsmith@ann-arbor.applicon.slb.com)]
	
----------------------------------------------------------------------

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

Newsgroup: comp.windows.x
Document_id: 66434
From: I.A.Inman@newcastle.ac.uk (I.A. Inman)
Subject: Re: Honors Degrees: Do they mean anything?

tkld@cogsci.ed.ac.uk (Kevin Davidson) writes:


>>   In my opinion, a programming degree is still worth having.

> Yes, but a CS degree is *not* a programming degree. Does anybody know of
>a computing course where *programming* is taught ? Computer Science is
>a branch of maths (or the course I did was).
> I've also done a Software Engineering course - much more practical and likely
>to be the sort of thing an employer really wants, rather than what they think
>they want, but also did not teach programming. The ability to program was
>an entry requirement.

Try the 'M.Sc. Computing Science' course at the REAL Newcastle University.
It's a conversion course, but at least they teach REAL programming.

In the space of 9 months we were taught PASCAL, Simula, Prolog, Miranda.
Also, some basic low level stuff (68000) was covered as well.

They also did concurrent programming and operating systems, some software
engineering, plus quite a few optional units, including database theory,
and some stuff about comms.   

The PASCAL is to be replaced by C/C++ I think next year - I learn't this (and 
X Windows programming as well)
anyway via a good selection of project over the final three months - depending
on your tastes, the selection of skills learn't can be quite wide reaching.

The one critiscism I would level at the course, which I would have thought
invaluable, is the lack of an option to do the project period in industry -
this would probably need a slightly longer project period (say six months), but
would enhance the prestige and usefulness of an already excellent and thorough
course.

Yes, I know this sounds like a plug for the course, why not!

								Mackem Ian.

Newsgroup: comp.windows.x
Document_id: 66435
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Cute X clients


Try this:
-------------------------------------------------------------------------------
#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

Display *dpy;
int	screen;
XColor	*xclrs,*xclrp;
XID	cmap;
int	cells,i,j,red,green,blue,got;



main()
{
 dpy = XOpenDisplay(NULL);
 screen = DefaultScreen(dpy);
 cells = DisplayCells(dpy,screen);

 cmap = XCreateColormap(dpy,RootWindow(dpy,screen),DefaultVisual(dpy,screen),1);

 xclrs = (XColor *)malloc(cells * sizeof(*xclrs));


 xclrp = xclrs; 
 for (i=0; i<cells; i++) { xclrp->pixel = i; xclrp->flags = 7; xclrp++; };

 XQueryColors(dpy,DefaultColormap(dpy,screen),xclrs,cells);
 XStoreColors(dpy,cmap,xclrs,cells);
 XInstallColormap(dpy,cmap);
 got = 1;

 while(got) {
  xclrp = xclrs;
  got = 0;
  for(i=0; i<cells; i++)  {
   if(xclrp->red < 65000) {xclrp->red += 256; got = 1;};
   if(xclrp->green < 65000) {xclrp->green +=256; got=1;};
   if(xclrp->blue < 65000) {xclrp->blue +=256; got=1;};
   xclrp ++;
  }
  XStoreColors(dpy,cmap,xclrs,cells);
/*  XInstallColormap(dpy,cmap); */
 }
 got = 1;
 while(got) {
  xclrp = xclrs;
  got = 0;
  for(i=0; i<cells; i++)  {
   if(xclrp->red > 256) {xclrp->red -= 256; got = 1;};
   if(xclrp->green > 256) {xclrp->green -=256; got=1;};
   if(xclrp->blue > 256) {xclrp->blue -=256; got=1;};
   xclrp ++;
  }
  XStoreColors(dpy,cmap,xclrs,cells);
/*  XInstallColormap(dpy,cmap); */
 }
}
--------------------------------------------------------------------------
It will work on any PseudoColor XServer. (hopefully :)

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66436
From: vic@fajita (V. Martinez 6463)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

I was having the same problems compiling X11R5 on a IPC sunos 4.1.3.
If you compile with 'make -k World' it will not stop on the
ld errors. As was stated in another post the clients with the
errors still run correctly.

Victor Martinez
vic@fajita.saic.com

Newsgroup: comp.windows.x
Document_id: 66437
From: altmann@PLEURO.SOAR.CS.CMU.EDU (Erik Altmann)
Subject: Fwd: PROGRESSIVES HAPPY HOUR



--------- Forwarding begins here ---------

Date: Wed,  7 Apr 1993 15:39:55 -0400 (EDT)
From: Women's Center <women+@andrew.cmu.edu>
To: +dist+/afs/andrew.cmu.edu/usr0/women/dlists/happyhour-announce.dl@andrew.cmu.edu
Subject: PROGRESSIVES HAPPY HOUR

Enjoy good food and interesting company at the Progressives Happy Hour,
Thursday 8 April, starting at 5:30pm at the Women's Center (located next
to the laundromat in the Margaret Morrison Plaza).  Kosher for Passover
food will be served.  All are welcome.

(Good things to drink will be there, but paper cups won't.  Please  be
progressive and bring a cup or mug with you.)

Co-sponsored by the Student Government President and funded by the
student activites fee.

----------- End of forwarding -----------

Newsgroup: comp.windows.x
Document_id: 66438
From: amit@aryeh.uchicago.edu (Yali Amit)
Subject: Problems with Open Windows





 After having OpenWindows 
(Version 3 for SunOS 4.1) or Xwindows
running continuously on my machine for 3-4 days,
the following message appears  when trying to open
a new window, or to run any program that needs to open windows.

XView error: Cannot open connection to window server: :0.0 (Server
package)

I would greatly appreciate any suggestions to solve this problem.

Yali Amit
Department of Statistics
University of Chicago 
Chicago IL 60615




Newsgroup: comp.windows.x
Document_id: 66439
From: amit@aryeh.uchicago.edu (Yali Amit)
Subject: Problems with OpenWindows





 After having OpenWindows 
(Version 3 for SunOS 4.1) or Xwindows
running continuously on my machine for 3-4 days,
the following message appears  when trying to open
a new window, or to run any program that needs to open windows.

XView error: Cannot open connection to window server: :0.0 (Server
package)

I would greatly appreciate any suggestions to solve this problem.

Yali Amit
Department of Statistics
University of Chicago 
Chicago IL 60615




Newsgroup: comp.windows.x
Document_id: 66440
From: guy@x.co.uk (Guy Singh)
Subject: Re: xv -root with vue? (was Re: xloadimage -onroot ...)

>>>>> On 5 Apr 93 11:31:27 PDT, jan@camhpp12.mdcbbs.com (Jan Vandenbrande) said:
Jan> Nntp-Posting-Host: 134.244.49.156

Jan> On a related note, how can I use xv to display colored GIFs on my
Jan> root display with HP Vue?

Jan> All I can do with Vue is display xbm's through their
Jan> Backdrop Style Manager.

Jan> xv does not seem to be able to override whatever Vue
Jan> puts there.

I suspect this is because VUE creates a window (probably OverrideRedirect)
that is the size of (or larger than) the Root Window. Because the window
manager does not know about this, you cannot move, resize etc. it. xv in the
mean time is busy changing your root window to whatever you have requested
but you never get to see it because VUE's window is overlaid on top of the root
window. 

Contact HP support and see whether VUE can support coloured bitmap format
such as xpm, if they cant then they probably create all their coloured
backdrops inside the code.
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
Document_id: 66441
From: mmc@cs.rit.edu (Mahendra M Chheda)
Subject: How can I rotate text ?

Hi,

I am programming in XView, SunOS 4.1.2 & OpenWindows 3.0. I would like
to rotate some text and display it. I did read the FAQ in comp.windows.x
but am not sure how do I translate it to XView. I would appreciate if
someone can give me tips on how to do it. Thanx.

	- Mahendra.

PS : As I am not a frequent news group reader, I would appreciate if
     answers/replies would be mailed to me. I will post a follow-up.

-- 

***************************************************************************
	Mahendra Chheda			#
	mmc@cs.rit.edu			#
	mmc7274@ritvax.isc.rit.edu	#
					#
	Office :			#	Residence :
	Dept. of Computer Science	#	440 Kimball Drive
	Rochester Institute of Tech.	#	Rochester, NY 14623
	Tel. 716-475-2079		#	Tel. 716-292-5726
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 66442
From: troll@sug.org (A. Newman)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

In article <1993Apr6.081605.12977@fwi.uva.nl> casper@fwi.uva.nl (Casper H.S. Dik) writes:
>epstein@trwacs.fp.trw.com (Jeremy Epstein) writes:
>
>>dmm@head-cfa.harvard.edu (David Meleedy) writes:
>>There's a bug in SunOS 4.1.3, which is alluded to in the FAQ (although
>>there it's talking about X11R4 as being affected).  You need to force
>>libXmu to be linked statically, rather than dynamically, which works
>>around the linker error.  The simplest thing to do is edit each of
>>the Makefiles where there's a failure and change the line which reads:
>>	XMULIB = -L$(XMUSRC) -lXmu
>>to:
>>	XMULIB = -L$(XMUSRC) -Bstatic -lXmu -Bdynamic
>
>No. This is only relevant for OpenWindows 3.x as shipped with SunOS.
>It is not relevant for MIT R5. MIT R5 should compile without problems.
>
>Casper

I don't know how many hours you've spent on this, but the Sun User
Group makes X11R5 available on CD-ROM to its members. The 1992.1 disk
has both sources and binaries and it sells for $50.  I've tagged a
table of contents and an orderform on below if anyone's interested.

Alex Newman

----------------------------------------------------------------------------
Alex Newman	(617) 232-0514 voice	My life may be stressful,
troll@sug.org	(617) 232-1347 fax	but at least it's not boring
Sun User Group * 1330 Beacon St., #315 * Brookline, MA 02146
----------------------------------------------------------------------------




SUG CD 1992.1 is X11R5 and GNU on a CDROM, priced at $50 to SUG
members, including a caddy!

SUG's emphasis has always been on supplying the greatest possible
service and value-added to our members.  Last year, the SUG 1991 disk
contained plug-and-play X11R4, 20MB of additional essential binaries,
almost 200MB of Sun patches, fully-indexed archives of Sun-related net
postings, priced at only $250.

Our aim this year has been to reduce the price for disks which can be
produced inexpensively, but to continue to supply as much value-added
as possible.  To accomplish this, we will be putting out a two disk
set, the first containing what's ready and needed now, the second
available later in '92, containing more SPARC binaries and other
useful material not found on previous disks.

The SUG 1992.1 disk, which was assembled by Robert A. Bruce, contains
a lot of essential source code, and we decided it would be a great
service to make it available right away to our members (and this
pricing makes this a good opportunity to become a member!) for $50 per
disk (including one of those hard-to-find caddies!).  If you are not a
SUG member, you can become one for an additional $40 if you live
within the US or $55 outside.

The SUG 1992.1 CDROM is an ISO 9660 disk (which means it can be used
by PC, Macintosh, and other workstations as well), and contains a
total of 543MB of material, including:

X11R5 SOURCES AND CORE BINARIES (for SPARC) as of several weeks after
the initial distribution, thus, four fixes and the the MIT contrib-0
distribution are included (109MB of material).  Binaries for: X Xsun
XsunMono appres atobm auto_box bdftopcf beach_ball bitmap bmtoa
constype editres fs fsinfo fslsfonts fstobdf ico imake kbd_mode
listres lndir makedepend maze mkdirhier mkfontdir oclock plbpex puzzle
resize showfont showrgb startx twm viewres x11perf x11perfcomp xauth
xbiff xcalc xclipboard xclock xcmsdb xcmstest xconsole xcutsel
xditview xdm xdpr xdpyinfo xedit xev xeyes xfd xfontsel xgas xgc xhost
xinit xkill xload xlogo xlsatoms xlsclients xlsfonts xmag xman xmh
xmkmf xmodmap xon xpr xprop xrdb xrefresh xset xsetroot xstdcmap xterm
xwd xwininfo xwud

COPIES OF CONTRIBUTED X SOURCES (from export.lcs.mit.edu/contrib),
which were then uncompressed/untarred into source directories (212MB).
These are sources only, and some of them were (after the date of
production of this disk) included in the MIT contrib-2 and contrib-3
distributions.

GNU SOURCES WHICH WERE uncompressed/untarred into source directories
(88MB).

SPARC BINARIES (and needed libraries) for these GNU programs: a2p ar
as basename bash bison cat cc1 cc1plus chgrp chmod chown ci cmp co
comm compress cp cpio cpp ctags cut cvs date dd df diff diff3 dir
dirname du egrep elvis emacs env etags expand expr fgrep find
find2perl flex fold g++ g++dep g++filt gawk gcc gdb ginstall gnuchess
gnuchessn gnuchessr gnugo gnuplot gnuplot_x11 gprof grep h2ph head id
ident indent ispell ld ld++ less ln locate logname ls m4 make merge
mkdir mkfifo mkmodules mknod mt mv nice nm oleo paste pathchk perl pr
printenv printf ranlib rcs rcsdiff rcsinfo rcsmerge rcstest ref refont
rlog rm rmdir rmt s2p screen sed size sleep split strip stty sum tac
tail taintperl tar tee test time touch tput tty uname unexpand uniq
vdir virec whoami xargs xchess yes zmore

AN ARCHIVE OF COMP.SOURCE.X postings, volume 0 through volume14
(58MB).  Parts are supplied just as posted.  You get to put together
the pieces, compile, install, etc.

Cost: SUG members: $50; Non-members: additional $40 within the US, $55
	elsewhere 
Shipping & Handling: $10 inside the USA; $25 elsewhere

Mail to: Sun User Group, Inc.
	 Suite 315
	 1330 Beacon Street
	 Brookline, MA  02146
	 USA

	(617) 232-0514	voice
	(617) 232-1347	fax


The Sun User Group also accepts Visa and MasterCard via telephone or
electronically.


--------------------- cut here and return completed form ---------------------

                                 The SUGCD 1992.1
                                     ORDER FORM

The price of the CD is $50.

Shipping and handling: Add $10 (USA) or $25 (Intl.)

If you are not a member of the Sun User Group, add $40 (USA) or $55
(International) to the above sums for membership.  You must be a SUG
member to purchase the CD-ROM.  I enclose a US $ check for:

                    __$ 60 (SUG member in the USA)
                    __$ 75 (SUG member outside the USA)
                    __$100 (Includes membership inside the USA)
                    __$130 (Includes international membership)


 Name__________________________________ Signature___________________________

 Company Name_______________________________________________________________

 SUG Membership #(if known)_________________________________________________

 Electronic Mail Address____________________________________________________

 Telephone Number___________________________________________________________

 Check Enclosed_____             Mastercard_____  Visa_____

 Credit Card #__________________________________  Exp. date.________________

 Card Holder:__________________________ Signature:__________________________

 Ship to:                                Bill to:

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

 ______________________________________  ___________________________________

-------------------------------------------------------------------------

[   ]  I hereby authorize the Sun User Group to renew my membership
        and charge my credit card automatically on an annual basis.

[   ]  I do not wish my name to be included in non-Sun User
        Group mailings.

[   ]  I do not wish my name to be published in the Sun User
        Group member directory.

[   ]  I wish to be added to the Sun User Group electronic
	mailing-list (members only)


                  OUTSIDE THE U.S. ONLY:

Individuals outside of the USA may find using their credit cards easier
than purchasing US$ checks as this eliminates bank charges.

-------------------------------------------------------------------------
                   Sun User Group
                   1330 Beacon Street, Suite 315
                   Brookline, MA  02146

		   Voice: +1 617 232-0514
		   Fax:   +1 617 232-1347
		   Email: office@sug.org

Newsgroup: comp.windows.x
Document_id: 66443
From: ndd@sunbar.mc.duke.edu (Ned Danieley)
Subject: problem with Tek xterminal


We have recently purchased a Tektronix xterminal, and I'm having
a problem with it. We have a graphics widget that we wrote to
display waveforms, and it doesn't work on the xterminal. the buttons,
etc, all show up, and it seems to take the 'right' amount of time to
draw, but nothing is visible in the graphics window. I
have no clue as to where to start looking: the program works fine
on all our suns (3s and 4s, color and B&W). could anyone suggest a
line of attack for this problem?

TekXpress XP380 color xterminal running 6.0.0. host is a Sun IPX
running SunOS 4.1.3 and X11R5, PL17.

-- 
Ned Danieley (ndd@sunbar.mc.duke.edu)
Basic Arrhythmia Laboratory
Box 3140, Duke University Medical Center
Durham, NC  27710   (919) 660-5111 or 660-5100

Newsgroup: comp.windows.x
Document_id: 66444
From: rogerskm@eplrx7.es.duPont.com (Karen Rogers)
Subject: Remapping <return> key in a dialog

I am new to X programming, so please bear with me....

I am trying to have a dialog box that returns it's value upon the
user entering a new value and hitting the <return> key. (don't want
to have a "done" button).  The piece of code below will work if
I exclude the XtNvalue argument but will not work as is. Can someone
shed some light on this or suggest a better way?  Ultimately I will
have several areas active at the same time to allow a user to modify
parameters in the program.  


Thanks for your help,

Karen Rogers
Dupont
rogerskm@pluto.es.dupont.com

######### Code starts here ################
void doit()
{
printf("Entered the doit function\n");
exit();
}

main(argc, argv)
int argc;
char **argv;
{
Widget toplevel;
Widget outer;
XtAppContext app_con;
Widget samples;
Arg args[3];
static XtActionsRec key_actions[]= 
    {
    {"doit", doit},
    };

toplevel = XtVaAppInitialize(&app_con, "TEST", NULL, 0,
	                       &argc, argv, NULL, NULL);

outer = XtCreateManagedWidget( "paned", panedWidgetClass, toplevel,
					NULL, ZERO);

XtAppAddActions(app_con, key_actions, XtNumber(key_actions));

XtSetArg(args[0], XtNlabel, "Enter value");
XtSetArg(args[1], XtNvalue, "0");

samples = XtCreateManagedWidget("samples", dialogWidgetClass,outer,args,2);

XtOverrideTranslations(samples, 
	  XtParseTranslationTable("<Key>Return: doit()"));
   
XtRealizeWidget(toplevel);
XtAppMainLoop(app_con);
}


Newsgroup: comp.windows.x
Document_id: 66445
From: brian@mdavcr.mda.ca (Brian Lemire)
Subject: Joining the X Consortium ????

Hi,

	Does anyone have any information on joining the X Consortium ? What
are the costs, what are the benefits, who should I contact ? Thanks



Newsgroup: comp.windows.x
Document_id: 66446
From: glang@slee01.srl.ford.com (Gordon Lang)
Subject: Re: Honors Degrees: Do they mean anything?

Justin Kibell (jck@catt.citri.edu.au) wrote:
: What has this got to do with comp.windows.x?
: 

I agree that this is a side track, but it is funny that I skip so many
other articles (threads) but I couldn't resist reading this one.

My beliefs, opinions, and expressions are strictly my own and do not
represent or reflect any official or unofficial policies or attitudes
of any other person or organization....
 
but.  I have heard that Ford Motor Company has (had) a recruiting bias
toward engineers and away from computer science graduates.  The reasoning
is supposedly to better meet long range personnel requirements.  This is
evidenced by the large number of CS people who are employed via contracts
and are not brought on board except in special circumstances.  This is
a generalization which obviously doesn't always hold true, but there are
statistics.  Furthermore, most "software engineering" at Ford gets done
by electrical engineers.  I know of 2 univerities that have merged the
computer science department and the electrical engineering so that you
can get a computer degree which qualifies you for much more than programming.

But since my beliefs and opinions are merely figments of my distorted
imagination I suppose I should keep it to myself.




Newsgroup: comp.windows.x
Document_id: 66447
From: cr097@cleveland.Freenet.Edu (David Matusow)
Subject: Large Color Monitors


Does anyone have any information/advice on large color monitors
(17"-21") to use with a 486 system running X server software?
I maining looking for quality information and price, but all
information is welcomed.  

Thanks,
David
-- 
"It's all ball bearings!"
  -- Fletch

Newsgroup: comp.windows.x
Document_id: 66448
From: mbheprg@PROBLEM_WITH_INEWS_GATEWAY_FILE (Raju Gurung)
Subject: Re: Converting contents of X-window to color postscript

Jeff Haferman (haferman@icaen.uiowa.edu) wrote:
> Can somebody point me to source code for dumping the contents of
> an X-window into a color postscript file?  I have written
> an app which brings up an X-window, and I want (at the click
> of the mouse) to dump the window into a postscript file.


> Thanks.


> Jeff Haferman                            internet: haferman@icaen.uiowa.edu
> Department of Mechanical Engineering     DoD 0186  BMWMOA 44469  AMA 460140
> The University of Iowa
> Iowa City, IA  52242                                 '76 R90S

I use xwd and xwd2ps. To do it from within a program I use
xwd -id xxxxx where xxxxx is the window id obtained from XtWindow(widget).
--
-----------------------------------------------------------------------
| Raju Gurung, I.T. 109, I.T. Building, Dept. of Electrical Eng.,     | 
| University of Manchester, Oxford Rd, Manchester, U.K.               |
-----------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 66449
From: lemons@cadsys.enet.dec.com
Subject: Xremote into X11R6?


Hi!

I remember reading (or hallucinating) that NCD's PC-Xremote functionality had 
been given, by NCD, to MIT for inclusion in X11R6.  Is this true?  If so,
(set mode/cheap) can I just wait for X11R6 to get compressed serial line
X server support?

Thanks!

Terry Lemons
Digital Equipment Corporation

Newsgroup: comp.windows.x
Document_id: 66450
From: matt@centerline.com (Matt Landau)
Subject: Any recent information on Frescoe?

Does anyone know of any recent information on the Frescoe work being
done by the Consortium?  I've seen the short description that was 
published in The X Resource, but am looking for something with a bit
more depth to it.

Newsgroup: comp.windows.x
Document_id: 66451
From: duvvuri@flashflood.cs.odu.edu (D.V.Prakash)
Subject: Pointer..Xlib


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 
I am new to Xlib



replies will be greatly appreciated

Thank you

Prakash
< duvvuri@cs.odu.edu >


Newsgroup: comp.windows.x
Document_id: 66452
From: carlj@mugwump (Carl Johnson)
Subject: xterm and default text cursor color

What I want to be able to do is to set the cursor
color to the same as the forground color that is set
for that xterm.

From the man page.....

-cr color
 This option specifies the color to use for text cur-
 sor.   The  default  is  to  use the same foreground  <---
 color that is used for text.  <---

However this doesnt seem to be the case, it appears to default to black
or to whatever XTerm*cursorColor is set to.

Feel free to point me at the relevant FM or whatever,
Cheers,
C

Newsgroup: comp.windows.x
Document_id: 66453
From: rik@csc.liv.ac.uk (Rik Turnbull)
Subject: String to Widget Resource Converter

Can anybody tell me how to use the Xmu function "XmuCvtStringToWidget". I
want to specify a widget name in a resource file so that I can connect
two widgets together on an XmForm. ie.

MyProggy*MyListSW.topWidget:               MainTextSW

However, when I run the program, I get the message:

Warning: No type converter registered for 'String' to 'Window' conversion.

(Just like the manual sez).

I have managed to find this bit of code which seems to be the correct way
to go about this:

    static XtConvertArgRec parentCvtArgs[] = {
        {
            XtWidgetBaseOffset,
            (XtPointer)XtOffsetOf( CoreRec, core.parent ),
            sizeof(CoreWidget)
        }
    };

    XtSetTypeConverter( XtRString, XtRWidget, XmuCvtStringToWidget,
                            parentCvtArgs, XtNumber(parentCvtArgs), XtCacheAll,                                NULL );


However, I haven't got a clue where to put it! The example code I have seems
to suggest I can only do this if I am creating my own widget; but elsewhere it
says that I can add it to a widget's "class_intialize" function. HOW? What's
one of those? :-(

If anybody has any code to do this, please let me know the trick - I'm sure
this is a FAQ.

Thanks in advance,

Rik.

PS: What are the header files "CoreP.h" and "IntrinsicsP.h" - should I use
    these or "Core.h" and "Intrinsics.h" (OK I know RTFM:-)

.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=.
|                               |                                       |
| Richard Turnbull              |                                       |
|                               |       Dept. Computer Science          |
| E-mail:                       |       University of Liverpool         |
| rik@compsci.liverpool.ac.uk   |       Liverpool L69 3BX               |
|                               |       England                         |
| Phone: (051) 794 3704         |                                       |
|                               |                                       |
.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=.

Newsgroup: comp.windows.x
Document_id: 66454
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Q: How to avoid XOpenDisplay hang?

  Don't know how to avoid the XOpenDisplay hang... but perhaps you could
use something else (such as zephyr, perhaps)?

  )Rob

Newsgroup: comp.windows.x
Document_id: 66455
From: johnc@crsa.bu.edu (John Collins)
Subject: Problem with MIT-SHM

I am trying to write an image display program that uses
the MIT shared memory extension.  The shared memory segment
gets allocated and attached to the process with no problem.
But the program crashes at the first call to XShmPutImage,
with the following message:

X Error of failed request:  BadShmSeg (invalid shared segment parameter)
  Major opcode of failed request:  133 (MIT-SHM)
  Minor opcode of failed request:  3 (X_ShmPutImage)
  Segment id in failed request 0x0
  Serial number of failed request:  741
  Current serial number in output stream:  742

Like I said, I did error checking on all the calls to shmget
and shmat that are necessary to create the shared memory
segment, as well as checking XShmAttach.  There are no
problems.

If anybody has had the same problem or has used MIT-SHM without
having the same problem, please let me know.

By the way, I am running OpenWindows 3.0 on a Sun Sparc2.

Thanks in advance--
John C.



Newsgroup: comp.windows.x
Document_id: 66456
From: oj@world.std.com (Oliver Jones)
Subject: Re: Q: How to avoid XOpenDisplay hang?

In article <C512xr.3oy@skates.gsfc.nasa.gov> andy@ice.stx.com writes:
>I'm writing 'xwall', a simple X version of 'wall', and I want it to
>put a message up on each of a default list of displays.  The problem
>is that XOpenDisplay hangs if one of the displays is currently
>controlled by xdm (login screen). 

xdm does XGrabServer when it's running in secure mode (so do some
screen-locks).  There's really no simple way to tell this is the case.

You can take xdm out of secure mode;  probably not too cool.

You can wrap your call to XOpenDisplay in some code which solicts
a future SIGALRM and longjmps past the XOpenDisplay from the signal
handler.  An example of this can be seen in the xdm sources.

Note that longjmping out of XOpenDisplay probably causes a memory
leak;  any program functioning this way probably needs to exit() 
regularly.

Newsgroup: comp.windows.x
Document_id: 66457
From: brent@vpnet.chi.il.us (Brent Hansen)
Subject: Re: GUI Study

In article <1993Apr2.203400.15357@kocrsv01.delcoelect.com> c2xjfa@kocrsv01.delcoelect.com (James F Allman III) writes:
>
>> 
>> > I'm doing a study on what the following type of users would like to
>> > have on a Unix Manager.  Basically I'm looking for the Unix commands
>> > and features on Motif window interface which will help the different
>> > type of users make use of Unix.
>> ...


>> Personally, I can't stand Motif.  I also can't stand GUI      Command Line!
>> interfaces for things like access to the commands I know      Command Line!
>> and love.  I think you'll find that experience [sic] users    Command Line!
>> 
>> 					der Mouse
>> ...


>A year and a half ago I felt the same way.  The I started using
>gooyies.  Give me the command line when something out of the ordinary
>needs done, and the gooy when I am doing normal or repative work. 
>Note that most operations are repetative.  Hackers love CLs because
>  ...

What I like about GUI's:

	- The ability to view and manipulate a group of objects, files,
	  text, directories, etc. and and manipulate them in some way
	  such as delete, copy, paste, rename ...

	- The ability to have several applications / screens visible
	  and accessable at the same time.

	- Being able to do a standard set of functions easily and
	  quickly on an unfamiliar operating system. I am familiar with
	  the command lines of several operating systems but occasionally
	  I will have to some work on a system that I almost never use.
	  If it has a GUI, I can usually accomplish what I want to do
	  fairly easily, the command line on the other hand often is
	  a long and painful experience.


What I hate about GUI's:

	- Having to switch between the mouse and the keyboard. I guess
	  I have a strong one-handed preference. I like to use a
	  computer with one hand and use the other for holding something
	  like a piece of paper of a mug of tea. I have configured my
	  favorite editor so that most of the editing functions can be
	  done with one hand such as navigating, cutting, pasting,
	  searching, opening and saving files, etc. The main thing I
	  need to use both hands for is entering text.

	I guess I need to get one of those mice with, like, 20 buttons
	or something and then I will have the best of both worlds.

						Brent


Newsgroup: comp.windows.x
Document_id: 66458
From: urathi@net4.ICS.UCI.EDU (Unmesh Rathi)
Subject: Motif++ and Interviews

Hi,
	I am in the process of making the decision whether I should
write c++ wrappers for motif myself or use Motif++ or Interviews.
Though I have downloaded the tar files, I fail to see any
documentation. I have two questions:
	1) If you have used these or similar c++sy toolkits what has been
your experience?
	2) Where do I find reference books /documentation for them?

any and all input will be greatly appreciated.

/unmesh

Newsgroup: comp.windows.x
Document_id: 66459
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: lost in (TekHVC color) space


Hi,

xtici worked for my system.
I'm using X11R5 pl 17 clientside only on a DEC 5000/240 on Ultrix 4.3
May be you have a serious floatingpoint compilation problem ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66460
From: swick@news.Colorado.EDU (Ross Swick)
Subject: Books on I.C.C other than I.C.C.M.

Can anyone recomend a good book or article on inter-client communications
BESIDES I.C.C.M.?

I've looked everywhere I can and it seems everyone tells you how to do it
but nobody SHOWS you how.  O'Reilly has no examples, ICCM has no examples,
Asente & Swick give no examples - in fact most of the books I've looked at,
if they discuss ICC at all, simply give a condensed version of the ICCM and
then refer you to the ICCM.  I did find one example of how to use Atoms and 
Properties in Young's book and five hours after I bought Young's book I had
my applications talking to each other.

I am not sure, however, if thats the best way.  I'd like to stay independent 
of Unix so pipes and/or sockets probably aren't the way to go.  But within X
one can also use messages, the clipboard, and perhaps window groups.

I need a text that discusses the various methods, discusses which method is best
for which purpose, and gives examples.  Without examples it's all just words.

Thanks in advance

Ross

Newsgroup: comp.windows.x
Document_id: 66461
From: ngai@nova.bellcore.com (John Ngai)
Subject: How to disable reverse video on xterm/man

Well I am not sure if this is the right newsgroup to ask, but let me try anyway.
I am running xterm and like all UNIX users, I run man <something>. Recently,
I switched to Solaris 2.1, and their man pages are littered with ".I" directives
that are somehow translated into reverse video when displayed by man under xterm.
The resulting output (admittedly a personal taste) is very ANNOYING to look at.
Back when I was using SunOS 4.1.2, I remember their man pages have some keywords
displayed with underlining....

So my question is how do I change the xterm's behaviour under ".I" directives 
for nroff man pages, to perhaps underlining, or at least disabling it. (".B" 
directives are fine, I like them. And of course, I don't want to go in and edit
the man pages inputs...) Somehow, xterm allows one to specify both a normal font
and a bold font, but not an italic font??

Any pointers, suggestions are greatly appreciated.
Thanks -- John

P.S. Running xterm -rv won't work, I tried...





Newsgroup: comp.windows.x
Document_id: 66462
From: tne@world.std.com (Thomas N Erickson)
Subject: Re: TeleUse, UIM/X, and C++

hubec@ctp.com (Hubert Chou) writes:

>Does anyone have any good ideas on how to integrate C++ code elegantly
>with TeleUse, UIM/X / Interface Architect generated code?

>Source would be great, but any suggestions are welcome.


Alsys has produced a paper outlining how to use C++ with TeleUSE.  You can
get a copy from your local sales rep or call us at (619)457-2700.

As mentioned, it is very straight forward using the Dialog language
(similar to Visual Basic).


-- 
---------------------------------------------------------------------------
Tom Erickson					Alsys
tne@world.std.com				67 South Bedford Street
						Burlington, MA 01803

Newsgroup: comp.windows.x
Document_id: 66463
From: dbryant@leconte.Eng.Sun.COM (David Bryant)
Subject: Re: GUI toolkit for the Sun Sparc.

In article C4M@cuug.ab.ca, winsorr@sun (Robin Winsor 233-4670) writes:

>You are right to be going Motif rather than OpenLook.  Sun has just recently
>seen the light and dumped their commitment to OpenLook.  In the announcement
>they stated they have no future plans for DevGuide.

This is incorrect.  Sun has made no such claim regarding Devguide, and as 
manager of the Devguide engineering group I can state with authority that
work on Devguide is continuing apace.  We had quite a strong show of interest
from the Devguide user community at last week's Solaris Developer's Conference.
Devguide is being advocated not only as a valuable future builder tool, but
as an important bit of transition technology that will help sustain current
customers and facilitate their migration to the COSE Desktop Environment.

If you have specific questions about Devguide availability, etc., you can 
contact Tali Aben, our Devguide Product Marketing person, at (415) 336-3536.

	David Bryant
	Devguide Manager
	SunSoft
 

Newsgroup: comp.windows.x
Document_id: 66464
From: ai900@yfn.ysu.edu (Joshua P. Weage)
Subject: X for PC


For those of you who couldn't find X-Appeal, it is availible at
the following sitex:

	ascwide.ascii.co.jp in the /pub/MSDOS/xappeal dir
	wuarchive.wustl.edu in the /mirrors4/garbo.uwasa.fi/demo
	directory

	The three files are xap13exe.aip, xap10fon.zip and
   drivers.zip.

Josh
-- 
+  Joshua Weage : U.S. Snail - 277 Spring Rd, Baroda, MI  49101 +
+  E-Mail: cs890@freenet-in-a.cwru.edu |  ai900@yfn.ysu.edu     +
+   Fidonet:  Joshua Weage @ 1:2340/130                         +
+  All ideas are my own and no one elses!!                      +

Newsgroup: comp.windows.x
Document_id: 66465
From: adrian@ora.COM (Adrian Nye)
Subject: widgets vs. gadgets



> I've been using the XmGraph widget that's been floating around and I
> noticed the performance is significantly better using Gadgets, perhaps
> even 100% faster.  I had heard in an old programming course that gadgets
> were no longer any benefit to performance, and that it's just as well
> to use widgets everywhere. 

Interesting, I'd like to know why.

But try it again on a single ethernet with 100 X terminals on it,
and I think you'll find it much slower.

Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
Document_id: 66466
From: chatterj@haji.lcs.mit.EDU (Shash Chatterjee)
Subject: Help: SunView on olwm/xview3/X11R5


Hi,

I just compiled the X11R5 distribution for a Sun3/SunOS4.1.1.  I also
compiled the public domain xview3 (with olwm) distribution.  I have some
old 3rd-party application binaries that are SunView programs.  How do I
get them to work under xview3 and olwm?  (I tried using the OpenWindows
version 2 "svenv" program, but it did not work.)

I do not have news access....that's why I am mailing this directly.  Also,
is there an email alias where my questions can get to comp.windows.x or
comp.windows.open-look?  PLEASE RESPOND TO fwr8bv@fin.af.mil

Thanks,
Shash

+-----------------------------------------------------------------------------+
+ Shash Chatterjee                               EMAIL:  fwr8bv@fin.af.mil    +
+ EC Software                                   PHONE:  (817) 763-1495        +
+ Lockheed Fort Worth Company                  FAX:    (817) 777-2115         +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+

Newsgroup: comp.windows.x
Document_id: 66467
From: envbvs@epb11.lbl.gov (Brian V. Smith)
Subject: Re: I need source for splines

In article <1ppvhtINN814@fmsrl7.srl.ford.com>, glang@slee01.srl.ford.com (Gordon Lang) writes:
|> In the Xlib Programming Manual (O'Rielly Associates) it is pointed out
|> that routines for drawing splines is not included in Xlib, but extensions
|> are publicly available.  I need spline routines which work within the X
|> environment.
|> 
|> I have previously posted a similar request and got two responses, both
|> directing me to the Interviews package at interviews.stanford.edu.  I
|> got it, but it is too much.  It looks like too much work to try to
|> identify, extract and modify relevant components.  I am looking for
|> code that is not encumbered by a complex and extensive framework which
|> is beyond our needs.  We just need the spline "extensions" to the Xlib.

Look in xfig.  It has two types of spline algorithms and is relatively simple.
Xfig is available from export.lcs.mit.edu in
/contrib/R5fixes/xfig-patches/xfig.2.1.6.tar.Z

-- 
Brian V. Smith    (bvsmith@lbl.gov)
Lawrence Berkeley Laboratory
I don't speak for LBL; they don't pay me enough for that.

Newsgroup: comp.windows.x
Document_id: 66468
From: lungtt@gus.ecn.purdue.edu (Terence T. Lung)
Subject: Re: Honors Degrees: Do they mean anything?

I hear George Bush (remember him?) will receive an honors degree from
some Kuwaiti University for contributing to certain Kuwaiti interests
not too long ago.  Do you think it would add much to his resume? ;-)




Newsgroup: comp.windows.x
Document_id: 66867
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Converting contents of X-window to color postscript


In article <1993Apr8.200441.9423@jwminhh.hanse.de>, wieck@jwminhh.hanse.de (Jan Wieck) writes:
|> mbheprg@PROBLEM_WITH_INEWS_GATEWAY_FILE (Raju Gurung) writes:
|> : Jeff Haferman (haferman@icaen.uiowa.edu) wrote:
|> : > Can somebody point me to source code for dumping the contents of
|> : > an X-window into a color postscript file?  I have written
|> : > an app which brings up an X-window, and I want (at the click
|> : > of the mouse) to dump the window into a postscript file.
|> :
|> :
|> :
|> : I use xwd and xwd2ps. To do it from within a program I use
|> : xwd -id xxxxx where xxxxx is the window id obtained from XtWindow(widget).
|> 
|>     He asked for sources.
|> 
|>     The   portable    bitmap    tools    from    Jef    Poskanzer
|>     <jef@well.sf.ca.us>  include  filters  to  do  that (and much
|>     more).
|> 

BTW, the X11 tools come as sources. The sillyness of most vendors lets you
stuck with binaries.

Anyway, have a look onto xgrab/xgrabsc. It does the IMHO best job for
this, including compression.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66868
From: art@cs.UAlberta.CA (Art Mulder)
Subject: comp.windows.x: Getting more performance out of X.  FAQ

Archive-name: x-faq/speedups
Last-modified: 1993/4/15

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	HOW TO MAXIMIZE THE PERFORMANCE OF X -- monthly posting
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	    Compiled by Art Mulder (art@cs.ualberta.ca)

  More RAM, Faster CPU's, More disk space, Faster Ethernet...  These
  are the standard responses you hear when you ask how to improve the
  performance of your workstation.

  Well, more hardware isn't always an option, and I wonder if more
  hardware is always even a necessity.

  This "FAQ" list is a collection of suggestions and ideas from different
  people on the net on how you can the best possible performance from X
  Windows on your workstation, WITHOUT PURCHASING MORE HARDWARE.

  Performance is a highly subjective issue.  The individual user must
  balance `speed' versus `features' in order to come to a personal
  decision.  Therefore this document can be be expected to contain many
  subjective opinions in and amongst the objective facts.

  This document is specifically concerned with X.  There are of course
  many other factors that can affect the performance of a workstation.
  However, they are outside the scope of this document.

    [ People seriously interested in the whole area of system
    performance, might want to look at the O'Reilly Nutshell Handbook
    "System Performance Tuning" by Mike Loukides.  I'm about 25% of the
    way through reading it, and it looks like a well-written
    comprehensive treatment of system performance.  I'm unaware of any
    other similar books.  --ed.]

-----------------
Table of Contents
-----------------
  0. Introduction & Administrivia
  1. What about the "Other X FAQ"?
  2. Window Managers
  3. The X Server
       Which Server?
       Locking the Server into RAM?
       Starting your Server
       Fonts
       About the Resources File
!      Define Your Display Properly
  4. Clients
       A Better Clock for X
       A Better Terminal Emulator for X
       Tuning your client
  5. Miscellaneous Suggestions
       Pretty Pictures
       A Quicker Mouse
       Programming Thoughts
       Say What!?
  6. Other Sources of Information
  7. Author & Notes
  
! = changed since last issue.
* = new since last issue.

-----------------------------
Introduction & Administrivia
-----------------------------

  This document is posted each month, on or around the 15th, to the
  Usenet news groups comp.windows.x, news.answers, and comp.answers.
  If you are reading a copy of this FAQ which is more than a few
  months old (see the "Last-modified" date above) you should probably
  locate the latest edition, since the information may be outdated.

  If you do not know how to get those newsgroups and/or your site does
  not receive them and/or this article has already expired, you can
  retrieve this FAQ from an archive site.

  There exist several usenet FAQ archive sites.  To find out more about
  them and how to access them, please see the "Introduction to the
  news.answers newsgroup" posting in news.answers.

  The main FAQ archive is at rtfm.mit.edu [18.172.1.27].  This document
  can be found there in /pub/usenet/news.answers/x-faq/speedups.  If
  you do not have access to anonymous ftp, you can retrieve it by
  sending a mail message to mail-server@pit-manager.mit.edu with the
  command "send usenet/news.answers/x-faq/speedups" in the message body.

-----------------------------
What about the "Other X FAQ"?
-----------------------------

  David B. Lewis (faq%craft@uunet.uu.net) maintains the informative and
  well written "comp.windows.x Frequently Asked Questions" document.
  Its focus is on general X information, while this FAQ concentrates
  on performance.

  The comp.windows.x FAQ does address the issue of speed, but only with
  regards to the X server.  The gist of that topic seems to be:
	"Use X11R5, it is faster than R4".
  (Please see the X FAQ for complete details).

---------------
Window Managers
---------------

  There are a lot of window managers out there, with lots of different
  features and abilities.  The choice of which to use is by necessity a
  balancing act between performance and useful features.  At this
  point, most respondents have agreed upon "twm" as the best candidate
  for a speedy window manager. 

  A couple of generic tricks you can try to soup up your window manger,
  is turning off unnecessary things like "zooming" and "opaque move".
  Also, if you lay out your windows in a tiled manner, you reduce the
  amount of cpu power spent in raising and lowering overlapping
  windows.                           Joe English (joe@trystero.art.com)

  I've found that a good font for tiling is 7x13 (aka:
  -misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1 ). It is
  the biggest font I know of that I can use on my Sun (1152x900 screen)
  and still get two 80 column terminal windows side-by-side on the
  display with no overlap.  Other font suggestions will be accepted.

------------
The X Server
------------

Which Server?
- - - - - - -
  Make sure that your server is a proper match for your hardware.
  If you have a monochrome monitor, use a monochrome X11 server.

  On my Monochrome Sun, I haven't noticed much difference between
  the Xsun (colour) server and XsunMono, however it was pointed out to
  me that XsunMono is about 800k smaller and therefore should contribute
  to less paging.  
         [ thanks to: Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk),
                        Michael Salmon (Michael.Salmon@eos.ericsson.se) ]

  How your server was compiled can also make a difference.  Jeff Law
  (law@schirf.cs.utah.edu) advises us that on a Sun system, X should be
  compiled with gcc (version 2.*) or with the unbundled Sun compiler.
  You can expect to get "*very* large speedups in the server" by not
  using the bundled SunOS compiler.  I assume that similar results
  would occur if you used one of the other high-quality commercial
  compilers on the market.

Locking the Server into RAM?
- - - - - - - - - - - - - - -
  Has anyone tried hacking the X server so that it is locked into RAM and
  does not get paged?  eg: via a call to plock().  Does this help
  performance at all?  I've had one inquiry on this topic, and a few
  pointers to the plock() function call, but no hard evidence from someone
  who's tried it.  I am not in a position to give it a try.  
			  [thanks to: Eric C Claeys (ecc@eperm.att.com),
				      Danny Backx (db@sunbim.be),
				      Juan D. Martin (juando@cnm.us.es) ]
Starting your Server
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    If you start up a lot of clients in your .xsession or whatever, sleep
    for a second or two after launching each one.  After I changed my
    .xclients script to do this, logging in actually took *less* time...
    we have a heavily loaded system without much core, though.

  This sounds crazy, but I have confirmed that it works!  

  Warner Losh (imp@Solbourne.COM) provided me with a good explanation of
  why this works, which I have summarized here:

    When you start up an X server it takes a huge amount of time to
    start accepting connections.  A lot of initialization is done by
    the server when it starts.  This process touches a large number of
    pages.  Any other process running at the same time would fight the
    server for use of the CPU, and more importantly, memory.  If you
    put a sleep in there, you give the Server a chance to get itself
    sorted out before the clients start up.

    Similarly, there is also a lot of initialization whenever an X
    client program starts: toolkits registering widgets, resources
    being fetched, programs initializing state and "databases" and so
    forth.  All this activity is typically memory intensive.  Once this
    initialization is done ("The process has reached a steady state"),
    the memory usage typically settles down to using only a few pages.
    By using sleeps to stagger the launching of your clients in your
    .Xinitrc , you avoid them fighting each other for your
    workstation's limited resources

  This is most definitely a "Your Mileage May Vary" situation, as there
  are so many variables to be considered: available RAM, local swap
  space, load average, number of users on your system, which clients
  you are starting, etc.

  Currently in my .xinitrc I have a situation like:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

  I've experimented with:
	(sleep 1; exec xclock ) &
	(sleep 2; exec xbiff ) &
	(sleep 3; exec xterm ) &
	(sleep 4; exec xterm ) &

  I've even tried:
	(sleep 2; exec start_X_clients_script ) &
  and then in start_X_clients_script I had:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

    [ The idea with this last one was to make sure that xinit had
    completely finished processing my .xinitrc, and had settled down
    into a "steady state" before the sleep expired and all my clients
    were launched. ]

  All of these yielded fairly comparable results, and so I just stuck with
  my current setup, for its simplicity.  You will probably have to
  experiment a bit to find a setup which suits you.

Fonts
- - -
  Loading fonts takes time and RAM.  If you minimize the number of fonts
  your applications use, you'll get speed increases in load-up time.

  One simple strategy is to choose a small number of fonts (one small, one
  large, one roman, whatever suits you) and configure all your clients -- or
  at least all your heavily used clients -- to use only those few fonts.
  Client programs should start up quicker if their font is already loaded
  into the server.  This will also conserve server resources, since fewer
  fonts will be loaded by the server.
			      [ Farrell McKay (fbm@ptcburp.ptcbu.oz.au),
			        Joe English (joe@trystero.art.com) ]

  eg: My main xterm font is 7x13, so I also have twm set up to use 7x13
  in all it's menus and icons etc.  Twm's default font is 8x13.  Since
  I don't normally use 8x13, I've eliminated one font from my server.

  Oliver Jones (oj@roadrunner.pictel.com):
    Keep fonts local to the workstation, rather than loading them over nfs.
    If you will make extensive use of R5 scalable fonts, use a font server.

About the Resources File
- - - - - - - - - - - - -

    Keep your .Xresources / .Xdefaults file small.  Saves RAM and saves
    on server startup time.          Joe English (joe@trystero.art.com)

  One suggestion:

    In your .Xdefaults (.Xresources) file, try putting only the minimum
    number of resources that you want to have available to all of your
    applications.  For example:  *reverseVideo: true

    Then, separate your resources into individual client-specific
    resource files.  For example: $HOME/lib/app-defaults.  In your
    .login file set the environment variable XUSERFILESEARCHPATH:

	setenv XUSERFILESEARCHPATH $HOME/lib/app-defaults/%N

    [ The "comp.windows.x Frequently Asked Questions" FAQ contains
    an excellent explanation of how these environment variables work.
    --ed.]

    So, when xterm launches, it loads its resources from
    .../app-defaults/XTerm.  Xdvi finds them in .../app-defaults/XDvi,
    and so on and so forth.  Note that not all clients follow the same
    XXxxx resource-file naming pattern.  You can check in your system
    app-defaults directory (often: /usr/X11R5/lib/X11/app-defaults/) to
    find the proper name, and then name your personal resource files
    with the same name.

    This is all documented in the Xt Specification (pg 125 & 666).
		    [Thanks to: Kevin Samborn (samborn@mtkgc.com),
		         Michael Urban (urban@cobra.jpl.nasa.gov),
		             and Mike Long (mikel@ee.cornell.edu).
	     Kevin is willing mail his setup files to inquirers.]

  This method of organizing your personal resources has the following
  benefits:

    - Easier to maintain / more usable.

    - Fewer resources are stored in the X server in the RESOURCE_MANAGER
      property.  As a side benefit your server may start fractionally
      quicker, since it doesn`t have to load all your resources.

    - Applications only process their own resources, never have to sort 
      through all of your resources to find the ones that affect them.

  It also has drawbacks:

    - the application that you are interested in has to load an
      additional file every time it starts up.  This doesn't seem to
      make that much of a performance difference, and you might
      consider this a huge boon to usability.  If you are modifying an
      application's resource database, you just need to re-run the
      application without having to "xrdb" again.

    - xrdb will by default run your .Xdefaults file through cpp.  When
      your resources are split out into multiple resource files and
      then loaded by the individual client programs, they will not.
      WATCH OUT FOR THIS!!

      I had C style comments in my .Xdefaults file, which cpp stripped
      out.  When I switched to this method of distributed resource
      files I spent several frustrating days trying to figure out why
      my clients were not finding their resources.  Xt did *NOT*
      provide any error message when it encountered the C style
      comments in the resource files, it simply, silently, aborted
      processing the resource file.

      The loss of preprocessing (which can be very handy, e.g. ``#ifdef
      COLOR'' ...) is enough to cause some people to dismiss this
      method of resource management.

    - You may also run into some clients which break the rules.  For
      example, neither Emacs (18.58.3) nor Xvt (1.0) will find their
      resources if they are anywhere other than in .Xdefaults.

    - when starting up a client on a machine that does not share files
      with the machine where your resources are stored, your client
      will not find its resources.  Loading all your resources into the
      server will guarantee that all of your clients will always find
      their resources.            Casey Leedom (casey@gauss.llnl.gov)

  A possible compromise suggestion that I have (and am planning on trying)
  is to put resources for all my heavily used clients (eg: xterm) into my
  .Xdefaults file, and to use the "separate resources files" method for
  clients that I seldom use.

Define Your Display Properly
- - - - - - - - - - - - - - -

  Client programs are often executed on the same machine as the server.  In
  that situation, rather than setting your DISPLAY environment variable to 
  "<hostname>:0.0", where <hostname> is the name of your workstation, you
  should set your DISPLAY variable to "unix:0.0" or ":0.0".  By doing this
  you access optimized routines that know that the server is on the same
  machine and use a shared memory method of transferring requests.
			[thanks to Patrick J Horgan (pjh70@ras.amdahl.com)]

  See the _DISPLAY NAMES_ section of the X(1) man page for further
  explanation of how to properly set your display name.

  "I don't think it's stock MIT, but (at least) Data General and HP have
  libraries that are smart enough to use local communication even when
  the DISPLAY isn't set specially."
			      Rob Sartin (88opensi!sartin@uunet.UU.NET)

  [Jody Goldberg (jody@algorithmics.com) sent me an Xlib patch to change
  stock R5 to use local communication even if DISPLAY is not properly set.
  I don't want to get in the business of distributing or trying to juggle
  non-MIT patches and so have elected not to include it here.  Hopefully MIT
  will apply this minor (~8 lines) patch themselves.  In the meantime, if
  you want to try it yourself, email Jody.  --ed.]

-------
Clients
-------

  If you only have a few megabytes of Ram then you should think
  carefully about the number of programs you are running.  Think also
  about the _kind_ of programs you are running.  For example:  Is there
  a smaller clock program than xclock?

  Unfortunately, I haven't really noticed that programs advertise how large
  they are, so the onus is on us to do the research and spread the word.

  [ Suggestions on better alternatives to the some of the standard clients
  (eg: Xclock, Xterm, Xbiff) are welcome.  --ed.]

  I've received some contradictory advice from people, on the subject
  of X client programs.  Some advocate the use of programs that are
  strictly Xlib based, since Xt, Xaw and other toolkits are rather
  large.  Others warn us that other applications which you are using
  may have already loaded up one or more of these shared libraries.  In
  this case, using a non-Xt (for example) client program may actually
  _increase_ the amount of RAM consumed.

  The upshot of all this seems to be: Don't mix toolkits.  That is, try
  and use just Athena clients, or just Xview clients (or just Motif
  clients, etc).  If you use more than one, then you're dragging in
  more than one toolkit library.

  Know your environment, and think carefully about which client
  programs would work best together in that environment.

		  [Thanks to: Rob Sartin (88opensi!sartin@uunet.UU.NET),
      Duncan Sinclair (sinclair@dcs.gla.ac.uk | sinclair@uk.ac.gla.dcs) ]

A Better Clock for X
- - - - - - - - - - -

1) xcuckoo
   suggested by: Duncan Sinclair (sinclair@dcs.gla.ac.uk)
   available: on export.lcs.mit.edu

   Xcuckoo displays a clock in the title bar of *another* program.
   Saves screen real estate.

2) mclock
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in /X/mclock.shar

   Non Xt-based.  Extensively configurable.  it can be made to look
   very much like MIT oclock, or mostly like xclock purely by changing
   resources.

  Of course, the ultimate clock --- one that consumes no resources, and 
  takes up no screen real estate --- is the one that hangs on your wall.
  :-) 

A Better Terminal Emulator for X
- - - - - - - - - - - - - - - - -

  From the README file distributed with xterm:

  +-----
  |		 Abandon All Hope, Ye Who Enter Here
  |
  | This is undoubtedly the most ugly program in the distribution.
  | ...
  +-----

  Ugly maybe, but at my site it's still the most used.  I suspect that
  xterm is one of the most used clients at many, if not most sites.
  Laziness?  Isn't there a better terminal emulator available?  See below.

  If you must use xterm, you can try reducing the number of saveLines
  to reduce memory usage.  [ Oliver Jones (oj@roadrunner.pictel.com),
		   Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk) ]

1) Xvt
   suggested by: Richard Hesketh (rlh2@ukc.ac.uk) :
   available: export.lcs.mit.edu in /contrib/xvt-1.0.tar.Z

   "...if you don't need all the esoteric features of xterm, then get
   hold of xvt ...  it was written here just to save swap space as
   xterm is rather a hog! "

   This was written as a partial 'clone' of xterm.  You don't have to
   rename your resources, as xvt pretends to be XTerm.  In it's current
   version, you cannot bind keys as you can in xterm.  I've heard that
   there are versions of xvt with this feature, but I've not found any
   yet.

   UPDATE (March 1993):  I recently had a few email conversations with
   Brian Warkentin (brian.warkentine@eng.sun.com) regarding xvt.  He
   questions whether xvt really is at all faster than xterm.  For
   instance, xvt may initialize slightly faster, but compare scrolling
   speed (try this quickie benchmark: /bin/time dd if=/etc/termcap
   bs=40) and see which program can scroll faster.  Also, while xterm
   may be slightly larger in RAM requirements (We don't have any hard
   numbers here, does anyone else?) shared libraries and shared text
   segments mean that xterm's paging requirements are not that major.

   As an experiment, he ripped out all the tek stuff from xterm, but it
   made little difference, since if you never use it, it never gets
   brought into memory.

   So here we stand with some conflicting reports on the validity of
   xvt over xterm.  In summary?  Caveat Emptor, your mileage may vary.
   If you can provide some hard data, I'd like to see it.
   Specifically: How much RAM each occupies, how much swap each needs,
   relative speed of each

2) mterm
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in
     /X/mterm.src/mterm.ball-o-wax.

   "I also have my own terminal emulator.  Its major lack is
   scrollback, but some people like it anyway."


Tuning your client
- - - - - - - - - -

  Suggestions on how you can tune your client programs to work faster.

  From Scott Barman (scott@asd.com) comes a suggestion regarding Motif
  Text Field Widgets:

    I noticed that during data entry into Motif text field widgets, I
    was getting a slight lag in response to some keystrokes,
    particularly the initial one in the field.  Examining the what was
    going on with xscope I found it.  It seems that when the resource
    XmNblinkRate is non-zero and the focus is on a text field widget
    (or even just a text widget) the I-beam cursor will blink.
    Every time the cursor appears or disappears in those widgets, the
    widget code is making a request to the server (CopyArea).  The user
    can stop this by setting the resource XmNblinkRate to 0.  It is not
    noticeable on a 40MHz SPARC, but it does make a little difference
    on a [slower system].

  This specific suggestion can probably be applied in general to lots
  of areas.  Consider your heavily used clients, are there any minor
  embellishments that can be turned off and thereby save on Server
  requests?

-------------------------
Miscellaneous Suggestions
-------------------------

Pretty Pictures
- - - - - - - -
  Don't use large bitmaps (GIF's, etc) as root window backgrounds.

  - The more complicated your root window bitmap, the slower the server
    is at redrawing your screen when you reposition windows (or redraw, etc)

  - These take up RAM, and CPU power.  I work on a Sun SPARC and I'm
    conscious of performance issues, I can't comprehend it when I see
    people with a 4mb Sun 3/60 running xphoon as their root window.

    I'll let someone else figure out how much RAM would be occupied by
    having a full screen root image on a colour workstation.

  - If you're anything like me, you need all the screen real estate
    that you can get for clients, and so rarely see the root window anyway.

		      [ Thanks to Qiang Alex Zhao (azhao@cs.arizona.edu) 
			for reminding me of this one. --ed.]

A Quicker Mouse
- - - - - - - -
  Using xset, you can adjust how fast your pointer moves on the screen
  when you move your mouse.  I use "xset m 3 10" in my .xinitrc file,
  which lets me send my pointer across the screen with just a flick of
  the wrist.  See the xset man page for further ideas and information.

  Hint: sometimes you may want to *slow down* your mouse tracking for
  fine work.  To cover my options, I have placed a number of different
  mouse setting commands into a menu in my window manager.  

  e.g. (for twm) :
      menu "mouse settings" {
        "Mouse Settings:"			f.title
	"  Very Fast"				! "xset m 7 10 &"
	"  Normal (Fast)"			! "xset m 3 10 &"
	"  System Default (Un-Accelerated)"	! "xset m default &"
	"  Glacial"				! "xset m 0 10 &"
      }

Programming Thoughts
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    To speed up applications that you're developing, there are tons of
    things you can do.  Some that stick out:

    - For Motif programs, don't set XmFontList resources for individual
      buttons, labels, lists, et. al.; use the defaultFontList or
      labelFontList or whatever resource of the highest-level manager
      widget.  Again, stick to as few fonts as possible.

    - Better yet, don't use Motif at all.  It's an absolute pig.

    - Don't create and destroy widgets on the fly.  Try to reuse them.
      (This will avoid many problems with buggy toolkits, too.)

    - Use a line width of 0 in GCs.  On some servers this makes a HUGE
      difference.

    - Compress and collapse multiple Expose events.  This can make the
      difference between a fast application and a completely unusable
      one.

  Francois Staes (frans@kiwi.uia.ac.be) :
    Just a small remark: I once heard that using a better malloc
    function would greatly increase performance of Xt based
    applications since they use malloc heavily. They suggested trying
    out the GNUY malloc, but I didn't find the time yet. I did some
    tests on small programs just doing malloc and free, and the
    differences were indeed very noticeable ( somewhat 5 times faster)

  [ Any confirmation on this from anyone?  --ed.]

  Andre' Beck (Andre_Beck@IRS.Inf.TU-Dresden.de) :

  - Unnecessary NoExpose Events.

    Most people use XCopyArea/XCopyPlane as fastest blit routines, but
    they forget to reset graphics_exposures in the GC used for the
    blits. This will cause a NoExpose Event every blit, that, in most
    cases, only puts load onto the connection and forces the client to
    run through it's event-loop again and again.

  - Thousands of XChangeGC requests.

    This "Gfx Context Switching" is also seen in most handcoded X-Apps,
    where only one or few GCs are created and then heavily changed
    again and again.  Xt uses a definitely better mechanism, by caching
    and sharing a lot of GCs with all needed parameters. This will
    remove the load of subsequent XChangeGC requests from the
    connection (by moving it toward the client startup phase).

Say What!?
- - - - - - 
  Some contributors proposed ideas that seem right off the wall at first:

  David B. Lewis (by day: dbl@osf.org, by night: david%craft@uunet.uu.net) :
    How about this: swap displays with someone else. Run all your programs
    on the other machine and display locally; the other user runs off your
    machine onto the other display. Goal: reduce context switches in the
    same operation between client and server.

  I'm not in a situation where I can easily try this, but I have received
  the following confirmation...

  Michael Salmon (Michael.Salmon@eos.ericsson.se):
    I regularly run programs on other machines and I notice a big
    difference. I try to run on a machine where I will reduce net usage
    and usually with nice to reduce the impact of my intrusion. This
    helps a lot on my poor little SS1+ with only 16 MB, it was
    essential when I only had 8 MB.

  Casey Leedom (casey@gauss.llnl.gov) :
    [The X11 Server and the client are] competing for the same CPU as
    your server when you run it on the same machine.  Not really a
    major problem, except that the X11 client and the server are in
    absolute synchronicity and are context thrashing.

  Timothy H Panton (thp@westhawk.uucp) :
    Firstly it relies on the fact that most CPU's are mostly idle, X's
    cpu usage is bursty.  so the chances of you and your teammate
    doing something cpu-intensive at the same time is small. If they
    are not then you get twice the cpu+memory available for your
    action.

    The second factor is that context switches are expensive, using 2
    cpu's halves them, you pay a price due to the overhead of going
    over the network, but this is offset in most cases by the improved
    buffering of a network (typically 20k vs 4k for a pipe), allowing
    even fewer context switches.

----------------------------
Other Sources of Information
----------------------------

  Volume 8 in O'Reilly's X Window System Series, ``X Window System
  Administrator's Guide'' is a book all X administrator's should read.

  Adrian Nye (adrian@ora.com):
    A lot more tips on performance are in the paper "Improving X
    Application Performance" by Chris D. Peterson and Sharon Chang, in
    Issue 3 of The X Resource.

    An earlier version of this paper appeared in the Xhibition 1992
    conference proceedings.

    This paper is absolutely essential reading for X programmers.

--------------
Author & Notes
--------------
  This list is currently maintained by Art Mulder (art@cs.ualberta.ca)

  Suggestions, corrections, or submission for inclusion in this list
  are gladly accepted.  Layout suggestions and comments (spelling
  mistak's too! :-) are also welcome.

  Currently I have listed all contributors of the various comments and
  suggestions.  If you do not want to be credited, please tell me.

  speedup-x-faq is copyright (c) 1993 by Arthur E. Mulder

  You may copy this document in whole or in part as long as you don't
  try to make money off it, or pretend that you wrote it.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
 ...art mulder ( art@cs.ualberta.ca )    | "Do not be conformed to this world,
 Department of Computing Science         |  but be transformed by the renewal
 University of Alberta, Edmonton, Canada |  of your mind, ..."  Romans 12:2

Newsgroup: comp.windows.x
Document_id: 66869
From: drisko@ics.com (Jason Drisko)
Subject: Re: app-defaults files

Hello,

   When starting bx if you recieve an error message saying
"cannot load app-defaults file..." check your XAPPLRESDIR
environment variable and then put the file BuilderXcessory 
( this is the app-defaults file for BX ) in the directory
specified by the XUSERFILESEARCHPATH environment variable.

   If you don't have an XUSERFILESEARCHPATH environment variable
then set XUSERFILESEARCHPATH to be the directory where the
BuilderXcessory file is. You can do this using the setenv
command under csh. Note that the name ends in .ad so you will
have to set XUSERFILESEARCHPATH to {BX}/%N.ad to get the
app-defaults to load correctly.

   To make sure the the app-defaults file can be read by all
the users, make sure that a copy of or a link to the app-defaults
file exists in /usr/lib/X11/app-defaults or 
/usr/openwin/lib/app-defaults, depending on how your system is
set up.

   Once you have taken care of this set the *systemDirectory
resource to be the directory in which you have installed BX. 
For example let's say I've installed BX in /t then my system
directory resource should be set like this :

*systemDirectory: /t/builderXcessory

    Thanks,
      ICS Tech Support

Newsgroup: comp.windows.x
Document_id: 66870
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

> 
> I am trying to use XCopyPlane to copy a single plane 
> from a depth-8 pixmap to a depth-1 pixmap.  Everytime I
> try this, I see absolutely nothing displayed.  I know there
> is data in the depth-8 pixmap becuase I have checked by doing
> an XCopyArea to the screen.
> 
> I have been successful getting XCopyPlane to work if I use
> two pixmaps of depth-8.  Is there a problem with what I am
> trying to do??
> 
> Could someone please scan my code segment and let me know
> where I am going wrong...
> 
> I have created a XmDrawingArea widget called canvas. 
>  
>     w_id = XtWindow(canvas);
>     display = XtDisplay(canvas);
>     screen = DefaultScreen (display);
>     pixmap8 = XCreatePixmap (display, RootWindow (display, screen),
>                     w_width, w_height, DefaultDepth (display, screen));
>     pixmap1 = XCreatePixmap (display, RootWindow (display, screen),
>                     w_width, w_height, 1);
> 
>     w_gc8 = XCreateGC (display, w_id, 0, NULL);
>     w_gc1 = XCreateGC (display, pixmap1, 0, NULL);
> 
> --> Code to read xwd image into pixmap8 is omitted <----
> 

Have you set the foreground and background colors in w_gc1 to 
something other than 0 and 1?  The WhitePixel and BlackPixel macros
on your server may not return values suitable for depth 1 drawables.


>     /* Copy one plane into the depth-1 pixmap */
>     XCopyPlane (display, pixmap8, pixmap1,
>                 w_gc1, 0, 0, w_width, w_height, 0, 0, 16);
> 

Are you sure that the fifth plane of the data isn't all the same?  You could
have different pixel values in the image, but the fifth plane (0x10 == 16)
might all be the same value?


>     /* Using the depth-1 pixmap as the clipmask, copy it to the screen */
>     values.foreground = fg_color;
>     values.clip_x_origin = 0;
>     values.clip_y_origin = 0;
>     values.clip_mask = pixmap1;
>     mask = GCForeground | GCClipMask;
>     XChangeGC (display, w_gc8, mask, &values);
> 
>     XFillRectangle (display, w_id, w_gc8, 0, 0, w_width, w_height);
> 


If you just want to see the plane of data and want better performance,
don't use ClipMasks, just use pixmap1 as the stipple in a stippled
rectangle fill.  Many servers are very stupid about handling complex
clip lists, and turn a bitmap clip region into hundreds and hundreds of
little clipping rectangles, and clips every drawing primitive against every
one of these little triangles.


Actually, I must also ask the FAQ's #1 most popular reason why graphics
don't show up: do you wait for an expose event before drawing your
rectangle?



> Other Info:  X11R5 Patchlevel 10
>              Motif 1.2.1
>              Sun Sparc2 running SunOS 4.1.1
>              
> 
> Thanks in Advance!
> 
>  ----------------------------------------------------------------
>  Nancie P. Marin      NET:  nancie@neko.css.gov
>  ENSCO Inc.           MAIL: 445 Pineda Ct.  Melbourne, Fl.  32940
>  (407)254-4122        FAX:  (407)254-3293
>  ----------------------------------------------------------------
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
Document_id: 66871
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: MS Windows VS Motif (GUI design differences), was Re: Future of Unix


In article <IK.93Apr9075401@sneaker.ctt.bellcore.com>, ik@sneaker.ctt.bellcore.com (Ik Su Yoo ) writes:
|> >>>>> "aab" == Andy Burgess <aab@cichlid.com> writes:
|> 
|>   aab> In <1993Apr7.200950.16856@texhrc.uucp> pyeatt@Texaco.com (Larry D. Pyeatt) writes:
|> 
|>   aab> <some deleted>
|> 
|>     >If you
|>     >look closely at Motif, you will see that it is just MS-Windows
|>     >with more eye-pleasing color and texture.  The only real difference
|>     >is that an MS application window can "contain" other toplevel children, 
|>     >while a Motif application window "launches" its children out onto the
|>     >desktop.
|> 
|>   aab> To those of you familiar with both GUIs, is this correct? My experience
|>   aab> with X makes me think that this MSW behavior is easily duplicated
|>   aab> with X11. But I don't know MSW...
|> 
|> Another important difference is that MSW doesn't have any window that
|> handle sophisticated geometry management (like XmForm). Also, I believe
|> that in Windows 3.x you're limited to 64K of resources (windows, menus,
|> icons, etc.).

IMHO this whole discussion named "Motif looks like MS-Windogs" is totally
stupid. The only thing remotely influenced here can be the Motif Window
Manager, that features an arrangement of buttons and menus somewhat
similiar to this of the MS-W windowmanaging agent, however its name is.
But MWM is only a SMALL part of Motif, in fact, MWM and Motif can work
without each other, and if one doesn't like MWMs outfit for some reason,
he switches to another windowmanager. All this doesn't influence Motif,
which is a toolkit of widgets to write applications, and this toolkit
is IMHO uncomparable to MS-W, because it is much more wellorganized and
features alot of goodies more than the MS-W interface.

You cannot say "A Porsche looks like a VW Kfer" ONLY because they have the
wheel and the gear at the same position. Motif and MS-W are complete
different worlds, only one element of the Motif world has some gear and wheel
at the same position as MS-W.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66872
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: X version of whois??

Has an X version of whois been written out there?  If so, where can I ftp it
from?  Thanks.

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
Document_id: 66873
From: kk@unisql.UUCP (Kerry Kimbrough)
Subject: GUI Study -- do users want to build solutions?



   ...let me point out that both GUI-based word-processors and text-based
   formatters both have a language; one happens to be mouse- and
   action-based, and the other symbol-based.

True, but that's beside the point. This is a fact about an abstract model
of what the GUI users are doing, not about what they actually *are* doing.
This abstract model is only apparent from the perpective of a *programmer*
of the system. (NB: some users may see it, too, but only when they put
aside the work at hand and start thinking like a programmer.)

I'm not saying that the programmer's perspective is evil or stunted. After
all, that's what I do, too! I am saying that UI designers must carefully
distinguish between the user/programmer conceptual models, and they must
ultimately serve the user of the system, not the builder of the system. 


   I don't recall the actual stats, but something like 1 in 5 people can be
   categorized as a "symbol manipulator".

It would be interesting to know more about the meaning and basis for this
claim. At any rate, I don't think this is evidence that 20% of users think
like programmers. Bankers, financial analysts, structural engineers ---
these are all people whose work you could characterize as primarily symbol
manipulation. But what they do is not programming, and programming is not
required to do what they do. 

To restate my previous point: yes, users want to build their own solutions;
no, they do not want to do programming to accomplish this.

Newsgroup: comp.windows.x
Document_id: 66874
From: eanders@cthulhu.sura.net (Eric Anderson)
Subject: Re: Is Xlib thread safe?

In article <9304132134.AA24803@alex.lcs.mit.edu> gildea@expo.lcs.mit.EDU (Stephen Gildea) writes:
>No, the R5 Xlib is not thread-safe.  But we are working on it.
>See my article in The X Resource, issue 5.  Consortium members
>will have a multi-threaded version soon, and it will be part
>of R6.
There is a multi threaded xlib version written.
Do an archie search for mt-xlib:
Host export.lcs.mit.edu

    Location: /contrib
      DIRECTORY drwxr-xr-x        512  Jul 30 1992  mt-xlib
    Location: /contrib/mt-xlib-1.1
           FILE -rw-r--r--     106235  Jan 21 14:02  mt-xlib-xhib92.ps.Z
           FILE -rw-r--r--    1658123  Jan 21 14:03  mt-xlib.tar.Z
    Location: /contrib/mt-xlib
           FILE -rw-r--r--     106235  Jul 30 1992  mt-xlib-xhib92.ps.Z
           FILE -rw-r--r--    1925529  Jul 30 1992  mt-xlib.tar.Z

et.al.
          -Eric 
*********************************************************
"Overhead, without any fuss, the stars were going out."
           -The Nine Billion Names of God
"Yes, you're very smart.  Shut up."
           -In "The Princess Bride"
*********************************************************

Newsgroup: comp.windows.x
Document_id: 66875
From: lusardi@cs.buffalo.edu (Christopher Lusardi)
Subject: System file in /tmp

What is the directory .X11-unix for in /tmp? When I start
x, it is created by the system. This directory wasn't created 
by root, and it contains an empty file (X0) that is owned by me. 

						
-- 
|  .-,                ###|For a lot of .au music: ftp sounds.sdsu.edu
| /   /   __  ,  _    ###|then cat file.au > /dev/audio
| \_>/ >_/ (_/\_/<>_     |UB library catalog:telnet bison.acsu.buffalo.edu
|_                14261 _|(When in doubt ask: xarchie, xgopher, or xwais.)

Newsgroup: comp.windows.x
Document_id: 66876
From: dsc3jfs@imc10 (John F Skoda)
Subject: How do I change the Text cursor in xterm


 I have just finished building X11R5 on a 386 running Interactive Unix (SysVR3)
and I am having a problem with xterm.  On any font larger that 5x7 it messes up
characters that are types, the cursor seems to be "too" large, or splits into
a 1/2 reverse video, 1/2 outline block (which changes when the pointer is moved
into the window).  I am trying to use monospaced fonts (not -p- fonts).  Is
there any way of changing the appearence of the block cursor is an Xterm?

 Thanks
    

--
------------------------------------------------------------------------------
-- John F Skoda                            | Windows NT, OS/2 for the 90's. 
-- electronic learning facilitators, inc.  | C++, Cobol for the 21st century.
-- Bethesda, MD                            | Use Ada, Unix, and other socially
-- dsc3jfs@imc10.med.navy.mil		   | unacceptable systems. 
-- dsc3jfs@imc30.med.navy.mil              | (and before you flame, I'm an
-------------------------------------------| Expos fan... ...need I say more?)
with DISCLAIMER_PACKAGE;

Newsgroup: comp.windows.x
Document_id: 66877
From: kobet@xsun2a.ct.picker.com (Harry J Kobetitsch)
Subject: xwd

I am trying to run xwd on a Sun SPARCstation IPX
with SunOS 4.1.2 and Openwindows 3.0. I am using
the Motif window manager. I have been unsuccessful
in using xwd under Motif. I get the following when
doing xwd -out xwd.dmp

X Error of failed request:  BadDrawable (invalid Pixmap or Window parameter)
  Major opcode of failed request:  73 (X_GetImage)
  Resource id in failed request:  0x500043
  Serial number of failed request:  213
  Current serial number in output stream:  213

Does anyone have any insight to this ?

Newsgroup: comp.windows.x
Document_id: 66878
From: coe@leopard.cs.uidaho.edu (Mike Coe)
Subject: window manager




I currently use a window manager called ctwm which
is very similar to hp's vuewm. (i.e. 
it has multiple workspaces).  Is there a 
motif based window manager that has this 
same feature and is not a memory pig like vue?



mike

--
Michael L Coe                 |  "A mind is a terrible thing."
Laboratory of Applied Logic   | 
University of Idaho           | 
coe@leopard.cs.uidaho.edu     | 
coe861@snake.cs.uidaho.edu                      

Newsgroup: comp.windows.x
Document_id: 66879
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: X11R5 and Open Look

In article <1993Apr12.155820.82@aedc-vax.af.mil>, bonds@aedc-vax.af.mil writes:
> I am reposting this because I am not sure my first post ever made it out.
> I have built and installed X11R5 on my SPARCstation 2.  My aim is to run
> the MIT X server but retain the OpenLook Window Manager.  I am sure this
> is not uncommon, but I just want to make sure that I change and/or delete
> everything that I need to.  For instance, I can start xdm in rc.local, but
> how do I get rid of Xnews?
> 

  The OpenLook window manager source is available on the MIT contrib tapes
  or from  export.lcs.mit.edu  .I would suggest building this too, rather than
  using the version from OpenWindows. It is  olwm  v3.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
Document_id: 66880
From: donaldlf@k9.Rose-Hulman.Edu (Leslie F. Donaldson)
Subject: Problems using Graphic Context with Athena widgets

I am creating a graphics program using the Athena widgets. I use
Xlib routines to install a custom Graphics Contex by obtaining the display,
and window variables with the XtWindowOfObject() and XtDisplayOfObject().
The object was one of the sub widgets.  
  The problem occurs that whenever a button is pressed or a menu is selected
the graphic contex reverts to the orginal one. I tried moving the allocation
of the graphic context before the allocation of the buttons but nothing
changed. I am preforming all of this manipulation before calling 
XtAppMainLoop().

Thank you for any help.
Leslie Donaldson

donaldlf@cs.rose-hulman.edu
donaldlf@nextwork.rose-hulman.edu

Newsgroup: comp.windows.x
Document_id: 66881
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: C++ toolkit "directions" ?

In article <533@imp.HellNet.org> devil@loki.HellNet.org (Gil Tene) writes:
>I am trying to figure out the current C++ toolkit "directions".
>More simply, I'd like to know which C++ toolkit to "bet on" 
>for use in a new long term project.

I have the same problem.  I have looked at Motif++, WWL, InterViews, GINA++,
and a few variations on the above.  I've also done a cursory examination
of Rogue Wave's View.h++.  I like View.h++'s abstractions best of all of the
toolkits I mentioned, but the resulting code looks little like Motif, and I
have little confidence that this software will catch on or otherwise result
in significant longevity for my code.  GINA++ allows you to write code which
looks a great deal like Motif and also makes interesting use of inheritance,
but the resulting code is almost too Motif-like, and is certainly not
significantly less verbose than equivalent C code.  InterViews looks
promising, but I haven't found a free version with Motif support, and I'm
not confident how widely InterViews with Motif support will be adopted,
and what (if any) specific Motif support will be available over time.  The
other libraries produce code which is less Motif-like, but which does not make
sufficient use of the features of C++ to simplify my coding task.

At this point, my inclination is to write my Motif manipulation routines in
C, and invoke those routines from my C++ code using simple abstractions suited
to my specific task.  Later, if OSF or some credible standards-setting body
comes up with a C++ interface to Motif, I will change to that.  It does me
no goo to write in C++ if my choice of interfaces leaves me with code which
leaves me tied to an abstraction which is not consistent with the industry
directions.  It's better to take a standard if inferior solution for now
than to go with a slgihtly superior approach which will leave me with both
useless code and useless skills a few years from now.  Views.h++ is the only
library I'd consider right now, but in our environment, we'd end up spending
nearly $5000 to use it, and I can't justify it when it's likely to cause
short-term productivity decreases as we learn the new abstraction, and is
unlikely to be a sufficiently long-lived solution for us to reap the benefits
at the high end of the J curve.

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
Document_id: 66882
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Fresco status?

I've been hearing rumblings about Fresco, and it sounds like it may be
what I'm looking for, but how far is it from release, or at least some kind
of availability?  How similar is it to InterViews?  If I code to InterViews,
will my code work with Fresco?  How about Motif?  I've heard some mention
of versions of InterViews which support Motif.  Will it be feasible to use
Motif with Fresco?

Any information would be much appreciated.

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
Document_id: 66883
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: iconize a running application?

In article <C5IFJ0.F2u@csn.org> doomer@teal.csn.org (John Dumais) writes:
>I've been trying to figure a way to programmatically iconize 
>an application running under a Motif window manager.  I have tried
>several approaches includeing sending events to the application's
>border window, but to no avail?  Anyone done this before?

I tend to use XIconifyWindow to achieve this effect...  Have you tried that?

- Brad
-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
Document_id: 66884
From: jbore@cosmos.shearson.com (Joe Bore)
Subject: Re: iconize a running application?

it doesnt matter what window mgr you running under, you can use the X
routine:
	XIconfiyWindow(display, w, screen_number)
		Display *display;
		Window w;
		int screen_number;

as in

	XiconifyWindow( XtDisplay(w), XtWindow(w), 0);

does that perform what you want??


In article <C5IFJ0.F2u@csn.org> doomer@teal.csn.org (John Dumais) writes:

   Newsgroups: comp.windows.x
   Path: shearson.com!uupsi!psinntp!uunet!haven.umd.edu!darwin.sura.net!wupost!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!teal.csn.org!doomer
   From: doomer@teal.csn.org (John Dumais)
   Sender: news@csn.org (news)
   Nntp-Posting-Host: teal.csn.org
   Organization: Colorado SuperNet, Inc.
   X-Newsreader: Tin 1.1 PL4
   Date: Thu, 15 Apr 1993 05:35:22 GMT
   Lines: 8

   I've been trying to figure a way to programmatically iconize 
   an application running under a Motif window manager.  I have tried
   several approaches includeing sending events to the application's
   border window, but to no avail?  Anyone done this before?

   Thanks,

   doomer '85
--
-------------------------------------------------------------------------------
Joe Bore					 | "Life is Short...Code Hard"
jbore@Shearson.COM | ...!uunet!shearson.com!jbore| 
(212)464-3431, Beeper:  (212)396-4248		 |

Newsgroup: comp.windows.x
Document_id: 66885
From: ndd@sunbar.mc.duke.edu (Ned Danieley)
Subject: compiling clients on a Sun IPX

I'm trying to set up an IPX for another group. I copied all the
X stuff that I compiled on my 4/280 (which runs SunOS 4.1.1) using
gcc 2.1, and most things run just fine. however, I did find a
couple of bugs, and when I try to recompile those clients on the IPX
(which runs 4.1.3), I get

ld: Undefined symbol
   _XShapeQueryExtension
   _XShapeCombineMask

I know that I can include libXext and get rid of those messages,
but I can't figure out why I get them on the IPX and not on the
4/280. any ideas?

-- 
Ned Danieley (ndd@sunbar.mc.duke.edu)
Basic Arrhythmia Laboratory
Box 3140, Duke University Medical Center
Durham, NC  27710   (919) 660-5111 or 660-5100

Newsgroup: comp.windows.x
Document_id: 66886
From: bambi@kirk.bu.oz.au (David J. Hughes)
Subject: Re: Motif vs. [Athena, etc.]

berry@durian.citr.uq.oz.au (Andrew Berry) writes:

>My impression is that most people use Motif because their OS vendor
>supplies it with X (SunOS users excluded), and because it is similar in
>"look and feel" to MS-Windows and OS/2 PM.  Personally, I also prefer
>the "look and feel" of Motif (no flames please -- just an opinion).

Seeing as Motif has been adopted by Sun, IBM, HP +++ (can't remeber the
other members in the recent announcement), I'm sure you'll see it on
virtually every workstation (ie. Sun, IBM, HP and DEC must make up the
**VAST** majority of all hardware).


>I am also concerned by this prevalence of Motif, particularly from the
>point of view of writing and obtaining free software.  As the Linux and
>386BSD communities grow, however, I think that Motif will lose some of
>its grip, at least in the non-commercial marketplace.  


Ports of Motif to both 386BSD and Linux are available for a fee of about
$100.  This is cost recovery for the person who bought the rights to
redistribute.  The activity in both the BSD and Linux news groups
pertaining to Motif has been high.


>I just wonder if this will also cause a divergence between commercial
>and non-commercial software (ie. you will only get free software using
>Athena or OpenLook widget sets, and only get commercial software using
>the Motif widget sets).  


I can't see why.  If just about every workstation will come with Motif
by default and you can buy it for under $100 for the "free" UNIX
platforms, I can't see this causing major problems.


Side Note :
---------
All the X based code I am writing (and will distribute freely when
completed) is based on Motif because from a programmatic and also "look
and feel" point of view I like it the best (no flames on this one
please).



bambi

   ___                                 David J. Hughes     bambi@bu.oz.au
  /   \                /  /    /        
 /  __/ __   __   ____/  /    / __          Senior Network Programmer
/    \ /  \ /  \ /   /  /    / /  \  /    Comms Development & Operation
\____/ \__//   / \__/   \___/ /   / /       AUSTRALIA  (+61 75 951450)

Newsgroup: comp.windows.x
Document_id: 66887
From: alex@vuse.vanderbilt.edu (Alexander P. Zijdenbos)
Subject: Sunview -> X

No doubt this is an old question, but I didn't find the answer in the
FAQs I could find, so - here goes:

I have a Sunview application that I want to convert to X (OpenLook,
Motiv, whatever). I remember hearing quite some time ago that there
are tools to accomplish this task.

	a) is that so?
	b) are they public domain?
	c) any good, i.e.
	d) advantages over reimplementing the interface myself?

Thanks,

-- Alex


Newsgroup: comp.windows.x
Document_id: 66890
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: mouseless operation in ol{v}wm

Mouseless operation is documented in the man pages for olwm and olvwm...
However, I can't get it to work in either.
I have this line in my .Xdefaults:
OpenWindows.KeyboardCommands:           Full

That should do it...
I haven't rebound the keys.
Am I missing something?

-D


Newsgroup: comp.windows.x
Document_id: 66891
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-server multi screen

Hi Xperts, some simple questions for you:

I've seen a lot of different terms, which seem to mean the same thing.
Who can give an exact definition what these terms mean:

	-) multi-screen
	-) multi-headed
	-) multi-display
	-) X-Server zaphod mode

Is there a limit how many screens/displays a single server can handle
(in an articel a read something about an upper limit of 12) ?

How is the capability called, if I want to move the cursor from one
screen/display to another.

Any hints welcome.

Thanks, rainer.
-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 66892
From: rvloon@cv.ruu.nl (Ronald van Loon)
Subject: Motif++ mailing list - is there any interest ?

Hello Motif World,

a few days ago I posted my announcement for an update of Motif++. I got
several requests to send the bindings per e-mail, and I know of several people
who have been using Motif++, and there are probably a number of people I am
not aware of who are also using Motif++.

My question is:

How many people 'out there' would be interested to join a mailing-list, where
people can ask questions about Motif++, swap stories, and give new ideas about
new directions and improvements for the bindings. This would benefit the
user-community, as well as give me more insight in what people would like to
see added to Motif++. Motif++ is still very much a voluntary project, and this
way I can make a list of priorities, in what order things should be added, or
changed.

If you're interested in joining such a mailing-list, please take the time to
reply to this message, and tell me so. When there is sufficient interest, say
about 20 people or more, a mailing-list will be set up at my site, and I will
post the announcement of the newly-created list to this and other newsgroups.
-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

Newsgroup: comp.windows.x
Document_id: 66893
From: stolk@fwi.uva.nl (Bram)
Subject: Creating 8 bit windows on 24 bit display.. How?

Greetings,


I am using an X server that provides 3 visuals:
PseudoColor 8 bit, Truecolor 24 bit and DirectColor 24 bit.

A problem occurs when I try to create a window with a visual that is different
from the visual of the parent (which uses the default visual which is TC24).

In the Xlib reference guide from 'O reilly one can read in the
section about XCteateWindow, something like:
"In the current implementation of X11: When using a visual other than the
parent's, be sure to create or find a suitable colourmap which is to be used 
in the window attributes when creating, or else a BadMatch occurs."

This warning, strangely enough, is only mentioned in the newer editions
of the X11R5 guides.

However, even if I pass along a suitable colourmap, I still get a BadMatch
when I create a window with a non-default visual.
The code looks like this:

------------------ cut here and you'll destroy your CRT ----------------

Window create_8bit_window_on_truecolour_display(dpy,width,height)
Display *dpy;
int width, height;
{
  Window win;
  XVisualInfo vinfo;
  XSetWindowAttributes attr;

  fprintf(stderr,"Opening 8 bit window...\n");
  if (!XMatchVisualInfo(dpy,DefaultScreen(dpy),8,PseudoColor,&vinfo)) {
    fprintf(stderr,"Your display can't handle 8 bit PseudoColor.\n");
    exit(1);
  }
  fprintf(stderr,"Using visual: %x\n",vinfo.visual->visualid);
  cmap = XCreateColormap(
           dpy,
           DefaultRootWindow(dpy),
           vinfo.visual,
           AllocNone
         );
  XSync(dpy,False);
  XInstallColormap(dpy,cmap);	/* ommision of this line gives same result */
  attr.colormap = cmap;
  win = XCreateWindow(
          dpy,
          DefaultRootWindow(dpy),
          10,10,
          width,height,
          CopyFromParent,       /* border width */
          8,                    /* depth */
          InputOutput,          /* class */
          vinfo.visual,         /* visual */
          CWColormap,
          &attr
        );
  return win;
}

--- cut here and you'll destroy your CRT -----

Executing this piece of code results in a BadMatch error.
Anybody who knows why?
If so, please drop me a line.



	Take care,


		Bram Stolk
		stolk@fwi.uva.nl

Newsgroup: comp.windows.x
Document_id: 66894
From: bm155@cleveland.freenet.edu (csthomas@gizmonic.UUCP)
Subject: xwd->gif conversions

Hello,

Anyone know of any source code I can get to either create window 
dumps in GIF format, or convert an XWD (x window dump) file 
into a GIF? Really could be any format I can manipulate in DOS, 
i.e. PCX, BMP, etc.

later,

shane

---
bm155@cleveland.freenet.edu {uucp:rutgers!devon!gizmonic!csthomas}
"God bless those Pagans..." - H. Simpson

Newsgroup: comp.windows.x
Document_id: 66895
From: claes@polaris (Heinz-Josef Claes)
Subject: german keyboard, X11R5 and Sparc

I have a Sparc[12] with a german type 4 keyboard.
Has anybody a Patch for X11R5?

Thanks in advance

Heinz-Josef Claes
email: claes@tigger.turbo.uni-essen.de


Newsgroup: comp.windows.x
Document_id: 66896
From: brown@ftms.UUCP (Vidiot)
Subject: Re: Printing ASCII 128 and above

In article <C5G1CE.8Is@noose.ecn.purdue.edu> achar@ecn.purdue.edu (Lakshminarayana Achar) writes:
<Could some tell me how to print characters over ASCII 127 on a laser
<printer? After being thrilled on being able to create them on my
<screen, my enthusiasm has somewhat died down due to this setback.

Well, more information is required...

1) What computer are you using?
2) What operating system are you using?
3) What kind of printer are you using?
	a) PostScript?
	b) HP-PCL?

etc.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 66897
From: hess@swt1.informatik.uni-hamburg.de (Hauke Hess)
Subject: XWindows always opaque

Hi,

I wonder if it is possible for a parent window to paint over the area of
its childs. If it is not, then how could it be possible to implement a 
rubberband across multiple xwindows to select the objects that are
displayed one in each window?

Hauke


Newsgroup: comp.windows.x
Document_id: 66898
From: pfuetz@igd.fhg.de (Matthias Pfuetzner)
Subject: Available memory to the Xserver. How to get the actual size?

Hello Everybody!

I have a little question:

Due to more features (PEX, Drag&Drop) many applications when linked with for
example Motif 1.2 instead Motif 1.1 need more memory in the Xserver.
X-terminals only have limited memory (normally no swapping possible). So my
question:

Is there a possibility to determine via X protocol calls the size of free
memory available to the Xserver?

So one can determine for example whether to start a PEX application with the
CSS on client side or on server side (when there is enough memory).

Please reply via e-mail, I'll summarize!

Sincerly,
        Matthias

-- 
    Matthias Pfuetzner  |  @work:  +49 6151 155-150  | @home: +49 6151 75717
    6100 Darmstadt, FRG | ZGDV, Wilhelminenstrasse 7 | Lichtenbergstrasse 73
      pfuetzner@igd.fhg.de, pfuetzner@zgdvda.UUCP    |  Keith Packard said:
      R5 is different from R4. That's why we changed the release number :-)

Newsgroup: comp.windows.x
Document_id: 66899
From: kssingvo@immd4.informatik.uni-erlangen.de (Klaus Singvogel)
Subject: xswarm enhancement?

Has anybody the xswarm enhacemened to use it with more than one wasp?

Please E-Mail me, because I don't read this group any longer.

Thanks in advance,
	Klaus.
---
Klaus Singvogel   ---   E-Mail: kssingvo@immd4.informatik.uni-erlangen.de

Newsgroup: comp.windows.x
Document_id: 66900
From: clark@thinker.csee.usf.edu (Matthew Clark)
Subject: Changing OLWM icons

I was wondering if it's possible to change the window icons OLWM
uses for things like xterm.  Most of the defaults are pretty lame.

Any answer (or where I can find one) would be most appreciated.

Thanks

Matt Clark

Newsgroup: comp.windows.x
Document_id: 66901
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Fresco status?


Issue 5 of the X Resource (the published proceedings of the 7th Annual X
Technical Conference) has an paper by Mark Linton and Chuck Price
titled "Building Distributed interfaces with Fresco".

The summary describes Fresco (formerly known as XC++) as an X consortium effort.
Without doing a complete review of the paper, I'll just mention the goals
as stated in one section of the article.  the effort has the goal of providing
the next generation toolkit with functionality beyond the Xt toolkit or Xlib.
Features they want in FRESCO include:

lightweight Objects, such as Interviews Glyphs
Structured Graphics
Resolution independence
Natural C++ programming interface
edit-in-place embedding
distributed user interface components
Multithreading

This by no means captures the complete content of the paper. The Conclusions
sections mentions that a rough draft specification should be available in
early 93, with no schedule (paper presented in Jan 93) for a complete sample
implementation.

I am not affiliated with any of the people or places mentioned above.

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 66902
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: XWindows always opaque



In article <hess.734959172@swt1>, hess@swt1.informatik.uni-hamburg.de (Hauke Hess) writes:
|> Hi,
|> 
|> I wonder if it is possible for a parent window to paint over the area of
|> its childs. If it is not, then how could it be possible to implement a 
|> rubberband across multiple xwindows to select the objects that are
|> displayed one in each window?
|> 
|> Hauke
|> 

If you specify the rootwindow when you are creating your GC. You may 
use Xlib to draw over multiple windows. 
I have an application that does something similar for rubber banding.

 curs_move = XCreateFontCursor (disp_data, XC_crosshair);

 geom_vals.foreground     = blck_pixl ^ grey_dark;
 geom_vals.plane_mask     = AllPlanes;
 geom_vals.line_width     = 0;
 geom_vals.function       = GXxor;
 geom_vals.subwindow_mode = IncludeInferiors;
 evnt_mask= GCForeground | GCPlaneMask | GCLineWidth | GCFunction
                                                     | GCSubwindowMode;
 geom_gcon= XCreateGC (disp_data, root_iden, evnt_mask, &geom_vals);



later I can move the rubber band or bands using the following logic

/**********************************************************************/
 void Tselect::move_bands (int delt_xloc, int delt_yloc)          /****/
stuff deleted ...
            XDrawRectangle (disp_data,   root_iden,  geom_gcon,
                            sele_pntr->rootx, sele_pntr->rooty,
                            sele_pntr->xlnth, sele_pntr->ylnth); undraw old one
            sele_pntr->papax+= delt_xloc;
            sele_pntr->papay+= delt_yloc;
            sele_pntr->rootx+= delt_xloc;
            sele_pntr->rooty+= delt_yloc;
            XDrawRectangle (disp_data,   root_iden,  geom_gcon, 
                            sele_pntr->rootx, sele_pntr->rooty,
                            sele_pntr->xlnth, sele_pntr->ylnth); draw new one
more stuff deleted
  hope this helps


-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 66903
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Motif vs. [Athena, etc.]

In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:
> 
> >I am also concerned by this prevalence of Motif, particularly from the
> >point of view of writing and obtaining free software.  As the Linux and
> >386BSD communities grow, however, I think that Motif will lose some of
> >its grip, at least in the non-commercial marketplace.  
> 
> Ports of Motif to both 386BSD and Linux are available for a fee of about
> $100.  This is cost recovery for the person who bought the rights to
> redistribute.  The activity in both the BSD and Linux news groups
> pertaining to Motif has been high.
> 
> >I just wonder if this will also cause a divergence between commercial
> >and non-commercial software (ie. you will only get free software using
> >Athena or OpenLook widget sets, and only get commercial software using
> >the Motif widget sets).  
> 
> I can't see why.  If just about every workstation will come with Motif
> by default and you can buy it for under $100 for the "free" UNIX
> platforms, I can't see this causing major problems.
> 

  I think you will find that the active Linux and 386BSD communities are
  populated by enthusiasts who would object to paying *any* money for software.
  Otherwise, they would probably have gone for a commercial Unix.
  An important factor in the Linux community is that source code is always
  available (this is probably similar in the 386BSD community, however, I'm not
  really involved there). Many people using Linux like to stay at the cutting
  (bleeding) edge: ie. when kernel patches, C library or compiler patches come
  out, people like to rebuild their entire systems. The prime requirement for
  all Linux software is that it is available under a GNU style public license.
  Hence, Linux software uses either the Athena widgets or XView.
  Individuals may write software requiring Motif, but I doubt it is widely
  adopted.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
Document_id: 66904
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Re: Expose Events

Please excuse my previous posting. It was appended to this thread by 
accident.


--> Robert

Newsgroup: comp.windows.x
Document_id: 66905
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Re: Expose Events

I posted about this a while ago but without code excerpts noone was 
able to help me.

The problem is that main_win.win is doing fine, but when I create 
detail_win.win, it does not receive it's initial expose events until 
main_win.win receives an event. Here are the relevent calls:

main_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                main_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, main_win.text,
                main_win.text, None, argv, argc, &myhint);
main_win.gc = XCreateGC (mydisplay, main_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
XMapSubwindows (mydisplay, main_win.win);
The event mask for main_win is:
	PPosition | PSize | StructureNotifyMask | ExposureMask| KeyPressMask | 
	EnterWindowMask | LeaveWindowMask;
The flags are
	PPosition | PSize

I then create detail_win.win with the following calls (hints has new values):
detail_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                detail_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, detail_win.text,
                detail_win.text, None, argv, argc, &myhint);
detail_win.gc = XCreateGC (mydisplay, detail_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
Event Mask and flags are identical to main_win's flags and event mask.


If anybody has any idea why the initial expose events of detail_win.win 
are not received until main_win.win receives an event I'd love to hear 
from them. Other that that everything works great so there must be some 
detail I'm overseeing.

Thanks for any tips
---> Robert
rgasch@nl.oracle.com

Newsgroup: comp.windows.x
Document_id: 66906
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Delayed Expose Events


I posted about this a while ago but without code excerpts noone was
able to help me.

The problem is that main_win.win is doing fine, but when I create
detail_win.win, it does not receive it's initial expose events until
main_win.win receives an event. Here are the relevent calls:

main_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                main_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, main_win.text,
                main_win.text, None, argv, argc, &myhint);
main_win.gc = XCreateGC (mydisplay, main_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
XMapSubwindows (mydisplay, main_win.win);
The event mask for main_win is:
        PPosition | PSize | StructureNotifyMask | ExposureMask| KeyPressMask |
        EnterWindowMask | LeaveWindowMask;
The flags are
        PPosition | PSize

I then create detail_win.win with the following calls (hints has new values):
detail_win.win = XCreateSimpleWindow (mydisplay, DefaultRootWindow(mydisplay),
                myhint.x, myhint.y, myhint.width, myhint.height,
                detail_win.line_thick, fg, bg);
XSetStandardProperties(mydisplay, main_win.win, detail_win.text,
                detail_win.text, None, argv, argc, &myhint);
detail_win.gc = XCreateGC (mydisplay, detail_win.win, 0, 0);
XMapRaised (mydisplay, detail_win.win);
Event Mask and flags are identical to main_win's flags and event mask.
 
If anybody has any idea why the initial expose events of detail_win.win
are not received until main_win.win receives an event I'd love to hear
from them. Other that that everything works great so there must be some
detail I'm overseeing.

Thanks for any tips
---> Robert
rgasch@nl.oracle.com

PS: The same message was accidentally appended to the "Expose Events"
thread. Sorry for any confusion caused.


Newsgroup: comp.windows.x
Document_id: 66907
From: christy@cs.concordia.ca (Christy)
Subject: X11R5 and Gateway2000

Hi,
     I just got myself a Gateway 4DX-33V and trying to configure
X11R5 for it.  Has anyone done this before ?  More specifically,
I need a correct Xconfig file entry that is set up for my 
graphics card and monitor.  I have a 15" Color CrystalScan 1572FS monitor
and a VESA LOCAL BUS ATI Ultra Pro with 1MB VRAM video card.

Any help will be extremely appreciated.

Thanks in advance.

Please send replies to christy@alex.qc.ca


Christy

Newsgroup: comp.windows.x
Document_id: 66908
From: mbell@csc.liv.ac.uk (Mike Bell)
Subject: **** CURSOR SIZE PROBLEMS ****

/* Apologies for those who have read this before but no-one has solved this */
/* one yet so I'm posting again! Sorry :-)                                  */

I'm having problems creating a cursor bigger than 64x64, I'm using Motif 1.1
X11R4 running HP-UX 8.07 - all the functions return valid results but no
cursor appears when the bitmap is bigger than the aforementioned size. I tried

using the following code:

unsigned int w,h;
XQueryBestCursor(XtDisplay(programArea), XtWindow(programArea), 72, 71, &w,
&h);

to return the nearest size to what I require however it returns 72 and 71 as
the width and height respectively. What am I doing wrong? and if not how can I
get round the problem!!

Thanks in advance
Mike

Newsgroup: comp.windows.x
Document_id: 66909
From: mark@ardnt1.res.utc.COM (MARK STUCKY)
Subject: Re: Need PD X-Y Plot Package



 "Steve" == Steve Frysinger of Blue Feather Farm <spf@cbnewsl.cb.att.COM> writes:

 Steve> Folks,

 Steve> I'm looking for a Public Domain X-Y plotting package for X.
 Steve> I need basic capabilities (axes, labels, log and linear, &c).
 Steve> It's hard to imagine that someone has not put such a thing
 Steve> together, so I'm hoping to avoid reinventing the wheel.

 Steve> Thanks for any leads!

 Steve> Steve Frysinger

Your might take a look a PLPLOT.  Version 4.99c (actually beta v5.0)
can be found anonymous ftp from hagar.ph.utexas.edu, in the pub/plplot 
directory.  

--Mark

------------------------------------------------------------------------------
| Mark Stucky                         | Email:                               |
| United Technologies Research Center |     mark@ardnt1.res.utc.com          |
| East Hartford, CT.                  |or   mbs@rcinet.res.utc.com           |
| 06108                               |or   mbs@utrc.res.utc.com             |
------------------------------------------------------------------------------


 From the README file of version 4.99c:

 This is the PLPLOT distribution.  PLPLOT is a scientific plotting package for
 many systems, small (micro) and large (super) alike.  Despite its small size
 and quickness, it has enough power to satisfy most users, including: standard
 x-y plots, semilog plots, log-log plots, contour plots, 3D plots, mesh plots,
 bar charts and pie charts.  Multiple graphs (of the same or different sizes)
 may be placed on a single page with multiple lines in each graph.  Different
 line styles, widths and colors are supported.  A virtually infinite number of
 distinct area fill patterns may be used.  There are almost 1000 characters in
 the extended character set.  This includes four different fonts, the Greek
 alphabet and a host of mathematical, musical, and other symbols.  The fonts
 can be scaled to any size for various effects.  Many different output device
 drivers are available (system dependent), including a portable metafile
 format and renderer.

 The PLPLOT package is freely distributable, but NOT in the public domain.
 The PLPLOT source code, except header files and those files explicitly
 granting permission, may not be used in a commercial software package without
 consent of the authors.  You are allowed and encouraged to include the PLPLOT
 object library and header files in a commercial package provided that: (1) it
 is explicitly and prominently stated that the PLPLOT library is freely
 available, and (2) the full copyrights on the PLPLOT package be displayed
 somewhere in the documentation for the package.

 We welcome suggestions on how to improve this code, especially in the form of
 user-contributed enhancements or bug fixes.  If PLPLOT is used in any
 published papers, please include an acknowledgment or citation of our work,
 which will help us to continue improving PLPLOT.  Also, please remember that
 as PLPLOT is not a commercial product, we cannot be expected to offer the
 kind of support that a commercial product may.  There is great interest
 in extending PLPLOT and fixing bugs, but the principal authors can only
 afford to work on it part time.  Improvements will necessarily focus on
 those which help us get our work done.

 PLPLOT is written in C, enabling it to run on many platforms practically
 without modification.  Fortran programs may use it transparently; stub
 routines are provided to handle the C<->Fortran interface without any
 modification of the user program.  C programs are required to include the
 header file "plplot.h"; see the documentation for more details.

 The main documentation for PLPLOT is in the doc/ directory in the form of
 several TeX files; please consult this for additional information ('latex
 plotdoc').  Unfortunately documentation tends to lag actual improvements to
 the code, so don't be surprised if some known features are not explained
 there.  Consult 'Changes.log' to see a list of recent changes.  

 At present, PLPLOT is known to work on the following systems:

	 Unix:	SunOS
		 A/IX 
		 HP-UX
		 Unicos
		 DG/UX
		 Ultrix
		 SysV
		 Linux

	 Amiga/Exec
	 MS-DOS
	 OS/2
	 NeXT

 For more information on how to get or use PLPLOT on your system, see:
  - appendices to the PLPLOT manual
  - system-specific documentation in the appropriate sys/<system> directory.

 To become a subscriber to the PLPLOT mailing list, send a request to
 plplot-request@dino.ph.utexas.edu.

 CREDITS
 -------

 PLPLOT is the result of the effort of many people, so it is impractical to
 list all the contributors.   Those currently supporting and otherwise
 responsible for the package in its present form include:

 Maurice LeBrun
 Please send all comments, flames, patches, etc, to me.  I am responsible for
 all the PLPLOT kernel development as well as most of the work on the
 metafile, xwindow, xterm, postscript, tektronix, and Amiga drivers.

 EMAIL	mjl@fusion.ph.utexas.edu 
 USMAIL	Dr. Maurice LeBrun
	 Institute for Fusion Studies
	 University of Texas
	Austin, TX  78712


Geoff Furnish
Please send questions regarding the MS-DOS and OS/2 drivers to Geoff.

EMAIL	furnish@fusion.ph.utexas.edu
USMAIL	Geoff Furnish
	Institute for Fusion Studies
	University of Texas
	Austin, TX  78712


Tony Richardson
Creator of PLPLOT 2.6b, 3.0
Please send questions regarding installation of PLPLOT on the NeXT to Tony.

EMAIL   amr@egr.duke.edu

USMAIL  Tony Richardson              Tony Richardson
        184 Electrical Engineering   2920 Chapel Hill Road Apt. 41-D
        Duke University              Durham, NC 27707
        Durham, NC 27706
        ph 919-684-5274              ph 919-493-1609

Newsgroup: comp.windows.x
Document_id: 66910
From: kerr@ux1.cso.uiuc.edu (Stan Kerr)
Subject: MacX 1.2 color problem

I have a peculiar color problem with MacX, Apple's Macintosh X server.
I'd like to know if others have seen the same problem. It's happened
with the current version (1.2), and with version 1.1.7.
When some types of client windows are displayed, parts of the windows
are in the wrong color; if the window is moved slightly, forcing the server
to repaint it, it is repainted in the correct colors. It doesn't happen
for xterm windows, but has happened for graphic windows and with some
Motif clients.
-- 

Stan Kerr    
Computing & Communications Services Office, U of Illinois/Urbana
Phone: 217-333-5217  Email: stankerr@uiuc.edu   

Newsgroup: comp.windows.x
Document_id: 66911
From: jlu@cs.umr.edu (Eric Jui-Lin Lu)
Subject: info wanted: X security holes

Hi *,

Has anyone out there compile a list of X security holes??  If
yes, will you please send me a copy of this??  If this is a
wrong group, please point me to a right one.  Thanks!!

BTW, the list doesn't have to contain the info "How to use
the holes?".  Instead, I need the info of how to detect
the holes, how to seal the holes, and how to monitor the 
activities if possible.

Any info is welcomed.  Thanks!!


  --Eric


-- 
***************************************---       Grad. student          ---*
* Obviousness is always the enemy of  *   \     Jui-Lin Lu (Eric)      /   *
* correctness.  -- Bertrand Russell   *   /      jlu@cs.umr.edu        \   *
***************************************---   Univ. of Missouri-Rolla    ---*

Newsgroup: comp.windows.x
Document_id: 66912
From: straw@cam.nist.gov (Mike_Strawbridge_x3852)
Subject: need help with Athena Text Widget

I want to create a single-line Text widget for entering a small amount of text.

I want it to be of fixed width, but have a horizontal scrollbar that scrolls
automatically when the user types in order to keep the insertion point
visible.

In trying to do this I have two problems:

 - The addition of the horizontal scrollbar does not make the text widget
   taller, but instead it seems to cover part of the text.

 - The scrollbar does not scroll automatically as the user types in text
   in order to keep the insertion point visible.

Any help is appreciated.

Mike

-----------------------------------------------------------------------
NAME:   Michael Strawbridge             	TELE: (301) 975-3852
USMAIL: National Institute of Standards 	ARPA: straw@cam.nist.gov
		and Technology            	UUCP: uunet!cme-durer!straw
        Rm. B-146, Bldg. 225
        Gaithersburg, MD  20899

Newsgroup: comp.windows.x
Document_id: 66913
From: rim@bme.ri.ccf.org (Robert M. Cothren)
Subject: widget for displaying images

Before I try to teach myself how to write a widget and (perhaps)
re-invent the wheel...

Is there a PD widget that displays (for example) an 8-bit grey-level
image in the same fashion that the Athena Plotter Widget can be used
to display a plot?

--
----Robert M. Cothren, PhD--------------------------rim@bme.ri.ccf.org----
    Department of Biomedical Engineering
    The Cleveland Clinic Foundation                voice: 216 445-9305
----Cleveland, Ohio----------------------------------fax: 216 444-9198----

Newsgroup: comp.windows.x
Document_id: 66914
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: DEC pixmap size


In article <1964@igd.fhg.de>, haase@igd.fhg.de (Helmut Haase (Goebel)) writes:

|> I've got a problem concerning the maximum size of X pixmaps in DECwindows.
|> 
|> I am using a DECstation 5000/200 running ULTRIX V4.2 (Rev. 96) System #2
|> and UWS V4.2 (Rev. 272) (DECwindows). Our color display has 1280x1024
|> pixels.
|> 
|> 
|> On other hardware (HP, SGI) I am able to allocate much larger pixmaps.
|> 
|> Did anyone have similar problems before or does onyone know how I can
|> configre my system to allow for larger pixmaps?
|> 
|> Any suggestins are welcome. Please send mail to " haase@igd.fhg.de ".
|> 

DEC does this only for their PX and PXG servers, known as 3D accelerators.
This boards have local offscreen memory which is limited and slow to
handle, thus they set this limit.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 66915
From: dev@hollywood.acsc.com ()
Subject: Circular Motif Widgets


Will there be any support for round or circular widgets in Motif's next
release?. I'd love to have a circular knob widget which could be used
instead of a slider.

Cheers!
DM

Newsgroup: comp.windows.x
Document_id: 66916
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: X11R5 and Gateway2000

In article <5914@daily-planet.concordia.ca> christy@cs.concordia.ca (Christy) writes:
>
>Hi,
>     I just got myself a Gateway 4DX-33V and trying to configure
>X11R5 for it.  Has anyone done this before ?  More specifically,
>I need a correct Xconfig file entry that is set up for my 
>graphics card and monitor.  I have a 15" Color CrystalScan 1572FS monitor
>and a VESA LOCAL BUS ATI Ultra Pro with 1MB VRAM video card.
>Thanks in advance.

Didn't your operating system come with X?  SysV usually does as far
as I know.  You'd do best to contact the people from whom you bought
ths OS.  If you're running Linux or something similar, good luck. :)
>
>Please send replies to christy@alex.qc.ca
>
>
>Christy


-- 
                A voice of reason in the midst of LiberalNet.
    Mike Chapman, a higher lifeform trapped in a human body. AKA FourDee.
       Political Correctness is the tool of the mentally disadvantaged. 
           "I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 66917
From: gringort@tantalus.pa.dec.com (Joel Gringorten)
Subject: Re: **** CURSOR SIZE PROBLEMS ****

In article <C5Ky44.L2K@compsci.liverpool.ac.uk>, mbell@csc.liv.ac.uk
(Mike Bell) writes:
> /* Apologies for those who have read this before but no-one has solved
this */
> /* one yet so I'm posting again! Sorry :-)                            
     */
> 
> I'm having problems creating a cursor bigger than 64x64, I'm using Motif 1.1
> X11R4 running HP-UX 8.07 - all the functions return valid results but no
> cursor appears when the bitmap is bigger than the aforementioned size.
I tried
> 
> using the following code:
> 
> unsigned int w,h;
> XQueryBestCursor(XtDisplay(programArea), XtWindow(programArea), 72, 71, &w,
> &h);
> 
> to return the nearest size to what I require however it returns 72 and 71 as
> the width and height respectively. What am I doing wrong? and if not
how can I
> get round the problem!!

Does the workstation you're using have hardware cursor support?  Or does
the server generate a software cursor.  You can generally tell the difference
just by using it.  If the cursor blinks a lot when there's screen activity,
it's probably a software cursor.  If it has a hardware cursor, I think you're
probably battling a bug in HP's X server.  I'm not familiar with any hardware
cursor chips that display cursors greater than 64x64.  It's quite possible
that the server is just echoing your preferred cursor size without actually
checking it.  I vaguely recall that very old MIT server revisions did just 
that.

In reality you're probably stuck with a 64x64 maximum size cursor regardless
of what the server returns.

-joel

Newsgroup: comp.windows.x
Document_id: 66918
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: virtual mouse in open look under X11?

Is the virtual mouse simulation in ol{v}wm 3.x available under X11R5?
I've been told I'm setting the right resource, yet it continues not to
work. I'm running olvwm3.3 (or olwm 3) on a Sun 3, X11R5 pl 22.

-D


Newsgroup: comp.windows.x
Document_id: 66919
From: jlong@brtph368.BNR.CA (John Long P205)
Subject: Need xman source

   Where can I get xman source?  I would rather get 
xman for an HP 9000/700, but source will do.


Newsgroup: comp.windows.x
Document_id: 66920
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Why do I need "xrdb -m" when .Xdefaults unchanged?

I'm having an X resource problem using Brian Wilson's wscrawl 2.0
(a wonderful interactive conferencing program, by the way).  I'm 
running OpenWindows 3.0 on a SPARC 1+ under OS 4.1.3.  I have
the following defaults in my .Xdefaults file (among many others):
  wscrawl.telePointerName:	Kevin
  wscrawl.syncScrollbars:		True
  wscrawl.continuousTelePointer:	True
  wscrawl.showPointerCoordinates:	False
  wscrawl*background:		LightBlue
  wscrawl*swindow*foreground:	yellow
  wscrawl*draw_area_frame*foreground:	Blue
  wscrawl*keyboardFocusPolicy:	pointer

Naturally, I exited the server and restarted it after adding
those lines to .Xdefaults .

If I run the following from a cmdtool (pwd = my home dir.):
  xrdb -m .Xdefaults
and then start up wscrawl, then all those defaults are used
properly.  Wonderful, yes?  Except that I can't get them to be
operative except by *manually* invoking the afore-mentioned
xrdb command.  If I try:
  xrdb .Xdefaults
the defaults "won't take."

So, I tried to change the xrdb call in my .xinitrc file from:
  xrdb  $HOME/.Xdefaults
to:
  xrdb -m $HOME/.Xdefaults

No go.  So I tried adding in:
  xrdb -m /home/kbw/.Xdefaults
at the beginning or end of my .openwin-init file.  Still no go.

Any notions what gives?  Thanks for the help.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
Document_id: 66921
From: ajaffe@oddjob.uchicago.edu (Andrew Jaffe)
Subject: Key definitions in Emacs + X

Hi.

I use Emacs and I want to customize my keyboard better.
When I set up stuff in my .emacs with a keymap and define-keys,
I can only access certain of the keys on my X-Terminal's
keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
seem to have either the same or no keycode. I have a feeling
this can't be fixed in emacs itself, but that I need to do some
xmodmap stuff. Can someone help me?

By the way, I've checked the X-FAQ and posted a similar message
to gnu.emacs.help to no response.

Currently I have the following in my .emacs file (inside a 'cond'):

 ((string-match "^xterm" (getenv "TERM"))
;; done by aj 8/92. I don't know what most of this does...
   (defvar xterm-map (make-sparse-keymap) "Keymap for xterm special keys")
   (define-key esc-map "[" 'xterm-prefix)
   (fset 'xterm-prefix xterm-map)
  ;;Keys F1 to F12
   (define-key xterm-map "224z" 'goto-line)        ;F1
   (define-key xterm-map "225z" 'what-line)        ;F2
   (define-key xterm-map "226z" 'rmail)            ;F3
   (define-key xterm-map "227z" 'replace-string)   ;F4
   (define-key xterm-map "228z" 'end-of-line)      ;F5
   (define-key xterm-map "229z" 'kill-line)        ;F6
   (define-key xterm-map "230z" 'yank)             ;F7
   (define-key xterm-map "231z" 'beginning-of-line);F8
   (define-key xterm-map "232z" 'end-of-line)      ;F9
   (define-key xterm-map "192z" 'scroll-down)      ;F11
   (define-key xterm-map "193z" 'scroll-up)        ;F12
 ;;Keys F10, up, down, etc. ??????? can't get the keys 
   (define-key xterm-map "-1z" 'set-mark-command))
)


-- 
Andrew Jaffe                                     ajaffe@oddjob.uchicago.edu
Dep't of Astronomy and Astrophysics, U. Chicago
5640 S. Ellis Ave                                (312) 702-6041
Chicago, IL 60637-1433                           (312) 702-8212 FAX

Newsgroup: comp.windows.x
Document_id: 66922
From: klee@synoptics.com (Ken Lee)
Subject: Re: Property problems

In article ( ), wsmart@tay.mcs.dundee.ac.uk (Bill Smart) writes:
> To get the number back, the other client does:
>
>  AppAtom = XInternAtom(display,"ApplicationWindow",True);
>  XGetWindowProperty(display,DefaultRootWindow(display),AppAtom,0,8192,
>                     False,XA_WINDOW,&return_type,&return_format,
>                     &nitems_return,&bar,&return_place);
>
> and appears to get back something valid (just not the right number).
> It always seems to return the same number, regardless of the window
> number stored in the property.

"return_place" is probably incorrect.  It should be a pointer, not an
integer.  XGetWindowProperty() allocates memory, copies the data there,
and returns a pointer to the memory.  You should free the memory when
you're done.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 66923
From: viola@asterix.uni-muenster.de (Jrg Viola)
Subject: Looking for Xt and Xaw

I want to compile Xdvi and later perhaps Emacs 19 on a DEC Ultrix machine with
X installed. Unfortunately, Xt and Xaw libs and headers are missing. How can I
get them without having to compile the whole MIT distribution ? 

Pleasy reply by email to: viola@yukawa.uni-muenster.de

Thanks in advance.
   

Newsgroup: comp.windows.x
Document_id: 66924
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Problem with libXmu on SUNOS5.1 and gcc

I am using X11R5patch23 with the R5-SUNOS5 patch posted on export.
I did optionally apply the patch.olit.

libXmu compiles fine .. when I try to use it with clients (i.e. bmtoa and
twm), I get errors ... I can not figure out what is wrong:

gcc -fpcc-struct-return -o twm gram.o lex.o deftwmrc.o add_window.o gc.o list.o twm.o  parse.o menus.o events.o resize.o util.o version.o iconmgr.o  cursor.o icons.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xmu -lXmu -L../.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L../.././extensions/lib -lXext -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl
ld: warning: file ../.././extensions/lib/libXext.so: attempted multiple inclusion of file libXext.so
Undefined                       first referenced
 symbol                             in file
XtAppSetWarningMsgHandler           ../.././lib/Xmu/libXmu.so
XtScreenDatabase                    ../.././lib/Xmu/libXmu.so
XtDisplayStringConversionWarning    ../.././lib/Xmu/libXmu.so
XtErrorMsg                          ../.././lib/Xmu/libXmu.so
XtRealloc                           ../.././lib/Xmu/libXmu.so
XtIsManaged                         ../.././lib/Xmu/libXmu.so
XtMalloc                            ../.././lib/Xmu/libXmu.so
XtGetApplicationResources           ../.././lib/Xmu/libXmu.so
XtOwnSelection                      ../.././lib/Xmu/libXmu.so
XtGetConstraintResourceList         ../.././lib/Xmu/libXmu.so
XtCalloc                            ../.././lib/Xmu/libXmu.so
XtName                              ../.././lib/Xmu/libXmu.so
XtStringConversionWarning           ../.././lib/Xmu/libXmu.so
XtAppSetTypeConverter               ../.././lib/Xmu/libXmu.so
XtDisplayToApplicationContext       ../.././lib/Xmu/libXmu.so
XtGetResourceList                   ../.././lib/Xmu/libXmu.so
XtFree                              ../.././lib/Xmu/libXmu.so
XtDestroyWidget                     ../.././lib/Xmu/libXmu.so
XtGetValues                         ../.././lib/Xmu/libXmu.so
XtWarningMsg                        ../.././lib/Xmu/libXmu.so
XtTranslateCoords                   ../.././lib/Xmu/libXmu.so
XtCvtStringToFont                   ../.././lib/Xmu/libXmu.so
XtWidgetToApplicationContext        ../.././lib/Xmu/libXmu.so
XtWarning                           ../.././lib/Xmu/libXmu.so
XtCreateWidget                      ../.././lib/Xmu/libXmu.so
XtWindowOfObject                    ../.././lib/Xmu/libXmu.so
XtVaSetValues                       ../.././lib/Xmu/libXmu.so
XtAppWarningMsg                     ../.././lib/Xmu/libXmu.so
XtGetSelectionValue                 ../.././lib/Xmu/libXmu.so
XtResolvePathname                   ../.././lib/Xmu/libXmu.so
ld: fatal: Symbol referencing errors. No output written to twm
*** Error code 1



--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 66925
From: m91nen@tdb.uu.se (Nils Engstrom)
Subject: Help: Event propagation


The following problem is really bugging me,
and I would appreciate any help.

I create two windows:

w1 (child to root) with event_mask = ButtonPressMask|KeyPressMask;
w2 (child to w1) with do_not_propagate_mask = ButtonPressMask|KeyPressMask;


Keypress events in w2 are discarded, but ButtonPress events fall through
to w1, with subwindow set to w2.

FYI, I'm using xnews/olvwm.

Am I doing something fundamentally wrong here?

				n


Newsgroup: comp.windows.x
Document_id: 66926
From: mjo@iao.ford.com (Mike O'Connor)
Subject: Re: Motif vs. [Athena, etc.]

In article <1993Apr16.133856.21829@nrao.edu> rgooch@rp.CSIRO.AU
(Richard Gooch) writes:

:  really involved there). Many people using Linux like to stay at the cutting
:  (bleeding) edge: ie. when kernel patches, C library or compiler patches come
:  out, people like to rebuild their entire systems. The prime requirement for
:  all Linux software is that it is available under a GNU style public license.
:  Hence, Linux software uses either the Athena widgets or XView.
:  Individuals may write software requiring Motif, but I doubt it is widely
:  adopted.

Shameless plug -- the Xaw3d widgets make Athena a much nicer
alternative than the stock MIT Athena code.

						...Mike

-- 
 Michael J. O'Connor           |  Internet:  mjo@fmsrl7.srl.ford.com
 Ford Motor Company, OPEO      |  UUCP:      ...!fmsrl7!opeo!mjo
 20000 Rotunda, Bldg. 1-3001   |  Phone:     +1 (313) 248-1260
 Dearborn, MI  48121           |  Fax:       +1 (313) 323-6277

Newsgroup: comp.windows.x
Document_id: 66927
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Sunview -> X

#
#No doubt this is an old question, but I didn't find the answer in the
#FAQs I could find, so - here goes:
#
#I have a Sunview application that I want to convert to X (OpenLook,
#Motiv, whatever). I remember hearing quite some time ago that there
#are tools to accomplish this task.
#
#	a) is that so?
#	b) are they public domain?
#	c) any good, i.e.
#	d) advantages over reimplementing the interface myself?
#

The simple answer is for you to obtain use XView to do this.  XView is a
one to one replacement for Sunview.  It should already be provided with
you Sun running OpenWindows.   It is also free available as part of the
contrib side of the MIT X11R5 release.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 66928
From: tmcconne@sedona.intel.com (Tom McConnell~)
Subject: Re: Motif vs. [Athena, etc.]


In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:
> berry@durian.citr.uq.oz.au (Andrew Berry) writes:
>
> Ports of Motif to both 386BSD and Linux are available for a fee of about
> $100.  This is cost recovery for the person who bought the rights to
> redistribute.  The activity in both the BSD and Linux news groups
> pertaining to Motif has been high.
> 
> 
> >I just wonder if this will also cause a divergence between commercial
> >and non-commercial software (ie. you will only get free software using
> >Athena or OpenLook widget sets, and only get commercial software using
> >the Motif widget sets).  
> 
> 
> I can't see why.  If just about every workstation will come with Motif
> by default and you can buy it for under $100 for the "free" UNIX
> platforms, I can't see this causing major problems.

  Let me add another of my concerns: Yes, I can buy a port of Motif for "cheap",
but I cannot get the source for "cheap", hence I am limited to using whatever X
libraries the Motif port was compiled against (at least with older versions of
Motif. I have been told that Motif 1.2 can be used with any X, but I have not
seen it myself).

  Currently, I have X11R5 running on eight different unix platforms, of which
only three came with Motif. On those three, I am unable to use the X11R5
libraries to build Motif clients, because I get link errors between the
vendor-supplied port of Motif and my X11R5. I anticipate having this same
problem when X11R6 becomes available.

  The result is that I cannot build Motif clients that rely on X11R5, since I do
not have Motif compiled under X11R5. True, I could buy another port of Motif,
but that sort of ruins the whole idea of "free", doesn't it?

    Cheers,

    Tom McConnell
-- 
 Tom McConnell          |     Internet: tmcconne@sedona.intel.com
 Intel, Corp. C3-91     |     Phone: (602)-554-8229
 5000 W. Chandler Blvd. | The opinions expressed are my own. No one in 
 Chandler, AZ  85226    | their right mind would claim them.

Newsgroup: comp.windows.x
Document_id: 66929
From: mishra@cs.sunysb.edu (Prateek Mishra)
Subject: ..Image processing Packages under X..


I am looking for a package that implements standard
image processing functions (reading/writing from
standard formats), clipping, zoom, etc. implemented
under X. Both public domain and private packages
are of interest. The particular application area I
have in mind is medical imaging, but a package meant
for a more general context would be acceptable.

Please reply to me; I will summarize on the net if
there is general interest.

- prateek mishra
mishra@sbcs.sunysb.edu

Newsgroup: comp.windows.x
Document_id: 66930
From: klee@synoptics.com (Ken Lee)
Subject: Re: XCopyPlane Question

In article AA04287@neko.CSS.GOV, nancie@neko.CSS.GOV (Nancie P. Marin) writes:
>I am trying to use XCopyPlane to copy a single plane 
>from a depth-8 pixmap to a depth-1 pixmap.  Everytime I
>try this, I see absolutely nothing displayed.  I know there
>is data in the depth-8 pixmap becuase I have checked by doing
>an XCopyArea to the screen.

The code fragment looks reasonable, but is your logic valid?
Just because something appears in an 8 bit deep pixmap doesn't
mean every bit plane contains data.  Did you try each plane?

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 66931
From: hsteve@carina.unm.edu ()
Subject: Re: Changing dpy->max_request_size ?

In article <C55zLo.7wA@world.std.com> oj@world.std.com (Oliver Jones) writes:
<In article <118590@netnews.upenn.edu> mcclenne@dingdong.cis.upenn.edu (nennelccM nodroG) writes:
<>
<>Does anyone out there know how to change the maximum request size for
<>a server 
<
<It is ordinarily set to the highest value the underlying OS can

Yes, and you don't want to change this value if you're running Image type
applications.  


-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
Document_id: 66932
From: hsteve@carina.unm.edu ()
Subject: Re: interface to access separate appl.

In article <9304121644.AA27256@expo.lcs.mit.edu> DBOHDAL@JAGUAR.ESS.HARRIS.COM writes:
<Dear Xperts:
<
<   Here's my problem:  I am designing several related X 
<applications (each one is a separate executable) and  I'd like 
<to build a single control window that would allow the user to 
<access each application (instead of having to locate the correct
<icon). The Control Window would contain a button for each 
<application and by pressing it, the application's main window
<would appear.  I would also like to use the application's button
<as a color status indicator.  Has anyone done this or have any
<good ideas??  Because these are all separate executables this
<seems like a communications nightmare to me, but maybe I'm
<wrong.  I'd appreciate any ideas! I'm using X11R5 and Motif 1.2.1.
<
<Thanks,
<dbohdal@jaguar.ess.harris.com

I can think of two different methods that you could try. 1) use fork and 
execv 2) use the "system" called in your program.  I'm assuming that you're
running under the Unix OS of course.

-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
Document_id: 66933
From: pmg@mdavcr.mda.ca (Phil Gray)
Subject: Opinions on Galaxy ?

We are currently evaluating GUI builders, initially for Motif but with
a wish to be flexible & portable.  We have been through the popular
names (UIMX, TeleUSE, XVT etc) and have been very impressed with what
we have seen of Galaxy from Visix.  I have spoken to current users
from a list supplied by Visix (happy users as you would expect), and
seen favourable comments on the net.  However, since it is fairly
expensive to get an evaluation license from Visix, I would like to
query the net for any negative experiences with Galaxy.  Did anybody
evaluate them and prefer another tool or use Galaxy and regret it or
find any mis-features ?

advTHANKSance,

Phil

-- 
--------------------------------------------------------------------------
Phil M Gray                       Voice: (604) 278-3411
MacDonald Dettwiler               Fax:   (604) 278-2117
13800 Commerce Parkway
Richmond, BC, Canada  V6V 2J3     {pmg@mda.ca | ..!uunet!van-bc!mdavcr!pmg}

Newsgroup: comp.windows.x
Document_id: 66934
From: dev@hollywood.acsc.com ()
Subject: Keyboard Focussing

I have two Motif Widgets. I would like to control one of them via the
keyboard and the other with the mouse. I set the keyboard focus on the first
widget, but as soon as I click the mouse on the second one, I lose the
keyboard focus on the first one. 

Could some kind soul show me how to do this?

Thanks

DM
dev@hollywood.acsc.com

Newsgroup: comp.windows.x
Document_id: 66935
From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Subject: Re: Key definitions in Emacs + X

In article <1993Apr16.183525.25197@midway.uchicago.edu> ajaffe@oddjob.uchicago.edu (Andrew Jaffe) writes:
>I use Emacs and I want to customize my keyboard better.
>When I set up stuff in my .emacs with a keymap and define-keys,
>I can only access certain of the keys on my X-Terminal's
>keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
>seem to have either the same or no keycode. I have a feeling
>this can't be fixed in emacs itself, but that I need to do some
>xmodmap stuff. Can someone help me?

It is actually worse than you think.  I have the same problem, and have
given up.  Emacs has an internal table (somewhere!) which defines what
keys it will accept, and this table is system-dependent.  I use a Sun
from my HP, and cannot get 'shift PageUp' to work - xmodmap is not
sufficient, or at least I haven't worked out how to make it work.
However, I CAN get ordinary 'PageUp' and 'shift CursorRight' to work,
and I do some customised things with them.

Note that the Emacs on my HP has no problem, and I am using exactly
the same xmodmap and Emacs configuration.


Nick Maclaren
University of Cambridge Computer Laboratory,
New Museums Site, Pembroke Street,
Cambridge CB2 3QG, England.
Email:  nmm1@cus.cam.ac.uk
Tel.:   +44 223 334761
Fax:    +44 223 334679

Newsgroup: comp.windows.x
Document_id: 66936
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: Problem with libXmu on SUNOS5.1 and gcc

In article <1qmt3i$66io@ep130.wg2.waii.com>, dla@se05.wg2.waii.com (Doug Acker) writes:
|> I am using X11R5patch23 with the R5-SUNOS5 patch posted on export.
|> I did optionally apply the patch.olit.
|>
|> libXmu compiles fine .. when I try to use it with clients (i.e. bmtoa and
|> twm), I get errors ... I can not figure out what is wrong:
|>
|> gcc -fpcc-struct-return -o twm gram.o lex.o deftwmrc.o add_window.o gc.o list.o twm.o  parse.o menus.o events.o resize.o util.o version.o iconmgr.o  cursor.o icons.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xmu -lXmu -L.|> ./.././lib/Xt -L../.././extensions/lib -L../.././lib/X -L../.././extensions/lib -lXext -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl
|> ld: warning: file ../.././extensions/lib/libXext.so: attempted multiple inclusion of file libXext.so
|> Undefined                       first referenced
|>  symbol                             in file
|> XtWindowOfObject                    ../.././lib/Xmu/libXmu.so
|> ld: fatal: Symbol referencing errors. No output written to twm
|> *** Error code 1

The problem was that SunPost411Ld was not defined.

Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 66937
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: xterm build problem in Solaris2.1

..continuing on my build problems, I got stuck here build xterm...

gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw -lXaw -L../.././lib/Xmu -lXmu -L../.././lib/Xt -lXt -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl -ltermcap
Undefined                       first referenced
 symbol                             in file
index                               /usr/ucblib/libtermcap.a(termcap.o)
rindex                              /usr/ucblib/libtermcap.a(termcap.o)
ld: fatal: Symbol referencing errors. No output written to xterm
*** Error code 1
make: Fatal error: Command failed for target `xterm'

Any clues for help?

--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 66938
From: wsanders@spectrum.xerox.com (bob hosid r382-423)
Subject: Dynamic changing of the title bar

I am looking for a program I can insert into some code that will allow the title bar to be changed on a window dynamicly.  If one already is out there, I would appreciate a location so I don't have to create this from scratch.

Thanks in advance.
Bob Hosid:dloslv300:xerox

Newsgroup: comp.windows.x
Document_id: 66939
Subject: MIT R5 on Sun with Rasterops TC Colorboard
From: mark@comp.vuw.ac.nz (Mark Davies)


Is it possible to run an MIT R5 based Xserver on a Sun with a Rasterops TC
Colorboard (24bit board)?  I have the Xsun24 patches for supporting sun's
24bit frame buffers but does the rasterops appear as if its a cgtwelve or
something else?  I know nothing about the rasterops other than we might be
buying one to put in an IPX.

cheers
mark

Newsgroup: comp.windows.x
Document_id: 66940
From: henne@math.ias.EDU (Leslie R. Henne)
Subject: Re: SVR4.x binary dists (was Re: RFD: to create comp.unix.sys5.univel)


In article <1993Apr15.160635.28022@thunder.mcrcim.mcgill.edu>, der Mouse wrote:

> You seem to be a little confused.  The socialistic hackers who yell
> about proprietary software are hardly enamored of Motif, which is just
> as objectionable to that mindset as NeWS is. 

> If I might wear my socialistic hacker hat for a moment, I tar NeWS and
> Motif with the same brush, and that brush is not technical. 

Begging everyone's pardon, I was not slamming Motif, nor was I necessarily 
plugging/flaming the two.  I was responding to the sweet blithe statement in:
 <rick.734610425@digibd> from rick@digibd.digibd.com (Rick Richardson)

rick> This is one area where Microsoft NT has a big advantage.  Since
rick> they control the whole show, there are no issues like this where
rick> licensees create incompatible defacto standards.

This happy statement shows a mindset that inventors and companies have when
they are pleased with something that works, and they believe that others will
also be happy to use it.  I remember when _SunView_ was hot stuff (and am not,
by that statement, endorsing Sun and its products, this is just my experience),
and when OpenWindows became hot stuff, that was when I started hearing, as
mentioned before, the "socialistic masses" that were bent on destroying 
_anything_ that was deemed proprietary, including OpenWindows.  I mentioned
Motif in the same breath, because that is what Sun has decided to turn its
attention to, not because I hate it.  Mr. Richardson's position, I believe, is
a healthy one, and I am sure that the seething hackers will soon try to
flame and destroy NT, if it ever shows up, wanting instead everything to be
free, and then complaining when there is no organized structure and there are 
no de facto standards.

It was just a vent for frustration brought on by prevailing winds.

Mrs. Henne


Newsgroup: comp.windows.x
Document_id: 66941
From: nenad%saturn@sdsu.EDU (Nenad Marovac)
Subject: C++ and C for OS/2


Hi folks,
]
Does anybody know for a good 32-bit C++/C compiler for OS/2 that supports
OS/2 API and Microsoft windows (maybe Windows NT)?

thanx

N. Marovac, SDSU

Newsgroup: comp.windows.x
Document_id: 66942
From: fwr8bv@fin.af.MIL (Shash Chatterjee)
Subject: xrolo/SPACRC/SunOS4.1.1/audio

Could some one please send me (or tell me where to ftp from) the patches required
 for xrolo so that  I can compile-in the SPARCStation phone-dialing feature?

I am using SunOS  4.1.1, and therefore don't have "multimedia/libaudio.h" or 
"multimedia/audio_device.h" and associated functions.

Just in case, our mail gateway only accepts msgs < 45Kb.

Thanks in advance,
Shash.


+-----------------------------------------------------------------------------+
+ Shash Chatterjee                           EMAIL:  fwr8bv@fin.af.mil        +
+ EC Software                                PHONE:  (817) 763-1495           +
+ Lockheed Fort Worth Company                FAX:    (817) 777-2115           +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+



Newsgroup: comp.windows.x
Document_id: 66943
From: adrian@ora.COM (Adrian Nye)
Subject: imake book review


Thanks for the many offers to review this book.

If you received a review copy, please return it
as soon as possible.  I had a system crash and
lost the list of people I sent it to!

Thanks

Adrian Nye
O'Reilly and Associates
adrian@ora.com

Newsgroup: comp.windows.x
Document_id: 66944
From: d3e758@bucky.pnl.gov (JE Pelkey)
Subject: Multi-screen apps and window managers



I am working on a project to provide an emergency management
information system.  In keeping with more classic command and
control type systems, we are considering developing a dual screen monitor
system in order to provide a status board on it's own monitor.  
I have a number of X level questions regarding this:

(We are devloping on Unix systems using X/Motif. Platform will be 
predominantly Sun's, probably with ports to RS/6000 as well).

I am assuming the standard dual monitor systems are configured
such that we are talking about one X display and multiple screens,
and not multiple X displays.   Given this:

	- Is changing input focus from one screen to the other as simple
	as tracking your mouse from one screen to the other?  There's
	nothing special that needs to be done to shift focus between
	screens?

	- Do I have to run separate window managers on the separate
	screens or are there multiscreen window managers out there?
	What are they; who sells them...

	- Is a multi-screen window manager the only way I can grab a
	window frame and move a window from one screen to the next?

	- Is there any way for the application to transparently see
	multiple screens as one logical x-y plane, or does the hardware
	only provide for each screen to start at 0,0?

	- Any thoughts on the difficulties involved with designing a
	system capable of using either multiple screens or a single
	screen (perhaps running a virtual window manager to simulate
	multiple screens instead)?  
	I am assuming that this is not a major issue - that I can rely
	on providing config files which will specify for each
	configuration the screen placement of each window in the
	application.  Any thoughts or suggestions from past experience
	are more than welcome.


========================================================================
Jo Pelkey                                   Phone: (509)375-6947
Battelle Pacific Northwest Labs             Fax:   (509)375-3641
Mail Stop K7-22                             Email: je_pelkey@pnl.gov
P.O. Box 999
Richland, WA  99352
========================================================================


Newsgroup: comp.windows.x
Document_id: 66945
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Ideal Operating System (Was: DEATH BLOW TO UNIX)

G'Day

Windows NT is a step forward, but not by much. I guess for DOS users who
think multi-tasking is really _neat_ (add puke here) and are overjoyed to 
be able to use more than 64K of memory, its a major improvement. For Windows
users its more like an upgrade with facilities most Unix users take for 
granted. Most of  Windows users only use PCs for text processing or running 
3rd-party applications anyway so the operating system features are not even 
a real issue. My ideal operating system:

	Binary compatible across all plaforms. It should recognize
	binaries and configure on the fly, so I don't have to have
	bin/Mac bin/DOS bin/Dec bin/Sun bin/HP etc...

	Multi-CPU. So I can use the CPUs on my PC and W/S and Mac 
	and Transputers and DSPs. I don't know a single site which 
	has gone for a single vendor. I am not going to trade-in 
	80Mflops per H1 transputer or ultra-fast FFT on DSP chips.
	Note NT runs on Symmetric multi-CPU systems.

	Built-in portable GUI/Graphics tools. You can call DrawButton 
	or DrawLine and it does the same thing no matter what platform 
	or display. It should also translate graphics commands on-the-fly.
	so I can use PC graphics S/W on my workstation and X software on 
 	my PC. I think GUIs are not just nice to have but essential.

	Configurable front-end. So you can make it look like Unix or DOS
	or NT or OS/2, and run shell scripts or command/BAT files.

	Object oriented. So I can program easily under it and not have
	to re-invent the wheel if the networking is not up to scratch
	or my application needs to access source/object code on the fly.

In other words it should have some AI capability. That and a tight, clean
kernel so you can actually understand it. Anyone know of something like this ?

	adios
	     Ata <(|)>.
-- 
| Mail          Dr Ata Etemadi, Blackett Laboratory,                          |
|               Space and Atmospheric Physics Group,                          |
|               Imperial College of Science, Technology, and Medicine,        |
| Internet/Arpanet/Earn/Bitnet atae@spva.ph.ic.ac.uk or ata@c.mssl.ucl.ac.uk  |
| Span                              SPVA::atae       or     MSSLC:atae        |


Newsgroup: comp.windows.x
Document_id: 66946
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Please Ignore [Ideal Operating System (Was: DEATH BLOW TO UNIX)]

Whoops!! Wrong group. Soooooooooooooooorry folks..

Newsgroup: comp.windows.x
Document_id: 66947
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3
From: nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros)

In article <1993Apr2.212405.5213@head-cfa.harvard.edu> dmm@head-cfa.harvard.edu (David Meleedy) writes:

>   	   I've been trying to compile X11R5 patchlevel 23 on a Sun Sparc
>      IPX using SunOS_4.1.3, and gcc 2.3.3.
>   
>   	   The problem occurs during the initial "make World".  When
>      it gets up to compiling the standard X clients, it can't seem to find
>      some of the libraries.  Right now we highly suspect the program "ld"
>      which was updated for 4_1_3.
>   

    Yip, we had the same problem; the only fix we found was to link static
some of the clients, ( btw, we used cc). :-(.

--
/+=========================================++================================+\
||Francisco J. Ballesteros [a.k.a. Nemo]   ||  email: nemo@clip.dia.fi.upm.es||
||org:  Computer Science, CLIP lab.        ||  phone: +34 1 336-7448         ||
||      Campus Montegancedo s.n. U.P.M.    ||  ___         ___               ||
||      Boadilla del Monte, Madrid, Spain. ||  \\   \\   o \\_)  \   _ \__   ||
\+=========================================++== \\__ \\__\\ \\ == \_(_\_\_) =+/

Newsgroup: comp.windows.x
Document_id: 66948
From: ten0772@eafs000.ca.boeing.com (Timothy E. Neto)
Subject: Re: X-server multi screen

rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:

>Hi Xperts, some simple questions for you:

>I've seen a lot of different terms, which seem to mean the same thing.
>Who can give an exact definition what these terms mean:

>	-) multi-screen
>	-) multi-headed
>	-) multi-display
>	-) X-Server zaphod mode

>Is there a limit how many screens/displays a single server can handle
>(in an articel a read something about an upper limit of 12) ?

>How is the capability called, if I want to move the cursor from one
>screen/display to another.

>Any hints welcome.

>Thanks, rainer.
>-- 
>Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
>ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
>Penzingerstr. 76                 |
>A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

As to how many clients may be display on a server, I believe the limit
would be how much memory is available to your server or allocated by the
server.


-- 
Indecision is the key to | Timothy E. Neto  (206) 655-5190              1   000
flexibility, & you can't | Of B & T's Gadget & Widget Works             1  0. .0
E-Mail God.              | Flight Systems Lab, Boeing Comm. Aircraft    1  0 _ 0
My ideas not Boeing's    | Internet: ten0772@aw401.fsl.ca.boeing.com    1   000

Newsgroup: comp.windows.x
Document_id: 66949
From: joel@zodiac.z-code.COM (Joel Reymont)
Subject: Motif maling list

Hi, all!

Anyone knows of a Motif mailing list? I don't have access to network news
and there is no longer a motif list at alfalfa.com.

Thanks, Joel.

-- 
-----------------------------------------------------------------------------
Joel Reymont    !   Z-Code Software Corporation    ! e-mail: joel@z-code.com 
-----------------------------------------------------------------------------
4340 Redwood Hwy, Suit B.50, San Rafael, CA 94903
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 66950
From: Markku.Savela@tel.vtt.fi (Markku Savela)
Subject: Raster and Text Widgets (View only!), Xew-1.3 version


Version 1.3 of Xew widgets is available at

	export.lcs.mit.edu: contrib/Xew-1.3.tar.Z
	export.lcs.mit.edu: contrib/Xew-1.3.README

For better details, check the README. (For extensive details, you have
to with Xew-1.1.ps.Z, still haven't had time to update this one).

No new functionality has been added since 1.2 version. Raster widget
handles now expose events slightly more intelligently than before
(really had to do this when I added a simple program that uses X11R5
Athena Porthole and Panner widgets). The program demo/viewer.c is
very simple demonstration of panner/porthole usage (copied
from'editres' actually :-)
--
Markku Savela (savela@tel.vtt.fi), Technical Research Centre of Finland
Telecommunications Laboratory, Otakaari 7 B, SF-02150 ESPOO, Finland

Newsgroup: comp.windows.x
Document_id: 66951
From: fkk@stasys.sta.sub.org (Frank Kaefer)
Subject: Re: xterm build problem in Solaris2.1

dla@se05.wg2.waii.com (Doug Acker) writes:

|..continuing on my build problems, I got stuck here build xterm...

|gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw

Newsgroup: comp.windows.x
Document_id: 66952
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: a question on window ids

In article <wnk.734824081@aquifer.geology.uiuc.edu>, wnk@aquifer.geology.uiuc.edu (Walter Kreiling) writes:

> Given a program running on a workstation with an X based window
> system, how can one pop the window in which it is running to the top.
> By window I mean the terminal window from which it was invoked.

One can't.  The application may not have been started from a terminal
emulator; if it was, the terminal emulator may not still exist, and if
it does it may be in no condition to be "pop[ped] to the top" (eg, it
may be iconified).  And even if you can, it may not do what you want -
consider a virtual-root window manager like tvtwm, with the relevant
window in a portion of the virtual desktop that's outside the real
desktop.

Some (but not all) X terminal emulators provide environment variables
giving a window ID.  Even if such a thing is present in the
environment, it may not be what you want; it may correspond to a window
on a different server, for example.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
Document_id: 66953
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: X-server multi screen

In article <1qlop6$sgp@sun3.eeam.elin.co.at>, rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:

> I've seen a lot of different terms, which seem to mean the same
> thing.  Who can give an exact definition what these terms mean:

> 	-) multi-screen
> 	-) multi-headed
> 	-) multi-display
> 	-) X-Server zaphod mode

As applied to servers, the first three are fuzzy terms.  "multi-headed"
tends to be used for any system with multiple monitors, sometimes even
multiple screens even if they're multiplexed onto the same monitor (eg,
a Sun with a cg4 display).  "multi-screen" and "multi-display" would,
if taken strictly, mean different things, but since the strict meaning
of "multi-display" would refer to a system with multiple keyboards and
pointers, when it's used it probably refers to the same thing
"multi-screen" would: a system that provides multiple Screens.

"zaphod" is a term applied to the way the MIT server switches the
pointer from one screen to another by sliding it off the side of the
screen.

> Is there a limit how many screens/displays a single server can handle
> (in an articel a read something about an upper limit of 12) ?

There is a protocol limitation that restricts a given Display to at
most 255 Screens.  I know of no server that handles multiple Displays
on a single invocation, unless possibly my kludges to the R4 server can
be looked upon as such; on a TCP-based system there is necessarily a
limit of 65535 Displays per machine, but this is not a limitation
inherent to X.

What you read was most likely talking about a limit in some particular
implementation (probably the MIT one).  If it claimed there was a limit
of 12 inherent to X, the author of the article had no business writing
about X.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
Document_id: 66954
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: Creating 8 bit windows on 24 bit display.. How?

In article <1993Apr16.093209.25719@fwi.uva.nl>, stolk@fwi.uva.nl (Bram) writes:

> I am using an X server that provides 3 visuals: PseudoColor 8 bit,
> Truecolor 24 bit and DirectColor 24 bit.

Lucky dog... :-)

> A problem occurs when I try to create a window with a visual that is
> different from the visual of the parent (which uses the default
> visual which is TC24).

> In the Xlib reference guide from 'O reilly one can read in the
> section about XCteateWindow, something like:
>     In the current implementation of X11: When using a visual other
>     than the parent's, be sure to create or find a suitable colourmap
>     which is to be used in the window attributes when creating, or
>     else a BadMatch occurs.

> This warning, strangely enough, is only mentioned in the newer
> editions of the X11R5 guides.

It applies with equal force to earlier versions.  Presumably only
recently did the author(s) decide it was important enough to mention.
The necessity it refers to has always been there, but it's been
implicit in the way CreateWindow requests default some attributes of
the new window.

> However, even if I pass along a suitable colourmap, I still get a
> BadMatch when I create a window with a non-default visual.

>   attr.colormap = cmap;
>   win = XCreateWindow(
[...]
>           CopyFromParent,       /* border width */
>           8,                    /* depth */
>           InputOutput,          /* class */
>           vinfo.visual,         /* visual */
>           CWColormap,
>           &attr
>         );

This is because the warning you read is incomplete.  You have to
provide not only a colormap but also a border.  The default border is
CopyFromParent, which is not valid when the window's depth doesn't
match its parent's.  Specify a border-pixmap of the correct depth, or a
border-pixel, and the problem should go away.

There is another problem: I can't find anything to indicate that
CopyFromParent makes any sense as the border_width parameter to
XCreateWindow.  Your Xlib implementation probably defines
CopyFromParent as zero, to simplify the conversion to wire format, so
you are unwittingly asking for a border width of zero, due to the Xlib
implementation not providing stricter type-checking.  (To be fair, I'm
not entirely certain it's possible for Xlib to catch this.)

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
Document_id: 66955
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: Available memory to the Xserver. How to get the actual size?

In article <1965@igd.fhg.de>, pfuetz@igd.fhg.de (Matthias Pfuetzner) writes:

> Is there a possibility to determine via X protocol calls the size of
> free memory available to the Xserver?

No.  Even if you could, the answer could be out of date even before you
get it (even if you grab the server, it could be taken up by buffering
user actions).  You should just try to do whatever you want; a BadAlloc
error is your indication that insufficient server memory is available.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
Document_id: 66956
From: mouse@thunder.mcrcim.mcgill.edu (der Mouse)
Subject: Re: XWindows always opaque

> Distribution: comp

Please don't misuse newsgroup hierarchy names as distributions.

In article <hess.734959172@swt1>, hess@swt1.informatik.uni-hamburg.de (Hauke Hess) writes:

> I wonder if it is possible for a parent window to paint over the area
> of its childs.

Yes, but it's not an attribute of the window; it's an attribute of the
GC used to do the drawing.  Set the subwindow-mode to IncludeInferiors
rather than the default ClipByChildren.

					der Mouse

				mouse@mcrcim.mcgill.edu

Newsgroup: comp.windows.x
Document_id: 66957
From: maf@dtek.chalmers.se (Martin Forssen)
Subject: Re: german keyboard, X11R5 and Sparc

claes@polaris (Heinz-Josef Claes) writes:
>I have a Sparc[12] with a german type 4 keyboard.
>Has anybody a Patch for X11R5?

 export.lcs.mit.edu:/pub/sunkbd..930314.tar.Z

	/MaF

--
Martin Forssen: maf@dtek.chalmers.se or maf@math.chalmers.se
System administrator at math and dtek at Chalmers univ. of technology 

Newsgroup: comp.windows.x
Document_id: 66958
From: A.F.Savage@bradford.ac.uk (Adrian Savage)
Subject: Searching for xgolf

I recently found the file xgolf on a German ftp site
(reseq.regent.e-technik.tu-muenchen.de) but unfortunately the shar file
was incomplete and the author's email address given in the readme file
(markh@saturn.ee.du.edu) does not work.

Can anyone assist by giving the location of a full version of this (or
any other golf game for X) game, or a way of contacting the author?

Please reply by email if you can help

Ade
--
Adrian Savage, University of Bradford, UK. Email: a.f.savage@bradford.ac.uk

Newsgroup: comp.windows.x
Document_id: 66959
From: shite@sinkhole.unf.edu (Stephen Hite)
Subject: Re: Searching for xgolf

   The xgolf program was an April Fool's joke <sigh>.

Steve Hite
shite@sinkhole.unf.edu

Newsgroup: comp.windows.x
Document_id: 66960
From: wolfson@ll.mit.edu (Harry Wolfson)
Subject: Re: MacX 1.2 color problem

Stan Kerr writes:
 >When some types of client windows are displayed, parts of the windows
 >are in the wrong color; if the window is moved slightly, forcing the server
 >to repaint it, it is repainted in the correct colors. It doesn't happen

I have the exact same problem when running Hewlett Packard's Microwave Design
System (MDS) from an HP 380 unix box and running MacX 1.2, Sys 7.0.1*.
Normally, MDS draws a window with a deep blue backround, but occasionally
it becomes a light blue and all the text, etc, inside the window become
"washed out" (nearly invisible). I thought that it was just something
brain dead that I was doing or a subtle conflict with another app or INIT.

By slightly moving the window, and forcing a re-draw, the colors get corrected.

Harry Wolfson
wolfson@ll.mit.edu

Newsgroup: comp.windows.x
Document_id: 66961
From: bash@tware.com (Paul Bash)
Subject: Re: X11R5 and Open Look

In article <1993Apr12.220600.10691@nrao.edu> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>In article <1993Apr12.155820.82@aedc-vax.af.mil>, bonds@aedc-vax.af.mil writes:
>> I am reposting this because I am not sure my first post ever made it out.
>> I have built and installed X11R5 on my SPARCstation 2.  My aim is to run
>> the MIT X server but retain the OpenLook Window Manager.  I am sure this
>> is not uncommon, but I just want to make sure that I change and/or delete
>> everything that I need to.  For instance, I can start xdm in rc.local, but
>> how do I get rid of Xnews?
>> 
>
>  The OpenLook window manager source is available on the MIT contrib tapes
>  or from  export.lcs.mit.edu  .I would suggest building this too, rather than
>  using the version from OpenWindows. It is  olwm  v3.
>

I would suggest skipping olwm and getting olvwm instead. This version of the
olwm window manager implements a virtual desktop that I find really handy even
on large monitors. 

This version is also available at export.lcs.mit.edu:/contrib/olvwm3.tar.Z.
The README file also suggest getting the files in /contrib/xview3.

In my case, I built the X Server first, Xview second, then olvwm. All of these
were installed into /usr/X5. Once I verified the server worked correctly,
I happily issued "rm -rf /usr/openwin/*".

Using gcc 2.3.3 to build all of the above resulted in a windowing system that 
is, for all intents and purposes, identical to OpenWindows 3.0 and that is     
incredibly faster. There is a bit of tweaking you will have to do if you want
things to work _exactly_ like OpenWindows, but not much. 

-- 
Paul Bash                                                   Techware Design 
bash@tware.com                                              Boulder, CO  U.S.A.

Newsgroup: comp.windows.x
Document_id: 66962
From: srivasta@pilgrim.umass.edu (Manoj Srivastava)
Subject: [REQUEST] Need tvtwm sources with mods from R. J. Caley


Hello, 

	way back in the mists of time, I had a set of patches written
by Richard Caley (I believe to the standars distribution, patch level
6) which added regular expressions in the .tvtwmrc file, multiple icon
regions, squeezable icons, and f.deleteordestroy function. I still
have the patches, however, I can no longer find the sources to which
they applied ;-). 

	I'd appreciate if some kind soul could send me a pointer to
where I could find the sources. Has anyone updated the patches for R5?
(Richard? are you out there? pretty please?)

	Thanks in advance.

		manoj

Newsgroup: comp.windows.x
Document_id: 66963
From: dick@ahold.nl (Dick Heijne)
Subject: Is TEK quitting Xterm activities ???

I caught up a mailmessage from an NCD guy, who stated that Tek
might be quitting it's X terminal activities and would be looking
for an interested buyer.
Since the source of this message is NCD, THIS MIGHT ONLY BE NASTY
GOSSIP !!!
Can anyone say more about this??

Dick.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
Document_id: 66964
From: dick@ahold.nl (Dick Heijne)
Subject: Re: xdm and Solaris2.1

The XDM on Solaris 2.1 *WAS* broke. Since two weeks, Sun distributes
a patched release, which works fine (supports /etc/shadow and all).
We have it up and running ever since and have not experienced any
problems. Call your local Sun rep.

Dick.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
Document_id: 66965
From: dick@ahold.nl (Dick Heijne)
Subject: Re: xterm build problem in Solaris2.1

dla@se05.wg2.waii.com (Doug Acker) writes:
: ..continuing on my build problems, I got stuck here build xterm...
: 
: gcc -fpcc-struct-return -o xterm main.o input.o charproc.o cursor.o util.o tabs.o  screen.o scrollbar.o button.o Tekproc.o misc.o  VTPrsTbl.o TekPrsTbl.o data.o menu.o -O2   -R/usr/wgep/X11R5.sos5/lib${LD_RUN_PATH+\:$LD_RUN_PATH} -L../.././lib/Xaw -lXaw -L../.././lib/Xmu -lXmu -L../.././lib/Xt -lXt -L../.././extensions/lib -lXext -L../.././lib/X -lX11 -L/usr/wgep/X11R5.sos5/lib  -lsocket -lnsl -ltermcap
: Undefined                       first referenced
:  symbol                             in file
: index                               /usr/ucblib/libtermcap.a(termcap.o)
: rindex                              /usr/ucblib/libtermcap.a(termcap.o)
: ld: fatal: Symbol referencing errors. No output written to xterm
: *** Error code 1
: make: Fatal error: Command failed for target `xterm'
: 
: Any clues for help?

Either:
	* Add -lucb -lelf to the list
    or
	* #define index() and rindex() to strchr() and strrchr() respectively.
	  Both use same args. Former are bsd, latter are SysV.
-- 
+==============================Ahold NV===============================+
| Room 146 , Ankersmidplein 2, 1506 CK Zaandam,  The Netherlands, EEC |
| Dick.Heijne@ccsds.ahold.nl - Tel: +31 75 592151, Fax: +31 75 313030 |
+=====================================================================+

Newsgroup: comp.windows.x
Document_id: 66966
From: Wilson Swee <ws8n+@andrew.cmu.edu>
Subject: compiling on sun4_411

Hi,
    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
undefined ld errors:
_sin
_cos
_pow
_floor
_get_wmShellWidgetClass
_get_applicationShellWidgetClass

The following libraries that I linked it to are:
-lXaw -lXmu -lXt -lXext -lX11

The makefile is generated off an imake template.
Can anyone give me pointers as to what I'm missing out to compile on
a sun4_411?

Thanx
Wilson



Newsgroup: comp.windows.x
Document_id: 66967
From: slg3x@cc.usu.edu
Subject: X Color bitmap editor needed

Hi Folks,

Does anybody know where I can find the "Color" bitmap editor
around the public sites? Any information I do appreciate that.


C.Chang

Newsgroup: comp.windows.x
Document_id: 66968
From: grp@Unify.com (Greg Pasquariello)
Subject: Re: Anyone have experience with Visix' Galaxy?

In article <C56M19.17r@world.std.com>, grier@world.std.com (The Political Crony) writes:
> 
> The title line says it. The Galaxy package was just recently announced, and
> includes a GUI-builder and portable toolkit. I'm interested in any
> feedback from those who may have used it thus far.

We've been using it for a year on Unix (Sun and HP) and Windows platforms.  In my
opinion, it is the best toolkit on the market.  It supports a rich API to a high
level IPC mechanism, file system abstraction, memory management, command driven
application development, drawing, geometry management, and, oh yeah, Open Look,
Motif, MS-Windows and Mac (at the flip of a switch).

> 
> Thanks
> Jim Grier
> grier@world.std.com
> 

-- 

--
Greg Pasquariello   	grp@unify.com 	        Hobnobbing with the ancients
Unify Corporation	   or		       
(916) 928-6258	    ...!uunet!unify!grp

Newsgroup: comp.windows.x
Document_id: 66969
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Is it just me, or is this newsgroup dead?

I've gotten very few posts on this group in the last couple days.  (I
recently added it to my feed list.)  Is it just me, or is this group
near death?
--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
Document_id: 66970
From: schneck@Physik.TU-Muenchen.DE (Bernhard Schneck)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros) writes:

>>   	   The problem occurs during the initial "make World".  When
>>      it gets up to compiling the standard X clients, it can't seem to find
>>      some of the libraries.  Right now we highly suspect the program "ld"
>>      which was updated for 4_1_3.
>>   

>    Yip, we had the same problem; the only fix we found was to link static
>some of the clients, ( btw, we used cc). :-(.

Or use a SunOS 4.1.1 ld.

\Bernhard.

Newsgroup: comp.windows.x
Document_id: 66971
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: xterm build problem in Solaris2.1

>>>>> On 16 Apr 1993 23:58:27 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com

	Doug> ..continuing on my build problems, I got stuck here build xterm...


	Doug> Undefined                       first referenced
	Doug>  symbol                             in file
	Doug> index                               /usr/ucblib/libtermcap.a(termcap.o)
	Doug> rindex                              /usr/ucblib/libtermcap.a(termcap.o)
	Doug> ld: fatal: Symbol referencing errors. No output written to xterm


Actually .. the problem is that you have to build with LD_LIBRARY_PATH
unset as well as LD_RUN_PATH.
--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 66972
From: welch@xcf.Berkeley.EDU (Sean N. Welch)
Subject: Re: Trouble compiling X11R5 on SunOS_4.1.3

In article <schneck.735153129@Physik.TU-Muenchen.DE> schneck@Physik.TU-Muenchen.DE (Bernhard Schneck) writes:
>nemo@aguirre.dia.fi.upm.es (Francisco J. Ballesteros) writes:
>
>>>   	   The problem occurs during the initial "make World".  When
>>>      it gets up to compiling the standard X clients, it can't seem to find
>>>      some of the libraries.  Right now we highly suspect the program "ld"
>>>      which was updated for 4_1_3.
>>>   
>
>>    Yip, we had the same problem; the only fix we found was to link static
>>some of the clients, ( btw, we used cc). :-(.
>
>Or use a SunOS 4.1.1 ld.

Or read fixes 9, 10, and 11 to the MIT distribution.  This is a known 
problem - just apply those fixes and set SunPost411FCSLd to YES and 
OSTeenyVersion in mit/config/sun.cf to 3.

In fix-09:
|If you are running SunOS 4.1.1 and you apply Sun's ld patch 100170-6,
|then you will need to edit your site.def and add this line to the
|AfterVendorCF section:
|
|#define SunPost411FCSLd   YES

In fix-10:
|If you are running SunOS 4.1.2, change OSTeenyVersion in mit/config/sun.cf to
|have a value of 2.

In fix-11:
|Brief notes on what this patch fixes:
|
|config: make on SunOS 4.1.2 fails unless tree previously built in

Sean Welch

Newsgroup: comp.windows.x
Document_id: 66973
From: thomas@aeon.in-berlin.de (Thomas Wolfram)
Subject: Re: Title for XTerm

In <1993Apr17.170907.25718@samba.oit.unc.edu> naoumov@physics.unc.edu (Sergei Naoumov) writes:

>Hey guys!
>I work on many stations and would like this name and current logname
>to be in a title of Xterm when it's open and a machine name only
>when it's closed. In other words, I want $HOST and $LOGNAME to appear
>as a title of opened XTerm and $HOST when XTerm is closed.
>How can I do it?

>Thnsks in advance,
>	Serge
>	serge@gluttony.astro.unc.edu

Almost all window managers (twm, mwm, olwm and their derivates) support
escape sequences for it. For your purpose put following into your
.login (if you're using csh or tcsh), for sh you have to modify it.

if ( "$term" == "xterm" ) then
	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
endif

Note, ^[ stands for <Esc>, in vi you can enter it by pressing
Ctrl-V and the <Esc>. Same for ^G, it means Ctrl-G. In vi:
press Ctrl-V and then Ctrl-G.
The first sequence puts the string into the title bar the second
in the icon.

BTW, you can also put the current working directory in the
title bar if you make an alias for cd:

alias cd 'cd \!* ; echo "^[]2;${LOGNAME}@${HOST}: ${cwd}^G"'

greetings,
Thomas
-- 
Thomas Wolfram, thomas@aeon.in-berlin.de
EANTC, TU Berlin, wolf@prz.tu-berlin.de, +49 030 31421294

Newsgroup: comp.windows.x
Document_id: 66974
From: duvvuri@gudbransdal.cs.odu.edu (D.V.Prakash)
Subject: Pointer Feature


Hi

I am trying to implement a pointer feature in Xlib

I have multiple windows and all can take input and 
show output simultaneously on all other displays

I want to implement a pointer feature 

I would like to get the pointer to come up on all windows once 
I choose pointer in the menu and every one should be able
to see it

Can you give me some hints as to how I should proceed 


replies will be greatly appreciated

Thank you
Prakash
< duvvuri@cs.odu.edu >


Newsgroup: comp.windows.x
Document_id: 66975
From: rgs@megatek.com (Rusty Sanders)
Subject: Re: X-server multi screen

From article <1993Apr17.010256.14372@eafs000.ca.boeing.com>, by ten0772@eafs000.ca.boeing.com (Timothy E. Neto):
> rainer@sun3.eeam.elin.co.at (Rainer Hochreiter) writes:
>>
>>I've seen a lot of different terms, which seem to mean the same thing.
>>Who can give an exact definition what these terms mean:
>>
>>	-) multi-screen
>>	-) multi-headed
>>	-) multi-display
>>	-) X-Server zaphod mode
>>
>>Is there a limit how many screens/displays a single server can handle
>>(in an articel a read something about an upper limit of 12) ?
>>
>>How is the capability called, if I want to move the cursor from one
>>screen/display to another.
> 
> As to how many clients may be display on a server, I believe the limit
> would be how much memory is available to your server or allocated by the
> server.
> 

This all sounds suspiciously like my company might have something to
do with this.

Background first: Megatek has a series of framebuffers designed as
X accelerators. For the most part these are designed for Sun SBUS
and Sun (and other vendor's) VME systems.

That said, Megatek products support multi-screen and/or multi-display
on a sigle workstation. Most of our cards have a keyboard/mouse port
which can be used to provide additional displays. For example, say
you hade a Sparcstation with an Sbus expansion chassis. You could
put in six frambuffers, allowing a total of six screens in the system.
You could then attach from 1 to 6 keyboard/mice, allowing you to
mix and match any combination of screens and displays. You could
have 1 6-screen display, 3 2-screen displays, 6 1-screen displays,
or 1 2-screen display and 1 4-screen display. Basically any
combination.

Because of this, we at Megatek try to be very careful about the use
of the words multi-screen and multi-display. They are quite different
in meaning, and (at least in X) have exact definitions.

The reason I ramble like this is the mention of an upper limit if 12
screens in a display. As it so happens, there's a define in the server
that determines the most screens supported (server/include/misc.h,
MAXSCREENS). As released my MIT, this is 3. As released by Megatek,
this is 12.

As such, the most screens supported by a single Megatek display (i.e.
X server) is 12. If someone construed this to be a limitation of X
I'm sorry, but clearly (as pointed out so well by Mr. Neto) this is
not the case.

We just did it here because nobody has ever asked us for more. Of
course, I could say "Buy all you want, we'll support more."
-- 
----
Rusty Sanders, Megatek Corp. --> rgs@megatek.com or...
         ...ucsd!    ...hplabs!hp-sdd!    ...ames!scubed!   ...uunet!

Newsgroup: comp.windows.x
Document_id: 66976
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: Creating application contexts multiple times???

The subject does not describe the problem I am having very well.  Please read
on...

I am trying to write a function which creates an XtAppContext and a Widget,
displays the widget for a while, then destroys everything and returns.  The
problem is that multiple calls to this function cause a variety of problems
including (depending on which calls I make to get rid of things):

- Core Dump
- BadPixmap X Error
- Widget not unmapped


Here is a simple (C++) program I wrote to show the problem:

#include <X11/Xlib.h>
#include <Xm/Xm.h>
#include <Xm/PushB.h>

void bla()
{
        XtAppContext app;
        Display *dis = XOpenDisplay("");
        int junk = 0;

        Widget top=XtAppInitialize (&app, "test", NULL, 0, &junk, NULL,
                NULL, NULL, 0);

        Widget box = XtVaCreateManagedWidget("blaaa", xmPushButtonWidgetClass,
                        top,
                        XmNheight, 50,
                        XmNwidth, 50,
                        NULL);

        XtRealizeWidget(top);
        //Same as XtAppMainLoop but with only 10 XEvents
        for (int i=0;i<=10;i++)
        {
                XEvent event;
                XtAppNextEvent(app, &event);
                XtDispatchEvent(&event);
        }

// WHAT SHOULD I PUT HERE???
        XtUnrealizeWidget(top);
        XtDestroyWidget(top);
        XtDestroyApplicationContext(app);
        XCloseDisplay(dis);
// ???
}

main()
{
        for (int i=0;i<=20;i++)
                bla();
}

Note that I rewrote XtAppMainLoop so that at a given time (in this example,
after 10 XEvents) the function will exit and return to the main program.
With this example, I get the following error on about (this is NOT consistent)
the 5th call to bla():

X Error of failed request:  BadPixmap (invalid Pixmap parameter)
  Major opcode of failed request:  55 (X_CreateGC)
  Resource id in failed request:  0xe0000d
  Serial number of failed request:  71
  Current serial number in output stream:  86

If I take out the XtUnrealizeWidget(top); line, it just dumps core on the
seconds call.

Furthermore, every time I call XtAppInitialize() (other than the 1st time), I
get:

Warning: Initializing Resource Lists twice
Warning: Initializing Translation manager twice.


So finally, my question is this:

What needs to be done in order to be able to call a function which creates
an XtAppContext and widgets multiple times?

Any help would be greatly appreciated.

PLEASE respond via email as I dont usually have time to read this group.

Thanks very much.

-davewood
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 66977
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Compiling help

I'd like to compile X11r5 on a Sony NWS-1750 running NEWS 4.1c.  The
X distribution has support for this config, and the release notes say
it has been tested on the machine.  BUT, also in the release notes,
nothing from Sony is listed under the supported servers.  What am I
supposed to use for my r5 X server then?  How can the OS be supported,
but not the hardware? Is there something in the r4 binaries that can
be used as the r5 server? These may seem like silly questions, but
I'm *really* confused.
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 66978
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Compiling help

Here's what I (think) have figured out.  All I need to do is install
the R5 disitribution without the Xserver like the sony.cf file defines,
and all the new libraries, utils, etc., will be installed and my old
server from r4 will still work.  This will allow me to run Xview 3.0,
and have X11r5 up and running.  Does the server interface remain the
same with all changes made only to the libs?

Another question: Is it likely that since Sun is dropping OW support
that the desktop utils (like the file manager) will be made public?
It would be nice if companies would make old code public for the
benefit of those of us with smaller budgets. :)
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 66979
From: stevew@chineham.euro.csg.mot.com (Steve Weet)
Subject: Xterm Cursor



Forgive me if this is a FAQ (I have checked the list but I cant find it).

I have a problem with the cursor within Xterm on MONO (not grayscale monitors)
The problem is that when I have an character application that displays input
fields in reverse video the Xterm text cursor gets lost on the edge of the
input field.

The solution would appear to be to set the xterm cursor to a line rather
than a block, but how do you do this. I can't find any means although
various sources seem to indicate it can be done.

When the xterm loses the input focus the cursor becomes an outlined block.
This would also be preferable but I can't seem to force this to be the
default either.

Configuration is  : Motorola 88K X11R4

Please reply by email if poss.

Thank you



--
-----------------------------------------------------------------------------
Steve Weet - European Mis - Motorola Cellular Subscriber Group
Beechgreen Court, Chineham, Basingstoke, HANTS England.
Phone : +44 (0)256 790154  E-Mail  stevew@chineham.euro.csg.mot.com
Fax   : +44 (0)256 817481  Mobile  : +44 (0)850 335105  Post : w10075




-- 
-----------------------------------------------------------------------------
Steve Weet - European Mis - Motorola Cellular Subscriber Group
Beechgreen Court, Chineham, Basingstoke, HANTS England.
Phone : +44 (0)256 790154  E-Mail  stevew@chineham.euro.csg.mot.com  
Fax   : +44 (0)256 817481  Mobile  : +44 (0)850 335105  Post : w10075


Newsgroup: comp.windows.x
Document_id: 66980
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: Now available: xvertext.4.0

Now available: xvertext 4.0 
--------------

Summary                                  
-------
xvertext provides you with four functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). Rotation  
is still achieved using XImages, but the notion of rotating a whole font
first has been dropped.

What's new?
-----------
I've added a cache which keeps a copy of previously rotated strings - thus
speeding up redraws.

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.4.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
Document_id: 66981
From: huub@cwi.nl (Huub Bakker)
Subject: waiting for a specific event/callback

Hello world,

I want to write my Xt-application code like this:

{
    do_some_work();
    /* now I need some user input */
    XmCreateDialog();
    wait_for_user_input(input);
    if (input == "OK") {
       more_work();
    } else {
       other_work();
    }
}

So "more_work() and other_work()" are not in callback functions but the
application simply waits for the user to answer the question.

How can I code this in my Xt/Motif-application?

Thanks very much in advance.

Greetings, Huub.

-- 
CWI, P.O. Box 4079 			Huub Bakker (huub@cwi.nl)
1009 AB Amsterdam
The Netherlands
Tel. 31 20 5924080

Newsgroup: comp.windows.x
Document_id: 66982
From: gpatapis@boyd.tansu.com.au (George Patapis)
Subject: Re: DESQview/X on a PC?

In article 14595639@wl.aecl.ca, harrisp@wl.aecl.ca () writes:
>I use DESQview/X and I think it is great. Where it really shines (IMHO) is
>to let unix users log into a pc and run dos and windows applications with
>the display going to their screens.
>You'll need to get:
>DESQview/X v 1.1
>DESQview/X v 1.1                           $275 suggested retail
>DESQview/X to Other X Systems v 1.1        $200 suggested retail
>
>You also must be running a supported network (FTP softwares PCTCP,
>Novell Lan workplace for dos, Sun Microsystems PC-NFS, Beame and WHiteside,
>Wollongong pathway TCPIp or HP Microsoft Lan Manager)
>
>if you don't have any of this network stuff, Quarterdeck will give you a
>copy of Novell TCPIP transprot for dos with the Network manager.
>
>You can get more info by sending email to (appropriately) info@qdeck.com.
>
>In my opinion, if you want to have other people logging in and running
>applications at your pc, you'll want to have a 486 33 with 16 Megs of RAM.
>Also, the Xwindows software in DESQviewX really seems to like an ET 4000
>(TSENG Labs chipset) based graphics card. Personally, I found that things
>ran better with a SCSI drive in the pc than with ESDI drives, but that is
>my experience only
>
>                                Good Luck and Best Wishes
>                                                Phil

What sort of traffic is generated with the X-calls?  I am curious to find
out the required bandwidth that a link must have  if one machine running
DV/X is supporting multiple users (clients) and we require adequate response
time.  Anyone have any ideas ??  



---
__/ __/ George Patapis ---------------------PAN METRON ARISTON---------- __/ __/
__/ __/ C.S.S.C Lane Cove-----------email:gpatapis@cssc-syd.tansu.com.au __/ __/
__/ __/ P.O.Box A792 Sydney South --fax  :(02) 911 3 199---------------- __/ __/
__/ __/ NSW, 2000, Australia.-------voice:(02) 911 3 121---------------- __/ __/



Newsgroup: comp.windows.x
Document_id: 66984
From: win@athen.sto.mchp.sni.de (Andrea Winkler)
Subject: X and Security / X Technical Conference


I had no possibility to join the

               7th annual X Technical Conference 
               January 18-20 1993
               Boston, MA

Nevertheless, I'm interested in information about the tutorials,
exspecially about 

               Tutorial ID:  A-SECURITY
               Title: A Survey of X and Security

               Tutorial ID:  F-ADMIN
               Title: X and the Administrator

Does anybody know, where I can get information (paper/mail) about these ?

Has anybody information about  Kerberos  (escpecially in connection with 
X Display Manager xdm)?

Thanks,

Andrea Winkler     (Siemens Nixdorf Muenchen, Germany)


------------------------------------------------------------------------------  
S I E M E N S  Andrea Winkler        Internet: Andrea.Winkler@sto.mchp.sni.de
-------------  SNI STO XS 322        Otto-Hahn-Ring 6    D-8000 Munich 83     
N I X D O R F  Phone:(089)636-41449  FAX: (089)636-42833
------------------------------------------------------------------------------  

Newsgroup: comp.windows.x
Document_id: 66985
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Is it just me, or is this newsgroup dead?

#
# I've gotten very few posts on this group in the last couple days.  (I
# recently added it to my feed list.)  Is it just me, or is this group
# near death?
#

Seen from the mailing list side, I'm getting about the right amount of
traffic.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 66986
From: cudep@csv.warwick.ac.uk (Ian Dickinson)
Subject: Re: SVR4.x binary dists (was Re: RFD: to create comp.unix.sys5.univel)

In article <rick.734610425@digibd> rick@digibd.digibd.com (Rick Richardson) writes:
>The other scary thing is that I ship libxcl.so with the 6 functions
>in it;  how many other libxcl.so type libraries will be shipped by
>other vendors?  Should I trademark the name libxcl.a? What if
>some clown uses that name and only puts 4 of the troublesome
>functions in it?

Does USL SVR4 support LD_RUN_PATH a la Solaris 2?
Or an equivalent?

If so, you can put the library in a package specific lib directory,
compile the app with LD_RUN_PATH defined, and all should work.

Besides, I'd say name it libPACKAGExcl.a if possible.

Cheers,
-- 
\/ato - Ian Dickinson - NIC handle: ID17          This article is dedicated to
vato@csv.warwick.ac.uk  ...!uknet!warwick!vato        those who disapprove but
/I=I/S=Dickinson/OU=CSV/O=Warwick/PRMD=UK.AC/ADMD= /C=GB/          continue to
@c=GB@o=University of Warwick@ou=Computing Services@cn=Ian Dickinson      read

Newsgroup: comp.windows.x
Document_id: 66987
From: s_ledoux@csc32.enet.dec.com (Scott LeDoux)
Subject: Icon Animation 


Hi Folks.

As part of my self-introduction to X I've been trying to do some simple
icon animation (sort of like icondoit from mswindows).  Changing your
own applications icon is fairly simple:  If you have a widget ID you can
just XtSetValues on XtNiconifyPixmap (or whatever) and you're done. Alternately
you can set window manager hints.  These methods don't seem to work with
icons which your application doesn't specifically own.

In my situation I have to change the icon of random windows sitting there in 
my icon box so my question is:  Given a window-id, how do you change the
icon pixure ?  A working example would be very much appreciated.  If it makes
any difference, I'm using motif 1.1 on VMS T6.0-5KE.

Thanks -
Scott :)

Newsgroup: comp.windows.x
Document_id: 66988
From: kaiser@informatik.uni-koblenz.de (Siegfried Kaiser)
Subject: R5 table widget causing trouble with XtQueryGeometry

Contents:Problems with table widgets in R5

	The following part of a program (an user interface for a simulation
	system) did work in R4, but refused to in R5. Of cause, the R4-version
	did not know about the xpTableWidgetClass (we used tableWidgetClass 			instead - caught from the net in times of R3) and XpTableChildPosition 			(formerly XtTblPosition).
	Since compiling with R5, the program causes a zero width or height error
	(on sparc-stations). The trouble-shooter is the (re)computation of the
	model_init_table - table widget: though its childs (label and asciiText 
	widgets) exist, XtQueryGeometry returns a prefered width and height of 			zero. 
	Thus the following asignment cannot perform anything else but set the 			width and height of the newly created widget to zero. No wonder XtPopup 		or XtManage- Child create zero width or height errors (dependent on 			whether width and height of the shell widget are set in the resource 			file or not).
	
	Question: Does anyone know, why XtQueryGeometry returns so low prefered
			values when working on table widgets or perhaps what
			to do about?

	I'll be happy, if someone is able to help me. 
	Germans are requested to answer in german.
	
	Siegfried Kaiser
	email: kaiser@uniko.uni-koblenz.de

	
	The part of interest:


	/* Graphischer Neuaufbau des Model-Init-Formulars */
		/* Storing the old width and height of the viewport-	*/
		/* widget, which is the parent of the troubling table	*/
		/* widget, before the viewport widget is destroyed	*/
		/* The destroying of widgets before resizing them is a	*/
		/* relict from R3-age					*/
	
	if (model_init_popped_up) 
		XtUnmapWidget(model_init_form_view);
	XtDestroyWidget(model_init_form_view);
	
		/* Creating the subtree within the shell, of which the	*/
		/* root is the viewport widget				*/
	
	n = 0;
	XtSetArg(args[n],XtNfromVert,model_init_title); n++;
	XtSetArg(args[n],XtNfromHoriz,model_init_button_view); n++;
	XtSetArg(args[n],XtNallowVert,True); n++;
	XtSetArg(args[n],XtNforceBars,True); n++;
	model_init_form_view = XtCreateWidget("form_view",viewportWidgetClass,
					      model_init_form,args,n);

	n = 0;
	model_init_table = XtCreateWidget("table",xpTableWidgetClass,
					  model_init_form_view,args,n);

		/* create_form_widget does create and position table	*/
		/* widget's childs. To position them it uses XpTable-	*/
		/* ChildPosition in R5 and XtTblPosition in R4		*/
					 
	create_form_widget(ptr_model_init_obj,model_init_table);

		/* 							*/
		/* The crucial function call:				*/
		/* intended to return the maximum height possible: if	*/
		/* there isn't sufficient space to show the whole table	*/
		/* widget, then the viewport shall grow as large as 	*/
		/* possible, but not beyond the border of screen.	*/
		/* If there is enough space, the window is intended to	*/
		/* shrienk to the smallest possible height.		*/
		/*							*/

	XtQueryGeometry(model_init_table,NULL,&pref);

		/* According to the algorithms idea, the new value of	*/
		/* viewport widget's height is selected. Unfortunately	*/
		/* pref.height = 0 leads to new_height = 0.		*/
		
	if (form_view_height > pref.height) new_height = pref.height;
	else new_height = form_view_height;

		/* Setting the new values to viewport widgets ancestors	*/

	w = XtNameToWidget(model_init_form,"form_view");
	XtResizeWidget(w,width,new_height,pref.border_width);
	XtResizeWidget(model_init_form_view,width,new_height,
		       pref.border_width);

	if (model_init_popped_up)
	{
		/* In case the shell, which contains model_init_form_-	*/
		/* view and model_init_table, allready exists, is has	*/
		/* to be resized, too.					*/
		
	 n = 0;
	 XtSetArg(args[n],XtNwidth,&shell_width); n++;
	 XtSetArg(args[n],XtNheight,&shell_height); n++;
	 XtSetArg(args[n],XtNborderWidth,&shell_bw); n++;
	 XtGetValues(model_init_shell,args,n);
	 XtResizeWidget(model_init_shell,shell_width,
			shell_height - height + new_height,shell_bw);
	}; /* end of if */

	n = 0;
	XtSetArg(args[n],XtNwidth,&width); n++;
	XtSetArg(args[n],XtNborderWidth,&bw); n++;
	XtGetValues(model_init_button_view,args,n);
	XtResizeWidget(model_init_button_view,width,new_height,bw);

	XtResizeWidget(vert_bar,sbar_width,1,sbar_bw);
	
	resize_inits();

		/* If there is the shell's height set within the 	*/
		/* resource file, the program terminates within the	*/
		/* first XtManageChild on its second pass through the	*/
		/* observed function. The first pass succeeds.		*/

	XtManageChild(model_init_form_view);
	XtManageChild(model_init_table);


	if (!model_init_popped_up)
	{
		/* In case the shell isn't popped up it has to be done.	*/
		/* If there is no value set to the shell's height within*/
		/* the resource file, the program terminates here.	*/
		
	 XtPopup(model_init_shell,XtGrabNone);
	 model_init_pop_flag = True;
	 set_model_init_attributes();
	}; /* end of if */

	get_actual_init(&ptr_actual);
	load_form(ptr_actual);
	
	
	
	/*								*/
	/* If someone suspects the creation of table widget's contents	*/
	/* causes all the trouble, there are the sources of create_form */
	/*								*/
	
		
	create_form_widget(ptr,table)
	t_obj              *ptr;
	Widget             table;
		
		/* ptr is a linear list containing attributes and para-	*/
		/* meters of the model and additionally the correspon-	*/
		/* ding widgets						*/
		
	{
	 Arg               args[10];
	 int               n,
			   row,
			   col;
	 t_obj             *ptr_obj;
	 t_ident           *ptr_ident;

		/* Initialization of the local variables		*/
		
	 ptr_obj = ptr;
	 col = 0;
	 row = 0;
 
	 /* Schleife ueber die Objekte bzw. das Pseudo-Objekt (fuer die 				Parameter) */
		/* loop through the list of objects and pseudo-objects:	*/
		/* every object occuring in the model has zero or more	*/
		/* attributes and some parameters, which can be shared	*/
		/* by several objects. 					*/
		/* Because of locality the attributes of one object are	*/
		/* listed in a second linear list (of type t_ident),	*/
		/* whereas the parameters, which can belong to any ob-	*/
		/* ject are put together in a pseudo-object 		*/
		/* Thus the program loops through the list of objects	*/
		/* and pseudo-objects and for each object through the	*/
		/* list of its attributes resp. parameters.		*/
		
	 while (ptr_obj != (t_obj*)NULL)
	 {
	 	/* Each object and pseudo-object is represented in a	*/
	 	/* label widget						*/
	  
	  n = 0;
	  XtSetArg(args[n],XtNlabel,ptr_obj->name); n++;
	  ptr_obj->label_w = XtCreateManagedWidget("object",labelWidgetClass,
					   table,args,n);
	  XpTableChildPosition(ptr_obj->label_w,col,row);
	  col++;
	  row++;
	  ptr_ident = ptr_obj->ident;

	  /* Schleife ueber die Objekt-Attribute bzw. Parameter */
	  while (ptr_ident != (t_ident*)NULL)
	  {
	  	/* Each attribute and parameter is represented in a	*/
	  	/* label and has a corresponding asciiText widget, in 	*/
	  	/* which it is to be initialized.			*/
	  	
	   n = 0;
	   XtSetArg(args[n],XtNlabel,ptr_ident->name); n++;
	   ptr_ident->label_w = XtCreateManagedWidget("ident",labelWidgetClass,
					      table,args,n);
	   XpTableChildPosition(ptr_ident->label_w,col,row);
	   col++;
    
	   n = 0;
	   XtSetArg(args[n],XtNlength,ROW_LENGTH); n++;
	   XtSetArg(args[n],XtNstring,ptr_ident->text); n++;
	   XtSetArg(args[n],XtNeditType,XawtextEdit); n++;
	   XtSetArg(args[n],XtNwrap,XawtextWrapWord); n++;
	   XtSetArg(args[n],XtNresize,XawtextResizeHeight); n++;
	   XtSetArg(args[n],XtNuseStringInPlace,True); n++;
	   ptr_ident->text_w = XtCreateManagedWidget("text",
					asciiTextWidgetClass,
					     table,args,n);
	   XpTableChildPosition(ptr_ident->text_w,col,row);
	   col--;
	   row++;
	   get_next_ident(&ptr_ident);
	  }; /* end of while */
	  col--;
	  get_next_obj(&ptr_obj);
	 }; /* end of while */
	} /* end of create_form_widget */


	

So far the problem in detail.


Newsgroup: comp.windows.x
Document_id: 66989
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Motif maling list


The motif mailing list will now be located at
lobo.gsfc.nasa.gov

If you would like to be added (or deleted) from this list, please
send mail to motif-request@lobo.gsfc.nasa.gov
to mail to the list, send mail to motif@lobo.gsfc.nasa.gov


Brian
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 66990
From: buzz@bear.com (Buzz Moschetti)
Subject: Re: XCopyPlane Question

In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
>   don't show up: do you wait for an expose event before drawing your
>   rectangle?

Suppose you have an idle app with a realized and mapped Window that contains
Xlib graphics.  A button widget, when pressed, will cause a new item
to be drawn in the Window.  This action clearly should not call XCopyArea() 
(or equiv) directly; instead, it should register the existence of the new
item in a memory structure and let the expose event handler take care
of rendering the image because at that time it is guaranteed that the
Window is mapped.

The problem, of course, is that no expose event is generated if the window
is visible and mapped.  Do you know the best way to "tickle" a window so
that the expose event handler will be invoked to draw this new item?

Newsgroup: comp.windows.x
Document_id: 66991
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: XWindows always opaque


hess@swt1.informatik.uni-hamburg.de writes:

>> I wonder if it is possible for a parent window to paint over the area of
>> its childs. If it is not, then how could it be possible to implement a 
>> rubberband across multiple xwindows to select the objects that are
>> displayed one in each window?

Use a GC with the subwindow_mode attribute set to IncludeInferiors. The
default is ClipByChildren. However, beware if any of the children are of
a different depth to the parent; the semantics of this are undefined by the
protocol.

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.
 

Newsgroup: comp.windows.x
Document_id: 66992
From: marc@ccvi.ccv.FR (Marc Bassini)
Subject: [jb@sgihbtn.sierra.com: Re: Xlib for MS/WINDOWS not an XSERVER!!!]

>I think you may find that either Quarterdeck (Deskview/X) or
>Hummingbird (eXceed) provide an Xlib for DOS.  Perhaps they also have
>an Xlib for MS-Windows?  It's a possibility.
>
 Yes, eXceed has windows version. Have ported some games like tetris, 
works fine.

Si c'est vrai, ce serait bien de se le procurer car a ce moment la, le
portage Xt... Suis-je en train de perdre mon temps avec la toolkit c++
?

		Marc Bassini (marc@ccv.fr, marc@cnam.cnam.fr)
			Computers, Communications & Visions (C2V)
			82 bd Haussmann, 75008 Paris FRANCE
			Phone 40.08.07.07, Fax 43.87.35.99


Newsgroup: comp.windows.x
Document_id: 66993
From: glb6j@smarine.UUCP (Guy Babineau)
Subject: How do you find a window id given its name


I want to do the equivalent of an "xwininfo -name" via a call or set of calls
in Xlib.  I need to map a windows name to its id.
It's probably easy, but I've only been programming in X for a little while.
I've looked in the O'reilly books and didn't find it and I also checked the
FAQ and couldn't find it.

Email to one of the following addresses and I'll post a response if it
seems reasonable to do so.


Guy
-- 
Guy L. Babineau                         virginia.edu!smarine.uucp!glb6j
Sperry Marine Inc.			72147.2474@compuserve.com

Newsgroup: comp.windows.x
Document_id: 66994
From: billh@greed.sbil.co.uk (Bill Hodgson)
Subject: Re: waiting for a specific event/callback

In article 9610@charon.cwi.nl, huub@cwi.nl (Huub Bakker) writes:
..deleted...

In plain Motify using a dialog 'in-line' like this simply isn't done. You need
to set callbacks from the buttons/widgets in your dialog and let the callback routines
do the work. In the callbacks you can then carry on the flow of logic. 

XView from Sun actually supports this very neatly with a 'Notify' box, which can
return a status in-line, it does actualy ease coding but goes against the event
driven style of an application.

Summary: Redesign required.


---
    _/       _/  _/ _/     "Delta hedging a long option position also
   _/           _/ _/	    generates a short gamma exposure and any return
  _/_/_/_/ _/  _/ _/	    generated from delta hedging options can be thought
 _/    _/ _/  _/ _/	    of as compensation for assuming gamma risk"
_/_/_/_/ _/  _/ _/	    -- Radioactive investment management... whew!

Newsgroup: comp.windows.x
Document_id: 66995
From: montnaro@spyder.crd.ge.com (Skip Montanaro)
Subject: Re: Circular Motif Widgets


If you're willing to do a little work, you can make DrawnButtons do what you
want, more-or-less. One of my colleagues here at GE CRD has done just that
in our internal LYMB system.

We have a matrix transform class that makes it easy to compute a series of
dial positions from a single set of vectors. Each set of vectors is then
drawn into a pixmap. Clicking the button advances the knob's state and
changes to the next pixmap in the sequence.

Using DrawnButtons obviously still constrains you to taking up a rectangular
portion of the parent widget, but that's normally not a big shortcoming. You
can make things look circular enough.

--
Skip (montanaro@crd.ge.com)
"Why can't X be this easy?" -- me, after learning about dlopen()

Newsgroup: comp.windows.x
Document_id: 66996
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Creating 8 bit windows on 24 bit display.. How?


stolk@fwi.uva.nl writes:

>> 
>> A problem occurs when I try to create a window with a visual that is different
>> from the visual of the parent (which uses the default visual which is TC24).
>> 

You've got to set border_pixel in your window attributes. The default
is CopyFromParent which gives the BadMatch. Do this:

   ...
   unsigned long valuemask;
   ...
   /*
    * if border_width is non-zero you'd better alloc a colour from cmap
    * rather than use any old pixel value. Also, use valuemask, it makes
    * the code more obvious.
    */
   attr.colormap = cmap;
   attr.border_pixel = 0;
   valuemask = CWColormap | CWBorderPixel;
   win = XCreateWindow(
           dpy,
           DefaultRootWindow(dpy),
           10,10,
           width,height,
           0,		         /* border width. see comment below */
           8,                    /* depth */
           InputOutput,          /* class */
           vinfo.visual,         /* visual */
           valuemask,
           &attr
         );

A note on border_width: your code looked like this:

>>   win = XCreateWindow(
>>           dpy,
>>           DefaultRootWindow(dpy),
>>           10,10,
>>           width,height,
>>           CopyFromParent,       /* border width */
>>           8,                    /* depth */
>>           InputOutput,          /* class */
>>           vinfo.visual,         /* visual */
>>           CWColormap,
>>           &attr
>>         );

border_width set to CopyFromParent works but doesn't make sense.
border_width should be an unsigned int. You get away with it because
CopyFromParent is #define'ed to be zero in X.h. If it happened to be
defined as -1 you'd get a very interesting looking window!

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.
 

Newsgroup: comp.windows.x
Document_id: 66997
From: smikes@topgun (Steven Mikes)
Subject: Re: XVideo Information

The product you mention is XVideo from Parallax Graphics in Santa Clara, 
California, US. You can read our product review in the Jan/Feb '93 issue
of The X Journal. That issues focuses on Multimedia and X, in which there
are also a number of other useful items, including an article on Video in
an X Window. Fax our New York office at 212.274.0646 for information on 
obtaining back issues.

Steve
-- 
      Steven Mikes - Editor - The X Journal
        1097 Eastbrook Rd., Martinsville, NJ 08836
         OFFICE: 908.563.9033 - FAX: 908.560.8635
          "Serving The X Window System Community"

Newsgroup: comp.windows.x
Document_id: 66998
From: smikes@topgun (Steven Mikes)
Subject: Re: Xlib for MS/WINDOWS not an XSERVER!!!

Another company, Congruent Corporation of New York City, has also ported Xlib
Xt and Motif 1.1 over to MS Windows NT, which provides full client development
for X applications in an NT environment.

If you are porting InterViews over to MS Windows, I thought InterViews was
a C++ toolkit with C++ classes. If that is so, how can it be built on Xlib,
unless the classes are calling Xlib functions?

Steve

-- 
      Steven Mikes - Editor - The X Journal
        1097 Eastbrook Rd., Martinsville, NJ 08836
         OFFICE: 908.563.9033 - FAX: 908.560.8635
          "Serving The X Window System Community"

Newsgroup: comp.windows.x
Document_id: 66999
From: howardy@freud.nia.nih.gov (Howard Wai-Chun Yeung)
Subject: need shading program example in X

Do anyone know about any shading program based on Xlib in the public domain?
I need an example about how to allocate correct colormaps for the program.

Appreciate the help.

Howard.


Newsgroup: comp.windows.x
Document_id: 67000
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: System file in /tmp


In article <C5JJIG.Doy@acsu.buffalo.edu>, lusardi@cs.buffalo.edu (Christopher Lusardi) writes:
|> 
|> What is the directory .X11-unix for in /tmp? When I start
|> x, it is created by the system. This directory wasn't created 
|> by root, and it contains an empty file (X0) that is owned by me. 
|> 

It's the Unix Domain Socket (local connection) to your XServer.
Try to rm it :)

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67001
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Title for XTerm


In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|> >Hey guys!
|> >I work on many stations and would like this name and current logname
|> >to be in a title of Xterm when it's open and a machine name only
|> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|> >as a title of opened XTerm and $HOST when XTerm is closed.
|> >How can I do it?
|> 
|> Almost all window managers (twm, mwm, olwm and their derivates) support
|> escape sequences for it. For your purpose put following into your
|> .login (if you're using csh or tcsh), for sh you have to modify it.
|> 
|> if ( "$term" == "xterm" ) then
|> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|> endif
|> 

1) This is NOT a feature of the Window Manager but of xterm.
2) This sequences are NOT ANSI compatible, are they ?
   Does anyone know IF there are compatible sequences for this and what they
   are ? I would think they are DCS (device control sequence) introduced,
   but may be a CSI sequence exists, too ?
   This MUST work on a dxterm (VT and ANSI compatible), it may not work
   on xterms.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67002
From: christy@cs.concordia.ca (Christy)
Subject: X386 server problems

Hello,

I'm trying to get X11R5 running on my PC and ran into the 
following error message when trying to start the Xserver.

------
Setting TCP SO_DONTLINGER: Option not supported by protocol

X386 Version 1.2 / X Windows System
(protocol Version 11, revision 0, vendor release 5000)

Fatal server error
no screens found
giving up

xinit: software cased connection abort (errno 130): unable to connect
       to X xserver.

------


does anyone know what this error means ?
has anyone experienced this problem ?

help will be much appreciated

thanks in advance.


please send replies to <christy@alex.qc.ca>

Christy

Newsgroup: comp.windows.x
Document_id: 67003
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Solution: Why do I need "xrdb -m" when .Xdefaults unchanged?

The short answer seems to be: "I don't".
The particular package (wscrawl) seems to reset *all* its defaults
if *any* of them are missing from the .Xdefaults file.  Once I added
the missing ones to the .Xdefaults file, the problem goes away.

-Kevin
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
Document_id: 67005
From: DBOHDAL@JAGUAR.ESS.HARRIS.COM
Subject: Icon Box

Dear Xperts:

  I want to place a specific group of icons in an icon box and
have my other icons appear outside of the box.  Does anyone
know if there's a way I can do this??  I'm using X11R5 and
Motif 1.2.1.

Thanks!
dbohdal@jaguar.ess.harris.com

Newsgroup: comp.windows.x
Document_id: 67006
From: gregg@netcom.com (gregg weber)
Subject: What inexpensive monochrome X station can you recommend?

Can someone recommend an inexpensive 19" monochrome X station, that
is not PC software emulation based? Please tell me manufacturer,
model, price and any other significant specs. Thanks.

-- 
================================================================
Gregg Weber		Let it be, open and bright like the sky,
gregg@netcom.com	Without taking sides, with no clouds of concepts.
(510) 283-6264		- kun-mkhyen klong-chen-pa
================================================================

Newsgroup: comp.windows.x
Document_id: 67007
From: hsteve@carina.unm.edu ()
Subject: XTranslateCoord. Problem

It seems like XTranslateCoord. doesn't work the way I expecting it.  Right
after performs a XMoveWindow, I want to know the absolute window position
with respect to the root window.  To get this info. I do a XTranslateCoordinates
but the abs_x, and abs_y aren't right?  Does anybody know of a way to find 
out this information?

Thanks, please e-mail to hsteve@carina.unm.edu if it's possible

-- 
    _---_     Steve  
   / o o \    hsteve@hydra.unm.edu, hsteve@carina.unm.edu
  | \___/ |   
              Just say NO to VMS!!

Newsgroup: comp.windows.x
Document_id: 67008
From: klee@synoptics.com (Ken Lee)
Subject: Re: DEC pixmap size

In article 1964@igd.fhg.de, haase@igd.fhg.de (Helmut Haase (Goebel)) writes:
>If I try to create a pixmap larger than the size of my screen the program
>will terminate displaying the message:
>
>X Error:  BadAlloc - insufficient resources

Many X servers supporting graphics accelerators do not allow the creation
of pixmaps exeeding the size of the screen.  One workaround is to create
several smaller pixmaps and add the results.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 67009
From: klee@synoptics.com (Ken Lee)
Subject: Re: Circular Motif Widgets

In article bjg@acsc.com, dev@hollywood.acsc.com () writes:
>
>Will there be any support for round or circular widgets in Motif's next
>release?. I'd love to have a circular knob widget which could be used
>instead of a slider.

How much support do you need?  I don't think there's anything
that prohibits you from implementing such a widget, though you
will have to write your own versions of the functions that draw
the 3D shadow and traversal highlighting.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 67010
From: support@qdeck.com (Technical Support)
Subject: Re: DESQview/X on a PC?

In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>In article 14595639@wl.aecl.ca, harrisp@wl.aecl.ca () writes:
>>I use DESQview/X and I think it is great. Where it really shines (IMHO) is
>>to let unix users log into a pc and run dos and windows applications with
>>the display going to their screens.
>>You'll need to get:
>>DESQview/X v 1.1
>>DESQview/X v 1.1                           $275 suggested retail
>>DESQview/X to Other X Systems v 1.1        $200 suggested retail
>>
>>You also must be running a supported network (FTP softwares PCTCP,
>>Novell Lan workplace for dos, Sun Microsystems PC-NFS, Beame and WHiteside,
>>Wollongong pathway TCPIp or HP Microsoft Lan Manager)
>>
>>if you don't have any of this network stuff, Quarterdeck will give you a
>>copy of Novell TCPIP transprot for dos with the Network manager.
>>
>>You can get more info by sending email to (appropriately) info@qdeck.com.

Actually, info@qdeck.com is our customer service department. If you have
technical questions, you can write to support@qdeck.com.

>>In my opinion, if you want to have other people logging in and running
>>applications at your pc, you'll want to have a 486 33 with 16 Megs of RAM.
>>Also, the Xwindows software in DESQviewX really seems to like an ET 4000
>>(TSENG Labs chipset) based graphics card. Personally, I found that things
>>ran better with a SCSI drive in the pc than with ESDI drives, but that is
>>my experience only
>
>What sort of traffic is generated with the X-calls?  I am curious to find
>out the required bandwidth that a link must have  if one machine running
>DV/X is supporting multiple users (clients) and we require adequate response
>time.  Anyone have any ideas ??  

I expect the limiting factor will be your server machine, not the network
itself. To give you a real-world example, here at Quarterdeck we have
roughly 100 people using DVX to talk to a bunch of unix boxes, novell
file servers, and each other. It's not _too_ much of a load on our
Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
segment). If you had a badly loaded net, or the apps you wanted to run
were very network intensive, you could run into some slowdowns.

But the biggest problem would be the machine itself. Say you have a 486
33 with plenty of ram and a fast hard disk and network card. If you have
10 people running programs off it, you're going to see some slowdowns
because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
attempt to see if tasks are idle and make sure they give up their time
slice, but if you have 10 working programs running, you'll know it.

Having said that, if you can tweak the programs being run (by adding
in calls to give up time slices when idle and that sort of
thing), you could probably run 15-20 people on a given machine before
you started seeing slowdowns again (this time from network bandwidth).
It all really depends on what the programs are doing (ie. you're going
to see a slowdown from X-bandwidth a lot sooner if your apps are all
doing network things also...)
-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
   Q/Fax: (310) 314-3214 from touch-tone phone for Technotes On Demand!

Newsgroup: comp.windows.x
Document_id: 67011
From: yuri@physics.heriot-watt.ac.UK (Yuri Rzhanov)
Subject: XView slider

Hi netters,

I'm using sliders in my XView apps, usually with editable numeric
field. But I seem to have no control over the length of this field.
In some apps it appears long enough to keep several characters,
in some - it cannot keep even the maximum value set by 
PANEL_MAX_VALUE! 

As I understand, PANEL_VALUE_DISPLAY_LENGTH, which controls
number of characters to be displayed in text items, doesn't
work in the case of slider, despite the fact that <panel.h>
contains the following bit:

	/* Panel_multiline_text_item, Panel_numeric_text_item,
	 * Panel_slider_item and Panel_text_item attributes
	 */
	PANEL_NOTIFY_LEVEL	= PANEL_ATTR(ATTR_ENUM,			 152),
	PANEL_VALUE_DISPLAY_LENGTH	= PANEL_ATTR(ATTR_INT,		 182),

which gives a hint that this attribute can be used for sliders.
But 1) setting this attribute gives nothing, and 2) xv_get'ting
this attribute gives warning: Bad attribute, and return value 0.

Can someone share his experience in managing sliders in XView with me,
and clear this problem?

Any help is very much appreciated.

Yuri

yuri@uk.ac.hw.phy

Newsgroup: comp.windows.x
Document_id: 67012
From: defaria@cup.hp.com (Andy DeFaria)
Subject: Mysterious beeping

[ Article crossposted from hp.windows ]
[ Author was Andy DeFaria ]
[ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]

For some reason the following code causes my X application to beep whenever I
intercept a keystroke and change it's meaning.  The intent of this code it to
allow "date" fields the following special keys:

	[Tt]:	Insert today's date
	[+=]:	Bump day up by one
	[-_]:	Bump day down by one

I hardcoded some dates for this example.  Perhaps I shouldn't be using an
XmText field for this.

////////////////////////////////////////////////////////////////////////////// 
// 
// For some reason the following code beeps whenever any of the special keys
// of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
// keys having the special meaning implied by the code.  I would like to get
// rid of the beeping but, as far as I can tell, I'm not doing the beep and 
// am at a lose as to understanding who and why the beeping is occuring.
// 
////////////////////////////////////////////////////////////////////////////// 
#include <X11/Intrinsic.h>
#include <Xm/Xm.h>
#include <Xm/RowColumn.h>
#include <Xm/MainW.h>
#include <Xm/Text.h>

Widget		toplevel;
Widget		mainWindow;
Widget		mainPane;
Widget		dateField;
XtAppContext	application; 

void markToday (Widget date) {
   char *todaysDate = "04/19/93";
   XtVaSetValues (date, XmNvalue, todaysDate, NULL);
} // markToday

void markTomorrow (Widget date) {
   char *tomorrowsDate = "04/20/93";
   XtVaSetValues (date, XmNvalue, tomorrowsDate, NULL);
} // markTomorrow

void markYesterday (Widget date) {
   char *yesterdaysDate = "04/18/93";
   XtVaSetValues (date, XmNvalue, yesterdaysDate, NULL);
} // markYesterday

void datekeys (Widget          /* callingWidget */,
	       Widget          date,
	       XmTextVerifyPtr callbackData) {
   // Capture the keys [Tt-_+=] can change their behaviour.  If found
   // set "doit" to false so X won't interpret the keystroke. 
   switch (callbackData->text->ptr [0]) {
      case 't': case 'T': 
	 markToday (date);
	 callbackData->doit = FALSE;
	 return;
      case '-': case '_':
	 markYesterday (date);
	 callbackData->doit = FALSE;
	 return;
      case '+': case '=':
	 markTomorrow (date);
	 callbackData->doit = FALSE;
	 return;
      default:
	 return;
   } // switch
} // datekeys

void main (Cardinal argc, char *argv []) { 
   // Initialize Xt 
   toplevel = XtVaAppInitialize (&application, "Application", NULL, 0, 
				 &argc, argv, NULL, NULL); 

   // Create the toolface
   mainWindow = XtVaCreateManagedWidget 
      ("mainWindow", xmMainWindowWidgetClass, toplevel, NULL);

   // Create a mainWindow
   mainPane = XtVaCreateManagedWidget
      ("mainPane", xmRowColumnWidgetClass, mainWindow, NULL);

   // Create a small text area
   dateField = XtVaCreateManagedWidget
      ("dateField", xmTextWidgetClass, mainPane,
       XmNtopAttachment,	XmATTACH_FORM,
       XmNrightAttachment,	XmATTACH_FORM,
       XmNcolumns,		8,
       NULL);

   // Set modifyVerifyCallback to the datekeys callback   
   XtAddCallback (dateField, XmNmodifyVerifyCallback,
		  (XtCallbackProc) datekeys, (XtPointer) dateField);

   // Realize the toplevel 
   XtRealizeWidget (toplevel);

   // Go into the XtMainLoop
   XtAppMainLoop (application); 
} // main 

_______________________________________________________________________________
I swear by my life and the love of it that I will    | Andrew DeFaria
never live for the sake of another man nor ask       | Hewlett Packard
another man to live for mine.                        | California Language Labs
                    John Galt                        | defaria@cup.hp.com
_______________________________________________________________________________


--
_______________________________________________________________________________
I swear by my life and the love of it that I will    | Andrew DeFaria
never live for the sake of another man nor ask       | Hewlett Packard
another man to live for mine.                        | California Language Labs
                    John Galt                        | defaria@cup.hp.com
_______________________________________________________________________________

Newsgroup: comp.windows.x
Document_id: 67013
From: david@swat (David E. Smyth)
Subject: Re: MS Windows VS Motif (GUI design differences), was Re: Future of Unix

Ik Su Yoo <ik@mobydick.leis.bellcore.com> writes:
>
>Another important difference is that MSW doesn't have any window that
>handle sophisticated geometry management (like XmForm).

Is this an advantage to MS Windows or to Xt?  I used to think it
was a big advantage for Xt, but I am not at all sure anymore...

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6463 (temp! do NOT use v-mail)
X and Object Guru.			tempory office: 525/B70
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
 What's the earliest possible date you can't prove it won't be done by?
					- Tom DeMarco
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67014
From: david@swat (David E. Smyth)
Subject: Re: Looking For David E. Smyth

zvi@nynexst.com (Zvi Guter) writes:
>The author of Wcl (or the current care taker). His is the only name I found
>in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
>but the mail bounced back.

Here I am!!

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6463 (temp! do NOT use v-mail)
X and Object Guru.			tempory office: 525/B70
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
 What's the earliest possible date you can't prove it won't be done by?
					- Tom DeMarco
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67015
From: dyoung@media.mit.edu (David Young)
Subject:  Macro Recorder/Player for X?



Is there aything available for X similar to QuicKeys for the Macintosh --
something that will allow me to store and playback sequences of keystrokes,
menu selections, and mouse actions - directing them towards another
application?

If so, could someone send me information on its availability -- and if not,
how hard do we think it might be to send input to other X applications and,
hopefully, deal with their responses appropriately?  (If an application is
going to take a few seconds to process I probably have to wait  for it to
complete before sending another command.)

thanks,

david,



Newsgroup: comp.windows.x
Document_id: 67016
From: buzz@bear.com (Buzz Moschetti)
Subject: Monthly Question about XCopyArea() and Expose Events

(2nd posting of the question that just doesn't seem to get answered)

Suppose you have an idle app with a realized and mapped Window that contains
Xlib graphics.  A button widget, when pressed, will cause a new item
to be drawn in the Window.  This action clearly should not call XCopyArea() 
(or equiv) directly; instead, it should register the existence of the new
item in a memory structure and let the same expose event handler that handles
"regular" expose events (e.g. window manager-driven exposures) take care
of rendering the new image.  Using an expose event handler is a "proper" way
to do this because at the time the handler is called, the Xlib Window is
guaranteed to be mapped.

The problem, of course, is that no expose event is generated if the window
is already visible and mapped.  What we need to do is somehow "tickle" the
Window so that the expose handler is hit with arguments that will enable
it to render *just* the part of the window that contains the new item.

What is the best way to tickle a window to produce this behavior?

Newsgroup: comp.windows.x
Document_id: 67018
From: aff209@tijc02.uucp (Ann Freeman    )
Subject: Seeking user experience with X-based test tools

Does anyone have any experience using XRunner, CAPBAK/X, or PreVueX
as an automated test tool for X?  Please email me directly with
opinions (both positive and negative).

Ann Freeman
Siemens Industrial Automation, Inc.
Johnson City, TN

aff209%tijc02@uunet.uu.net


Newsgroup: comp.windows.x
Document_id: 67019
From: dyoung@media.mit.edu (David Young)
Subject: Drawing Lines (inverse/xor)

I'm trying to write some code that lets me draw lines and do rubber-band
boxes in Motif/X.  I'm running on an 8-bit display for which I've created a
colormap and am using almost all of the colors.  I want to draw the lines
in a drawing area widget -- a widget in which I'm displaying a bitmap using
XPutImage().  If doesn't matter if the lines I draw interactively stay
around when the window is refreshed.

Currently, to draw interactively, I begin with:

   /* drawIndex is an colortable index I reserve for the Foreground */
   /* my_default_bg_color is the color index for the background of my image */
   palette_colors[drawIndex].red =   palette_colors[my_default_bg_color].red;
   palette_colors[drawIndex].green = palette_colors[my_default_bg_color].green;
   palette_colors[drawIndex].blue =  palette_colors[my_default_bg_color].blue;
   XStoreColors( myDisplay, my_cmap, &palette_colors[DrawIndex], 1);
   XFlush( myDisplay);

   XSetFunction( myDisplay, gc, GXxor);
   XSetForeground( myDisplay, gc, drawIndex);

Then to draw I do:

   XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
   XFlush( myDisplay);

And when I'm all done, to return things to normal I do:

   XSetFunction( myDisplay, gc, GXcopy);


What I'd like to happen is for the lines I draw to be the inverse of
whatever I'm drawing over.  Instead what happens is I get white lines.  If
the lines are over a white background - nothing shows up.  If the lines are
over a black area - nothing shows up!  It's very strange.  But the GXxor
function seems right - since if I do a rubber-banding box, it erases and
redraws itself correctly (ie. not disturbing the underlying image).

Any suggestions what I'm doing wrong?

david

Newsgroup: comp.windows.x
Document_id: 67020
From: mikey@eukanuba.wpd.sgi.com (Mike Yang)
Subject: Re: Monthly Question about XCopyArea() and Expose Events

In article <BUZZ.93Apr19125438@lion.bear.com>, buzz@bear.com (Buzz Moschetti) writes:
|> (2nd posting of the question that just doesn't seem to get answered)

How can we resist a questions that says something like this?

|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

If your Expose event handler is truly intelligent about exposed
rectangle information, then you can use XClearArea to generate an
Expose event (assuming that your background pixel is not None) for the
enclosing rectangle of your new item.

This is still not great, since any other items contained within that
rectangle will still be unnecessarily redrawn.

If your Expose event handler simply redraws everything, you'll be
doing much more work than just drawing the new item "on top" of the
existing scene.

-----------------------------------------------------------------------
                 Mike Yang        Silicon Graphics, Inc.
               mikey@sgi.com           415/390-1786

Newsgroup: comp.windows.x
Document_id: 67021
From: nchan@nova.ctr.columbia.edu (Nui Chan)
Subject: how to put RPC in HP X/motif environment?


Hi, 

has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
is a notify_enable_rpc_svc() call that automatically executes the rpc processes
when it detects an incoming request. I wonder if there is a similar function in
HP X/motif that perform the same function.

any help is appreciated.

nui chan
nchan@ctr.columbia.edu

Newsgroup: comp.windows.x
Document_id: 67022
From: graham@sparc1.ottawa.jade.COM (Jay Graham)
Subject: Mix GL with X (Xlib,Xt,mwm)


I am developing an X (Xt,Xm) application that will include a graphics window
of some sort with moving symbols among other things.  A pure X application
could be implemented with Motif widgets, one of which would be an 
XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).

Is it possible to mix X and GL in one application program?
Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
with XOpenWindow?

I have never used GL before, but the doc on GL winopen() says that the first
time winopen() is called it opens a connection to the server.   Also, most of
the GL calls do not require a Display or GC, unlike most X calls.  From this
initial information it appears that X and GL cannot be mixed easily.   Is this
true?

Does PEX (graPHIGS?) have the same functionality of GL?


Environment:
     AIXwindows X11R4
     Motif 1.1
     GL is available
     AIX Sys V 3.2
     IBM RS/6000 360


Thanks in advance.

Jay Graham
Jade Simulations International Corp.
14 Colonnade Road, Suite 150
Nepean, Ontario, Canada
613-225-5900 x226

graham@ottawa.jade.com


Newsgroup: comp.windows.x
Document_id: 67023
From: dan@tremor.think.com (Dan Aronson)
Subject: drawing an abstract graph


I am looking for software to draw a graph.  I want to just give it a list
of nodes and edges between the nodes and have the program come up with some
reasonable positioning of it.  

Thanks in advance.

--Dan Aronson	dan@think.com
Thinking Machines Corporation

Newsgroup: comp.windows.x
Document_id: 67024
From: Robert Andrew Ryan <rr2b+@andrew.cmu.edu>
Subject: Re: Monthly Question about XCopyArea() and Expose Events

Excerpts from netnews.comp.windows.x: 19-Apr-93 Monthly Question about
XCop.. Buzz Moschetti@bear.com (1055) 

> A button widget, when pressed, will cause a new item to be drawn in the
> Window.  This action clearly should not call XCopyArea() 
> (or equiv) directly; instead, it should register the existence of the
> new item in a memory structure and let the same expose event handler
> that handles "regular" expose events (e.g. window manager-driven
> exposures) take care of rendering the new image. 

Hmmm.... Clearly?  Depends on your programming model.  It is not at all
forbidden to draw outside the context of an expose event.  Certainly any
internal data structures should be maintained such that the visual
appearance would be maintained properly whenever an expose event happens
to be generated.  This doesn't preclude drawing immediately after
updating the datastructures though... 

-Rob 
 

Newsgroup: comp.windows.x
Document_id: 67025
From: maher@kong.gsfc.nasa.gov (552)
Subject: Wanted: critiques on multi-windowing system toolkits

Any pointers to articles, or personal opinions, critiquing user
interface toolkits that operate across many windowing systems (e.g., X,
MS Windows, Macintosh) - you know, Open Interface, XVT, Aspect ...

If you reply with your opinion, please BRIEFLY state your choice and a
short discussion why.

Steve Maher

maher@outland.gsfc.nasa.gov
-- 
-----------------------------------------------------------------
Steve Maher                              (301) 286-5666 (voice)
Flight Dynamics Division                 maher@kong.gsfc.nasa.gov
NASA/Goddard Space Flight Center 

Newsgroup: comp.windows.x
Document_id: 67026
From: ianhogg@milli.cs.umn.edu (Ian J. Hogg)
Subject: Re: how to put RPC in HP X/motif environment?

In article <1993Apr19.200740.17615@sol.ctr.columbia.edu> nchan@nova.ctr.columbia.edu (Nui Chan) writes:
>
>has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
>is a notify_enable_rpc_svc() call that automatically executes the rpc processes
>when it detects an incoming request. I wonder if there is a similar function in
>HP X/motif that perform the same function.
>

I've been using the xrpc package for about a year now.  I believe I got it from
export.  

--
===============================================================================
Ian Hogg						ianhogg@cs.umn.edu
                                                        (612) 424-6332

Newsgroup: comp.windows.x
Document_id: 67027
From: yang@cs.umass.edu (Hong Yang)
Subject: colormap question

Hi, Experts, 

I'm kind of new to X. The following question is strange to me. I am
trying to modify the contents of the colormap but failed without
reason (to me). I am using the following piece of code:


  toplevel = XtInitialize(argv[0], "Testcolor", NULL, 0,
			  &argc, argv);
  dpy = XtDisplay(toplevel);
  scr = DefaultScreen(dpy);
  def_colormap = DefaultColormap(dpy,scr);

  if(XAllocColorCells(dpy, def_colormap, True, NULL, 0, cells, 5)) {
    color.pixel = cells[0];
    color.red = 250;
    color.green = 125;
    color.blue = 0;
    color.flags = DoRed | DoGreen | DoBlue;
    XStoreColor(dpy, def_colormap, &color);
    printf("\n Try to allocate, the color %d as (%d,%d,%d)",
	   color.pixel, color.red, color.green, color.blue); 

    XQueryColor(dpy, def_colormap, &color);
    printf("\n After  allocate, the color %d is (%d,%d,%d)",
	   color.pixel, color.red, color.green, color.blue); 
  }
  else
    printf("\n Error: couldn't allocate color cells");


Running output:

     Try to allocate, the color 7 as (250,125,0)
     After  allocate, the color 7 is (0,0,0)

After XStoreColor(), XQueryColor() just returned the original value. 
No failure/error displayed but the contents of colormap are obvious
unchanged. (I also tried to draw a line using the colors but it 
turned out to be the unmodified colors.)

So what is my problem? How to modify the contents of the colormap?

Any help/information will be appreciated. Please send mail to
"yang@cs.umass.edu".

--------------------------
William 
email: "yang@cs.umass.edu"
--------------------------


By the way, the following is the environment I am using (output of
"xdpyinfo"). It shows the default visual is PseudoColor.

version number:    11.0
vendor string:    DECWINDOWS DigitalEquipmentCorporation UWS4.2
vendor release number:    1
maximum request size:  16384 longwords (65536 bytes)
motion buffer size:  100
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    2
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
keycode range:    minimum 86, maximum 251
number of extensions:    8
    Adobe-DPS-Extension
    DPSExtension
    SHAPE
    MIT-SHM
    Multi-Buffering
    XInputExtension
    MIT-SUNDRY-NONSTANDARD
    DEC-XTRAP
default screen number:    0
number of screens:    1

screen #0:
  dimensions:    1024x864 pixels (333x281 millimeters)
  resolution:    78x78 dots per inch
  depths (2):    1, 8
  root window id:    0x29
  depth of root window:    8 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x27
  default number of colormap cells:    256
  preallocated pixels:    black 1, white 0
  options:    backing-store YES, save-unders YES
  current input event mask:    0xd0001d
    KeyPressMask             ButtonPressMask          ButtonReleaseMask        
    EnterWindowMask          SubstructureRedirectMask PropertyChangeMask       
    ColormapChangeMask       
  number of visuals:    5
  default visual id:  0x21
  visual:
    visual id:    0x21
    class:    PseudoColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x22
    class:    GrayScale
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x23
    class:    StaticGray
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x24
    class:    StaticColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x7, 0x38, 0xc0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x25
    class:    TrueColor
    depth:    8 planes
    size of colormap:    8 entries
    red, green, blue masks:    0x7, 0x38, 0xc0
    significant bits in color specification:    8 bits
  number of mono multibuffer types:    5
    visual id, max buffers, depth:    0x21, 0, 8
    visual id, max buffers, depth:    0x22, 0, 8
    visual id, max buffers, depth:    0x23, 0, 8
    visual id, max buffers, depth:    0x24, 0, 8
    visual id, max buffers, depth:    0x25, 0, 8
  number of stereo multibuffer types:    0


Newsgroup: comp.windows.x
Document_id: 67028
From: dshaker@qualix.com (Doug Shaker)
Subject: Re: MacX 1.2 color problem

In article KuL@ux1.cso.uiuc.edu, kerr@ux1.cso.uiuc.edu (Stan Kerr) writes:
>I have a peculiar color problem with MacX, Apple's Macintosh X server.
>I'd like to know if others have seen the same problem. It's happened
>with the current version (1.2), and with version 1.1.7.
>When some types of client windows are displayed, parts of the windows
>are in the wrong color; if the window is moved slightly, forcing the server
>to repaint it, it is repainted in the correct colors. It doesn't happen
>for xterm windows, but has happened for graphic windows and with some
>Motif clients.

I expect what is going on here is that your colormap is full and, when the new application starts up, it cannot add the colors that it needs to the colormap.
It therefore has to pick and choose from the existing colors.  This makes it look
ugly until it's window gets priority.  Then Macx changes the colormap so that
the selected app is getting the exact colors it wanted, but now other applications
are having to make do with it's colormap.

This is a problem with all color X servers (or at least all color Xservers I have
seen) when the demands of the applications exceed the size of the colormap.
My solution is usually to (1) avoid colormap-greedy apps and (2) display
applications where color is just icing on the cake in monochrome mode rather
than in color (if this is an option for the application).

 - Doug Shaker
	voice:	415/572-0200
	fax:	415/572-1300
	email:	dshaker@qualix.com
	mail:	Qualix Group
		1900 S. Norfolk St., #224
		San Mateo, CA 94403

Qualix maintains a mailserver with information files and demo
versions of products.  If you would like more information on
the mailserver, send an email to qfacts@qualix.com (or 
uunet!qualix!qfacts).  The email should take the following
form:
	BEGIN
	send help
	send index
	END
	Name
	Address
	Phone


Newsgroup: comp.windows.x
Document_id: 67029
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Forcing a window manager to accept specific coordinates for a window


	Hi. I'm trying to figure out how to make a window manager
place the window where the create window command tells it,
regardless of what it may think is right. (my application has
reason to know better)

	I don't want to set the override-redirect because I do
want all the embellishments that the window manager gives, I just
want the wm to accept my choice of location.

	I've tried twm, tvtwm and mwm and they are all
uncooperative.

	Thanks,
	-- Ethan



Newsgroup: comp.windows.x
Document_id: 67030
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: Mysterious beeping

In article <C5qtKK.wp@cup.hp.com>, defaria@cup.hp.com (Andy DeFaria) writes:
|> [ Article crossposted from hp.windows ]
|> [ Author was Andy DeFaria ]
|> [ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]
|> 
|> For some reason the following code causes my X application to beep whenever I
|> intercept a keystroke and change it's meaning.  The intent of this code it to
|> allow "date" fields the following special keys:
|> 
|> 	[Tt]:	Insert today's date
|> 	[+=]:	Bump day up by one
|> 	[-_]:	Bump day down by one
|> 
|> I hardcoded some dates for this example.  Perhaps I shouldn't be using an
|> XmText field for this.
|> 
|> ////////////////////////////////////////////////////////////////////////////// 
|> // 
|> // For some reason the following code beeps whenever any of the special keys
|> // of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
|> // keys having the special meaning implied by the code.  I would like to get
|> // rid of the beeping but, as far as I can tell, I'm not doing the beep and 
|> // am at a lose as to understanding who and why the beeping is occuring.
|> // 
|> ////////////////////////////////////////////////////////////////////////////// 

code deleted...

From the XmTextField man page (during discussion of resources):

   XmNverifyBell

      Specifies whether a bell will sound when an action is reversed
      during a verification callback.

You are setting doit to false in the callback, and Text[Field] is beeping
as it should.  To turn off this behavior, set this boolean resource to false.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
Document_id: 67031
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Monthly Question about XCopyArea() and Expose Events


|> (2nd posting of the question that just doesn't seem to get answered)
|> 
|> Suppose you have an idle app with a realized and mapped Window that contains
|> Xlib graphics.  A button widget, when pressed, will cause a new item
|> to be drawn in the Window.  This action clearly should not call XCopyArea() 
|> (or equiv) directly; instead, it should register the existence of the new
|> item in a memory structure and let the same expose event handler that handles
|> "regular" expose events (e.g. window manager-driven exposures) take care
|> of rendering the new image.  Using an expose event handler is a "proper" way
|> to do this because at the time the handler is called, the Xlib Window is
|> guaranteed to be mapped.
|> 
|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

If I understand your problem correctly, you want to have a way to send
exposures to your manager widget when your app-specific code draws xlib
graphics on the window.

It sounds like you might want to send an exposure using
XSendEvent and specifying a region. If you know the region you need to
send the exposure, generally you have the bounding rectangle of the objects,
you can use XCreateRegion to create a region, XUnionRectWithRegion to add the
new object polygons to the region, and then either use the region
to clip your GC for the redraw or use XRectInRegion to test which of your
other objects need to be redrawn. Keeping in mind that the stacking order
of overlapping objects affects how they look.

Hope it helps

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 67032
From: yue1016@cs.uh.edu (Yue Huang)
Subject: Ask the ftp address of "Kerberos Version 5 draft RFC"



Newsgroup: comp.windows.x
Document_id: 67033
From: masc0442@ucsnews.sdsu.edu (Todd Greene)
Subject: How do I find my AppContext?



Is there an Xt call to give me my application context?
I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
whose first argument is the app_context.  What call can I use
to give me this value?


Thanks,
    Todd Greene
    masc0442@ucssun1.sdsu.edu

~


Newsgroup: comp.windows.x
Document_id: 67034
From: nancie@neko.CSS.GOV (Nancie P. Marin)
Subject: Re: XCopyPlane Question

In article <BUZZ.93Apr19101538@lion.bear.com> buzz@bear.com (Buzz Moschetti) write
>In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
>>   don't show up: do you wait for an expose event before drawing your
>>   rectangle?
>
>Suppose you have an idle app with a realized and mapped Window that contains
>Xlib graphics.  A button widget, when pressed, will cause a new item
>to be drawn in the Window.  This action clearly should not call XCopyArea() 
>(or equiv) directly; instead, it should register the existence of the new
>item in a memory structure and let the expose event handler take care
>of rendering the image because at that time it is guaranteed that the
>Window is mapped.
>
>The problem, of course, is that no expose event is generated if the window
>is visible and mapped.  Do you know the best way to "tickle" a window so
>that the expose event handler will be invoked to draw this new item?
>

What does this have to do with my original question???  I previously
stated that I did an XCopyArea of the depth-8 pixmap to the screen
just to make sure that my image had data, and it did.  This is NOT
a problem with expose events, it has to do with XCopyPlane not
working!!!

Does anyone have a code fragment they could send demonstrating that
XCopyPlane works???  This would be very helpful!

Thanks!

 ----------------------------------------------------------------
 Nancie P. Marin      NET:  nancie@neko.css.gov
 ENSCO Inc.           MAIL: 445 Pineda Ct.  Melbourne, Fl.  32940
 (407)254-4122        FAX:  (407)254-3293
 ----------------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67035
From: tom@DONT_USE.NETcom.COM (Thomas Tulinsky)
Subject: Wcl for Solaris 2?

Is there a version of Wcl that has been ported to Solaris 2, including
ANSI C? I had numerous problems trying to compile Wcl under Solaris, 
and the functions do not have prototypes.  

I have Wcl 2.01 from the Sun User Group's 1992 CDs.

Please email answers as I am not on this list.


----------------------------------------------------------------------------
Tom Tulinsky		Capital Management Sciences	    West Los Angeles
			        310 479 9715
MANUALLY ADDRESS answers to:
	zuma!tom@netcomsv.netcom.com


Newsgroup: comp.windows.x
Document_id: 67036
From: adrian@ora.COM (Adrian Nye)
Subject: Re:  xwininfo



> I want to do the equivalent of an "xwininfo -name" via a call or set of calls
> in Xlib.  I need to map a windows name to its id.
> It's probably easy, but I've only been programming in X for a little while.

Do you have the X source code?  Simply look in mit/clients/xwininfo/xwininfo.c and you
will find out exactly how to do it.  :-)

Adrian Nye
O'Reilly and Associates.

Newsgroup: comp.windows.x
Document_id: 67037
From: vgalvez@itesocci.gdl.ITeso.MX (Virginia Galvez)
Subject: (none)

I am working on a problem of scheduling classroom, and I will like to know if
you have some software, papers or articles about it. If you have something
relate it,  please let me know.

		thanks

		Lorenza Illanes

Newsgroup: comp.windows.x
Document_id: 67038
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

> 
> In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
> >   Actually, I must also ask the FAQ's #1 most popular reason why graphics
> >   don't show up: do you wait for an expose event before drawing your
> >   rectangle?
> 
> Suppose you have an idle app with a realized and mapped Window that contains
> Xlib graphics.  A button widget, when pressed, will cause a new item
> to be drawn in the Window.  This action clearly should not call XCopyArea() 
> (or equiv) directly; instead, it should register the existence of the new
> item in a memory structure and let the expose event handler take care
> of rendering the image because at that time it is guaranteed that the
> Window is mapped.
> 
> The problem, of course, is that no expose event is generated if the window
> is visible and mapped.  Do you know the best way to "tickle" a window so
> that the expose event handler will be invoked to draw this new item?

I specifically made the above comment assuming that perhaps the code fragment
came from a simple "open-draw-quit" client.  

As per your question: why not have the button handler add the object, and
then call the "window_redraw()" (or whatever) directly?  Although, depending
on how the overall application is structured, there may be no problem with
rendering the object directly in response to the button press.

	Ken

--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
Document_id: 67039
From: ramakris@csgrad.cs.vt.edu (S.Ramakrishnan)
Subject: Mwm title-drag crashes X server (SIGPIPE)


   Environment:
      mach/arch : sparc/sun4  (IPX)
      OS	: SunOS 4.1.3
      X11	: X11R5 (patchlevel 22)
      Motif	: 1.2.2

I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
to X server lost):

   1. xinit -- Xsun
   2. start mwm
   3. start a client with a 100dpi/75dpi font.
   4. move the window by dragging the title bar.

The server dumps core due to SIGPIPE. One of the two messages is printed:

  "Connection to X server lost"

or
  
  "Connection broken (errno=32)"

(I believe the first is reported by a client and the second by the server itself).

Next, I ran xdm in debug level = 5. After the same set of actions, xdm reports:

  select returns -1
  Server for :0 terminated unexpectedly: status 2560


Note:
 * The problem doesn't occur with other window managers (twm or olwm). 
 * I have not set LD_LIBRARY_PATH. 
 * I am not running font server. 
 * If I start the client with fixed width font, I do not see this problem.
 * My font path:
     /usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/Speedo/,/usr/lib/X11/fonts/75dpi/,/usr/lib/X11/fonts/100dpi

   (I did mkfontdir in /usr/lib/X11/fonts/100dpi, /usr/lib/X11/fonts/75dpi,
   /usr/lib/X11/fonts/PEX, /usr/lib/X11/fonts/Speedo,
   and in /usr/lib/X11/fonts/misc).

 * This problem seems to occur only on IPX machines. I do not see this 
   problem on IPC workstations.

Questions:
 * What the hell is goin on ? :-)
 * What does "status 2560" mean (of the server).

I'd greatly appreciate any hints as to the cause of the problem.

---
S Ramakrishnan, CS Dept, McBryde Hall, VaTech

Newsgroup: comp.windows.x
Document_id: 67040
From: dale@wente.llnl.gov (Dale M. Slone)
Subject: xlock

I found an oddity with our SGI Indigo (MIPS R3000 chip).
When xlock +nolock is running, and I am working remotely
or in batch (at) mode, the runtime of my programs (as timed
by using clock() in the code itself) is ~25% slower than if
xlock is NOT running.  No other processes seem to affect my
runtimes, yet this is very consistent!

Any explanations, real or imagined :)

thanx
dale@frostedflakes.llnl.gov

Newsgroup: comp.windows.x
Document_id: 67041
From: cjhs@minster.york.ac.uk
Subject: Xt intrinsics: slow popups

Help: I am running some sample problems from O'Reilly volume 4,
Xt Intrisics Programming Manual, chapter 3. popup
dialog boxes and so on.

In example 3.5, page 76 : "Creating a pop-up dialog box"

The application creates window with a button "Quit" and "Press me".
The button "Press me" pops up a dialog box. The strange feature of
this program is that it always pops up the dialog box much faster the
first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
it is *much* slower.

Has anyone any experience with these sample programs, or why I get
this behaviour - fast response time for the first time but slow response
time from 2nd time onwards ?
Anyone can give me some ideas on how to program popups so that each time
they popup in reasonable fast response time ?

Thankyou - Shirley

Newsgroup: comp.windows.x
Document_id: 67042
From: janzen@lichen.mpr.ca (Martin Janzen)
Subject: Re: how to put RPC in HP X/motif environment?

In article <C5r03J.Gu3@news2.cis.umn.edu>, ianhogg@milli.cs.umn.edu (Ian J. Hogg) writes:
>In article <1993Apr19.200740.17615@sol.ctr.columbia.edu> nchan@nova.ctr.columbia.edu (Nui Chan) writes:
>>has anybody implements an RPC server in the HP Xwindows? In SUN Xview, there
>>is a notify_enable_rpc_svc() call that automatically executes the rpc processes
>>when it detects an incoming request. I wonder if there is a similar function in
>>HP X/motif that perform the same function.
>
>I've been using the xrpc package for about a year now.  I believe I got it from
>export.  

Glad to hear that it's working for you!

I couldn't find it on "export".  However, Simon Leinen
<simon@liasun6.epfl.ch> has added an Imakefile and an Athena
version, and made it available for FTP in the file
liasun3.epfl.ch:/pub/X/contrib/xrpc.tar.z.  (Note the ".z"
suffix; you'll need GNU gzip -- also on liasun3 in /pub/gnu --
to uncompress it.)  

If this doesn't work, send me a note and I'd be happy to mail you
a copy; but you probably won't get it until the start of May --
I'm on holidays as of tomorrow! :-)

-- 
Martin Janzen  janzen@mprgate.mpr.ca (134.87.131.13)
MPR Teltech Ltd.  8999 Nelson Way  Burnaby, BC, CANADA  V5A 4B5


P.S. Are there any Dublin X folks that want to go for a pint of
Guinness at, say, Mulligan's...?

Newsgroup: comp.windows.x
Document_id: 67043
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Drawing Lines (inverse/xor)

#
#I'm trying to write some code that lets me draw lines and do rubber-band
#boxes in Motif/X.  I'm running on an 8-bit display for which I've created a
#colormap and am using almost all of the colors.  I want to draw the lines
#in a drawing area widget -- a widget in which I'm displaying a bitmap using
#XPutImage().  If doesn't matter if the lines I draw interactively stay
#around when the window is refreshed.
#
#Currently, to draw interactively, I begin with:
#
#   /* drawIndex is an colortable index I reserve for the Foreground */
#   /* my_default_bg_color is the color index for the background of my image */
#   palette_colors[drawIndex].red =   palette_colors[my_default_bg_color].red;
#   palette_colors[drawIndex].green = palette_colors[my_default_bg_color].green;
#   palette_colors[drawIndex].blue =  palette_colors[my_default_bg_color].blue;
#   XStoreColors( myDisplay, my_cmap, &palette_colors[DrawIndex], 1);
#   XFlush( myDisplay);
#
#   XSetFunction( myDisplay, gc, GXxor);
#   XSetForeground( myDisplay, gc, drawIndex);
#
#Then to draw I do:
#
#   XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
#   XFlush( myDisplay);
#
#And when I'm all done, to return things to normal I do:
#
#   XSetFunction( myDisplay, gc, GXcopy);
#
#
#What I'd like to happen is for the lines I draw to be the inverse of
#whatever I'm drawing over.  Instead what happens is I get white lines.  If
#the lines are over a white background - nothing shows up.  If the lines are
#over a black area - nothing shows up!  It's very strange.  But the GXxor
#function seems right - since if I do a rubber-banding box, it erases and
#redraws itself correctly (ie. not disturbing the underlying image).
#
#Any suggestions what I'm doing wrong?
#

I believe for this to work on a color display you must set the foreground of
the GC to be (foreground^background).

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67044
From: baileyc@ucsu.Colorado.EDU (Christopher R. Bailey)
Subject: How do I cause a timeout?


I have a problem where an Athena strip chart widget is not calling it's
get value function.  I am pretty sure this is happening because I am
not using XtAppMainLoop, but am dealing with events via sockets.  (ya ya).

Anyway, I want to cause a timeout so that the strip chart widget(s) will
call their get value callback.  Or if someone knows another FAST way around
this (or any way for that matter) let me know.  I cannot (or I don't think)
call the XtNgetValue callback myself because I don't have the value for
the third parameter of the get value proc (XtPointer call_data).  

In other words, I want to force a strip chart widget to update itself.

Any ideas anyone?  

-- 
Christopher R. Bailey            |Internet: baileyc@dendrite.cs.colorado.edu
University of Colorado at Boulder|CompuServe: 70403,1522
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
Ride Fast, Take Chances!

Newsgroup: comp.windows.x
Document_id: 67045
From: cerna@ntep.tmg.nec.co.JP (Alexander Cerna (SV))
Subject: transparent widgets--how?

I need to write an application which does annotation notes
on existing documents.  The annotation could be done several
times by different people.  The idea is something like having
several acetate transparencies stacked on top of each other
so that the user can see through all of them.  I've seen
something like this being done by the oclock client.
Could someone please tell me how to do it in Xt?
Thank you very much.

Newsgroup: comp.windows.x
Document_id: 67046
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: Re: Multi-screen apps and window managers

: ========================================================================
: Jo Pelkey                                   Phone: (509)375-6947
: Battelle Pacific Northwest Labs             Fax:   (509)375-3641
: Mail Stop K7-22                             Email: je_pelkey@pnl.gov
: P.O. Box 999
: Richland, WA  99352
: ========================================================================

Hi Jo,

I'm also interested in your questions, so if you get any
answers via email and not via repost please let me know.

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 67047
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: How do I find by AppContext

# 
# 
# Is there an Xt call to give me my application context?
# I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
# whose first argument is the app_context.  What call can I use
# to give me this value?
# 

Use XtDisplayToApplicationContext() to retreive the application context.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long
Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67048
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: X Device Driver for Bird

Has anyone written a device driver to use the Ascension bird with XWindows ? 


      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_


***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 67049
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: Re: Forcing a window manager to accept specific coordinates for a window


In article <C5r25y.HFz@cs.columbia.edu> Ethan Solomita writes:
> 
> 	Hi. I'm trying to figure out how to make a window manager
> place the window where the create window command tells it,
> regardless of what it may think is right. (my application has
> reason to know better)
> 
> 	I don't want to set the override-redirect because I do
> want all the embellishments that the window manager gives, I just
> want the wm to accept my choice of location.

	window = XCreateWindow(...);
	XSetTransientForHint(display, window, window);
	XMapWindow(...);

This is probably cheating, and some window managers might STILL refuse to 
give it a border and all that other stuff, but it usually works.

Newsgroup: comp.windows.x
Document_id: 67050
From: root@netdev.comsys.com (Operator)
Subject: DevGuide with Motif - Solaris 2.2 to ease Motif burden ..


 We've developed a number of applications using DevGuide and found it to 
be a very useful tool. I've been impressed with the level of integration it
affords using the connection editor. I love the general ease of use.
 
 I talked with Tali Aben at Sun today about DevGuide + Motif. She was very
helpful. We provided some input as to what we'd like to see in the next
version of DevGuide. Tali was very enthusiatic about our comments. I mentioned
I was going to post this email message and she offered to receive additional
comments from the net on what DevGuide should evolve into. 
 
 Send your comments/wish-list, raving, et. al. about DevGuide to:

  Tali.Aben@Sun.COM


 Pretty cool example of a company that cares what we want.... More of this
and computers may have a future.

 Frankly, I like the idea that it will offer some migration capability
to DOE/DOMF through an integrated ToolTalk capability, pointed out in March's 
SunExpert magazine. 

 Technology works, we can crankout the interfaces with DevGuide. Price is 
outstanding. 

Newsgroup: comp.windows.x
Document_id: 67051
From: alf@st.nepean.uws.edu.au (Andrew Leahy)
Subject: Running dxterm's onto Apollo from DEC 5000/240


Help!

I'm trying to run dxterm's (DECs' xterm) on a DECstation 5000/240
(Ultrix 4.3, X11R4, Motif 1.1.3) with the DISPLAY variable set to an
Apollo DN2500 (Domain/OS 10.3, X11R4, Motif ?.?).

I get these errors appearing on the DECstation:

> dxterm
X Toolkit Warning: Cannot convert string "<Key>apCharDel        " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apCopy   " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apCut    " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apPaste  " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apUpBox  " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apDownBox        " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apRightBar       " to type VirtualBinding
X Toolkit Warning: Cannot convert string "<Key>apLeftBar        " to type VirtualBinding
Segmentation fault
>

Any ideas? Is it a Motif problem...are the DEC and Apollo versions of Motif
incompatible? Or something to do with XKeysymDB?

(xterms run fine on DEC displaying on Apollo..arggh)

I need to run dxterm because the package we are using on the DEC's, Oracle Case,
uses dxterm by default, and we have a lab of Apollo workstations we would like
to run Oracle from.

Andrew "Alf" Leahy, alf@st.nepean.uws.edu.au
--
__________________________________________________________________________
Andrew "Alf" Leahy                  phone: (047) 360771 (W) irc: pepsi-alf
Uni. Western Sydney, Nepean.        Remote-email: alf@st.nepean.uws.edu.au
Sydney, Australia.                  Local-email: alf

Newsgroup: comp.windows.x
Document_id: 67052
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: XAllocColor fails to return nearest match

[posted for a friend]

Okay, I looked through the FAQs and didn't see this, but I know its
come up before...

XAllocColor is supposed to do the following in order:
    Try to find an exact match read-only color cell. (within hardware limits)
    Try to allocate a read-only colorcell and set it to match.
	and when all else fails, 
    Return the colorcell with the best match from the read-only colors 
    already allocated in the colormap.

This sounds good in theory.  It doesn't seem to work this way
though.  If there is no exact match already in the colormap, and 
no unallocated cells, then XAllocColor fails, even when it has 
already allocated several other cells already, and there are dozens 
of read-only cells already in the colormap.

Is this a bug?  A feature?  A misunderstanding on my part?

Any help appreciated,

Noel (ngorelic@speclab.cr.usgs.gov)

Newsgroup: comp.windows.x
Document_id: 67053
From: snail@lsl.co.uk
Subject: Re: Xlib for MS/WINDOWS not an XSERVER!!!

In article <1993Apr7.044749.11770@topgun>, smikes@topgun (Steven Mikes) writes:
> Another company, Congruent Corporation of New York City, has also ported Xlib
> Xt and Motif 1.1 over to MS Windows NT, which provides full client development
> for X applications in an NT environment.

Could someone please send me the postal and email address of
Congruent Corporation (and any competitors they may have).

Thank you.
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
Document_id: 67054
From: buzz@bear.com (Buzz Moschetti)
Subject: Re: XCopyPlane Question

In article <WHALEY.93Apr19171228@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
>   As per your question: why not have the button handler add the object, and
>   then call the "window_redraw()" (or whatever) directly?  Although, depending

This design will work but I don't think it can take easily take advantage
of expose event redraw optimization; that is, the whole window will be
redrawn, not just the area with the new item.

P.S.  I'm replying here because my/your mailer didn't agree with the
      return address whaley@sigma.kpc.com.

Newsgroup: comp.windows.x
Document_id: 67055
From: gvanvugh@cs.uct.ac.za (Gerhard van Vught)
Subject: Problem with libararies (?)

I have been trying to compile some source code for a mpeg animation viewer for
X Windows. I got the code from a ftp site. I have modified the Makefile as
they instructed, no errors there. What happens is that I get the following
message when everything is going to be linked:


	cc  util.o video.o parseblock.o motionvector.o decoders.o  fs2.o fs2fast.o fs4.o hybrid.o hybriderr.o 2x2.o  gdith.o gray.o mono.o main.o jrevdct.o 24bit.o util32.o ordered.o  ordered2.o mb_ordered.o /lib/libX11.so /lib/libXext.so -lm -o mpeg_play
Undefined			first referenced
 symbol  			    in file
getnetpath                          /lib/libX11.so
t_alloc                             /lib/libX11.so
t_unbind                            /lib/libX11.so
t_open                              /lib/libX11.so
t_rcvdis                            /lib/libX11.so
netdir_free                         /lib/libX11.so
t_error                             /lib/libX11.so
netdir_getbyname                    /lib/libX11.so
getnetconfigent                     /lib/libX11.so
t_look                              /lib/libX11.so
t_errno                             /lib/libX11.so
t_close                             /lib/libX11.so
netdir_getbyaddr                    /lib/libX11.so
t_listen                            /lib/libX11.so
t_rcv                               /lib/libX11.so
setnetpath                          /lib/libX11.so
t_bind                              /lib/libX11.so
t_connect                           /lib/libX11.so
t_accept                            /lib/libX11.so
nc_perror                           /lib/libX11.so
inet_addr                           /lib/libX11.so
ld: mpeg_play: fatal error: Symbol referencing errors. No output written to mpeg_play
*** Error code 1 (bu21)

make: fatal error.

Does anyone know where these missing functions are located? If you do can you
help me with it?

I posted before to one of the other Unix groups, I tried their suggestions but
always get this error.

If you have to know: I am using Unix system V. The machines here are 486's. The
terminals I want to use are separate and just called X-terminals and they seem
dedicated to that. I'm not sure as to what they really are, since it is one of
my first times out with this X-windows gidget! That is, first time programming
for it, so to speak. I use them alot just for the graphics things.

If you can help, mail me soon.

Gerard.

Newsgroup: comp.windows.x
Document_id: 67056
From: leon@dimatrix.DK (Leon Thrane)
Subject: X Intrinsic mailing list

As we don't get a newsfeed I was wondering whether there was such a
thing as a Xt mailing list (other than xpert@expo.lcs.mit.edu).  I
would appreciate any info on this, (or X related mailing lists.)

        Thanks in advance,

        Leon

+-------------------------------+---------------------------------+
| Leon Thrane                   | Telephone:    +45 - 45 93 51 00 |
| DimatriX ApS                  | FAX:          +45 - 45 93 51 11 |
| Lyngby Hovedgade 15D          | E-mail:       leon@dimatrix.dk  |
| DK-2800 Lyngby, Denmark       | or   ...!uunet!dimatrix.dk!leon |
+-------------------------------+---------------------------------+

Newsgroup: comp.windows.x
Document_id: 67057
From: bryan@alex.com (Bryan Boreham)
Subject: Re: Xt intrinsics: slow popups

In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> The application creates window with a button "Quit" and "Press me".
> The button "Press me" pops up a dialog box. The strange feature of
> this program is that it always pops up the dialog box much faster the
> first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
> it is *much* slower.

The shell is waiting for the window-manager to respond to its
positioning request.  The window-manager is not responding because
it thinks the window is already in the right place.

Exactly *why* the two components get into this sulk is unclear to
me; all information greatly received.

Bryan.

Newsgroup: comp.windows.x
Document_id: 67058
From: btaylor@mcl.bdm.com (Brent Taylor)
Subject: XDM & DECnet ?

Does XDM work with DECnet? I have an Ultrix machine running both TCP/IP
and DECnet. I have a number of X-terminals hanging off the Ultrix host also
running TCP/IP and DECnet. Presently I am using XDM for the login procedure
on the X-terminals using TCP/IP. Since XDM is basically just an X-windows
client, shouldn't I be able to run XDM on the DECnet protocol tower as well?

My first inclination is that XDM is not your typical X client. It is making
TCP/IP specific socket calls. In this case the answer would be no; you can
not run XDM over DECnet. Is this right or not? Any feedback is appreciated.
Thanks.

Newsgroup: comp.windows.x
Document_id: 67059
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: compiling on sun4_411

In article qfe00WB2QzZ7EZ@andrew.cmu.edu, Wilson Swee <ws8n+@andrew.cmu.edu> () writes:
|>    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
|>well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
|>undefined ld errors:
|>_sin
|>_cos
|>_pow
|>_floor
|>_get_wmShellWidgetClass
|>_get_applicationShellWidgetClass
|>
|>The following libraries that I linked it to are:
|>-lXaw -lXmu -lXt -lXext -lX11
|>
|>The makefile is generated off an imake template.
|>Can anyone give me pointers as to what I'm missing out to compile on
|>a sun4_411?

Well, the first 2 are easy.  You need the math library.  Try adding -lm after
-lX11.  Don't know if that's the whole problem but it's a start.

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
Document_id: 67061
From: N.R.Ellis@newcastle.ac.uk (Nigel R. Ellis)
Subject: Keyboard map for UK type 5 keyboard under X11/R5?

Hi,

does anyone have a keyboard map for a Sun UK type 5 keyboard for use under
X11/R5 ?

Thanks,

Nigel.

--
============================================================================
| Nigel R Ellis, Artificial Intelligence Group, | N.R.Ellis@durham.ac.uk   |
| Computer Science, University of Durham,       | Phne: +44.91.374.2549    |
| Durham. England DH1 3LE                       | Fax : +44.91.374.3741    |
============================================================================


Newsgroup: comp.windows.x
Document_id: 67062
From: aruit@idca.tds.philips.nl (Anton de Ruiter)
Subject: ??? TOP-30 MOTIF Applications ???

Hello everybody,

I am searching for (business) information of Motif applications, to create a
TOP-30 of most used WordProcessors, Spreadsheets, Drawing programs, Schedulers
and Fax programs, etc..

Please mail me all your information or references.  I will summaries the
results on this media.


Thank you in advance,

Anton de Ruiter.

+----------------------------------------------------------------------------+
|  _                       __            |Digital Equipment Corporation      |
| /_| __ /_ _  __  __/_   /__)   ./_ _  _|WorkGroup Products (WGP)           |
|/  |/ /(_ (_)/ / (_/(-' / \ (_//(_ (-'/ |OBjectWorks (OBW)                  |
|                                        |Ing. Anton de Ruiter MBA           |
|                                        |Software Product Manager           |
|                     __                 |Post Office Box 245                |
|       |   /_  _ /_ / _'_ _     _       |7300 AE  Apeldoorn, The Netherlands|
|       |/|/(_)/ /\ (__// (_)(_//_)      |Oude Apeldoornseweg 41-45          |
|                              /         |7333 NR  Apeldoorn, The Netherlands|
|          __                            |-----------------------------------|
|         /__)_ _  __/   _  /_  _        |Mail    : HLDE01::RUITER_A         |
|        /   / (_)(_/(_/(_ (_ _\         |DTN     : 829-4359                 |
|                                        |Location: APD/F1-A22               |
|                                        |-----------------------------------|
|     __  _                              |Internet: aruit@idca.tds.philips.nl|
|    /  )/_) ._  _  /_ |   /_  _ /_  _   |UUCP    : ..!mcsun!philapd!aruit   |
|   (__//__)/(-'(_ (_  |/|/(_)/ /\ _\    |Phone   : 31 55   434359 (Business)|
|         _/                             |Phone   : 31 5486 18199  (Private) |
|                                        |Fax     : 31 55   432199           |
+----------------------------------------------------------------------------+

Newsgroup: comp.windows.x
Document_id: 67063
From: wpwood@darkwing.austin.ibm.com
Subject: GCC and Building the HP Widget Set on Linux


I am currently attempting to get a copy of the HP Widget set compiled
under Linux (SLS Release with kernel 99.6) and am running into some
problems.  Actually, it seems that this is more of a GCC question,
because I got it to compile without trouble using cc on an RS/6000.
	Basically, there are a number of functions with prototypes
set up in, let's say, CompositeP.h, for instance, the composite
widget's insert_child procedure is set up with the type :

	typedef void (*XtWidgetProc) (Widget)

but in several places in the HP source code, they reference the
insert_child procedure and pass it multiple arguments instead of just
one, as the prototype suggests.  For example:

	(*superclass->composite_class.insert_child)(w, args, p_num_args)

Now, GCC chokes on this, giving an error message that too many arguments
are passed to the function.  So, does anyone have any suggestions as to
how to turn off this checking in GCC, or how I can go about changing the
code to accomodate this call without changing /usr/include/X11/CompositeP.h,
or has anyone successfully built the HP widget set and have any suggestions.
	Many thanks in advance for any help.

--
<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Bill Woodward        | wpwood@austin.ibm.com   <-- Try this first
AIX Software Support | billw@aixwiz.austin.ibm.com  
Graphics Group       | 512-838-2834
I am the terror that flaps in the night.

Newsgroup: comp.windows.x
Document_id: 67064
From: weisberg@ee.rochester.edu (Jeff Weisberg)
Subject: Problem: R5 server hangs on Sun3


I recently compiled the X11R5pl22 sources using gcc-2.3.3 on
a Sun3/80. Everything seems to work fine. Usually. But at
seemingly random times the server will just hang. I will
click the mouse somewhere (never happens while my back is turned),
and without warning, it will freeze there, requiring the server
to be killed. Sometimes it will run fine for weeks, sometimes
only for minutes.

(Os: 4.1.1; frame buffer: bw2).

Has anyone seen this before, any ideas? (anything at all?)

thanks,
	--jeff

---
Jeff Weisberg  |  weisberg@ee.rochester.edu   |    Real Cherries,
               |  ur-valhalla!weisberg        |        Watch for pits!

Newsgroup: comp.windows.x
Document_id: 67065
From: pannon@bcsfse.ca.boeing.com (Joe Pannon)
Subject: Re: Motif vs. [Athena, etc.]

In article <C5K6ny.AzJ@kirk.bu.oz.au>, bambi@kirk.bu.oz.au (David J. Hughes) writes:

|> Ports of Motif to both 386BSD and Linux are available for a fee of about
|> $100.  This is cost recovery for the person who bought the rights to
|> redistribute.  The activity in both the BSD and Linux news groups
|> pertaining to Motif has been high.

???
I've heard about that Italian guy distributing Motif binaries for 386BSD,
but I haven't heard of anybody doing the same thing for Linux.  ... and
I do follow the Linux news group pretty closely.  So, have I missed something?  I'd LOVE to get hold of Motif libs for Linux for $100!

Regards,
Joe Pannon

Newsgroup: comp.windows.x
Document_id: 67066
From: dnh@mfltd.co.uk (Des Herriott)
Subject: XDM/xsession woes


I've just managed to get xdm running from an NCR 3000 (an SVR4 486 box
running XFree86 1.2) to my NCD XDisplay.  It's pretty much working, but
I'm encountering a weird error.  I'm attempting to start an xterm from
my .xsession file, but nothing happens.  Redirecting stderr to a file
using 'exec 2>$HOME/.xerrors' in .xsession reveals the error message:

  "xterm: Error 14, errno 1: Not owner"

Now, if I start xterm from the window manager, or from the command line,
it works fine.  And starting other clients, like the window manager (mwm),
and a clock, from my .xsession also works.

Anyone encountered this?  Suggestions?

aTdHvAaNnKcSe
-- 
Des Herriott,           /   As a wise man once said,
Micro Focus, Newbury.  /
+44 (0635) 565354     /  "It takes a lot of brains to be smart, 
dnh@mfltd.co.uk      /    but it takes some neck to be a giraffe."


Newsgroup: comp.windows.x
Document_id: 67067
From: boote@eureka.scd.ucar.edu (Jeff W. Boote)
Subject: Re: Mwm title-drag crashes X server (SIGPIPE)

In article <4378@creatures.cs.vt.edu>, ramakris@csgrad.cs.vt.edu (S.Ramakrishnan) writes:
> 
>    Environment:
>       mach/arch : sparc/sun4  (IPX)
>       OS	: SunOS 4.1.3
>       X11	: X11R5 (patchlevel 22)
>       Motif	: 1.2.2
> 
> I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
> of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
> to X server lost):

I had this problem as well - It had to do with the CG6 graphics card that
comes with the IPX.  What fixed the problem for me was to apply the "sunGX.uu"
that was part of Patch #7.  Patch #1 also used this file so perhaps you
didn't apply the one that came with Patch #7.

jeff
-
Jeff W. Boote  <boote@ncar.ucar.edu>      *********************************
Scientific Computing Division             * There is nothing good or bad  *
National Center for Atmospheric Research  * but thinking makes it so.     *
Boulder                                   *                   Hamlet      *
                                          *********************************

Newsgroup: comp.windows.x
Document_id: 67068
From: ianhogg@milli.cs.umn.edu (Ian J. Hogg)
Subject: Re: How do I find my AppContext?

In article <1qvatv$9ic@pandora.sdsu.edu> masc0442@ucsnews.sdsu.edu (Todd Greene) writes:
>
>
>Is there an Xt call to give me my application context?
>I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
>whose first argument is the app_context.  What call can I use
>to give me this value?
>

    You can get the ApplicationContext associated with a widget by calling
    XtWidgetToApplicationContext.

--
===============================================================================
Ian Hogg						ianhogg@cs.umn.edu
                                                        (612) 424-6332

Newsgroup: comp.windows.x
Document_id: 67069
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: Mysterious beeping

In article <C5qtKK.wp@cup.hp.com>, defaria@cup.hp.com (Andy DeFaria) writes:
|> [ Article crossposted from hp.windows ]
|> [ Author was Andy DeFaria ]
|> [ Posted on Mon, 19 Apr 1993 18:08:38 GMT ]
|> 
|> For some reason the following code causes my X application to beep whenever I
|> intercept a keystroke and change it's meaning.  The intent of this code it to
|> allow "date" fields the following special keys:
|> 
|> 	[Tt]:	Insert today's date
|> 	[+=]:	Bump day up by one
|> 	[-_]:	Bump day down by one
|> 
|> I hardcoded some dates for this example.  Perhaps I shouldn't be using an
|> XmText field for this.
|> 
|> ////////////////////////////////////////////////////////////////////////////// 
|> // 
|> // For some reason the following code beeps whenever any of the special keys
|> // of [Tt+=-_] are hit.  Why?  The idea of this code is to interpret these
|> // keys having the special meaning implied by the code.  I would like to get
|> // rid of the beeping but, as far as I can tell, I'm not doing the beep and 
|> // am at a lose as to understanding who and why the beeping is occuring.
|> // 
|> ////////////////////////////////////////////////////////////////////////////// 


code deleted...

>From the XmTextField man page (during discussion of resources):

   XmNverifyBell

      Specifies whether a bell will sound when an action is reversed
      during a verification callback.

You are setting doit to false in the callback, and Text[Field] is beeping
as it should.  To turn off this behavior, set this boolean resource to false.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
Document_id: 67070
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: How 2 Get Fontname from Fonstruct ???


Anyone know how an application can retrieve the name of the font from
an application given an XFontStruct *? 
Would XGetFontProperty work if I passed XA_FONT_NAME? 
anyone know details of this?  Thanks in advance.
Brian

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 67071
From: scotth@oniboshi.corp.sgi.com (Scott Henry)
Subject: Re: xlock


>>>>> In article <1qvir1$idi@lll-winken.llnl.gov>, dale@wente.llnl.gov (Dale M. Slone) writes:

dale> I found an oddity with our SGI Indigo (MIPS R3000 chip).
dale> When xlock +nolock is running, and I am working remotely
dale> or in batch (at) mode, the runtime of my programs (as timed
dale> by using clock() in the code itself) is ~25% slower than if
dale> xlock is NOT running.  No other processes seem to affect my
dale> runtimes, yet this is very consistent!

Unless you run `xlock -mode blank`, xlock consumes CPU time generating
the nice animated display. The code you are running is competing with
xlock for the CPU. If you run top (via a remote login), you can really
see what is going on.

=-=-=

--
 Scott Henry <scotth@sgi.com> / Help! My disclaimer is missing!
 Networking Services,        / GIGO *really* means: Garbage in, Gospel Out
 Silicon Graphics, Inc      / 

Newsgroup: comp.windows.x
Document_id: 67072
From: jmg@dxcoms.cern.ch (J.M. Gerard)
Subject: Re: Xterm w. ansi color/mouse support

brown@ftms.UUCP (Vidiot) writes:

>In article <1993Apr4.183419.584@vms.huji.ac.il> klony@vms.huji.ac.il writes:
><I've had several requests to post any information I've gathered regarding my
><search for ansi mouse/color xterm source.
><
><My only response was from Larry W. Virden who writes:
><
><> the mit x11 r4 and r5 both provide mouse escape sequences now.  There
><> are several color xterm enhancements on export.lcs.mit.edu:/contrib .
><
><Indeed I found color_xterm.tar.Z in that directory along with lots of other
><FUN stuff for X. Thanks Larry.

>I also found it on uunet in /pub/window-sys/X/contrib, for those that can
>only do anonuucp (like me).  But I noticed that the thing is dated 9/12/90,
>making it over two years old.  Is this really the latest version?

Are we talking about an xterm which would accept the same escape sequences
as that for VT340 (or colour decterm/dxterm)? I thought that was called
colxterm (and my testing of it shows some oddities that might be bugs or
might be my program going wrong).

I'm also unsure of what is meant by "ansi mouse xterm"!

Newsgroup: comp.windows.x
Document_id: 67073
From: kavitsky@hsi.com (Jim Kavitsky)
Subject: comp.windows.x.intrinsics

I am having a problem with the high order bit of a character being 
clipped when entered in an xterm window under motif. I have reprogrammed
the F1 key to transmit a <ff> <be> character sequence by using the
following line in .Xdefaults:

~Ctrl ~Shift ~Alt <Key> F1 : string(0xff) string(0xbe) \n\

I merge in this line with xrdb -merge and then create the new xterm
which has the remapped F1 key. The problem that arises is that the 
application which is recieving input at the time only sees a <7f> <3e>
sequence, which is <ff> <be> with the high order bit of each
character being filtered or ignored.

When I run xev and press the F1 key, I get the correct value showing 
up in the following two key events:

  KeyPress event, serial 14, synthetic NO, window 0x2800001,
  root 0x28, subw 0x0, time 2067815294, (67,80), root:(74,104),
  state 0x0, keycode 16 (keysym 0xffbe, F1), same_screen YES,
  XLookupString gives 0 characters:  ""

  KeyRelease event, serial 16, synthetic NO, window 0x2800001,
  root 0x28, subw 0x0, time 2067815406, (67,80), root:(74,104),
  state 0x0, keycode 16 (keysym 0xffbe, F1), same_screen YES,
  XLookupString gives 0 characters:  ""

Notice that the keysym being transmitted is correct; 0xffbe.
But when I use the F1 key while in vi or in a program I wrote to 
spit back the hex values of keyboard input, I only get <7f> <3e>.

Does anyone know why the high order bit is being filtered and what
I can do to make sure that the entire 8bits make it through to
the final application? Any help is greatly appreciated.

Please *email* any responses.

Jim Kavitsky
kavitsky@hsi.com

Newsgroup: comp.windows.x
Document_id: 67074
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

  Yes, it's possible... in fact, there's some gl widget code in
/usr/lpp/GL somewhere... (it's named Glib.c; my IBM's down right now
though, so I can't find the exact location :)

  WARNING: this code feels quite bogus. It does things like calling
noport() before winopen(), and then extracting an X window id from it
anyway. It worked just fine under aix 3.1; I spent last weekend trying
to port it to 3.2 (gl under 3.2 doesn't seem to like it), and it's
turning into a Hard Job.

  Check out your "info" pages; it has some pretty good documentation on
whan you can and can't do when mixing gl and X, and how to go about
doing so.

  )Rob

Newsgroup: comp.windows.x
Document_id: 67075
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: FAQ for this group

Could some kind soul point me in the right direction for the
FAQ list for this group.

Thanks.

--------------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com


Newsgroup: comp.windows.x
Document_id: 67076
From: klee@synoptics.com (Ken Lee)
Subject: Re: XAllocColor fails to return nearest match

In article 54297@slate.mines.colorado.edu, agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J ) writes:
>[posted for a friend]
>
>Okay, I looked through the FAQs and didn't see this, but I know its
>come up before...
>
>XAllocColor is supposed to do the following in order:
>    Try to find an exact match read-only color cell. (within hardware limits)
>    Try to allocate a read-only colorcell and set it to match.
>	and when all else fails, 
>    Return the colorcell with the best match from the read-only colors 
>    already allocated in the colormap.

Where did you hear this?  If it is printed in a book somewhere,
throw away the book.  According to the MIT specs, only the first
2 are true.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 67077
From: carl@teal.csn.org (Carl Podlogar)
Subject: need font family, weight and slant from instance of a widget

How can I get the font family, weight and slant from an
instance of a widget? Using initFontContext(), getNextFont()
and freeFontContext() I can get the size of the font (and a
bunch of other stuff concerning the font) but nowhere have
I found family, weight and slant. Assume that I do not have
access to the source where family, weight and slant were
orginaly used when creating a fontlist.
Thanks a bunch and have a great day,
Carl
carl@softsolut.com 

Newsgroup: comp.windows.x
Document_id: 67078
From: klee@synoptics.com (Ken Lee)
Subject: Re: transparent widgets--how?

In article AA16720@ntep2.ntep.tmg.nec.co.jp, cerna@ntep.tmg.nec.co.JP (Alexander Cerna (SV)) writes:
>I need to write an application which does annotation notes
>on existing documents.  The annotation could be done several
>times by different people.  The idea is something like having
>several acetate transparencies stacked on top of each other
>so that the user can see through all of them.  I've seen
>something like this being done by the oclock client.
>Could someone please tell me how to do it in Xt?
>Thank you very much.

The oclock widget was written using the SHAPE extension.
You can do the same in your widgets.  Few current widgets
support SHAPE, so you'll have to subclass them to add that
functionality.

---
Ken Lee, klee@synoptics.com

Newsgroup: comp.windows.x
Document_id: 67079
From: pyeatt@Texaco.com (Larry D. Pyeatt)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

In article <9304191540.AA09727@sparc1.jade.com>, graham@sparc1.ottawa.jade.COM (Jay Graham) writes:
|> 
|> I am developing an X (Xt,Xm) application that will include a graphics window
|> of some sort with moving symbols among other things.  A pure X application
|> could be implemented with Motif widgets, one of which would be an 
|> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
|> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).
|> 
|> Is it possible to mix X and GL in one application program?
|> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
|> with XOpenWindow?

There is a widget already defined for GL.  It is the GlxMDraw (motif) or
GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
allows you to use GL calls to render into the window.  Look at glxlink,
glxunlink, glxgetconfig, and glxwinset in the man pages.

|> I have never used GL before, but the doc on GL winopen() says that the first
|> time winopen() is called it opens a connection to the server.   Also, most of
|> the GL calls do not require a Display or GC, unlike most X calls.  From this
|> initial information it appears that X and GL cannot be mixed easily.   Is this
|> true?

The GlxMDraw widget works pretty well.  OpenGL will be an improvement.

|> Does PEX (graPHIGS?) have the same functionality of GL?

I think GL is a little easier to use and a little more powerful, but
that's just an opinion.  Mileage may vary.


-- 
Larry D. Pyeatt                 The views expressed here are not
Internet : pyeatt@texaco.com    those of my employer or of anyone
Voice    : (713) 975-4056       that I know of with the possible
                                exception of myself.

Newsgroup: comp.windows.x
Document_id: 67080
From: prunet@zephir.inria.fr (Vincent Prunet)
Subject: Re: Monthly Question about XCopyArea() and Expose Events

In article <BUZZ.93Apr19125438@lion.bear.com>, buzz@bear.com (Buzz Moschetti)
writes:
|> (2nd posting of the question that just doesn't seem to get answered)
|> 
|> Suppose you have an idle app with a realized and mapped Window that
|> contains
|> Xlib graphics.  A button widget, when pressed, will cause a new item
|> to be drawn in the Window.  This action clearly should not call XCopyArea()
|> |> (or equiv) directly; instead, it should register the existence of the
|> new
|> item in a memory structure and let the same expose event handler that
|> handles
|> "regular" expose events (e.g. window manager-driven exposures) take care
|> of rendering the new image.  Using an expose event handler is a "proper"
|> way
|> to do this because at the time the handler is called, the Xlib Window is
|> guaranteed to be mapped.
|> 
|> The problem, of course, is that no expose event is generated if the window
|> is already visible and mapped.  What we need to do is somehow "tickle" the
|> Window so that the expose handler is hit with arguments that will enable
|> it to render *just* the part of the window that contains the new item.
|> 
|> What is the best way to tickle a window to produce this behavior?

To incrementally update the contents of windows, I use the following trick:

	1. Set the window background to None,
	2. Call XClearArea(display, window, 0, 0, 0, 0, True),
	3. Restore the window background to its correct value.

The call to XClearArea does not repaint the window background, but still
generates exposure events for visible parts of the window.

In order to let my application know that these expose events must be handled
incrementally (something is already displayed on the screen and may need to
be erased), I encapsulate the 3 operations with 2 self addressed client
messages, which preserve asynchronicity between the client and the server.

XGrabServer(display)
client message (start-incremental)
 	background None
	XClearArea
	Restore background 
client message (end-incremental)
XUngrabServer(display)

The GrabServer prevents other events to be inserted by the server in the
critical section.

---
Vincent Prunet, Sema Group Sophia Antipolis
INRIA       BP 93    06902 SOPHIA ANTIPOLIS Cedex  FRANCE
prunet@sophia.inria.fr, (33) 93 65 78 42, Fax:(33) 93 65 77 66


Newsgroup: comp.windows.x
Document_id: 67081
From: bentz@blustone.uucp (Ray Bentz)
Subject: SPARC IPC Sprite goes off screen

Environment:
	X11R4
	Motif 1.1.4
	Sun IPC 4.1.3

Problem:
	When mouse is moved across screen horizontally, the sprite goes off
	of the edge of the screen and reappears at the *other* edge.
	It appears that the server thinks we are running in multi-screen
	mode; the cursor seems to "wrap" from one side of the screen to
	the other.
	As far as we can tell, we are not running the server in multi-screen
	mode.

Please reply via E-mail.

-- 
Ray Bentz                            Phone: (609)727-4600
Bluestone Consulting, Inc.             Fax: (609)778-8125
1200 Church Street                   uunet: uunet!blustone!bentz
Mount Laurel, NJ 08054            Internet: blustone!bentz@uunet.uu.net

Newsgroup: comp.windows.x
Document_id: 67082
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: XCopyPlane Question

| 
| In article <BUZZ.93Apr19101538@lion.bear.com> buzz@bear.com (Buzz Moschetti) write
| >In article <WHALEY.93Apr15103931@sigma.kpc.com> whaley@sigma.kpc.com (Ken Whaley) writes:
| >>   Actually, I must also ask the FAQ's #1 most popular reason why graphics
| >>   don't show up: do you wait for an expose event before drawing your
| >>   rectangle?
| >
| >Suppose you have an idle app with a realized and mapped Window that contains
| >Xlib graphics.  A button widget, when pressed, will cause a new item
| >to be drawn in the Window.  This action clearly should not call XCopyArea() 
| >(or equiv) directly; instead, it should register the existence of the new
| >item in a memory structure and let the expose event handler take care
| >of rendering the image because at that time it is guaranteed that the
| >Window is mapped.
| >
| >The problem, of course, is that no expose event is generated if the window
| >is visible and mapped.  Do you know the best way to "tickle" a window so
| >that the expose event handler will be invoked to draw this new item?
| >
| 
| What does this have to do with my original question???  I previously
| stated that I did an XCopyArea of the depth-8 pixmap to the screen
| just to make sure that my image had data, and it did.  This is NOT
| a problem with expose events, it has to do with XCopyPlane not
| working!!!
| 
| Does anyone have a code fragment they could send demonstrating that
| XCopyPlane works???  This would be very helpful!
| 
| Thanks!

What it has to do with your original question is this: many times 
beginning X users (heck, experienced X users too!) write small test
programs.  Many times they forget to draw only in response to expose
events, and thus see unpreditable results whereby sometimes the application's
graphics show up, and sometimes they don't.  We're just trying to
eliminate all the "easy" explanations  for why you're not seeing your
graphics. 

That being said, why don't you try copying different planes to your
window other than 16 (== 1 << 4).  Try 1, 1<<1, 1<<2, ..., 1<<7
to see it you get any output.  Since you're dipslaying only a single 
plane of your data, it's possible that all the pixel values in your
pixmap have the same value for that color plane.

	Ken

--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
Document_id: 67083
From: victor@hpfrcu03.FRance.hp.COM (Victor GATTEGNO FRENCH CRC)
Subject: Re: Running dxterm's onto Apollo from DEC 5000/240


> Apollo DN2500 (Domain/OS 10.3, X11R4, Motif ?.?).

I think you are running Xapollo , it's a X11R3 server ...

If you want a X11R4 server you should install PSKQ3 (10.3.5) or 10.4
  so you can run Xdomain . 

> 
> I get these errors appearing on the DECstation:
> 
> > dxterm
> X Toolkit Warning: Cannot convert string "<Key>apCharDel        " to type VirtualBinding
> ...
> Segmentation fault
> 
> Any ideas? Is it a Motif problem...are the DEC and Apollo versions of Motif
> incompatible? Or something to do with XKeysymDB?

In XKeysymDB you could add : 
!		Apollo specific keysyms
!
apLineDel            : 1000FF00
apCharDel            : 1000FF01
apCopy               : 1000FF02
apCut                : 1000FF03
apPaste              : 1000FF04
apMove               : 1000FF05
apGrow               : 1000FF06
apCmd                : 1000FF07
apShell              : 1000FF08
apLeftBar            : 1000FF09
apRightBar           : 1000FF0A
apLeftBox            : 1000FF0B
apRightBox           : 1000FF0C
apUpBox              : 1000FF0D
apDownBox            : 1000FF0E
apPop                : 1000FF0F
apRead               : 1000FF10
apEdit               : 1000FF11
apSave               : 1000FF12
apExit               : 1000FF13
apRepeat             : 1000FF14
apKP_parenleft       : 1000FFA8
apKP_parenright      : 1000FFA9


--
Victor .

                                            \     /
                                              ^ ^  
______victor@hpfrcu03.france.hp.com_______oOOo_o_oOOo_________________

Victor GATTEGNO 

                   "Be Yourself and not what people expect you to be ."
______________________________________________________________________
                                              (( 
                                               )) 


Newsgroup: comp.windows.x
Document_id: 67085
From: D.Haywood@sheffield-hallam.ac.UK (Dave Haywood)
Subject: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

Hi,

  Please reply to me direct as I am not a member of this list.

  I am new to X, so please excuse my lax (read: "probably incorrect")
terminology!

  Environment: Sun Sparc 10, SunOs 4.1.3.  X11R5 path level 23.  My X process
is started by xdm.

  i) I want to setup the backgroud (root window?) of the tvtwm display to
     display the escherknot etc (grey is a very boring colour to work on)!

     The setup is as follows:

        lib/X11/xdm/Xsetup_0    -   xsetroot -bitmap ... etc
        ~user/.xsession         -   xsetroot .... etc
                                    tvtwm

     There are also .tvtwmrc and .Xdefaults files in the (~user) home
     directory.

     The xsetroot in Xsetup_0 displays the appropriate bitmap in the xdm
     login window as expected - very nice!

     Unfortunately, when the users session is started, the background of the
     tvtwm window reverts to grey.  If I manually type xsetroot... in an
     xterm window when the session has started, the background is changed as
     expected.

     The question is: How do I retain the background from the login window
     and/or specify a new background on a per-user basis as part of the
     the users session startup?

 ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
     and some keys on the keyboard are not sending the correct characters.

     ie: real key       key shown on screen
         ------------   -------------------
         hash           back slash
         tilde          pipe
         double quote   at symbol
         pound          hash
         cursor key     not recognised

     This is very annoying!  Is X at fault here or the machine setup?  I have
     installed the xterm drivers that came with X11R5 in both terminfo and
     termcap as they seemed more uptodate.

     Typing set in an xterm window shows a terminal type of xterm - as
     expected!

  Any help on how to correct either of these problems much appreciated!

  Thanks,

Dave.
--------------------------------------------------------------------------
JANET   : D.Haywood@uk.ac.sheffield-hallam      | Dave Haywood.
  or      D.Haywood@uk.ac.shu                   | Computer Services,
INTERNET: D.Haywood@shu.ac.uk                   | Sheffield Hallam University
Telex   : 54680 SHPOLY G                        | Pond Street,
Tel     : +44 742-533-828                       | Sheffield. S1 1WB. ENGLAND.
FAX     : +44 742-533-840                       |
X.400:/I=D/S=Haywood/O=Sheffield-Hallam/PRMD=UK.AC/ADMD= /C=GB
X.500:@c=GB@o=Sheffield Hallam University@ou=Computer Services@cn=Dave Haywood

Newsgroup: comp.windows.x
Document_id: 67086
From: barr@pop.psu.edu (David Barr)
Subject: Re: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

In article <MAILQUEUE-101.930420145015.384@oak.shu.ac.uk> D.Haywood@sheffield-hallam.ac.uk writes:
>Hi,
>  Environment: Sun Sparc 10, SunOs 4.1.3.  X11R5 path level 23.  My X process
>is started by xdm.

Okay, that's good.  I'm typing this from exactly the same setup.
(US-UNIX layout keyboard)  I did install the sunkbd patch, though.

>  i) I want to setup the backgroud (root window?) of the tvtwm display to
>     display the escherknot etc (grey is a very boring colour to work on)!

Make sure you're using "ssetroot", which comes with tvtwm.  When tvtwm
starts up, it nukes the existing root window.  Use an "ssetroot" after
tvtwm starts up.   (You could spawn off a "(sleep 10; ssetroot ...)&")
You can also use "VirtualDesktopBackgroundPixmap filename" or just
VirtualDesktopBackground if you just want another color besides grey.

> ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
>     and some keys on the keyboard are not sending the correct characters.

Did you install the sunkbd patch?  It's in the contrib directory on export.
All the keys on my keyboard send events properly, except the following:
The End, PageUp, PageDown on the 6-key cluster aren't recognized.
Even the compose key works.  (Though I can't seem to get the composed
characters in an xterm to get passed.)

Anyone have a fix for the last two?

--Dave
-- 
System Administrator, Penn State Population Research Institute
* Dog Dianetics ("Woof woof woof?  Page 725.") - Kibo

Newsgroup: comp.windows.x
Document_id: 67087
From: paul@def.bae.co.uk (Paul Byrne)
Subject: imake - help needed

Hi

Can someone please give me some pointers to setting up imake in a SUN OPENWINDOWS
enviornment ? I've checked through all the documentation but can not find any clues.

Please respons via e-mail.....

Thanks

Paul


---------------------------------------------------------------------
Paul Byrne				British Aerospace Defence Ltd
					Dynamics Division
email Paul.Byrne@def.bae.co.uk		FPC 450
					P.O.Box 5, Filton
Phone 0272 316086			Bristol, BS12 7QW


Newsgroup: comp.windows.x
Document_id: 67088
From: leec@cb-iris.Stanford.EDU (Christopher Lee)
Subject: HELP! Setting Colormaps on multi-top-level APP


Dear SGI and netter GL-X Mixed-Model experts,
I am writing a mixed model application that creates a couple different
color maps for different windows, and I've been having trouble getting
the window manager to reliably honor my requests.  In some environments
(entry level R3000 Indigo w/ 4.0.5) all windows are getting properly
connected to their designated color maps, but on others (an IRIS 4D 240/GTX;
also a different entry level Indigo) the color mapping is unreliable
and changes behavior when I compile at different times.  The most common
problem is that all non-top-level windows fail to be displayed according
to their colormap.  My application starts out by creating three top-level
windows; in some cases all but the first of these also fail to be
displayed by their colormap.  This is spectacularly aggravating.

I would dearly appreciate
  1. an explanation of the standard, RIGHT, CORRECT way to give a window
  a colormap such that the Window Manager will Honor and Obey it;

  2. any advice about problems that could cause my failure to get my
  desired colormaps.

By now I have exhausted my own attempts on this, having tried everything
reasonable or imaginable.

Below is example code giving the schematic for how I have been *TRYING*
to do this.  Please, please, please SOMEBODY tell me what I am doing
wrong/how to do it right!!!


Yours,

Chris Lee

/***********************************************************************/
Display* dpy;  /* DECLARE SOME DATA... */
Colormap popup_cmap;
XColor mycolor;
Window win;
XSetWindowAttributes cwa;
int nwlist;
Window *wlist;

/* NB: FOR BREVITY, NOT SHOWING ALL CODE LINES--JUST A SCHEMATIC */

popup_cmap=XCreateColormap(dpy,DefaultRootWindow(dpy),vis->visual,AllocAll);

/* HERE WE STORE A BUNCH OF COLORS USING
   XStoreColor(dpy,popup_cmap,&mycolor); ... */

cwa.colormap = popup_cmap;
win = XCreateWindow(dpy, parent, x, y, w, h,
                    borderWidth, vis->depth, InputOutput, vis->visual,
                    CWColormap|CWBorderPixel, &cwa);


/* LIST ALL SUB WINDOWS OF my_topwin, PARENT OF win, INTO wlist;
   nwlist IS COUNTER OF ENTRIES IN wlist.

   NB: wlist is static storage that can be relied on not to go away
       or be corrupted.  I thought of that!  Does anyone know if
       setting WM properties is by data copy, or by reference pointer?

       ie. is it acceptable to pass data for a Property, then free
       the data?   */
XSetWMColormapWindows(dpy,my_topwin,wlist,nwlist);

XMapRaised(Display0,win);

/* LATER ON WE HANDLE XEvents NORMALLY... TYPICAL EVENTLOOP */



Newsgroup: comp.windows.x
Document_id: 67089
From: ksc@cbnewsk.cb.att.com (kenneth.s.cobler)
Subject: XFree86 and Esix 4.0.4

Hello Netlanders:

       I am a novice X user with a question for any Xgod.

       My computer configuration with the X problem is as follows:

       486DX50/256/16RAM  running Esix 4.0.4 
       Wangtek AT-style interface 250 M tape drive.
       I have loaded the Basic OS (which includes nsu) and
       inet utilities (tcp/ip).
       I ftp-ed the XFree86 (X11R5) binaries and installed properly.
 
 I can execute startx and run X-windows with no problems.
 However, if I try to access the tape drive while in X, the
 machine locks up instantly.  If I am out of X and access the
 tape, the tape drive works fine.  Soon as I try to
 startx again; the screen changes modes, but, the grey background
 pattern does not come up and no xterm is forked.  I have to login
 from another terminal and execute a shutdown to reset the system.

 I've contacted Esix about this problem.  They claim THEIR X-window X11R4
 server (which I have) works with the Wangtek tape drive.  They also 
 claim I only need the nsu (network system utilities) to run X; I don't
 need inet (tcp/ip).  My experience has been that I need BOTH to get
 XFree86 to work.  I'm not too concerned about having to load both nsu and inet
 packages to get X to work unless the inet package is causing my problem.

 I would like to get both X and my tape drive to co-exist on the same
 system.  If you can shed any light on the problem, it would be appreciated.
 
 One colleague implied this might be a hardware conflict.  If this is true,
 what direction should I look to resolve the conflict ?

 Thanks,
 
 Kenneth Cobler                ksc@ihlpv.att.com
 AT&T Bell Laboratories
 263 Shuman Blvd.
 Naperville, IL  60566

Newsgroup: comp.windows.x
Document_id: 67090
From: hgn@pmw1.nuclint.NL (Hans Geurtsen)
Subject: Cursors

According to the OSF/Motif Style Guide, one should use cursor shapes to give
the user a visual clue of what is happening or what is expected of him. So
a "hourglass" cursor should be shown when the application is busy, or a
"caution" cursor should be shown over an area when input is expected in
another. Defining cursors for widgets has to be done at rather low level.
So defining a cursor for all widgets in an application but not for a certain
subpart of it, is a rather complicated matter. When cursors have been defined
for some windows, e.g. a "crosswire" cursor for a DrawingArea, things get even
more complicated. My intuition says that things should be easier, but is this
so? If anyone has a solid and complete solution to my problem, please let me
know. The topics on "busy cursors" in the several FAQ's are not helpful, since
they only work for applications where all windows have the cursor window
attribute set to 'None'.
-----------------------------------------------------------------
Hans Geurtsen                       Phone: (31) (0) 8385 - 33157
Nucletron Research BV.             e-mail: hgn@nuclint.nl
                                  Surface: Waardgelder 1
                                           NL-3905 TH  Veenendaal


Newsgroup: comp.windows.x
Document_id: 67091
From: jra@wti.com (Jim Atkinson)
Subject: How can I detect local vs remote DISPLAY settings?

I am trying to find out if my application is running on a local or a
remote display.  A local display being connected to the same system
that the client is executing on.  I have access to the display string
but can I tell from the string?

If the client is executing on host foo then ":0", "unix:0", "foo:0",
and "localhost:0" are all local.  Under Ultrix, I believe that
"local:0" is also a valid display name (a shared memory connection
maybe?).  Are there other strings that I should check for?  Is there a
better way to detect this?

Thank you for any help you can give me.
-- 
========================================================================
Jim Atkinson		Wavefront Technologies, Inc.
jra@wti.com		What, me?  A company spokesperson?  Get real!
=================== Life is not a spectator sport! =====================

Newsgroup: comp.windows.x
Document_id: 67092
From: gerard@netlabs.com (Gerard Horan)
Subject: Running X on a PC at home talking to a host over Serial Line

Some time back I asked for software recommendations to  allow me to
run X from my PC at home to my Sparc at the office.

Many thanks for all replies, the majority of people  recommended
PCXremote from NCD. I received it yesterday  and installed it on
my Sparc and PC with only one hitch. 
The UNIX install consists of copying 2 files into some local bin directory. 
On the PC side, I ordered the WINDOWS version  which  came with a slick windows
installation.


The only problem I had was that  my .xinitrc  in my home directory
had the line
DISPLAY=`hostname`:0.0; export DISPLAY

s.t the clients I kicked off connected to my Xserver on the Sparc console.
By removing this line from the .xinitrc everything worked as planned
and the clients connected to the server at

`hostname`:1.0

Some comments on performance, I was connected to a Sparc 2 thru
a NetBlazer Terminal Server over a 9600 baud line.
My PC is a 486-DX2 ATI Ultra, 16 MB

Bitmap Stuff Sucked.
Basic Editing and compilation stuff definitely usable.
Xmail was very usable.

At times the first time U typed in an Xclient window there was
a very noticable delay, I put this down to brain damaged "WINDOWS
should not be called a SCHEDULER", besides that this will become
my remote work environment for a while.

Has anybody tried the NON Windows version of the product, the sales
person said they performed about the same, given the over head of
WINDOWS I question this?

many thanks for help to all who responded

gerard

Newsgroup: comp.windows.x
Document_id: 67093
From: matthew@alchemy.TN.Cornell.EDU (Matthew Kleinmann)
Subject: Is a 2 headed Sun 3/60 possible (cgfour0/bwtwo0)

I have a Sun 3/60 that has a mono framebuffer (bwtwo0 ?) built on the
motherboard.  The same system also has a cgfour (cgfour0 and bwtwo1 ?)
daughterboard.  I have been using this system with a color monitor having a
color "front" screen from the cgfour, and a mono "back" screen from the
bwtwo1, both on the same tube.  I recentley picked up a 1600 x 1280 Sun mono
monitor, and I would like to make a two headed system with the cgfour0 and the
bwtwo0.  I do not care if I loose the "back" screen on the color tube from the
bwtwo1.  After looking through the Xsun man page I am not sure if this is
possible.  Has anybody sucessfuly done this before?  

--Matthew


Newsgroup: comp.windows.x
Document_id: 67094
From: devil@loki.HellNet.org (Gil Tene)
Subject: COSE GUI - Just what is it they agreed on?

The COSE announcement specifies that Motif will become the common
GUI. But what does this mean exactly? 

- Do they mean that all "COSE-complient" apps will have the Motif
  look and feel?

- Do they mean that all "COSE-complient" apps will use the Motif
  toolkit API?

- Do they mean both of the above?

- Is it possible that there will be a Motif-API complient toolkit with
  an OpenLook Look & Feel?

- How about an OLIT/XView/OI/Interviews API toolkit with a Motif L & F?
  (I know OI already does this, but will this be considered COSE-complient?)

- Will there be more than one "standard" toolkit API or L & F supported?

- How does using ToolTalk fit in with Motif?

This is my attempt to start a discussion in order to pull as much 
knowledge about these questions off the net... Feel free to e-mail
or followup.

-- 
--------------------------------------------------------------------
-- Gil Tene			"Some days it just doesn't pay     -
-- devil@imp.HellNet.org	   to go to sleep in the morning." -
-- devil@diablery.10A.com 					   -
--------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67095
From: jhcox@kodak.com (James Cox)
Subject: Xterm Problem With Input Focus / "Shuffle Up"


The situation: running a Fortran executable that creats an Xterm.  An option
in the menu contained in the Xterm runs a Fortran subroutine that creats
a Tektronics-mode Xterm for displaying some graphics.  Typing a <RET> while
the Tektronics-mode Xterm (future reference to this will be "Tek-term") is
active makes the Xterm read future keystrokes but does not shift input focus
to the Xterm (I'm basing that statement on the fact that the border of the 
Tek-term stays the highlighted color and that the Tek-term stays on top of
Xterm.  If what I'm describing isn't input focus, let me know.)  

The xterm can be brought to the top by clicking the mouse button on it.

Subsequent selections from the Xterm of the menu item that displays graphics 
highlihts the border and displays the updated graphics, but does not move 
the Tek-term to the top.  If the Tek-term has been iconized to conserve 
screen space, it stays an icon.


The desired behavior: one of two options - 

    1. Whichever of the windows that is active is always on top of the 
       inactive one.

    2. Whenever the Tek-term is inactivated, it should revert to a icon
       but when it is activated it should become a window on a higher 
       level than the Xterm.

What I think I need: a means of specifying that a Xterm or Tek-term will
be at the highest level and a way to iconify/expand a Xterm and Tek-term.
These commands, would, I'd guess, need to be in the Fortran or in the 
command that starts up the Xterm and Tek-term.

Other information: All this is taking place on a VT-1300 (a DEC dumb 
X-windows terminal) connected to a VAX running VMS and Motif.

Thanks for your time.  If you've got any words of wisdom (other than 
"give up" ;-), please send email to 

jhcox@Kodak.com



Newsgroup: comp.windows.x
Document_id: 67096
From: larry@gator.rn.com (Larry Snyder)
Subject: Dell 2.2 EISA Video Cards

Does XFree86 support any EISA video cards under Dell 2.2?
-- 
Larry Snyder                               
larry@gator.rn.com

Newsgroup: comp.windows.x
Document_id: 67097
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: X Device Driver for Bird


Has anyone written a device driver to use the Ascension bird with XWindows ? 


      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_


***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************



Newsgroup: comp.windows.x
Document_id: 67098
From: suresh@iss.nus.sg (Suresh Thennarangam - Research Scholar)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

pyeatt@Texaco.com (Larry D. Pyeatt) writes:
: In article <9304191540.AA09727@sparc1.jade.com>, graham@sparc1.ottawa.jade.COM (Jay Graham) writes:
: |> 
: |> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
: |> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).
: |> Is it possible to mix X and GL in one application program?
: |> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
: |> with XOpenWindow?

You can't make GL calls in an XmDrawingArea widget for sure.  
: 
: There is a widget already defined for GL.  It is the GlxMDraw (motif) or
: GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
: allows you to use GL calls to render into the window.  Look at glxlink,
: glxunlink, glxgetconfig, and glxwinset in the man pages.
: 
: 
: The GlxMDraw widget works pretty well.  OpenGL will be an improvement.

I can vouch for that. The GL Widget works pretty well. I have been using it
for sometime now. I'm not sure though whether you can use Xlib calls to draw
into the GL widget. I haven't tried it yet nor have I read the accompanying
documentation completely. Try posting to comp.sys.sgi for more information.
Better still,you will find most of the answers in the  SGI manuals .. there
is a little transition guide which explains the "mixed-model programming"
paradigm(Mixing X and GL).

: |> Does PEX (graPHIGS?) have the same functionality of GL?
: 
: I think GL is a little easier to use and a little more powerful, but
: that's just an opinion.  Mileage may vary.

Well, PEX is designed as an extension to  X and will be more seamless  but 
then, it is buggy to start with .. opinions again.

      __                  
     (_   / /  o_   o  o |_
     __)/(_( __) (_(_ /_)| )_

***************************************************************************
* Suresh Thennarangam               *  EMail: suresh@iss.nus.sg(Internet) *
* Research Scholar                  *         ISSST@NUSVM.BITNET          *
* Institute Of Systems Science      *  Tel:  (065) 772 2588.              *
* National University Of Singapore  *  Facs.: (065) 778 2571              *
* Heng Mui Keng Terrace             *  Telex: ISSNUS RS 39988             *
* Singapore 0511.                   *                                     *
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 67099
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.165310.14544@dsd.es.com>, pmartz@dsd.es.com (Paul Martz) writes:
> In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> > Hi, I'm new to this group so please bear with me!
> > 
> > Two years ago I wrote a Sunview application for fast animation
> > of raster files. With Sunview becoming rapidly obselete, I've
> > finally decided to rewrite everything from scratch in XView.
> > I put together a quick test, and I've found that XPutImage()
> > is considerably slower (factor of 2 on average?) than the
> > Sunview command pw_rop() which moves image data from memory
> > pixrects to a canvas. This was on a Sparc IPX. It seems that:
> > (1) the X protocol communication is slowing things down; or
> > (2) XPutImage is inefficient...or both!
> 
> Using XPutImage, your source is maintained by the client and the
> destination is maintained by the server, thus you incur the overhead
> of transporting through whatever client-server communications
> mechanism you are using.
> 
> Is it possible for you to maintain your source images in pixmaps?
> These are maintained by the server, so copying them into a window is
> much cheaper.
> 
> Also make sure you are not sending any unnecessary XSyncs, or running
> in XSynchonize mode.

  If you need speed, and your client can run on the same host as the X server,
  you should use the shared memory extension to the sample X server (MIT-SHM).
  xdpyinfo  will tell you if your server has this extension. This is certainly
  available with the sample MIT X server running under SunOS.
  A word of warning: make sure your kernel is configured to support shared
  memory. And another word of warning: OpenWindows is slower than the MIT
  server.
  I have written an imaging tool (using XView for the GUI, by the way) which
  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
  animations.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
Document_id: 67100
From: victor@hpfrcu03.FRance.hp.COM (Victor GATTEGNO FRENCH CRC)
Subject: Re: High order bit of a character in xterm .

> 
> Does anyone know why the high order bit is being filtered and what
> I can do to make sure that the entire 8bits make it through to
> the final application? Any help is greatly appreciated.
> 

1. You need these resources :
	XTerm*EightBitInput:    true
	XTerm*EightBitOutput:    true

2. In the shell you need to do : 
        stty cs8 -istrip 


Good luck .
Victor .

                                                              |
                                                              *
                                                              X
                                                              X
                                                              X
                                                              X
______________________________________________________________X________
                                                              X
  Victor Gattegno     Email: victor@hpfrcu03.france.hp.com   XXX
  Hewlett-Packard France   Hpdesk: HP8101/RC                X X X  
  1, Avenue du Canada      Phone : 33-1-69-82-60-60        X  X  X 
  91947 - Les Ulis Cedex   Telnet: 770-1141               X   X   X  

 



Newsgroup: comp.windows.x
Document_id: 67101
From: thor@surt.atd.ucar.edu (Richard E. Neitzel)
Subject: XQueryBestCursor semi-broken?

Some one asked me recently why they when they used XQueryBestCursor to see
if they could create of a given size it seemed to imply they could, but the
server did not create cursors of that size. Investigation showed that some X
servers will happily return any size up to the size of the root window, while
others return some fixed limit of more reasonable size. The interesting thing
to me is that the same server binary acts differently on different hardware -
a Sun4 with a cg2 will claim cursors up to root window size are OK, while a
Sun4 with a cg6 will stop at 32x32. So far I've also seen this behavior on
NCD and Phase-X X terminals and have been told it also occurs on HPs. 
Actually, the NCD is even more liberal - sizes much larger then the root
winodw are gladly returned as OK. Is XQueryBestCursor semi-broken or is this
behavior correct? I'd really like to see a 2000x2000 cursor!

-- 
Richard Neitzel thor@thor.atd.ucar.edu          Torren med sitt skjegg
National Center For Atmospheric Research        lokkar borni under sole-vegg
Box 3000 Boulder, CO 80307-3000	                Gjo'i med sitt shinn
303-497-2057                                    jagar borni inn.

Newsgroup: comp.windows.x
Document_id: 67102
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: XDM & DECnet ?

#
#Does XDM work with DECnet? I have an Ultrix machine running both TCP/IP
#and DECnet. I have a number of X-terminals hanging off the Ultrix host also
#running TCP/IP and DECnet. Presently I am using XDM for the login procedure
#on the X-terminals using TCP/IP. Since XDM is basically just an X-windows
#client, shouldn't I be able to run XDM on the DECnet protocol tower as well?
#

XDM is not just an X Window client.  XDM has its own protocol (XDMCP) that
operates of UCP on port 177.  It does provide a Login window which is an
X Window Client.  As to using DECnet protocol.  Looking through the source
for XDM from X11R5 that I have here, it seems that the bare bones code is
there but not completely there.

#
#My first inclination is that XDM is not your typical X client. It is making
#TCP/IP specific socket calls. In this case the answer would be no; you can
#not run XDM over DECnet. Is this right or not? Any feedback is appreciated.
#Thanks.
#

From my look at the source, it seems you cannot run it over DECnet as shipped
with X11R5.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67103
From: VANDAMME@NMR.RUG.AC.BE
Subject: XmScale & XtAddEventHandler

Dear Xperts,

I'm developing an application that uses a Motif slider to select
an image file out of a directory. Now I would like to display the
name of the file corresponding to the value of the dragged scale
button (i.e. with the MB1 pressed). As XmNshowValue only displays
the current value of the scale button and not the actual corresponding
image file name, I thought of using an XtAddEventHandler to do
the mapping between the scale value and the file name:

XtAddEventHandler(scaleImage,Button1MotionMask,  FALSE, SliderMoved, NULL);


and in the eventhandler do a:

  while (XCheckTypedWindowEvent (display, event->window, MotionNotify, &Return))
   ;
  XmScaleGetValue(scaleImage,&value);
  /*map value to file entry in directory and finally obtain file name to open*/


However, when I move the pointer in the scale widget I get callbacks, with of co
   urse
a null effect as my MB1 is not pressed to move the scale button. So what is goin
   g wrong?
Or is the a wrong approach to this problem?
Any hints are highly appreciated.
---
Phil

Newsgroup: comp.windows.x
Document_id: 67104
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Problem with dni and openwin 3.0

Can anyone help me?

I am having a problem displaying images greater than 32768 bytes from a
Decwindows program running on a Vax 6310, and displaying on a Sparc IPC
running Openwindows 3.0 and dni. The program works fine with Openwindows 2.0.

The code segment which fails is given below, the program simply crashes
out with an Xlib I/O error at the XPutImage() call.

	XImage          *ximage;
	ximage = XCreateImage(myDisplay, DefaultVisual(myDisplay, myScreen), 
			      ddepth, ZPixmap, 0, image,
			      xwid, ywid, 8, 0);
	XPutImage(myDisplay, myWindow, myGC,
		  ximage, 0, 0, xpos, ypos, xwid, ywid);


-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67105
From: mbell@techbook.techbook.com (Max Bell)
Subject: WANTED: Info on Dedicated X Server Kernel for Sun3/100 Series

If anyone has any information about the existence or location of a
dedicated X server kernel for the Sun3, please send email.  I am
trying to put some neglected Sun3s to good use but they don't have
enough memory for SunOS 4.1.1.  Thanks in advance for any help.
-- 

 /\  /\/  Max Bell                    | I used to think I'd emmigrate to escape
/  \/ /\  mbell@techbook.com          | the tyrants, but now I think I'll stay
~~~~~~~~~ mbell@cie.uoregon.edu	      | and make them leave instead.

Newsgroup: comp.windows.x
Document_id: 67107
From: pfuetz@igd.fhg.de (Matthias Pfuetzner)
Subject: Re: Available memory to the Xserver. How to get the actual size?

Hello!

In article <1993Apr17.144246.29806@thunder.mcrcim.mcgill.edu>,
mouse@mcrcim.mcgill.edu (der Mouse) writes:
>In article <1965@igd.fhg.de>, pfuetz@igd.fhg.de (Matthias Pfuetzner) writes:
>
>> Is there a possibility to determine via X protocol calls the size of
>> free memory available to the Xserver?
>
>No.  Even if you could, the answer could be out of date even before you
>get it (even if you grab the server, it could be taken up by buffering
>user actions).  You should just try to do whatever you want; a BadAlloc
>error is your indication that insufficient server memory is available.
>
>					der Mouse

This isn't of much help! Especially when doing Phigs (PEX) via the libphigs as
supplied by MIT, I have much trouble together with PEX-terminals that don't
have enough memory!

Performing the following:

   visual.visualid = CopyFromParent;

   bg_pix = WhitePixel( grafik_display, DefaultScreen( grafik_display ) );
   
   xswa.backing_store      = NotUseful;
   xswa.event_mask         = ExposureMask | StructureNotifyMask;
   xswa.background_pixel   = bg_pix;

   graphic_window =
         XCreateWindow( graphic_display,
                       RootWindow( graphic_display,
                                  DefaultScreen( graphic_display ) ),
                       0,
                       0,
                       DisplayWidth(graphic_display, 
                                  DefaultScreen( graphic_display ) ),
                       DisplayHeight(graphic_display, 
                                  DefaultScreen( graphic_display ) ),
                       (unsigned int)0,
                       8,
                       InputOutput,
                       &visual,
                       CWEventMask | CWBackingStore | CWBackPixel,
                       &xswa );
   XMapWindow( graphic_display, graphic_window );
   
   /** sync and wait for exposure event **/
   XSync( graphic_display, False );
   XWindowEvent( graphic_display, graphic_window, ExposureMask, &exposureEvent );

   conn.display     = graphic_display;
   conn.drawable_id = graphic_window;

   xinfo.display = graphic_display;
   xinfo.flags.no_monitor = 0;      /* False -> Monitor is running! */
   xinfo.flags.force_client_SS = 0; /* False! */

   popen_xphigs( NULL, 0, PXPHIGS_INFO_FLAGS_NO_MON |
                          PXPHIGS_INFO_FLAGS_CLIENT_SS |
                          PXPHIGS_INFO_DISPLAY, &xinfo );

   popen_ws( 1, (Pconnid)(&conn), phigs_ws_type_x_drawable );

I get core dumps in the popen_ws call! (No BadAlloc, etc.! Simply a core
dump!) So I need some way of getting info about the maximal available memory
to the Xserver!

But thanks!

Sincerly,
        Matthias
-- 
    Matthias Pfuetzner  |  @work:  +49 6151 155-150  | @home: +49 6151 75717
    6100 Darmstadt, FRG | ZGDV, Wilhelminenstrasse 7 | Lichtenbergstrasse 73
      pfuetzner@igd.fhg.de, pfuetzner@zgdvda.UUCP    |  Keith Packard said:
      R5 is different from R4. That's why we changed the release number :-)

Newsgroup: comp.windows.x
Document_id: 67108
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: DIN-Fonts

Hello everybody,

I hope that I insert the right Options, so that my question is only
distributed through out Germany, because my question is more or less
country dependend.

Now the question:
  Is there anybody who can tell my if (and of course where) there is
  a ftp-site/archie (or whatever) where DIN fonts for X are available.
  I am looking for fonts holding the specification:
    DIN 16
    DIN 6776
    DIN V 40950


Thanks in advance

Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1 (Germany)

Tel: +49 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
Document_id: 67109
From: dave@einstein.andi.org (David Scheck)
Subject: imake (X11R4) cpp problems on AIX

I am trying to build and use imake (X11R4) on an IBM RS/6000 running AIX V3.2.
I am having the following 2 problems.

(1) Many of my Imakefile's have contructs like
                /**/#This is a makefile
        at the start of lines to pass Makefile comments thru the C
        preprocessor and into the Makefile.  Most of the C preprocessors that
        I have used will not treat such a # as appearing at the start of the
        line.  Thus the C preprocessor does not treat the hash symbol as the
        start of a directive. 

        However the IBM cpp strips the comment and treats the hash symbol
        as the start of a directive.  The cpp fails when it determines
        that "This" is not a known directive.  I have temporarily hacked my
        imake to handle this situation but would like to come up with a better
        fix.

(2) Several Imakefiles use /**/ as a parameter to a macro when a particular
        use of the macro does not need a value for the parameter.  The AIX cpp
        gives warnings about these situations but continues to work OK.

If you are familiar with these problems and have solutions, I would appreciate
information about on your solutions.  (Perhaps, this is solved in a later
version of imake that I have not reviewed.)  Also, do you know of other cpp's
that behave similarly?

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
Document_id: 67110
From: snail@lsl.co.uk
Subject: MOTIF & X on Windows NT

In article <1993Apr7.044749.11770@topgun>, smikes@topgun (Steven Mikes) writes:
> Another company, Congruent Corporation of New York City, has also ported Xlib
> Xt and Motif 1.1 over to MS Windows NT, which provides full client development
> for X applications in an NT environment.

Could someone please send me the postal and email address of
Congruent Corporation (and any competitors they may have).

Thank you.
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
Document_id: 67111
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Program argument: geometry

I have a question regarding the processing of program arguments
such as the -geometry option. Since this is a standard X option, 
I'm wondering wether I have to parse it manually or whether there
is some predefined function that will do this for me?

Thanks for any info
--> Robret

Newsgroup: comp.windows.x
Document_id: 67112
From: singg@alf.uib.no (Kurt George Gjerde)
Subject: Re: Drawing Lines (inverse/xor)

In article <1993Apr19.191531.15865@news.media.mit.edu>, dyoung@media.mit.edu (David Young) writes:

  :
  :

|>    XSetFunction( myDisplay, gc, GXxor);
|>    XSetForeground( myDisplay, gc, drawIndex);
|> 
|> Then to draw I do:
|> 
|>    XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
|>    XFlush( myDisplay);
|> 
|> And when I'm all done, to return things to normal I do:
|> 
|>    XSetFunction( myDisplay, gc, GXcopy);
|> 
|> 
|> What I'd like to happen is for the lines I draw to be the inverse of
|> whatever I'm drawing over.  Instead what happens is I get white lines.  If
|> the lines are over a white background - nothing shows up.  If the lines are
|> over a black area - nothing shows up!  It's very strange.  But the GXxor
|> function seems right - since if I do a rubber-banding box, it erases and
|> redraws itself correctly (ie. not disturbing the underlying image).
|> 
|> Any suggestions what I'm doing wrong?
|> 
|> david


   Try change the GXxor to GXequiv.  I have to do this for programs that
   are to run on NCD terminals (on Sun terminals I have to change it
   back to GXxor)...


Kurt.

Newsgroup: comp.windows.x
Document_id: 67113
From: mleisher@nmsu.edu (Mark Leisher)
Subject: CRL Archive Change Announcement

The multi-lingual archives at The Computing Research Labs, New Mexico
State University will be moving to a new ftp address soon.  The
archives are being put under control of the Consortium for Lexical
Research.

The new ftp address will be: clr.nmsu.edu (the current IP address
is 128.123.1.12 but may change, so use clr.nmsu.edu whenever
possible).

Please note that there is a difference between ftp sites crl.nmsu.edu and
clr.nmsu.edu.  The crl.nmsu.edu site will be our ftp site for items
not related to the Consortium for Lexical Research.

The Arabic, Chinese, French, Italian, Indian, Japanese, Korean,
Tibetan, and Vietnamese archives will all be moved.

We will announce the new locations of the relevant directories once
the archives have been moved.

Please be patient if you discover directories missing when you ftp to
either crl.nmsu.edu or clr.nmsu.edu.  It will take a few days to move
everything.

If you are not familiar with our multi-lingual archives, we have been
slowly collecting various software, fonts, and text for different
languages over the past 2 years.  Most of the software is currently
Unix oriented.  We would also like to encourage people to continue to
contribute items to the archives to help improve the quality and
quantity of multi-lingual tools.

If you have an item to contribute, please put it in:

clr.nmsu.edu:incoming/

and send a note to lexical@nmsu.edu telling them about your
contribution.

If you have any questions or comments, please send them to:
lexical@nmsu.edu

-----------------------------------------------------------------------------
mleisher@nmsu.edu
Mark Leisher
Computing Research Lab                    "Elegance is not optional!"
New Mexico State University                  -- Attributed to Richard O'Keefe
Box 3CRL, Las Cruces, NM  88003

Newsgroup: comp.windows.x
Document_id: 67114
From: grape@suned1.Nswses.Navy.MIL (Mike Grapevine)
Subject: Subscription

Please subscribe me to this mailing list

        Michael D. Grapevine          |  One of these days,
        USN SWC                       |    One of these days,
        Code 4G33                     |  POW!
        grape@suned1.nswses.navy.mil  |   It's gonna happen,
        Bus: (805) 982-7791           |     and I won't even realize it.

Newsgroup: comp.windows.x
Document_id: 67115
From: grape@suned1.Nswses.Navy.MIL (Mike Grapevine)
Subject: subscribe

	subscribe grape@nswses.navy.mil

Newsgroup: comp.windows.x
Document_id: 67116
From: bading@cs.tu-berlin.de (Tobias 'Doping' Bading)
Subject: Re: Forcing a window manager to accept specific coordinates for a window


try this after XCreateWindow:
-----------------------------

#include <X11/Xutil.h>

Display display;
Window window;

{
  XSizeHints *xsizehints = XAllocSizeHints ();
  xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
  xsizehints->x = 42;
  xsizehints->y = 42;
  xsizehints->width = 100;
  xsizehints->height = 100;
  XSetWMNormalHints (display, window, xsizehints);
  XFree (xsizehints);
}

These hints tell the window manager that the position and size of the window
are specified by the users and that the window manager should accept these
values. If you use xsizehints->flags = PPosition | PSize, this tells the window
manager that the values are prefered values of the program, not the user.
I don't know a window manager that doesn't place the window like you prefer if
you specify the position and size like above.

Greetings from Berlin,

Tobias (bading@cs.tu-berlin.de)

Newsgroup: comp.windows.x
Document_id: 67117
Subject: Automated X testing
From: mark@trident.datasys.swri.edu (Mark D. Collier)

Does anyone know what is available in terms of automated testing
of X/Motif applications. I am thinking of a system which I could
program (or which could record events/output) with our verification
test procedures and then run/rerun each time we do regression
testing. I am interested in a product like this for our UNIX
projects and for a separate project which will be using OpenVMS.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark D. Collier                      Southwest Research Institute
Senior Research Analyst              Automation and Data Systems Division
Voice: (512) 522-3437                Data Systems Department
FAX:   (512) 522-5499                Software Engineering Section
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
Document_id: 67118
From: thad@cup.portal.com (Thad P Floryan)
Subject: Re: Is a 2 headed Sun 3/60 possible (cgfour0/bwtwo0)

In article <1r28mg$9r5@fitz.TC.Cornell.EDU>
matthew@alchemy.TN.Cornell.EDU (Matthew Kleinmann) writes:

|  I have a Sun 3/60 that has a mono framebuffer (bwtwo0 ?) built on the
|  motherboard.  The same system also has a cgfour (cgfour0 and bwtwo1 ?)
|  daughterboard.  I have been using this system with a color monitor having a
|  color "front" screen from the cgfour, and a mono "back" screen from the
|  bwtwo1, both on the same tube.  I recentley picked up a 1600 x 1280 Sun mono
|  monitor, and I would like to make a two headed system with the cgfour0 and
|  the bwtwo0.  I do not care if I loose the "back" screen on the color tube
|  from the bwtwo1.  After looking through the Xsun man page I am not sure if
|  this is possible.  Has anybody sucessfuly done this before?

If it's any consolation, I have two 2-headed Sun-3/60 systems, though the
color and mono monitors for each are "rated" 1152x900.   Their configuration
is the same as yours, so it "should" be a Plug'N'Play situation, EXCEPT:

I don't know if your hi-res mono monitor will function this way.  However,
you may simply be able to pull the motherboard and set the HI-RES jumper
(located in the same jumper array as the jumpers for the RAM/SIMM selects
and Ethernet connection) and be happily on your way.  When you pull the
motherboard, the jumpers are in the left-rear (e.g. "north-west") quadrant
of the motherboard (to the left of the SIMM sockets).

Thad Floryan [ thad@btr.com, thad@cup.portal.com, thad@netcom.com ]

Newsgroup: comp.windows.x
Document_id: 67119
From: markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof)
Subject: Re: Title for XTerm

In article <1quh74$r71@irz401.inf.tu-dresden.de>, beck@irzr17.inf.tu-dresden.de (Andre Beck) writes:
|> 
|> In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|> |> >Hey guys!
|> |> >I work on many stations and would like this name and current logname
|> |> >to be in a title of Xterm when it's open and a machine name only
|> |> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|> |> >as a title of opened XTerm and $HOST when XTerm is closed.
|> |> >How can I do it?
|> |> 
|> |> Almost all window managers (twm, mwm, olwm and their derivates) support
|> |> escape sequences for it. For your purpose put following into your
|> |> .login (if you're using csh or tcsh), for sh you have to modify it.
|> |> 
|> |> if ( "$term" == "xterm" ) then
|> |> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|> |> endif
|> |> 
|> 
|> 1) This is NOT a feature of the Window Manager but of xterm.
|> 2) This sequences are NOT ANSI compatible, are they ?
|>    Does anyone know IF there are compatible sequences for this and what they
|>    are ? I would think they are DCS (device control sequence) introduced,
|>    but may be a CSI sequence exists, too ?
|>    This MUST work on a dxterm (VT and ANSI compatible), it may not work
|>    on xterms.

It works on xterms. At least I have no problem with it. - Back to the original
question:

I usually start new xterms by selecting the proper menu entry in my desktop
menu. Here is a sample command:

	xterm -sl 999 -n ls12i -title ls12i -e rlogin ls12i &

The -n and -title options give the text for window and icon. As I use the
tcsh (a wonderful extension of the csh), I can do the following:

I have an

	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'

in my ~/.tcshrc. This is a special alias for tvtwm. It is executed each time
before printing the prompt. So, I have the current host name and the current
directory path in the title bar of my xterms.

------------------------------------------------------------------------------
      ____                                                                    
  UniDo  /  Ingolf Markhof  University of Dortmund, LS Informatik XII         
 ___/   /                   P.O. Box 500 500, D-4600 Dortmund 50, F.R. Germany
 \  \  /                    Phone: +49 (231) 755 6142, Fax: +49 (231) 755 6555  
  \__\/                     Email: markhof@ls12.informatik.uni-dortmund.de    
                                                                              
------------------------------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67120
From: howardy@freud.nia.nih.gov (Howard Wai-Chun Yeung)
Subject: need shading program example in X


Do anyone know about any shading program based on Xlib in the public domain?
I need an example about how to allocate correct colormaps for the program.

Appreciate the help.

Howard.



Newsgroup: comp.windows.x
Document_id: 67121
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: Title for XTerm

In article 1r3fe2INN10d@fbi-news.Informatik.Uni-Dortmund.DE, markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof) writes:
|>In article <1quh74$r71@irz401.inf.tu-dresden.de>, beck@irzr17.inf.tu-dresden.de (Andre Beck) writes:
|>|> 
|>|> In article <C5oL74.3B1@aeon.in-berlin.de>, thomas@aeon.in-berlin.de (Thomas Wolfram) writes:
|>|> |> >Hey guys!
|>|> |> >I work on many stations and would like this name and current logname
|>|> |> >to be in a title of Xterm when it's open and a machine name only
|>|> |> >when it's closed. In other words, I want $HOST and $LOGNAME to appear
|>|> |> >as a title of opened XTerm and $HOST when XTerm is closed.
|>|> |> >How can I do it?
|>|> |> Almost all window managers (twm, mwm, olwm and their derivates) support
|>|> |> escape sequences for it. For your purpose put following into your
|>|> |> .login (if you're using csh or tcsh), for sh you have to modify it.
|>|> |> 
|>|> |> if ( "$term" == "xterm" ) then
|>|> |> 	echo "^[]2;${LOGNAME}@${HOST}^G^[]1;${HOST}^G"
|>|> |> endif
|>|> 1) This is NOT a feature of the Window Manager but of xterm.
|>|> 2) This sequences are NOT ANSI compatible, are they ?
|>|>    Does anyone know IF there are compatible sequences for this and what they
|>|>    are ? I would think they are DCS (device control sequence) introduced,
|>|>    but may be a CSI sequence exists, too ?
|>|>    This MUST work on a dxterm (VT and ANSI compatible), it may not work
|>|>    on xterms.
|>It works on xterms. At least I have no problem with it. - Back to the original
|>question:
|>
|>I usually start new xterms by selecting the proper menu entry in my desktop
|>menu. Here is a sample command:
|>
|>	xterm -sl 999 -n ls12i -title ls12i -e rlogin ls12i &
|>
|>The -n and -title options give the text for window and icon. As I use the
|>tcsh (a wonderful extension of the csh), I can do the following:
|>
|>I have an
|>
|>	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'
|>
|>in my ~/.tcshrc. This is a special alias for tvtwm. It is executed each time
|>before printing the prompt. So, I have the current host name and the current
|>directory path in the title bar of my xterms.

Have you gotten an answer yet?  Using your variables, this is what I would do:
	xterm -T "$HOST - $LOGNAME" -n "$HOST"

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
Document_id: 67122
From: wam3090@yak.COM (Bill Massena)
Subject: Function key to text string translation


	I want to press a function key and have a text string appear in an
XmText widget.  When I put

	*XmText.Translations: #augment \n\
		<Key>F1:  insert-string(HELLO)

in my resource file, the translation doesn't happen.  If I put

	*XmText.Translations: <Key>F1:  insert-string(HELLO)

in the file, I get the text string HELLO when F1 is pressed, but no other 
keys work, which makes sense since the default translation mode is "replace".  

	Do I have a syntax problem here, or something deeper?

..Bill Massena (wam3090@yak.boeing.com)

Newsgroup: comp.windows.x
Document_id: 67123
From: jmartin@egret.imagesRus (John Martin)
Subject: Re: Animation with XPutImage()?

> Hi, I'm new to this group so please bear with me!
> 
> Two years ago I wrote a Sunview application for fast animation
> of raster files. With Sunview becoming rapidly obselete, I've
> finally decided to rewrite everything from scratch in XView.
> I put together a quick test, and I've found that XPutImage()
> is considerably slower (factor of 2 on average?) than the
> Sunview command pw_rop() which moves image data from memory
> pixrects to a canvas. This was on a Sparc IPX. It seems that:
> (1) the X protocol communication is slowing things down; or
> (2) XPutImage is inefficient...or both! My question is, what
> is the fastest way in X11R5 to dump 8 plane image data to
> a window? Can I take advantage of the fact that the client is
> running on the same machine as the server? Or am I stuck with
> XPutImage() (in which case I might as well give up now...)?
> 
> All help appreciated...thanks!
> 
> Derek
> 
>In article 16330@infodev.cam.ac.uk, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
 -----------------------------------------------------------
> | Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
> | Institute of Astronomy | Fax: (0223) 337523             |
> | Cambridge, U.K.        |                                |
> | CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
> -----------------------------------------------------------
> 



Animation is most frequently done by copying the the client resident XImages into 
server resident Pixmap(s) using XPutImage.  Once this is done, the original XImages
can be deleted and the animation loop can be performed using XCopyArea from the Pixmaps to the windows drawable.

Hope this is helpfull.

John


Newsgroup: comp.windows.x
Document_id: 67124
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: Calling a library which creates widgets (multiple times)

A few days ago I posted a question about trying to call a function which set
up an X app multiple times.  It was pointed out that XtAppInitialize() should
never be called more than once.  This helped.  However, I am still having
some problems.  Below is a new little test program that more closely models
my real program.  In the actual program, I am writing a library, callable
from any other program.  This means that the first time the lib function is
called, it must initialize things, and after that, it should just use the
old stuff (still around because of static variables).  In the demo below,
main() represents the main program calling my library and doit() represents
the interface to the library function.

#include <X11/Xlib.h>
#include <Xm/Xm.h>
#include <Xm/PushB.h>
#include <stdio.h>
#include <stdlib.h>

void bla(XtAppContext app, Widget top)
{
        Widget topone = top;		// in real prog, these are member vars
        XtAppContext theapp = app;	// of a class
        int junk = 0;
        Display *dis = XtOpenDisplay(theapp, NULL, NULL, NULL, NULL, 0, &junk,
                                        NULL);

        Widget box = XtVaCreateManagedWidget("blaaa", xmPushButtonWidgetClass,
                        topone,
                        XmNheight, 50,
                        XmNwidth, 50,
                        NULL);

        XtRealizeWidget(topone);
        for (int i=0;i<=25;i++)	// real prog returns when "Exit" button clicked
        {
                XEvent event;
                XtAppNextEvent(theapp, &event);
                XtDispatchEvent(&event);
        }
        XtDestroyWidget(box);
        XtCloseDisplay(dis);
}

// SetItUp - should be called once only
void SetItUp(XtAppContext *app, Widget *top)
{
        int junk = 0;
        (*top)=XtAppInitialize (app, "test", NULL, 0, &junk, NULL,
                NULL, NULL, 0);
}

// doit - some library function callable from the outside
void doit()
{
        static XtAppContext app;	// use these every time called
        static Widget top;

        static int setup = 0;

        if (!setup)
        {
                SetItUp(&app, &top);
                setup = 1;
        }
        bla(app, top);
}

// main - program which links to my library
main()
{
        for (int i=0;i<=20;i++)
        {
                doit();
                printf("sleeping...\n");//widget still on screen at this point
                sleep(5);
        }
}


The problem is that the widget does not go away until the new one is created.
(It is still on the screen -- unusuable -- during the "sleep" in the main prog,
despite the XtDestroyWidget call).

Anyone see something I'm missing?

Thanks very much.

(Please respond via email)
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67125
From: sdennis@osf.org
Subject: REPOST: Accelerators/Translations

I posted this a while ago and didn't recieve one reply, and now we
have another bug report on the same subject. Can anybody help me out?

How can you ensure that accelerators work the same independent of
case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
menu entry.

In ORA Vol. 6, in the section on accelerators it says "For information
on how to specify translation tables see Vol. 4...", this is so you
know what to put for the XmNaccelerator resource.  If you go to
Vol. 4 it says, "Likewise, if a modifier is specified, there is
nothing to prohibit other modifiers from being present as well. For
example, the translation:

	Shift<Key>q:	quit()

will take effect even if the Ctrl key is held down at the same time as
the Shift key (and the q key).

This implies to me that setting XmNaccelerator to Ctrl<Key>o should do
what I want, but it doesn't, it doesn't work if the user presses the
control key, the shift key, and the o key.

Is it possible to supply > 1 accelerator for a menu entry? Keep in
mind when answering this question that when using Motif you can't use
XtInstallAccelerators().

I am using Motif 1.1.3 on a DECstation 5000 but I have also tried it
on an HP using Motif 1.1.3 and 1.2.


-- 
**********************************************************************
Steve Dennis              Internet: sdennis@ann-arbor.applicon.slb.com
Software Engineer         Applicon Inc.            Ann Arbor, Michigan
Hail To The Victors!!!

Newsgroup: comp.windows.x
Document_id: 67126
From: webster@ucssun1.sdsu.EDU (paolini p)
Subject: ftp:UNIX-dos-UNIX


I'm an new to this.  Having found some files (public) to look into, I
ftp'ed them to a system I have access to.  I then used kermit to transmit
them via modem to my host computer, a PC-based file system.  I access
internet through modem access to a university mainframe.  From the PC
file server, I pull the files to a disk, and then pull them from disk
to a SGI Indigo (the SGI is not networked yet).  When I try to uncompress
and un-tar the files, they either come out as garbage or I get an error
in the tar process about directories being invalid.
What I'm wondering about is the transfer of UNIX files (compressed,
binary,ascii) about multiple platforms.  My guess is that it is the copy
to a 'dos' disk that is screwing things up.  Any help is appreciated.
bob

Newsgroup: comp.windows.x
Document_id: 67127
From: robert@cpuserver.acsc.com (Robert Grant)
Subject: Re: Animation with XPutImage()?

Hi everyone,

Does anyone know a good way to adjust colourmaps on the
fly (say during an animation) and prevent the current
set of colours from flickering?

Thanks,

Robert
robert@acsc.com


Newsgroup: comp.windows.x
Document_id: 67128
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: Re: How 2 Get Fontname from Fonstruct ???

In article <1993Apr20.105725@narya.gsfc.nasa.gov> 
   dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC) writes:
>
>Anyone know how an application can retrieve the name of the font from
>an application given an XFontStruct *? 
>Would XGetFontProperty work if I passed XA_FONT_NAME? 
>anyone know details of this?  Thanks in advance.
>Brian
>
>-- 
>Brian Dealy                |301-572-8267| It not knowing where it's at  
>dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
>!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan


Try this:

char *name=NULL;
unsigned long value;

if(XGetFontProperty(font, XA_FONT, value)) 
    name=XGetAtomName(dpy, value);

where dpy is your Display connection and font your XFontStruct pointer.

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
Document_id: 67130
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Title for XTerm

In article <1r3fe2INN10d@fbi-news.Informatik.Uni-Dortmund.DE>
markhof@ls12r.informatik.uni-dortmund.de (Ingolf Markhof) writes:
[...]
|> I have an
|> 
|> 	alias precmd echo -n '^[]2\;${HOST}:$cwd^G'
|> 
|> in my ~/.tcshrc. This is a special alias for tvtwm. 

I presume that you meant to say tcsh here ------^^^^^

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
Document_id: 67131
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Re: How do I find my AppContext?

On 19 Apr 1993 23:00:15 GMT, masc0442@ucsnews.sdsu.edu (Todd Greene) said:

> Is there an Xt call to give me my application context?
> I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
> whose first argument is the app_context.  What call can I use
> to give me this value?

I believe it's XtVaAppInitialize or something like that.

--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
Document_id: 67132
From: rlm@helen.surfcty.com (Robert L. McMillin)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

On 19 Apr 1993 16:59:12 -0400, graham@sparc1.ottawa.jade.COM (Jay Graham) said:

> I am developing an X (Xt,Xm) application that will include a graphics window
> of some sort with moving symbols among other things.  A pure X application
> could be implemented with Motif widgets, one of which would be an 
> XmDrawingArea for drawing with Xlib.  But I would like to take advantage of
> the Graphics Library (GL) available on our IBM RS/6000 (SGI's GL i believe).

> Is it possible to mix X and GL in one application program?
> Can I use GL subroutines in an XmDrawingArea or in an X window opened by me
> with XOpenWindow?

In SGI's distribution with their Indigo line (others as well, possibly),
they include source code for a GL widget that fits on top of Motif, and
one that's Xt based as well.  You may wish to ask IBM whether they
support this.
--

Robert L. McMillin | Surf City Software | rlm@helen.surfcty.com | Dude!
#include <std.disclaimer.h>


Newsgroup: comp.windows.x
Document_id: 67133
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: R4 Version of xrecplay

I have and use xrecplay for X11R5.  Does one exist for X11R4???

I have tried to contact one of the developers, Eric Swildens, at
ess@hal.com but he is no longer there and has no forwarding email
address.  Archie is no help either.

Any help would be appreciated.  Thanks,

---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=> IS     <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=> OUR    <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
Document_id: 67134
From: skelley@umiacs.umd.edu (Stephen Kelley)
Subject: Expose/Configure event handling (R4 vs R5)

I have two questions (well probably more...) about how Expose & Configure
events are handled.

I have an appl. which uses 1 window to draw in.  Since I give the user the
capability of scaling and zooming as well as allowing the window to be
resized, I made a translation table for the Expose & Configure events.
The Expose event calls my redraw method while the Configure event
calls my rescale method.  The rescale method invokes a "fake" Expose
event (actually just calls the redraw w/ an appropriate Expose struct)
to draw the data.

Quest 1.
When the appl. is compiled/linked w/ R4 (running in either R4 or R5 env.)
I get multiple (>4) redraws when the window gets uncovered or the size
is changed.  I assume I'm getting cascading events.  Is that right?
Any suggestions as to how to handle/trap events in a better way?

Quest 2.
When the appl. is compiled/linked w/ R5 I get no Expose events
whatsoever.  Do events and/or translation tables act differently in R5?

Thanks in advance

Steve
-- 
==========================================================================================

Steve Kelley	UMCP CS/UMIACS			Captain, I protest!
Internet:	skelley@umiacs.umd.edu		I am *NOT* a merry man! - Worf

Newsgroup: comp.windows.x
Document_id: 67135
From: brians@atlastele.com (Brian Sheets)
Subject: Looking for a filemanager under X11R5

Does anyone have a file manager that runs under UNIX/X11R5??


brians
-- 
Brian Sheets		    _   /|  	"TRUCK?! What truck?"
Support Engineer  	    \`o_O'    	 
Atlas Telecom Inc. 	      ( ) 	   -Raiders of the Lost Ark
brians@atlastele.com           U

Newsgroup: comp.windows.x
Document_id: 67136
From: rps@arbortext.COM (Ralph Seguin)
Subject: finding out state of state keys (eg, CapsLock and NumLock)

Hi.  I've looked in the FAQ and the O-Reilly books and was unable to
find (an easy) means of finding out the state of state keys such as
CapsLock and NumLock.  I can certainly track the events inside of my
window and set a boolean there, but what if CapsLock is pressed in
another window?  I looked at XGrabKey() and decided it was definitely
NOT what I wanted to do.  I could find no convenience function to tell
me that information.

My question is this:  Is there a means of determining what the state
of CapsLock and/or NumLock is?

An even more pointed question: Is there an easy means of making an X
keyboard act like a PC keyboard?  ie, CapsLock is active, and the user
presses shift-a, I'd like to get a lowercase 'a' instead of 'A'.

Any input is greatly appreciated. Please respond via email.  I will
repost a summary of my findings.

			Thanks, Ralph

Newsgroup: comp.windows.x
Document_id: 67137
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Store/Post events


store and reply of mouse and keyboard events
--------------------------------------------

To produce regression tests or automatic demo's
we would like to store all mouse and keyboard events
produced by a user. It should be possible to filter
the mouse and keyboard events from the server's queue
an to store them in a file.
This sequence of events, stored in a file, should be given 
to the server's queue as if a user is working.


1. Exists a tool that is capable to save and reply all
   mouse and keyboard events (where)?

2. Where one can catch these events to store them ?
   In our case the server's queue is on a X Terminal (HP).
   Where can we catch all events coming from a given
   server.
   If this is not possible, can we catch all events given
   to a certain client and how ?
   
3. Where one can send a stored sequence of events to simulate a user ?
   Is there a central dispatcher on the clients machine who manages
   all incoming events from a given server and how can we reach it ?


Thanks in advance

Ron.

Newsgroup: comp.windows.x
Document_id: 67138
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Animation with XPutImage()?

Hi, I'm new to this group so please bear with me!

Two years ago I wrote a Sunview application for fast animation
of raster files. With Sunview becoming rapidly obselete, I've
finally decided to rewrite everything from scratch in XView.
I put together a quick test, and I've found that XPutImage()
is considerably slower (factor of 2 on average?) than the
Sunview command pw_rop() which moves image data from memory
pixrects to a canvas. This was on a Sparc IPX. It seems that:
(1) the X protocol communication is slowing things down; or
(2) XPutImage is inefficient...or both! My question is, what
is the fastest way in X11R5 to dump 8 plane image data to
a window? Can I take advantage of the fact that the client is
running on the same machine as the server? Or am I stuck with
XPutImage() (in which case I might as well give up now...)?

All help appreciated...thanks!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67139
From: drand@spinner.osf.org (Douglas S. Rand)
Subject: Re: Drawing Lines (inverse/xor)

In article <1993Apr21.111919.5281@alf.uib.no> singg@alf.uib.no (Kurt George Gjerde) writes:

   In article <1993Apr19.191531.15865@news.media.mit.edu>, dyoung@media.mit.edu (David Young) writes:

     :
     :

   |>    XSetFunction( myDisplay, gc, GXxor);
   |>    XSetForeground( myDisplay, gc, drawIndex);
   |> 
   |> Then to draw I do:
   |> 
   |>    XDrawLine( myDisplay, XtWindow( drawingArea1), gc, x1, y1, x2, y2);
   |>    XFlush( myDisplay);
   |> 
   |> And when I'm all done, to return things to normal I do:
   |> 
   |>    XSetFunction( myDisplay, gc, GXcopy);
   |> 
   |> 
   |> What I'd like to happen is for the lines I draw to be the inverse of
   |> whatever I'm drawing over.  Instead what happens is I get white lines.  If
   |> the lines are over a white background - nothing shows up.  If the lines are
   |> over a black area - nothing shows up!  It's very strange.  But the GXxor
   |> function seems right - since if I do a rubber-banding box, it erases and
   |> redraws itself correctly (ie. not disturbing the underlying image).
   |> 
   |> Any suggestions what I'm doing wrong?
   |> 
   |> david


      Try change the GXxor to GXequiv.  I have to do this for programs that
      are to run on NCD terminals (on Sun terminals I have to change it
      back to GXxor)...

There is a small section in the O'Reilly Xlib books that describes
the right thing to do.  The key is to set the plane_mask in the
GC to the OR of the foreground and background pixel values.



--
Douglas S. Rand <drand@osf.org>		OSF/Motif Dev.
Snail:         11 Cambridge Center,  Cambridge,  MA  02142
Disclaimer:    I don't know if OSF agrees with me... let's vote on it.
Amateur Radio: KC1KJ

Newsgroup: comp.windows.x
Document_id: 67140
From: neuralog@NeoSoft.com (Neuralog)
Subject: Re: compiling on sun4_411

In article <1993Apr20.132914.907@aio.jsc.nasa.gov> mccoy@gothamcity.jsc.nasa.gov writes:
>In article qfe00WB2QzZ7EZ@andrew.cmu.edu, Wilson Swee <ws8n+@andrew.cmu.edu> () writes:
>|>    I have a piece of X code that compiles fine on pmax-ul4, pmax_mach, as
>|>well as sun4_mach, but whenever it compiles on sun4_411, it gives me 
>|>undefined ld errors:
>|>_sin
>|>_cos
>|>_pow
>|>_floor
>|>_get_wmShellWidgetClass
>|>_get_applicationShellWidgetClass
>|>
>|>The following libraries that I linked it to are:
>|>-lXaw -lXmu -lXt -lXext -lX11
>|>
>|>The makefile is generated off an imake template.
>|>Can anyone give me pointers as to what I'm missing out to compile on
>|>a sun4_411?
>
>Well, the first 2 are easy.  You need the math library.  Try adding -lm after
>-lX11.  Don't know if that's the whole problem but it's a start.
>
>---
I "think" you should try linking to /usr/lib/libXmu.a instead of 
-lXmu. At least that solved the problem for me!



Newsgroup: comp.windows.x
Document_id: 67141
From: neuralog@NeoSoft.com (Neuralog)
Subject: Authorization in OW 3.0 


Hello,

This is my first net letter, so forgive mistakes!

I have been plagued by problems (or lack of info) with
authorization in Open Windows 3.0 for a long while and
would like some help please!  I generally use strait
MIT X, and so don't use OW much, but when I share 
X software with others - bad news.

PROBLEM:

My friend who logs into his SSII trys to run my 
program that runs fine on my machine, however, 
my friend gets "client not authorized to connect 
to server" (or something close).  If OW is started
with the -noauth option all is well, but surely this
is not required in general!

Also, xhost + does not work, becoming root does not 
work, etc... 

Any help will be greatly appreciated!

Thanx

send replies to neuralog@neosoft.com or this news group


Newsgroup: comp.windows.x
Document_id: 67142
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: Program argument: geometry

#
#I have a question regarding the processing of program arguments
#such as the -geometry option. Since this is a standard X option, 
#I'm wondering wether I have to parse it manually or whether there
#is some predefined function that will do this for me?
#

If you are using the Intrinsics, it is parsed for you.  If you are working
at the Xlib level, you can parse it yourself or you can use the following
bit of code.

static XrmOptionDescRec options[] = {
	{"-geometry",	".geometry",	XrmoptionSepArg, (XPointer)NULL}
};

#define Number(x)	(sizeof(x)/sizeof(x[0]))
XrmParseCommand(db, options, Number(options), "MyApplication", &argc, argv);

Then use XrmGetResource() to retrieve the value and parse it using
XParseGeometry().

It is probably quicker to parse it yourself from argv, however, I much prefer
using the X resource management routines to do this.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67143
From: ramakris@csgrad.cs.vt.edu (S.Ramakrishnan)
Subject: Re: Mwm title-drag crashes X server (SIGPIPE)

In article <1993Apr20.144415.2153@ncar.ucar.edu> boote@eureka.scd.ucar.edu (Jeff W. Boote) writes:
  >In article <4378@creatures.cs.vt.edu>, ramakris@csgrad.cs.vt.edu (S.Ramakrishnan) writes:
  >> 
  >>    Environment:
  >>       mach/arch : sparc/sun4  (IPX)
  >>       OS	: SunOS 4.1.3
  >>       X11	: X11R5 (patchlevel 22)
  >>       Motif	: 1.2.2
  >> 
  >> I bring up X server using 'startx' and /usr/bin/X11/Xsun. The following sequence
  >> of actions crashes the X server (SIGPIPE, errno=32, 'xinit' reports that connexion 
  >> to X server lost):
  >
  >I had this problem as well - It had to do with the CG6 graphics card that
  >comes with the IPX.  What fixed the problem for me was to apply the "sunGX.uu"
  >that was part of Patch #7.  Patch #1 also used this file so perhaps you
  >didn't apply the one that came with Patch #7.
  >
  >jeff
  >-
  >Jeff W. Boote  <boote@ncar.ucar.edu>      *********************************
  >Scientific Computing Division             * There is nothing good or bad  *
  >National Center for Atmospheric Research  * but thinking makes it so.     *
  >Boulder                                   *                   Hamlet      *
  >                                          *********************************

Thanx, Jeff. You're a lifesaver. I imported the new sun GX emulator that came in
with patch #7. The problem has since disappeared.

Thanx to der (schoene) Mouse for his help too.

---
S Ramakrishnan, CS Dept, McBryde Hall, VaTech

Newsgroup: comp.windows.x
Document_id: 67144
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> Hi, I'm new to this group so please bear with me!
> 
> Two years ago I wrote a Sunview application for fast animation
> of raster files. With Sunview becoming rapidly obselete, I've
> finally decided to rewrite everything from scratch in XView.
> I put together a quick test, and I've found that XPutImage()
> is considerably slower (factor of 2 on average?) than the
> Sunview command pw_rop() which moves image data from memory
> pixrects to a canvas. This was on a Sparc IPX. It seems that:
> (1) the X protocol communication is slowing things down; or
> (2) XPutImage is inefficient...or both!

Using XPutImage, your source is maintained by the client and the
destination is maintained by the server, thus you incur the overhead
of transporting through whatever client-server communications
mechanism you are using.

Is it possible for you to maintain your source images in pixmaps?
These are maintained by the server, so copying them into a window is
much cheaper.

Also make sure you are not sending any unnecessary XSyncs, or running
in XSynchonize mode.
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
Document_id: 67145
From: rank@winf.uni-passau.de (Christian Rank)
Subject: Xsun not running on SPARCclassic

I've installed X11R5 with patches for Solaris 2.1 on our SPARCstation LX /
SPARCclassic pool. On the LX, X11R5 runs fine, but on the classics,
after giving the command startx, Xsun prints the following messages:
	WARNING: cg3_mmap: can't map dummy space!
	Mapping cg3c: No such device or address
and exits.

Does anybody know how to fix this problem?

Thanks in advance.

---
Christian Rank
Lehrstuhl fuer Wirtschaftsinformatik * Universitaet Passau *
Innstr. 29 * D-8390 Passau

Newsgroup: comp.windows.x
Document_id: 67146
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)


pyeatt@Texaco.com writes:

>> There is a widget already defined for GL.  It is the GlxMDraw (motif) or
>> GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
>> allows you to use GL calls to render into the window.  Look at glxlink,
>> glxunlink, glxgetconfig, and glxwinset in the man pages.

Where do I get hold of these widgets?

 	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
 	Du Pont Pixel Systems Ltd.

Newsgroup: comp.windows.x
Document_id: 67147
From: baldwa@antietam.adobe.com (Sanjay Baldwa)
Subject: X support for pressure sensitive tablet

Are there any vendors supporting pressure sensitive tablet/pen with X? I
will appreciate any pointers.

Thanks, Sanjay

--
baldwa@adobe.com  or  ..!decwrl!adobe!baldwa

Newsgroup: comp.windows.x
Document_id: 67148
From: bill@west.msi.com (Bill Poitras)
Subject: Re: Automated X testing

Mark D. Collier (mark@trident.datasys.swri.edu) wrote:
: Does anyone know what is available in terms of automated testing
: of X/Motif applications. I am thinking of a system which I could
: program (or which could record events/output) with our verification
: test procedures and then run/rerun each time we do regression
: testing. I am interested in a product like this for our UNIX
: projects and for a separate project which will be using OpenVMS.

A question like this is answered in the FAQ, about sharing X windows.
One of the answers is XTrap, a record and playback extenstion to X.  You
can find it at export.lcs.mit.edu:/contrib/XTrapV33_X11R5.tar.Z.

Does anyone know of a program which doesn't require an X extension?  Most
the the X servers we have at work have vendor extensions which we can't
modify, so XTrap doesn't help up.  There is X conferencing software at
mit, but I don't know how easy it would be to modify it to do record and
playback.

Any help would be appreciated.
--
+-------------------+----------------------------+------------------------+
| Bill Poitras      | Molecular Simulations Inc. | Tel (408)522-9229      |
| bill@msi.com      | Sunnyvale, CA 94086-3522   | FAX (408)732-0831      |
+-------------------+----------------------------+------------------------+
|FTP Mail           |mail ftpmail@decwrl.dec.com | Offers:ftp via email   |
|                   |Subject:<CR>help<CR>quit    |                        |
+-------------------------------------------------------------------------+

Newsgroup: comp.windows.x
Document_id: 67149
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: RE: need shading program example in X

#
#Do anyone know about any shading program based on Xlib in the public domain?
#I need an example about how to allocate correct colormaps for the program.
#
#Appreciate the help.
#

I don't know if this might help, but I've just started playing with a program
called POVRay (Persistance of Vision Raytracer) that also displays its output
via X Windows.  It does a fairly good job of allocating the colormap on my
Psuedo-Color 8-plane display.  I got the source from from a site in Canda.
The person I retrieved them from was David Buck (dbuck@ccs.carleton.ca).

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67150
From: toml@boulder.parcplace.com (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <C5r25y.HFz@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
|>
|>	Hi. I'm trying to figure out how to make a window manager
|>place the window where the create window command tells it,
|>regardless of what it may think is right. (my application has
|>reason to know better)
|>
|>	I don't want to set the override-redirect because I do
|>want all the embellishments that the window manager gives, I just
|>want the wm to accept my choice of location.


What "it may think is right" may be exactly what the user wants.
Assuming that your application "has reason to know better" is, IMHO,
anti-social.  If I start your application with a -geometry option are
you going to ignore that as well?

There's really no way to force a window manager to do much of anything
if it's managing your window.  You can ask, you can hint, but there's
no guarantee that you're going to get what you want.

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
Document_id: 67151
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <BADING.93Apr21134939@athene.cs.tu-berlin.de>, bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
|> 
|> try this after XCreateWindow:
|> -----------------------------
|> 
|> #include <X11/Xutil.h>
|> 
|> Display display;
|> Window window;
|> 
|> {
|>   XSizeHints *xsizehints = XAllocSizeHints ();
|>   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
|>   xsizehints->x = 42;
|>   xsizehints->y = 42;
|>   xsizehints->width = 100;
|>   xsizehints->height = 100;
|>   XSetWMNormalHints (display, window, xsizehints);
|>   XFree (xsizehints);
|> }
|> 
|> These hints tell the window manager that the position and size of the window
|> are specified by the users and that the window manager should accept these
|> values. If you use xsizehints->flags = PPosition | PSize, this tells the window
|> manager that the values are prefered values of the program, not the user.
|> I don't know a window manager that doesn't place the window like you prefer if
|> you specify the position and size like above.


You are right but PLEASE DON'T DO THIS.  It makes my brain hurt.
USPosition and USSize should ONLY be set if the USER specified the
position and size.

You say: "Tom, don't blow a gasket, what's the harm?"

Some window managers do very different things (besides positioning the window)
when they see USPosition rather than PPosition.

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
Document_id: 67152
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: build X11R5 with xlc 1.2.1 (Aix 3.2.3e)

>>>>> On 21 Apr 1993 03:49:16 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com
I  am  having  a  big problem trying to build MIT X11R5 with xlc 1.2.1
(the  one  bundled  with  AIX  3.2.3e).   Its almost the linker is not
working properly with shared libraries.

I've built X11R5 with no problem before .. but now its all  headaches.
For example, the xset client complains that libXmu doesnt have a bunch
of Xt routines and shr.o is missing (or  something  like  that).   The
build of libXmu DOES link in libXt  so I am really perplexed  what  is
going on.


....following up on this, the specific error I get is:
Could not load program ./xset 
Symbol XtVaSetValues in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtName in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtWindowOfObject in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtGetConstraintResourceList in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtDisplayToApplicationContext in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtAppSetTypeConverter in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtScreenDatabase in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtResolvePathname in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtCvtStringToFont in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtCallConverter in ../.././lib/Xmu/libXmu.a is undefined
Symbol XtDisplayStringConversionWarning in ../.././lib/Xmu/libXmu.a is undefined
Could not load library libXmu.a[shr.o]
Error was: Exec format error

--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 67153
From: m91nen@tdb.uu.se (Nils Engstrom)
Subject: Re: compiling on sun4_411

In article <Yfo=qfe00WB2QzZ7EZ@andrew.cmu.edu> Wilson Swee <ws8n+@andrew.cmu.edu> writes:
>_sin
>_cos
>_pow
>_floor

Link with '-lm' (math library).

>_get_wmShellWidgetClass
>_get_applicationShellWidgetClass

This is a bug in Sun's shared libraries. Linking with
'-assert nodefinitions' should do the trick.

	n

Newsgroup: comp.windows.x
Document_id: 67154
From: dla@se05.wg2.waii.com (Doug Acker)
Subject: Re: build X11R5 with xlc 1.2.1 (Aix 3.2.3e)

>>>>> On 22 Apr 1993 01:02:41 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com

>>>>> On 21 Apr 1993 03:49:16 GMT, dla@se05.wg2.waii.com (Doug Acker) said:
	Doug> NNTP-Posting-Host: se05.wg2.waii.com
	Doug> I  am  having  a  big problem trying to build MIT X11R5 with xlc 1.2.1
	Doug> (the  one  bundled  with  AIX  3.2.3e).   Its almost the linker is not
	Doug> working properly with shared libraries.

	Doug> I've built X11R5 with no problem before .. but now its all  headaches.
	Doug> For example, the xset client complains that libXmu doesnt have a bunch
	Doug> of Xt routines and shr.o is missing (or  something  like  that).   The
	Doug> build of libXmu DOES link in libXt  so I am really perplexed  what  is
	Doug> going on.


	Doug> ....following up on this, the specific error I get is:
	Doug> Could not load program ./xset 
	Doug> Symbol XtVaSetValues in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtName in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtWindowOfObject in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtGetConstraintResourceList in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtDisplayToApplicationContext in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtAppSetTypeConverter in ../.././lib/Xmu/libXmu.a is undefined








	Doug> Symbol XtScreenDatabase in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtResolvePathname in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtCvtStringToFont in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtCallConverter in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Symbol XtDisplayStringConversionWarning in ../.././lib/Xmu/libXmu.a is undefined
	Doug> Could not load library libXmu.a[shr.o]
	Doug> Error was: Exec format error


....  a  search  on  IBMLINK  revealed that this is similar to IX33890
(howervre this was closed USE).
--
Douglas L.Acker                Western Geophysical Exploration Products
____    ____     ____          a division of Western Atlas International Inc.
\   \  /   /\   /   /\         A Litton / Dresser Company
 \   \/   /  \ /   /  \        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  \  /   / \  /   /\   \       Internet  :  acker@wg2.waii.com
   \/___/   \/___/  \___\      Voice     :  (713) 964-6128

Newsgroup: comp.windows.x
Document_id: 67155
From: sharma@tiger.vill.edu (Sanjeev Sharma)
Subject: Positioning a window, under openlook.

Hi there netters,

I require a window to appear at a co-ordinates (0,0) (top left corner) of my
screen (root window). Could some windows guru out there help me on how to
go about doing this. I write the whole program which creates the window with
the image it displays - I require the image to appear at the top-left corner
so that I can grab it for recording on to video, using a MIniVas controller,
which expects the window at the same spot every time.

Thanks in advance.

sincerely,

Sanjeev Sharma

-- 
_____________________________________________________________________
Office:					     e_mail:	
   Deptt. of Computing Science		     	sharma@monet.vill.edu
   Villanova University			     (215)645-6463  

Newsgroup: comp.windows.x
Document_id: 67156
From: xyzzy@hal.gnu.ai.mit.edu (Daniel Drucker)
Subject: tape down selections

I just had an idea. I'm not sure if its been done and I'm just
remembering it unconsiously, but I thought that in dialog
boxes and whatever in windowing systems, there should be a
way to intuitivly set some things checked or unchecked or
filled in a certain way. My idea: tape. You know, like putting
a piece of tape over a light switch?
Just an idea, if you like it, use it.

-- 
Daniel Drucker   N2SXX          | xyzzy@gnu.ai.mit.edu
Forever, forever, my Coda.      | und2dzd@vaxc.hofstra.edu

Newsgroup: comp.windows.x
Document_id: 67157
From: jlong@b4pps40.Berkeley.EDU (John Long)
Subject: xman source

   Where can I get xman source?  I would like to get the binaries for
xman for an HP 9000/700, but I would settle for source.  

--

John O.F. Long, BNR, Inc.              |  "If there is no God, who pops
jlong@bnr.ca                           |  up the next Kleenex?"
#include <standard_disclaimer.h>       |                  Art Hoppe

Newsgroup: comp.windows.x
Document_id: 67158
From: agallagh@slate.mines.colorado.edu (GALLAGHER ANDREA J )
Subject: Detecting read-only colorcells?

[again, poseted for a friend]

Okay, I got such great response from my last question (thanks, everyone), 
lets try again:

How can I tell if a colorcell is read-only?

I want to use any read-only cells that are already in my colormap
once I start running out of allocatable cells, using some arbitrary
nearest color matching scheme to get those cells that come closest to
a requested color.

Once I determine if a cell is read-only, I assume I can then just request
an XAllocColor() with the exact same color specifications and it will 
then be flagged as 'used' by my application so that it doesn't later get
freed by someone else and allocated again as read-write to another
application.

So far, the only way I've figured out to do this is to write my own
error handler and just go ahead and request the cells colors, once my
colormap is all full up.  It should error out if the cell is non-shareable.
But life would be much easier if I could just detect the
read-only/shareable stuff directly...

Any ideas?

Noel (ngorelic@speclab.cr.usgs.gov)

Newsgroup: comp.windows.x
Document_id: 67159
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: Colormaps and Window Managers

In article <1993Apr15.155255.27034@thunder.mcrcim.mcgill.edu> mouse@thunder.mcrcim.mcgill.edu (der Mouse) writes:
>In article <C5DuHC.71p.1@cs.cmu.edu>, das+@cs.cmu.edu (David Simon) writes:
>
>>Can some one please explain to me why the following piece of code
>>causes twm (or tvtwm) to dump core [...]
>
>>In particular, I am interested in knowing whether this behavior is
>>caused by a bug in my reasoning, or if it is a bug in twm.
>
>If *anything* a client does causes twm to dump core, it's a bug in twm.
>Window managers should never *ever* crash.

Would if only it were true ...

If only MIT would fix the !@&$^*@ twm "InstallWindowColormaps()" crash bug
once and for all, then I could say that I've (almost) unable to crash either
"twm" or "tvtwm", which would be a remarkable feat - and most desirable to
boot.  I mean, this bug has only been reported, oh, a zillion times by now ...

Now *servers*, on the other hand ... (want to crash an OpenWindows 3.0 "xnews"
server at will?  Just do an 'xbiff -xrm "XBiff*shapeWindow: on"'.  Blammo.)

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
Document_id: 67160
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: tvtwm & xsetroot, X11R5 and SPARCstation 10 keyboard

In article <1r1q5g$cv4@genesis.ait.psu.edu> barr@pop.psu.edu (David Barr) writes:
>In article <MAILQUEUE-101.930420145015.384@oak.shu.ac.uk> D.Haywood@sheffield-hallam.ac.uk writes:
>>  Environment: Sun SPARC 10, SunOs 4.1.3.  X11R5 patch level 23.  My X
>>process is started by xdm.
>
>Okay, that's good.  I'm typing this from exactly the same setup.
>(US-UNIX layout keyboard)  I did install the sunkbd patch, though.
...
>> ii) When I open an Xterm on the Sparc 10, not all of the keys are recognised
>>     and some keys on the keyboard are not sending the correct characters.
>
>Did you install the sunkbd patch?  It's in the contrib directory on export.
>All the keys on my keyboard send events properly, except the following:
>The End, PageUp, PageDown on the 6-key cluster aren't recognized.
>Even the compose key works.  (Though I can't seem to get the composed
>characters in an xterm to get passed.)
>
>Anyone have a fix for the last two?

I don't know anything about a "sunkbd" patch, but I use the following
.Xmodmap file (run from .xinitrc via "xmodmap $HOME/.Xmodmap", of course) for
my Type-5 UNIX keyboard:  (It's a bit "brute force", however.)

------------------------------------------------------------------------------
!
! Sun Type-5 UNIX keyboard remappings 
!
! This remaps the arrow keys properly
!
! By default, the arrow keys on the keypad (Shift-8 = Up, Shift-4 = Left,
! Shift-6 = Right, and Shift-2 = Down) work, but the arrow keys are not
! assigned to any keysym
!
keycode 27 = Up
keycode 31 = Left
keycode 34 = Down
keycode 35 = Right

!
! Now we want the Back Space key to emit the "Delete" keysym
!
keycode 50 = Delete

!
! Other random mappings that aren't on by default
!
! SysRq/Print Screen key
keycode 29 = SunSys_Req Print
! Break/Pause key
keycode 28 = Break Pause
! Alt Graph key
keycode 20 = Mode_switch
! PageUp key
keycode 103 = Prior
! PageDown key
keycode 130 = Next
! Insert key
keycode 51 = Insert
!
! Home, End keys = ???
!
! Open Look Functions
!
! Stop key (SunStop keysym == Cancel)
keycode 8 = SunStop
! Again key (SunAgain == Redo)
keycode 10 = SunAgain
! Props key 
keycode 32 = SunProps
! Undo key (SunUndo == Undo)
keycode 33 = SunUndo
! Front key
keycode 56 = SunFront
! Copy key
keycode 58 = SunCopy
! Open key
keycode 79 = SunOpen
! Paste key
keycode 80 = SunPaste
! Find key (SunFind == Find)
keycode 102 = SunFind
! Cut key
keycode 104 = SunCut

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
Document_id: 67161
From: venkatg@grace.CS.ORST.EDU (Gopal Venkatraman)
Subject: question regarding overlaying of graphics

Hello...

I wonder if some one can suggest an answer to the following question:
I am a total X novice and would appreciate any suggestions you may have.

I am trying to create a simple drawing tool....

       __________
       |        |
       |     ___|___
       |_____|__|  |
             |	   |
	     |_____|

Let's say I have two rectangles on the canvas(see above) 
one intersecting the other...
Now, I would like to delete one of the rectangles.
The way I do it is to create another GC wherein I use the
GXxor logical function and simply redraw the rectangle using the newly
created graphics context thus deleting it for all apparent purposes.
A problem with this approach is that at the points of intersection the pixel 
locations belonging to the other rectangle also become white, which is 
something that should be avoided.

Is there any way I can avoid this problem without having to redraw the other
rectangle too?
I also would not like to generate an expose event for the affected area
as this degrades performance very badly...


Thank you...
Gopal

Newsgroup: comp.windows.x
Document_id: 67162
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-Terminal question

A simple question to all the Xperts:

Is it possible to use several X-Terminals
with only one mouse and one keyboard?

Any suggestions?

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 67163
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Subject: NCSA Mosaic for X 1.0 available.

Version 1.0 of NCSA Mosaic for the X Window System, a networked
information systems and World Wide Web browser, is hereby released:

file://ftp.ncsa.uiuc.edu/Mosaic/xmosaic-source/xmosaic-1.0.tar.Z
                            .../xmosaic-binaries/xmosaic-sun.Z
                            .../xmosaic-binaries/xmosaic-sgi.Z
                            .../xmosaic-binaries/xmosaic-ibm.Z
                            .../xmosaic-binaries/xmosaic-dec.Z
                            .../xmosaic-binaries/xmosaic-alpha.Z
                            .../xmosaic-diffs/xmosaic-0.13-1.0-diffs.Z

NCSA Mosaic provides a consistent and easy-to-use hypermedia-based
interface into a wide variety of networked information sources,
including Gopher, WAIS, World Wide Web, NNTP/Usenet news, Techinfo,
FTP, local filesystems, Archie, finger, Hyper-G, HyTelnet, TeXinfo,
telnet, tn3270, and more.

This release of NCSA Mosaic is known to compile on the following
platforms:

  SGI (IRIX 4.0.2) 
  IBM (AIX 3.2)
  Sun 4 (SunOS 4.1.3 with stock X11R4 and Motif 1.1, and GCC).
  DEC Ultrix.
  DEC Alpha AXP (OSF/1).

Documentation is available online.

Changes since 0.13 include:

 o Added new resource, gethostbynameIsEvil, for Sun's that
   coredump when gethostbyname() is called to try to find out what
   their own names are. (Command-line flag is -ghbnie.) 
 o Explicitly pop down all dialog boxes when document view
   window is closed, for window managers too dull to do so
   themselves. 
 o Better visited anchor color for non-SGI's. 
 o Added .hqx and .uu to list of file extensions handled like .tar files. 
 o Added 'Clear' button to Open box, to allow more convenient
   cut-n-paste entries of URL's. 
 o New resource 'autoPlaceWindows'; if set to False, new document
   view windows will not be automatically positioned by the
   program itself (but it's still up to your window manager just how
   they're placed). 
 o Command-line flags -i and -iconic now have desired effect (new
   resource initialWindowIconic can also be used). 
 o Gif-reading code is a little more bulletproof. 
 o Obscure infinite loop triggered by extra space in IMG tag fixed. 
 o Eliminated nonintuitive error message when image can't be read
   (inlined NCSA bitmap is indication enough that something's not
   right for authors, and readers can't do anything about bad images
   in any case). 
 o Obscure parsing bug (for constructs like <ADDRESS><A
   HREF=...>text<A></ADDRESS>) fixed. 
 o Fixed mysterious stupid coredump that only hits Suns. 
 o Fixed stupid coredump on URL's like '://cbl.leeds.ac.uk/'. 
 o Fixed buglet in handling rlogin URL's. 
 o New support for Solaris/SYSVR4 (courtesy
   dana@thumper.bellcore.com). 
 o Better support for HP-UX 8.x and 9.x (courtesy
   johns@hpwarf.wal.hp.com). 
 o Better support for NeXT (courtesy scott@shrug.dur.ac.uk). 
 o Some miscellaneous portability fixes (courtesy
   bingle@cs.purdue.edu). 
 o Miscellaneous bug fixes and cleanups. 

Comments, questions, and bug reports should be sent to
mosaic-x@ncsa.uiuc.edu.  Thanks in advance for any feedback you can
provide.

Cheers,
Marc

--
--
Marc Andreessen
Software Development Group
National Center for Supercomputing Applications
marca@ncsa.uiuc.edu

Newsgroup: comp.windows.x
Document_id: 67164
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: WANTED: Info on Dedicated X Server Kernel for Sun3/100 Series


> If anyone has any information about the existence or location of a
> dedicated X server kernel for the Sun3, please send email.  I am
> trying to put some neglected Sun3s to good use but they don't have
> enough memory for SunOS 4.1.1.  Thanks in advance for any help.

	There is a free program called 'xkernel' which does just that.
It is by Seth Robertson (seth@ctr.columbia.edu).  It takes a sun 3 and
boots a limited kernel which allows you to run X.  We converted 4
machines over this semester and the speedup is enormously appreciable
-- I find them faster than an NCD 15inch black&white XTerminal that we
are playing with, and a bigger screen to boot!  As a matter of fact,
the department just bought some old sun3s at an auction to convert!

} Xkernel is available for anonymous ftp from ftp.ctr.columbia.edu
} [128.59.64.40] in /Xkernel/Xkernel.shar (/Xkernel is a symlink to the
} latest version of Xkernel)

	Note that the compiled version which is available is for the
sun 3/50, but compiling to work for a sun 3/1xx should be quite easy.

	I am not connected with xkernel except as a satisfied
installer and user 8).  I may be able to answer questions; feel free
to email me.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  230-   All transfers are disclaimed by my host name and boss's address.
  230-   If you don't like this policy, disconnect now!


Newsgroup: comp.windows.x
Document_id: 67165
From: dcr@mail.ast.CAm.ac.UK (Derek C. Richardson)
Subject: Re: Animation


I think you tried to send me a message re: the animation query
I posted to comp.windows.x. I've appended what I received below.
If you can remember what you typed, I'd appreciate another attempt!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------

----- Begin Included Message -----

From aol.com!Postmaster Thu Apr 22 04:47:31 1993
Received: by cast0.ast.cam.ac.uk (UK-Smail 3.1.25.1/2)
  id <m0nlsG0-0001MPC@cast0.ast.cam.ac.uk>; Thu, 22 Apr 93 04:47 BST
Received: from sco1.prod.aol.net by hp81.prod.aol.net with SMTP
	(1.37.109.4/16.2) id AA19251; Wed, 21 Apr 93 23:49:16 -0400
From: Postmaster@aol.com
X-Mailer: America Online Mailer
To: dcr@mail.ast.cam.ac.uk
Subject: Returned Mail Unknown Member 
Date: Wed, 21 Apr 93 23:46:36 EDT
Message-Id: <9304212346.tn60988@aol.com>
Status: R


 The mail you sent could not be delivered; it was addressed to an unknown user.The text you sent follows...

Hi, I'm new to this group so please bear with me!

Two years ago I wrote a Sunview application for fast animation
of raster files. With Sunview becoming rapidly obselete, I've
finally decided to rewrite everything from scratch in XView.
I put together a quick test, and I've found that XPutImage()
is considerably slower (factor of 2 on average?) than the
Sunview command pw_rop() which moves image data from memory
pixrects to a canvas. This was on a Sparc IPX. It seems that:
(1) the X protocol communication is slowing things down; or
(2) XPutImage is inefficient...or both! My question is, what
is the fastest way in X11R5 to dump 8 plane image data to
a window? Can I take advantage of the fact that the client is
running on the same machine as the server? Or am I stuck with
XPutImage() (in which case I might as well give up now...)?

All help appreciated...thanks!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------



----------------------- Headers ------------------------
>From uupsi7!expo.lcs.mit.edu!xpert-mailer Wed Apr 21 23:46:29 1993 remote from aolsys
Received: from uupsi7 by aolsys.aol.com id aa23625; Wed, 21 Apr 93 23:39:41 EDT
Received: from EXPO.LCS.MIT.EDU by uu7.psi.com (5.65b/4.0.071791-PSI/PSINet) via SMTP;
        id AA16562 for ; Wed, 21 Apr 93 19:44:00 -0400
Received: by expo.lcs.mit.edu; Wed, 21 Apr 93 13:58:06 -0400
Received: from ENTERPOOP.MIT.EDU by expo.lcs.mit.edu; Wed, 21 Apr 93 13:58:05 -0400
Received: by enterpoop.MIT.EDU (5.57/4.7) id AA15705; Wed, 21 Apr 93 13:57:34 -0400
Received: from USENET by enterpoop with netnewsfor xpert@expo.lcs.mit.edu (xpert@expo.lcs.mit.edu);contact usenet@enterpoop if you have questions.
To: xpert@expo.lcs.mit.edu
Date: Wed, 21 Apr 1993 15:46:20 GMT
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Message-Id: <1993Apr21.154620.16330@infodev.cam.ac.uk>
Organization: Institute of Astronomy, Cambridge
Reply-To: dcr@mail.ast.cam.ac.uk
Subject: Animation with XPutImage()?


----- End Included Message -----


Newsgroup: comp.windows.x
Document_id: 67166
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Re: Animation with XPutImage()?

In article 4867@mlb.semi.harris.com, jmartin@egret.imagesRus (John Martin) writes:
> Animation is most frequently done by copying the the client resident XImages into 
> server resident Pixmap(s) using XPutImage.  Once this is done, the original XImages
> can be deleted and the animation loop can be performed using XCopyArea from the Pixmaps to the windows drawable.
> 
> Hope this is helpfull.
> 
> John
> 

I just implemented this and it seems I can just about achieve the display
rates (20 400x400x8 frames / sec on IPX) that I get with Sunview, though
it's a bit "choppy" at times. Also, loading the data, making an XImage,
then XPut'ing it into a pixmap is a bit cumbersome, so the animation is
slower to load than with Sunview. Is there a better way to load in the
data?

rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>  If you need speed, and your client can run on the same host as the X server,
>  you should use the shared memory extension to the sample X server (MIT-SHM).
>  xdpyinfo  will tell you if your server has this extension. This is certainly
>  available with the sample MIT X server running under SunOS.
>  A word of warning: make sure your kernel is configured to support shared
>  memory. And another word of warning: OpenWindows is slower than the MIT
>  server.
>  I have written an imaging tool (using XView for the GUI, by the way) which
>  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
>  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
>  animations.
>
>				Regards,
>
>					Richard Gooch....

Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
Nick Kisseberth) looks interesting, but I need someone to point me to some
documentation. Is this method likely to give better results than server-
resident pixmaps? I'd also be interested in looking at the XView code
mentioned above...

Thanks for the help so far. If I get something decent put together, I'll
definitely post it to the Net.

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67167
From: kurt@dna.lth.se (Kurt Swanson)
Subject: What determines the default X font?

I'm running X under openwindows 3.  Normal X programs not having a
font specified always show up in the same font - until I change the
fontpath, and restart windows - then a new default font is used until
the next change.  I can't seem to figure out how it chooses.  Is there
some way to set this?  Possibly something in .Xdefaults???

Please reply in direct email - I summarize.
-- 
Kurt Swanson, Dept. of Computer Science,
Lunds universitet.  Kurt.Swanson@dna.lth.se

Newsgroup: comp.windows.x
Document_id: 67168
From: rcb5@wsinfo03.win.tue.nl (Richard Verhoeven)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
> 
> try this after XCreateWindow:
> -----------------------------
> ...
>
>   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
>   ...
>   XSetWMNormalHints (display, window, xsizehints);
>   ...
>
> These hints tell the window manager that the position and size of the window
> are specified by the users and that the window manager should accept these
> values. If you use xsizehints->flags = PPosition | PSize, this tells the window
> manager that the values are prefered values of the program, not the user.
> I don't know a window manager that doesn't place the window like you prefer
> if you specify the position and size like above.

Sorry, but olwm and tvtwm don't do it. They place the title at that position
and the window at a position below it.

This becomes a problem when you want a program to be able to save its current
configuration and restore is later.

Currently, my solution is:

	XCreateWindow(...);
	XSetWMProperties(..);
	XMapWindow(...);
	XFlush(...);
	XMoveWindow(...);


It works with olwm, but is less than elegant. All this leaves me wondering
if I'm overlooking something obvious.

Richard.


Newsgroup: comp.windows.x
Document_id: 67169
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Overriding Default Behaviour

Usually when I start up an application, I first get the window outline
on my display. I then have to click on the mouse button to actually
place the window on the screen. Yet when I specify the -geometry 
option the window appears right away, the properties specified by
the -geometry argument. The question now is:

How can I override the intermediary step of the user having to specify
window position with a mouseclick? I've tried explicitly setting window
size and position, but that did alter the normal program behaviour.

Thanks for any hints
---> Robert

PS: I'm working in plain X.



******************************************************************************
* Robert Gasch	       * Der erste Mai ist der Tag an dem die Stadt ins      *
* Oracle Engineering   * Freihe tritt und den staatlichen Monopolanspruch    *
* De Meern, NL	       * auf Gewalt in Frage stellt                          *
* rgasch@nl.oracle.com *                           - Einstuerzende Neubauten *
******************************************************************************

Newsgroup: comp.windows.x
Document_id: 67170
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Animation with XPutImage()?


In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:

|> Two years ago I wrote a Sunview application for fast animation
|> of raster files. With Sunview becoming rapidly obselete, I've
|> finally decided to rewrite everything from scratch in XView.
|> I put together a quick test, and I've found that XPutImage()
|> is considerably slower (factor of 2 on average?) than the
|> Sunview command pw_rop() which moves image data from memory
|> pixrects to a canvas. This was on a Sparc IPX. It seems that:
|> (1) the X protocol communication is slowing things down; or
|> (2) XPutImage is inefficient...or both! My question is, what

The protocol has to move the whole image from process memory to server
memory, this is the hog. The conversions in the XPutImage() are
fast.

|> is the fastest way in X11R5 to dump 8 plane image data to
|> a window? Can I take advantage of the fact that the client is
|> running on the same machine as the server? Or am I stuck with

Yes, by utilizing the MIT-SHM extension, that provides an XPutImage
derivate that uses shared memory. Fine fast.

|> XPutImage() (in which case I might as well give up now...)?
|> 

No. You can still XPutImage all of the frames onto pixmaps (thus moving
them to server memory) and then replay them fastest using XCopyArea()
BUT be aware, this is a major server memory bummer !

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67171
From: pmcgilla@hp.uwsuper.edu (Mr. Patrick L. McGillan)
Subject: DXF format display

HI,
  I am looking for an X app that will display dxf files. These are
  ascii text files that are normally associated with autocad. I have
  a large 9 meg. file of the state of wisconsin that i would like to
  views and or cut into smaller chunks.

  I also would like to find a complete file layout for dxf files.

  Any information would be appreciated.


--
Patrick L. McGillan
Computer Systems Specialist
University Of Wisconsin     Ph:  (715) 394-8191
Superior, Wisconsin         pmcgilla@uwsuper.edu


Newsgroup: comp.windows.x
Document_id: 67172
From: eks@daimi.aau.dk (Eigil Krogh S|rensen)
Subject: X-window for PC

If a X-window package exists, that runs om PC, DOS (and maybe MS-windows)
I would be very happy to hear about it.

Thanx in advance.

  -- Eigil Krogh Sorensen


Newsgroup: comp.windows.x
Document_id: 67173
From: operator@mast.mast.queensu.ca (Me)
Subject: Vanishing font problem....

   A colleague has a bizarre font problem on his new MIPS workstation.
When he first logs on (via xdm), he has a single xterm window appear
with the mwm window manager running.  In this configuration, X windows
applications (particularly xdvi) work fine.  However, if he opens up a
second xterm application, suddenly xdvi cannot start in either window,
giving the error: Unable to load ISO 8859-1 font.

   The only difference between the two xterm windows is that the initial
one references a different name in the Xsession file, with prettier
colours and other slight changes.  Further investigation shows that only
opening a default xterm causes this behaviour, and more significant, ALL
X applications can no longer load any fonts if they are invoked from the
command line in either window.  If I start the xterm with a different
font (using the -fn option), no problems.  It would seem that the
default xterm is loading a font which somehow causes the server to lose
all of its fonts.  Note: xlsfonts in either window shows all of the
fonts available, so there doesn't appear to be a problem in the font
directories/hash-tables.

   Other than rewriting the XTerm app-defaults file to use a different
font and hope for the best, does anyone have any ideas?

More info:  This is the most recent MIPS workstation (R4000 I believe),
       with the most current operating system and running X11R5.
       It is not mwm's fault, as the same problems occur under twm, etc.

Newsgroup: comp.windows.x
Document_id: 67174
From: sp1henhj@edit (Henrik Balthazar Hjort)
Subject: PostScript on X-terminal


 I have a problem when I'm using PostScript. When I am working local
on a SUN SPARCstaton IPC the PostScript works good, but when I connect
to the SUN from a X-terminal I just get error messages that the
PostScript cannot connect to the news-display.

 Why doesn't PostScript work on an X-terminal?

 Is there any way to make it work?


 Henrik "Henrik Hjort" Hjort




Newsgroup: comp.windows.x
Document_id: 67175
From: scornd4@technet.sg (HIANLEONG ONG)
Subject: Re: ..Image processing Packages under X..

Prateek Mishra (mishra@cs.sunysb.edu) wrote:

: I am looking for a package that implements standard
: image processing functions (reading/writing from
: standard formats), clipping, zoom, etc. implemented
: under X. Both public domain and private packages
: are of interest. The particular application area I
: have in mind is medical imaging, but a package meant
: for a more general context would be acceptable.

: Please reply to me; I will summarize on the net if
: there is general interest.

: - prateek mishra
: mishra@sbcs.sunysb.edu 


keep tabs with the FAQ in sci.image.processing. There is quite a
comprehensive compilation of image processing s/w (X included). I've
ftp'ed ImageMagick and its great. Check out the FAQ its all there.

Newsgroup: comp.windows.x
Document_id: 67176
From: jdhuse@sedona.intel.com (Jon Dhuse~)
Subject: a strange problem with text


Hello,

I am testing a port of X11R5 to Coherent, a unix clone OS for Intel architecture
machines.  I am seeing a strange problem with text in clients like xvt (a simple
terminal emulator program).

The problem manifests it self when the shell echoes typed characters back to the
server for display, one at a time.  The characters appear to be too closely
spaced, with the result being that the 2nd character echoed destroys the 
rightmost edge of the first character, then the 3rd character destroys the 
rightmost edge of the second character, and so on.  It looks like there is an
invisible boundary around a character which obscures a portion of the previous
character.  There is no problem between the characters when the shell returns
a complete line of text... only when the output is a series of individual
characters.

If anyone has any ideas what the problem might be, or where I should look to
find it, it would be much appreciated.

Regards and thanks, Jon Dhuse.

-- 
 Jon Dhuse              |     Internet: jdhuse@sedona.intel.com
 Intel  Corp.  CH3-69   |     Phone: (602)-554-2685
 5000 W. Chandler Blvd. | Any opinions expressed are my own,
 Chandler, AZ  85226    | not my employer's.


Newsgroup: comp.windows.x
Document_id: 67177
From: egreshko@twntpe.cdc.COM (Ed Greshko)
Subject: cxterm on MIPS


Hello,

	Has anyone built cxterm (X11R5) on a MIPS platform.  If you have,
please send me email as I don't read this group.  I've a bunch of questions...
:-)

				Thanks

Edward M. Greshko			Control Data Taiwan
Voice: +886-2-715-2222 x287		6/F, 131 Nanking East Road, Section 3
FAX  : +886-2-712-9197			Taipei, Taiwan R.O.C


Newsgroup: comp.windows.x
Document_id: 67178
From: trevor@telesoft.com (Trevor Bourget @ignite)
Subject: Re: REPOST: Accelerators/Translations

In <sdennis.735423404@aa.cad.slb.com> sdennis@osf.org writes:

>I posted this a while ago and didn't receive one reply, and now we
>have another bug report on the same subject. Can anybody help me out?

The problem is that Motif uses XGrabKey to implement menu accelerators,
and these grabs are specific about which modifiers apply.  Unfortunately,
the specification for XGrabKey doesn't allow AnyModifier to be combined
with other modifiers, which is exactly what would be desired in this case:
"Ctrl Any<Key>q".

>In ORA Vol. 6, in the section on accelerators it says "For information
>on how to specify translation tables see Vol. 4...", this is so you
>know what to put for the XmNaccelerator resource.  If you go to
>Vol. 4 it says, "Likewise, if a modifier is specified, there is
>nothing to prohibit other modifiers from being present as well. For
>example, the translation:
>	Shift<Key>q:	quit()
>will take effect even if the Ctrl key is held down at the same time as
>the Shift key (and the q key).

This is true for accelerators and mnemonics, which are implemented using
event handlers instead of grabs; it's not true for menu accelerators.  If
you're a Motif implementor, I'd suggest lobbying to get the Xlib semantics
changed to support the feature I described above.  Otherwise, change the
documentation for menu accelerators to properly set the user's
expectations, because menu accelerators are NOT the same thing as
translations.

>Is it possible to supply > 1 accelerator for a menu entry?

If you mean "menu accelerator", no it's not possible.  That's according to
the definition of the XmNaccelerator resource in the XmLabel manual page.

>Keep in mind when answering this question that when using Motif you
>can't use XtInstallAccelerators().

I can't think of a reason why not.

>How can you ensure that accelerators work the same independent of
>case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
>menu entry.

There is a workaround for Motif users.  In addition to the normal menu
accelerator you install on the XmPushButton[Gadget], set an XtNaccelerators
resource on the shell (TopLevel or Application).  Install the shell's
accelerators on itself and all of its descendants with
XtInstallAllAccelerators (shell, shell).

For example,

  applicationShell - mainWindow - menuBar - fileCascade
					  -- filePulldown - openPushbutton
							  - exitPushbutton

  *openPushbutton.accelerator = Ctrl<Key>O
  *openPushbutton.acceleratorText = Ctrl+O
  *exitPushbutton.accelerator = Ctrl<Key>Q
  *exitPushbutton.acceleratorText = Ctrl+Q

  *applicationShell.accelerators = #override\n\
    Ctrl<Key>O: PerformAction(*openPushbutton, ArmAndActivate)\n\
    Ctrl<Key>Q: PerformAction(*exitPushbutton, ArmAndActivate)

You have to write and add the application action PerformAction, which you
can implement by using XtNameToWidget on the first argument and then
XtCallActionProc with the rest of the arguments.

I tested out something similar to this.  To shorten development time, I
used TeleUSE's TuNinstallAccelerators resource to install the accelerators
on the shell, and I directly invoked the Open and Quit D actions instead
of asking the pushbuttons to do it for me, but the more general approach I
described above should work.

-- Trevor Bourget (trevor@telesoft.com)

Newsgroup: comp.windows.x
Document_id: 67179
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <1993Apr22.092830.2190@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> I just implemented this and it seems I can just about achieve the display
> rates (20 400x400x8 frames / sec on IPX) that I get with Sunview, though
> it's a bit "choppy" at times. Also, loading the data, making an XImage,
> then XPut'ing it into a pixmap is a bit cumbersome, so the animation is
> slower to load than with Sunview. Is there a better way to load in the
> data?
> 
> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
> >  If you need speed, and your client can run on the same host as the X server,
> >  you should use the shared memory extension to the sample X server (MIT-SHM).
> >  xdpyinfo  will tell you if your server has this extension. This is certainly
> >  available with the sample MIT X server running under SunOS.
> >  A word of warning: make sure your kernel is configured to support shared
> >  memory. And another word of warning: OpenWindows is slower than the MIT
> >  server.
> >  I have written an imaging tool (using XView for the GUI, by the way) which
> >  yields over 10 frames per second for 512*512*8 bit images, running on a Sparc
> >  IPC (half the cpu grunt of an IPX). This has proved quite sufficient for
> >  animations.
> >
> >				Regards,
> >
> >					Richard Gooch....
> 
> Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
> Nick Kisseberth) looks interesting, but I need someone to point me to some
> documentation. Is this method likely to give better results than server-
> resident pixmaps? I'd also be interested in looking at the XView code
> mentioned above...
> 
> Thanks for the help so far. If I get something decent put together, I'll
> definitely post it to the Net.
> 

  The MIT tapes come with documentation written by Keith Packard on the Shared
  Memory Extension to X. Look in:  mit/doc/extensions/mit-shm.ms
  I found this invaluble. Unfortunately, there is a bit of work to set up the
  shared memory segments, making an XImage from it, etc. Also, there is an
  extension query to determine if the server supports it, but you still need to
  test if the server is running on the same host and if shared memory is enabled
  in the kernel. I have written layers of convience routines which make all this
  transparent.
  As for the XView code, well, I doubt that would be considered interesting.
  The interesting stuff is done in a C object library. People interested in this
  code can Email me.

				Regards,

					Richard Gooch,
					rgooch@atnf.csiro.au

Newsgroup: comp.windows.x
Document_id: 67180
From: egan@phony25.cc.utah.edu (Egan F. Ford)
Subject: Need Help with key bindings

I need help binding some value to the HOME and END keys on my keyboard.  I have an
rs/6000 w/ aix3.2.3ext running X11R5pl19 mit dist.  I'm using a PC running eXceed
for windows as my xterminal.  The HOME and END keys do not send a value, and my
application needs them to be defined.  I used this in my Xdefaults to define the
keys:

varnet*VT100.Translations: #override \
    <Key>Home: string("\033[8~") \n\
    <Key>End: string("\033[7~")

Then I xterm -name varnet.  This works perfect, however the 7 and the 1 key on my
keypad are also defined as \033[8~ and \033[7~.

Any ideas?  Help please.

Thanks.


-- 
Egan F. Ford
egan%phony25.cc.utah.edu@hellgate.utah.edu

Newsgroup: comp.windows.x
Document_id: 67181
From: marc@pinet.aip.org (Marc Wiener)
Subject: core dump from getcons(?)

We are getting a memory fault and a core dump whenever we end a Motif
session under Ultrix 4.3, running on a DEC 5000/240. An examintion of the 
core file leads us to believe it's from getcons. Does anyone know what
this is all about?

marc
-- 
Marc Wiener                    |    marc@aip.org
American Institute of Physics  |    
500 Sunnyside Blvd.            |    Voice: (516)576-2329 
Woodbury, NY 11797             |    Fax:   (516)349-7669

Newsgroup: comp.windows.x
Document_id: 67182
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Re: Animation with XPutImage()?

In article 17886@nrao.edu, rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>   The MIT tapes come with documentation written by Keith Packard on the Shared
>   Memory Extension to X. Look in:  mit/doc/extensions/mit-shm.ms
>   I found this invaluble. Unfortunately, there is a bit of work to set up the
>   shared memory segments, making an XImage from it, etc. Also, there is an
>   extension query to determine if the server supports it, but you still need to
>   test if the server is running on the same host and if shared memory is enabled
>   in the kernel. I have written layers of convience routines which make all this
>   transparent.
>   As for the XView code, well, I doubt that would be considered interesting.
>   The interesting stuff is done in a C object library. People interested in this
>   code can Email me.
> 
> 				Regards,
> 
> 					Richard Gooch,
> 					rgooch@atnf.csiro.au

Thanks for docs info. It turns out that if I leave out colormap updates between
frames and use tvtwm, my tests with 100 400x400x8 frames on an IPX using the
server-resident pixmap method give an astonishing *50* frames per second! And
VERY smooth. I think I've found the best solution (thanks to the generous help
on this group!) However, I may have colormap questions later.....

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67183
From: Rob Earhart <earhart+@CMU.EDU>
Subject: Re: Animation with XPutImage()?

dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
> Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
> Nick Kisseberth) looks interesting, but I need someone to point me to some
> documentation. Is this method likely to give better results than server-
> resident pixmaps? I'd also be interested in looking at the XView code
> mentioned above...

  There's documentation on how to use the shared memory extension in the
X11R5 distribution.

  Actually, I just finished writing a motif animation program...
(take-lots-of-image-data-and-display-it-pretty-darn-fast). When using
on-server pixmaps or shared memory, I had to insert a delay loop to keep
it from going too quickly :). Testing both methods side by side, they
were just about equal.

  The advantage of SHM is that your X server doesn't grow to ridiculous
sizes; but pixmaps can work over a network and *are* removed if your
application dies (one tends to use ipcrm manually quite a bit when
debugging SHM apps).

  Shared memory also has the problem that some operating systems (e.g.
Ultrix) seem to allow only a small number of segments (~6) to be
attached to a process at once; consequently, a redraw becomes
XShmAttach();XShmPutImage();XShmDetach(); on Dec systems. And Dec's 24
bit displays (like the ones I tend to use most often) don't seem to
support the extension (maybe someone compiled them wrong?), and using
pixmaps causes the X server to crash (failed mallocs), so one *has* to
use the local unix domain socket (which really isn't that bad; one
copies the info three times per redraw instead of one).

  In short: allowing all three forms of display, within the program is a
Good Thing (minus SHM if running over a network), and let the user pick
whatever feels fastest.

  (I just use an ximagehandler class and forget about it :)

  )Rob

Newsgroup: comp.windows.x
Document_id: 67184
From: cwikla@morrison.wri.com (John Cwikla)
Subject: Pixmaps and colormaps sent through selections...


	I want to be able to send a Pixmap from one client to the next.
Along with this I want to send the Colormap and foreground and
background pixel values.  So far not a problem, I can do
this with no problem.

  However, once I have the Pixmap id and the Colormap id, how
do I go about telling the server that the second (receiving)
client now wants to have associations with the two id's?

	TIA,

	John
--
o  John L. Cwikla                       o                            o
o  X Programmer                         o  X was never the first     o
o  Wolfram Research, Inc.               o   letter of the alphabet   o
o  cwikla@wri.com  (217) 398-0700       o                            o

Newsgroup: comp.windows.x
Document_id: 67185
From: gnohmon@ssiny.UUCP (Ralph Betza)
Subject: dynamic SqueezeTitle configuration in *twm

I consider TWM-style Squeezed Titles indispensable in a window
manager. I like to have two tall xterm windows visible at the same
time, with no overlap; and since two windows aren't enough, I have
other xterm windows underneath them, with exactly the same positioning.

In case you're not familiar with Squeezed Titles, here's a crude
picture:

 ====================== Figure 1 ====================================
 |
 |    +---------+                   +---------+          +=========+
 |    + title A +                   + title B +          + title C +
 |    +------------------------+    +------------------------------+
 |    +   this is the          +    + window B hides window C, but +
 |    +     body of the        +    + you can still see C's title  +
 |    +      window, window A  +    + which is squeezed right.     +
 |    +------------------------+    +------------------------------+
 |
 ====================== Figure 1 ====================================

Squeezed titles allow me to have about 5 such windows in each stack,
with easy access; and 3 per stack is usually more than I really
need, since I also insist on having a virtual WM.

The only problem is that the title location is static, that is,  it
is configured in .twmrc, and in order to change it you have to edit
that file and restart the window manager. Doing so is cumbersome and
time-consuming.

Therefore, I have implemented f.squeeze{ left, center, right }
functions in my own copy of vtwm; the idea being that with one click
of a button, you can change this:

    +---------+
    + title A +
    +------------------------+
    +   this is the          +
    +     body of the        +
    +      window, window A  +
    +------------------------+

to this:

                   +---------+
                   + title A +
    +------------------------+
    +   this is the          +
    +     body of the        +
    +      window, window A  +
    +------------------------+

 ===============

Okay. So far, so good. Now, how the heck do I get them to put this
into the next "official" twm, and the next tvtwm, and the next vtwm,
and the next ctwm? And the next xyztwm that I never heard of?

One way would be to post, in comp.windows.x, a description of this
enhancement, together with an explanation of why I think it is a
Very Good Thing, and hope that someone reads it. :-)

In case it isn't already clear why I think it's a Very Good Thing,
look back up at Figure 1, and picture window A moved over on top of
windows B and C; now window A's title hides Window B's title;
but when you hit f.squeezecenter, the result is:

        +=========+   +---------+   +=========+
        + title B +   + title A +   + title C +
        +-------------------------------------+
        +   this is the body of the window,   +
        +   window A, which is on top.        +
        +-------------------------------------+

 ===================

The rest of this posting explains how to implement it, based on my
X11R4 copy of vtvwm.shar; it's just a sketch because posting the
full diffs would be too long.

The key to this enhancement is to add the following lines in the
ExecuteFunction() routine in menus.c:

#ifdef SHAPE
	case F_SQUEEZELEFT:
	{	static SqueezeInfo left_squeeze = { J_LEFT, 0, 0 };
		if (DeferExecution (context, func, Scr->SelectCursor))
		  return TRUE;

		tmp_win->squeeze_info = &left_squeeze;
		SetFrameShape( tmp_win );
		break;
	}
	.... and similarly for squeezeright ( J_RIGHT ) and
	squeezecenter ( J_CENTER ) ...
#endif

( Of course, you also have to define F_SQUEEZELEFT in parse.h
  and add
    { "f.squeezeleft", FKEYWORD, F_SQUEEZELEFT },
     ... and so forth ...
to parse.c

In order to use these functions, add something like the
following to your .twmrc file:

Button2 = m | s : w|v|d|r|i|t|door : f.squeezecenter

 =================

About a year ago, I posted this, but our news was broken and I
*think* it didn't get out.

Since then, "blast" has appeared in comp.sources.x, Volume 19,
Issue 41; you could use blast to achieve a similar effect, by
chiseling away at an mwm-style wide title. Better to have a
twm-style window manager, I think.

--
Ralph Betza (FM),
uunet!ssiny!gnohmon         gnohmon@ssiny.com

"The question of whether a computer can swim is more interesting
 than the question of whether a submarine can think" - Lenny Dykstra

Newsgroup: comp.windows.x
Document_id: 67186
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: Animation with XPutImage()?

| 
| Shared memory PutImage (also mentioned by nkissebe@delphi.beckman.uiuc.edu,
| Nick Kisseberth) looks interesting, but I need someone to point me to some
| documentation. Is this method likely to give better results than server-
| resident pixmaps? I'd also be interested in looking at the XView code
| mentioned above...

There is no easy answer to this question: it depends on whether the display
device can hold pixmaps in off-screen memory, and if so, how efficiently
the server manages these resources (having to deal with limited off-screen
memory is the bane of the server implementor's existence!).  

I have worked with graphics devices where the off-screen memory to 
main display copy rate eclipses that of the main memory to display copy
rate, and with those where the main memory to display is *faster* than
off-screen to display (requires only a write to the framebuffer rather
than a read of the F.B. followed by a write)

If your server uses the cfb code or something like it to render into
pixmaps in CPU main memory, the rates you can get through MIT-SHM are
likely to be equal (maybe a tad slower, depending on your OS's implementation
of shared memory) to CopyArea from pixmap to window, which is also then
just a copy from CPU main memory to graphics device.

One advanage of MIT-SHM is that if your images are large, you don't end up
growing the size of the server process to hold them.

One disadvantage of the MIT-SHM is that, in its sample implementation,
there is no provision for elegantly cleaning up the shared memory segments
if the client dies a sudden, violent death (e.g., "kill").  You have to 
be mindful of cluttering up the system with zombie shared memory segments.

	Ken
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
Document_id: 67187
From: pramodmm@deforest.ee.washington.edu (Pramod Mahadev)
Subject: Help on xlib and include files


 Hi Xperts!
   I have a Sparc-1 with very limited disk space on /usr partition.
   previously, i was able to run all x-windows applications  and then 
   i upgraded my system to sun o.s. 4.1.3 and realized that , the hard
disk did not have enough space to load openwindows. My immediate alternative
was to load only the neccessary files to boot the system. This resulted in
not loading openwindows. As a result of which none of the X-libraries got loaded.

   I am trying to load just the libraries and include files and bin/X11 files 
required for running X-windows and compiling my programs written for Xlib and Xaw.
In a desperate effort to regain x-windows, i retrieved /usr/lib/libX*.* files from
the tape . /usr/bin/X11/*  and /usr/include/X11/* . Is this enough for running X-windows
 
 BUt i did not get /usr/lib/X11/fonts/  sub directories . these are mainly 100dpi, 75dpi
 and misc. 

when i run xinit, the error message says /usr/lib/X11/fonts/100dpi etc are not in the
default path. But the problem is i cannot load any of those directories as there is no
disk space. 
Are there any temporary suggestions before I get a 1.5 GB disk and load openwindows , to
just have my x-windows running. 

Thanks

Pramod
 
-- 

Newsgroup: comp.windows.x
Document_id: 67188
From: nicholas@ibmpcug.co.uk (Nicholas Young)
Subject: Writing a Motif widget

Can anyone give me some information, please ...

I need (probably) to write one or more new Motif widgets on the HP-UX
platform. Do I need the Motif private header files and source,
or can I make do with the public headers that are provided?
"Motif" includes Xt in this context.

One widget is a multi-column list (which lots of people have
already written, I am sure), and would therefore be probably be
a subclass of List rather than something simple like an Xt class.
Is this more difficult (in principle, not lines of code)?

Alternatively, if anyone has a multi-column list widget they
could sell me, this might save me from having to write one!
Does it by any chance exist in Motif 1.2 already (I do not
yet have the spec)?

Answers appreciated,

Nicholas.
-- 
Nicholas Young (+44 71 637 9111)

Newsgroup: comp.windows.x
Document_id: 67189
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <1r5l8g$bub@wsinfo03.win.tue.nl>, rcb5@wsinfo03.win.tue.nl (Richard Verhoeven) writes:
|> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
|> > 
|> > try this after XCreateWindow:
|> > -----------------------------
|> > ...
|> >
|> >   xsizehints->flags = USPosition | USSize;	/* or = PPosition | PSize */
|> >   ...
|> >   XSetWMNormalHints (display, window, xsizehints);
|> >   ...
|> >
|> > These hints tell the window manager that the position and size of the window
|> > are specified by the users and that the window manager should accept these
|> > values. If you use xsizehints->flags = PPosition | PSize, this tells the window
|> > manager that the values are prefered values of the program, not the user.
|> > I don't know a window manager that doesn't place the window like you prefer
|> > if you specify the position and size like above.
|> 
|> Sorry, but olwm and tvtwm don't do it. They place the title at that position
|> and the window at a position below it.

The reason they place their outside corner at the location you requested
is because that's what the ICCCM says they should do.

|> This becomes a problem when you want a program to be able to save its current
|> configuration and restore is later.
|> 
|> Currently, my solution is:
|> 
|> 	XCreateWindow(...);
|> 	XSetWMProperties(..);
|> 	XMapWindow(...);
|> 	XFlush(...);
|> 	XMoveWindow(...);

This code will almost certainly break.  Calling XMapWindow and then
XFlush does not guarantee that the window is visible and managed by the
window manager.  Even if this did work, there isn't a reliable way to
find out how much decoration the window manager placed around your
window, so you don't know how far to move it.  And what if the window
manager refuses to move your window?

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
Document_id: 67190
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: PostScript on X-terminal


> I have a problem when I'm using PostScript. When I am working local 
> on a SUN SPARCstation IPC the PostScript works good, but when I connect
> to the SUN from a X-terminal I just get error messages that the
> PostScript cannot connect to the news-display.
>  Why doesn't PostScript work on an X-terminal

	Because xterminals do not have a NeWS server.  xterminals have
speed by nature of their limited functionality: once you add NeWS and
everything else, you have a workstation.  There are workarounds, I've
heard, one involving a perl script.  What we are trying to do is
replace programs that need NeWS (like pageview) with programs that
don't (like ghostview).
	Maybe someone else can elaborate on the perl workaround; I
have no personal experience with it.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  230-   All transfers are disclaimed by my host name and boss's address.
  230-   If you don't like this policy, disconnect now!

Newsgroup: comp.windows.x
Document_id: 67191
From: dyoung@media.mit.edu (David Young)
Subject: Q: Colormaps with dialog shells


I have an applicationShell which uses a colormap created with
XCreateColormap() and uses all of the colors available for my 8-bit
display.  When I move the cursor over the window I get the "Technicolor
Effect" - which is fine.  Basically, my program works.

My problem/question is: When I popup a dialogShell to prompt the user for
some input I want the XmNdialogStyle to be set to
XmDIALOG_PRIMARY_APPLICATION_MODAL.  The result is that if my cursor is
over the dialogShell I get my colormap, but if the cursor is over the
applicationShell (or any window other than the dialogShell) I get the
default colormap.  But I'd like it so that if my cursor is over _any_
window of my application, I get my colormap.

Any suggestions?  Thanks,

david,

Newsgroup: comp.windows.x
Document_id: 67192
From: banz@umbc.edu (Rob Banz)
Subject: Looking for an R5 Xserver for HP9000/385


Subject says it all...
Anyone know where I can find one.  Binaries are nice, but source would
do to.  

Thanks in advance,



-- 
Rob Banz (banz@umbc.edu)
	"If we give people an alternative to Microsoft...it will have been
	 a greater good."	         -Steve Jobs (UnixWorld, April 1993)
	"Yes, Bill, we are your father!" -IBM OS/2 Presentation, FOSE'93

Newsgroup: comp.windows.x
Document_id: 67193
From: hoang1@litwin.com (Ted Hoang)
Subject: Wcl 2.02

Hi,
I have a problem when compiled Wcl 2.02 in SCO ODT 2.0:


        cc -c -Ox  -I.. -I/usr/include Xt4GetResL.c
Xt4GetResL.c
Xt4GetResL.c(47) : error C2065: '_XtConstraintBit' : undefined
*** Error code 1

Although I follow the instructions in file README_BUILD to build Wcl in SCO 
platform, this problem didn't resolve.

So I have some questions related to this matter:

  1. Does _XtConstraintBit exist in SCO ODT 2.0? ( Does _XtConstraintBit use
      in X11R3 & X11R4? And What release does SCO ODT 2.0 use, X11R3 or X11R4?)
  2. If not, Does someone know how to work around? 

Newsgroup: comp.windows.x
Document_id: 67194
From: mikes@ase.co.UK (Mike Schofield-00000315)
Subject: xterm with status line and color


I'm looking for a version of xterm which handles color and vt220 style status
lines. Can anyone out there help?

Thanks


Newsgroup: comp.windows.x
Document_id: 67195
From: wcl@risc.sps.mot.com (Wayne Long)
Subject: PROBLEM:  Running AIX info from a Sun rlogin shell.


  When I run our RS6000's "info" utility through a remote login
  shell (rlogin) from my Sun Sparc 1+, I can no longer type
  lower case in any of info's window prompt's.

  I thought the prob. may have been due to my Sun window mgr. 
  (Openlook) being incompatible with the AIX Motif application
  but I tried it under TVTWM also.  Same result.
  
  So this is presumably an X11 key definition problem between 
  workstations - but my system admins. feign ignorance.
  
  What do I need to do the be able to type lower case into 
  this remote AIX motif app. from within my local Openlook
  window manager?
  
  
-- 
-------------------------------------------------------------------
Wayne Long - OE215              Internet: wcl@risc.sps.mot.com
6501 William Cannon Drive West  UUCP: cs.texas.edu!oakhill!risc!wcl
Austin, Texas 78735-8598        Phone (512) 891-4649  FAX: 891-3818

Newsgroup: comp.windows.x
Document_id: 67196
From: toml@blade.Boulder.ParcPlace.COM (Tom LaStrange)
Subject: Re: REPOST: Accelerators/Translations

In article <1993Apr22.162016.5923@telesoft.com>, trevor@telesoft.com (Trevor Bourget @ignite) writes:
|> In <sdennis.735423404@aa.cad.slb.com> sdennis@osf.org writes:
|> 
|> >I posted this a while ago and didn't receive one reply, and now we
|> >have another bug report on the same subject. Can anybody help me out?
|> 
|> The problem is that Motif uses XGrabKey to implement menu accelerators,
|> and these grabs are specific about which modifiers apply.  Unfortunately,
|> the specification for XGrabKey doesn't allow AnyModifier to be combined
|> with other modifiers, which is exactly what would be desired in this case:
|> "Ctrl Any<Key>q".
|> 
|> >In ORA Vol. 6, in the section on accelerators it says "For information
|> >on how to specify translation tables see Vol. 4...", this is so you
|> >know what to put for the XmNaccelerator resource.  If you go to
|> >Vol. 4 it says, "Likewise, if a modifier is specified, there is
|> >nothing to prohibit other modifiers from being present as well. For
|> >example, the translation:
|> >	Shift<Key>q:	quit()
|> >will take effect even if the Ctrl key is held down at the same time as
|> >the Shift key (and the q key).
|> 
|> This is true for accelerators and mnemonics, which are implemented using
|> event handlers instead of grabs; it's not true for menu accelerators.  If
|> you're a Motif implementor, I'd suggest lobbying to get the Xlib semantics
|> changed to support the feature I described above.  Otherwise, change the
|> documentation for menu accelerators to properly set the user's
|> expectations, because menu accelerators are NOT the same thing as
|> translations.
|> 
|> >Is it possible to supply > 1 accelerator for a menu entry?
|> 
|> If you mean "menu accelerator", no it's not possible.  That's according to
|> the definition of the XmNaccelerator resource in the XmLabel manual page.
|> 
|> >Keep in mind when answering this question that when using Motif you
|> >can't use XtInstallAccelerators().
|> 
|> I can't think of a reason why not.
|> 
|> >How can you ensure that accelerators work the same independent of
|> >case?  What I want is Ctrl+O and Ctrl+o to both be accelerators on one
|> >menu entry.

I find this thread on motif accelerators absoultly amazing.  If I were
writing an interface to keyboard accelerators, I would have one
resource called "accelerators" that took a translation table, period.
I would also implement it so that programmer never has to do any work
to get the accelerators installed.  As soon as the end-user specified
one, it would be active and automatically installed.

To get multiple accelerators on a single menu item I'd do something like:

	*menuItem.accelerators: #override \n\
		Ctrl<Key>M:	fire() \n\
		Shift<Key>L:	fire() \n

The accelerators would work exactly like translations and you would
automatically see a "Ctrl M" show up in your menuItem object.

Why in the world is the motif stuff so complicated with so many different
special cases depending on what type of widget you're dealing with?  There
has to be some reason.

Sorry for the political tone of this message...

--
Tom LaStrange        toml@boulder.ParcPlace.COM

Newsgroup: comp.windows.x
Document_id: 67197
From: rgooch@rp.CSIRO.AU (Richard Gooch)
Subject: Re: Animation with XPutImage()?

In article <WHALEY.93Apr22110027@sigma.kpc.com>, whaley@sigma.kpc.com (Ken Whaley) writes:
> One advanage of MIT-SHM is that if your images are large, you don't end up
> growing the size of the server process to hold them.
>
  Correct. Most X servers use a version of  malloc(3)  which will not return
  memory to the OS (ie. the X server might  free(3)  a Pixmap, but the heap does
  not shrink).

> One disadvantage of the MIT-SHM is that, in its sample implementation,
> there is no provision for elegantly cleaning up the shared memory segments
> if the client dies a sudden, violent death (e.g., "kill").  You have to 
> be mindful of cluttering up the system with zombie shared memory segments.
>
  Well, part of the routines I mentioned do a dirty little trick to get around
  that problem. First, I create the shared memory segment, attach the client,
  attach the X server, and then remove (!) the segment. If you read the man
  pages on removing of shared memory segments, you will see that the segment
  only dies after all attachments are gone.
  Now, if the client dies, that's one attachment gone (the OS cleans up for you)
  and since the X server notices the client has dies, frees up it's resources,
  including detaching from the segment: there goes the last attachment. No more
  shared memory segment.
  Terrible, but it works.

				Regards,

					Richard Gooch....

Newsgroup: comp.windows.x
Document_id: 67198
From: osyjm@cs.montana.edu (Jaye Mathisen)
Subject: XTERM patches for Alpha OSF 1.2?



Well, after massaging the Dec.cf, osf.def, (can't remember the exact names)
from OSF into my normal X11R5 distribution, everything compiles and links
fine, but xterm doesn't run.


Warning: Representation size 8 must match superclass's to override background
Warning: translation table syntax error: Modifier or '<' expected
Warning: ... found while parsing 'p^#j?;'P)=#'
X Error of failed request:  BadColor (invalid Colormap parameter)
  Major opcode of failed request:  85 (X_AllocNamedColor)
  Resource id in failed request:  0x0
  Serial number of failed request:  18
  Current serial number in output stream:  18

Other than this, all the other core X stuff seems to be working OK.  Any
hints/tips appreciated, patches would be primo.

Thanks.
-- 
 Jaye Mathisen, COE Systems Manager                (406) 994-4780
 410 Roberts Hall,Dept. of Computer Science
 Montana State University,Bozeman MT 59717	osyjm@cs.montana.edu

Newsgroup: comp.windows.x
Document_id: 67199
From: bgendler@opus.starlab.CSc.COM (Bruce Gendler)
Subject: X/GL widget translation problem

I am writing a custom widget to support the display of graphics
and imagery.  The user of the widget will be able to specify,
when creating it, whether it is to operate in X or GL mode.

I have set up translations and actions to handle mouse button
presses.  They work fine when the widget is in X mode.  In GL 
mode they only work when the widget (my GL/X widget) is a child
of a manager.  Put another way, the translations do not work 
when the widget is configured in GL mode and is a child of a 
shell.  Does anyone know why this is happening?

Thanks in advance.
Bruce Gendler
bgendler@csc.com

Newsgroup: comp.windows.x
Document_id: 67200
From: reznik@robios5.me.wisc.edu (Dan S Reznik)
Subject: Text field in dialog widget doesn't get focus

I am using the GLX widget + athena widgets on a mixed-model
application, under 4Dwm, but when the dialog gets popped up, its
text entry field does not have focus. Aimilar code works perfectly if
I use "pure X" (no mixed-model). HEre is the relevant portion of
the code.

{
   int n;
   Arg wargs[16];
   Widget Button, PopUpShell, Dialog;

   /* initialize TopLevel here */
   .
   .
   .

   n = 0;
   XtSetArg(wargs[n], XtNlabel, "Foo"); n++;
   Button = XtCreateManagedWidget("FooBtn", commandWidgetClass,
                                  TopLevel, wargs, n);

   PopUpShell = XtCreatePopupShell("PupShell", overrideShellWidgetClass,
                                   Button, NULL, 0);
   XtAddCallback(PopUpShell, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

   n = 0;
   XtSetArg(wargs[n], XtNvalue, ""); n++;
   Dialog = XtCreateManagedWidget("TheDialog", dialogWidgetClass,
                                  PopUpShell, wargs, n);

   .
   .
   .
}

void MyPopUp(w, popup_shell, call_data)
Widget w;
Widget popup_shell;
XtPointer call_data;
{
   XtPopup(popup_shell, XtGrabExclusive);
}

---

A way I found to give focus to the text field is to move the
application window around a little bit and place it right behind the popup.

Any pointers would be greatly appreciated.

Newsgroup: comp.windows.x
Document_id: 67201
From: reznik@robios.me.wisc.edu (Dan S Reznik)
Subject: Correction on my last posting (GLX & lack of cous on Dialog Widget)

On the code I sent, please replace the line:

   XtAddCallback(PopUpShell, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

by

   XtAddCallback(Button, XtNcallback, MyPopUp, (XtPointer)PopUpShell);

--- 

The rest (and my question) remains the same...

Dan

Newsgroup: comp.windows.x
Document_id: 67202
From: dwex@cbnewsj.cb.att.com (david.e.wexelblat)
Subject: Re: Dell 2.2 EISA Video Cards

[This belongs in comp.windows.x.i386unix - I've redirected followups]

In article <C5ssHu.CBI@gator.rn.com> larry@gator.rn.com (Larry Snyder) writes:
> Does XFree86 support any EISA video cards under Dell 2.2?
> -- 
> Larry Snyder                               
> larry@gator.rn.com

I know for a fact that the EISA version of the Orchid ProDesigner IIS
works.  However, an EISA SVGA card is likely a waste of money.

When XFree86 2.0 comes out, with support for accelerated chipsets, ISA,
EISA, and VLB will all be supported.

The more important question is "what chipsets are supported?".  The bus
is basically irrelevent as a compatibility issue.

--
David Wexelblat <dwex@mtgzfs3.att.com>  (908) 957-5871  Fax: (908) 957-5627
AT&T Bell Laboratories, 200 Laurel Ave - 3F-428, Middletown, NJ  07748

XFree86 requests should be addressed to <xfree86@physics.su.oz.au>

"Love is like oxygen.  You get too much, you get too high.  Not enough and
 you're gonna die."  -- Sweet, Love Is Like Oxygen

Newsgroup: comp.windows.x
Document_id: 67203
From: hildjj@jupiter.fuentez.COM (Joe Hildebrand)
Subject: Re: question regarding overlaying of graphics


> Let's say I have two rectangles on the canvas(see above) 
> one intersecting the other...
> Now, I would like to delete one of the rectangles.
> The way I do it is to create another GC wherein I use the
> GXxor logical function and simply redraw the rectangle using the
newly
> created graphics context thus deleting it for all apparent purposes.
> A problem with this approach is that at the points of intersection
the pixel 
> locations belonging to the other rectangle also become white, which
is 
> something that should be avoided.

You could set up a bitmap with a mask in it.  Clear the
bitmap, draw the rectangle to be deleted with GXor.  Draw the one
that is to stay with GXclear.  Then GXxor the entire pixmap with
the screen.  

Note that this is a pretty effective way of animation, if you ever
need to do that (replace the GXclear with a GXxor).

----------
Joe Hildebrand
hildjj@fuentez.com
Software Engineer
Fuentez Systems Concepts
(703)273-1447

Standard disclaimers apply

Newsgroup: comp.windows.x
Document_id: 67204
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Keysym database problems

I am having problems with a  Motif application that when run on another machine
(with different X paths, etc) can't find the XKeysymDB file.   This causes a large
warning output:

Warning: translation table syntax error: Unknown keysym name: osfActivate
Warning: ... found while parsing '<Key>osfActivate:ManagerParentActivate()'
Warning: translation table syntax error: Unknown keysym name: osfCancel
Warning: ... found while parsing '<Key>osfCancel:ManagerParentCancel()'
Warning: translation table syntax error: Unknown keysym name: osfSelect
Warning: ... found while parsing '<Key>osfSelect:ManagerGadgetSelect()'
...
....
....
etc.

as the file is in a different location, but Xt seems to only look for it in
the place where it is on the machine the app was compiled on.  Is there any
way to read the XKeysymDB manually with an X/Xt call so that additions to
the XKeysymDB can be distributed with the application ?  I have used trace(1)
to find out what was going on, but I need a fix so that these translations in
the application can be recognised.

--tim
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
Document_id: 67205
From: pyeatt@Texaco.com (Larry D. Pyeatt)
Subject: Re: Mix GL with X (Xlib,Xt,mwm)

In article <27808.9304211039@scorpion.dps.co.uk>, gerard@dps.co.UK (Gerard O'Driscoll) writes:
|> 
|> pyeatt@Texaco.com writes:
|> 
|> >> There is a widget already defined for GL.  It is the GlxMDraw (motif) or
|> >> GlxDraw (athena) widget.  It is similar to a XmDrawingArea, except that it
|> >> allows you to use GL calls to render into the window.  Look at glxlink,
|> >> glxunlink, glxgetconfig, and glxwinset in the man pages.
|> 
|> Where do I get hold of these widgets?
|> 
|>  	Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
|>  	Du Pont Pixel Systems Ltd.

They come with every Iris now.  Nth also ships it with their latest
version of Nth Portable GL.  I just got the update a couple of weeks
ago.  I would assume that Silicon Graphics would license the source
to you so that you can include it in your company's GL offering.

-- 
Larry D. Pyeatt                 The views expressed here are not
Internet : pyeatt@texaco.com    those of my employer or of anyone
Voice    : (713) 975-4056       that I know of with the possible
                                exception of myself.

Newsgroup: comp.windows.x
Document_id: 67206
From: drand@spinner.osf.org (Douglas S. Rand)
Subject: Re: Writing a Motif widget

In article <C5wApJ.DD7@ibmpcug.co.uk> nicholas@ibmpcug.co.uk (Nicholas Young) writes:

   I need (probably) to write one or more new Motif widgets on the HP-UX
   platform. Do I need the Motif private header files and source,
   or can I make do with the public headers that are provided?
   "Motif" includes Xt in this context.

Yes.  You'll find it almost impossible without the source
at this point.  It does depend on how ambitious you are and
how concerned you are about compliance with the general
interface and items like traversal.

   One widget is a multi-column list (which lots of people have
   already written, I am sure), and would therefore be probably be
   a subclass of List rather than something simple like an Xt class.
   Is this more difficult (in principle, not lines of code)?

I'm not sure what you're asking.  You could create something
which is very much like a true multi-column list by placing
several lists within a geometry manager,  and putting that
manager within an automatic scrolled window.  This wouldn't
be good for very large lists,  but you might consider this
as an alternative.

   Alternatively, if anyone has a multi-column list widget they
   could sell me, this might save me from having to write one!
   Does it by any chance exist in Motif 1.2 already (I do not
   yet have the spec)?

Motif 1.2 does not have a multi-column list in it.  Have you
looked at commercial sets?  There are also some PD 
widget sets,  one of these might have a multi-column list
you could port.


--
Douglas S. Rand <drand@osf.org>		OSF/Motif Dev.
Snail:         11 Cambridge Center,  Cambridge,  MA  02142
Disclaimer:    I don't know if OSF agrees with me... let's vote on it.
Amateur Radio: KC1KJ

Newsgroup: comp.windows.x
Document_id: 67207
From: rps@arbortext.COM (Ralph Seguin)
Subject: NumLock masking? interference with Meta/Compose/ExtendChar, ...

> My question is this:  Is there a means of determining what the state
> of CapsLock and/or NumLock is?

Alright.  Ignore this.  I have delved a bit deeper (XKeyEvent) and
found what I was looking for.

ev->state   has a bunch of masks to check against (LockMask is the one
for CapsLock).  Unfortunately, it appears that the NumLock mask varies
from server to server.  How does one tell what mask is numlock and
which are for Meta (Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, Mod5Mask).
eg, SGI's vendor server has Mod2Mask being NumLock, whereas Solaris
1.0.1 OpenWindows 3.0 has Mod3Mask for NumLock.  Is there an
unambiguous means of determining NumLock's mask at runtime for any
given server?  Sorry for the wasted bandwidth and my appalling ignorance.

			Thanks, Ralph


Newsgroup: comp.windows.x
Document_id: 67208
From: davesimp@soda.berkeley.edu (David Simpson)
Subject: Trying to find papers by Rosenthal

I have the March/April version of the X Journal open in front of me.

I'll be working on programming x-clients this summer, and since I don't have
much experience with programming X, I thought this issue might be helpful
as it has a section on debugging, and a section on the 40 most common errors
in programming X.

At the end of the errors section, there are the following references for
tutorials on X programming style.  They are:

Rosenthal, David -   A simple X11 client program
  Proceedings of the Winter 1988 Usenix Conference, 1988.

Lemke, D., and Rosenthal, D. -  Visualizing X11 clients
  Proceedings of the Winter 1989 Usenix Conference, 1989.


Does anyone know where I could find these in printed or (preferably)
electronic form?

Or can you suggest any net resources devoted to the introduction to
programming X (I'll be looking at the bookstore for books, so I am really
only asking about what I can find on the net.)

Thanks,

David Simpson

davesimp@soda.berkeley.edu

Newsgroup: comp.windows.x
Document_id: 67209
From: cjhs@minster.york.ac.uk
Subject: Re: Xt intrinsics: slow popups

cjhs@minster.york.ac.uk wrote:
: Help: I am running some sample problems from O'Reilly volume 4,
: Xt Intrisics Programming Manual, chapter 3. popup
: dialog boxes and so on.
: 
: In example 3.5, page 76 : "Creating a pop-up dialog box"
: 
: The application creates window with a button "Quit" and "Press me".
: The button "Press me" pops up a dialog box. The strange feature of
: this program is that it always pops up the dialog box much faster the
: first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
: it is *much* slower.
: 
: Has anyone any experience with these sample programs, or why I get
: this behaviour - fast response time for the first time but slow response
: time from 2nd time onwards ?
: Anyone can give me some ideas on how to program popups so that each time
: they popup in reasonable fast response time ?
: 
: Thankyou - Shirley

Thanks to those who responded.

We were able to prevent this behaviour by two methods:

1) running twm rather than olwm
2) keeping olwm, but putting "wmTimeout: 10" in the resources

It has been suggested that the difficuty was something to do with the
window manager positioning the popup window. Any guru who can analyse
what is going on from this information, please post and let us know.

Thanks -- Shirley

Newsgroup: comp.windows.x
Document_id: 67210
From: bshaw@spdc.ti.com (Bob Shaw)
Subject: question on "xon" in X11R5


Hi folks

Say, I'm new to R5 and have one quick question.

In using xon ( xon  <machine_name> )  , I notice that it
always comes up with a very small window .  I'm pretty
sure its the default font.  My xterms all work normally.
Is xon supposed to read your .Xresources for a font size ?

xrdb -q appears to show the right stuff.

I can use xon with arguments such as  xterm -fn 10x20    etc
and everything is correct.  Of course you could always do a 
simple script to do this , but I have a feeling I'm missing
something simple here.

Comments / suggestions appreciated.

Thanks in advance

Bob
bshaw@spdc.ti.com    mm

Newsgroup: comp.windows.x
Document_id: 67211
From: seth@ponder.csci.unt.edu (Seth Buffington)
Subject: Re: GUI Study

>Cutsie little Macintrash-like icons that are an instant recipe for
>mousitis IMHO. System 7 is undoubtedly the worst GUI I have used (out of
>that, RISCOS, MSWombles, and X11) simply because it does not provide enough
>keyboard shortcuts. Windows I must confess I quite like (cover your ears
>:-) ) because you can actually use it without having to ever touch the
>mouse.
[stuff delete]
>the user rather than making things _easier_ - and there should always be
>the option to do it your way if you want to, which is why I like the
>UNIX/X combination so much - it's so customizable. 

Hear! Hear! I agree completely. One thing I can't stand about
the Mac interface is its shear determination to FORCE you to use
the mouse(what if your mouse breaks--your whole system is
down!).  I like the mouse--it is handy on some occassions such
as cut and past and moving icons around, etc.  But for most
work, the keyboard and hot keys are 10-20 times faster than
using the mouse. Sure it is a plus to be able to do something
simple if you are an inexperienced user, but how long is it
before your are experienced? A month? Two? (Speaking of PCs at
the moment.)
	I don't think it is too much to ask that window
programmers provide not only a menu/mouse interface but also
look forward to those who would like to move on to hot keys and
command line interfaces, which usually allows you to do more in
less time IF you are experienced.
	All of the above equally applies to windowing systems on
UNIX (especially since Unix is at least 500% more powerful than
DOS).

-- 
\---------------------------------------------------------------------/
 \ Seth Buffington 	U.S.S. GAB 550 I   	817-565-2642         /
  \ seth@cs.unt.edu	seth@gab.unt.edu	Unix Operator       /
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
Document_id: 67212
From: abarden@tybse1.uucp (Ann Marie Barden)
Subject: X-Terminal Config. file question

  QUESTION:
  What is the EXACT entry (parameter and syntax please), in the X-Terminal
configuration file (loaded when the X-Terminal boots), to add another system 
to the TCP/IP access control list?   

  BACKGROUND:
  I have two unix systems, 1. an AT&T 3B2 running X11R3 and MIT's X11R4 and 
2. a Sun SS10 without any X.  
  I want to have a window to the Sun and the 3B2 on the NCD X-Terminal at the
same time.  I can do this if I manually set the Network Parameter TCP/IP
Access Control List to off, then login to my telnet session. Not Great!  
  I've tried to get "xhost" to work and failed.  Either my syntax is wrong
or the X11R3 implementation is bogus.  
  I am trying to edit the NCD configuration file that is loaded when the 
NCD boots.  No matter what entry I add or edit, the NCD still boots with
the TCP/IP Access Control list containing only the 3B2.
  My manuals are worthless so any help would be most appreciated!!  Thanks!

Ann Marie Barden  	abarden@afseo.eglin.af.mil

Newsgroup: comp.windows.x
Document_id: 67213
From: davewood@bruno.cs.colorado.edu (David Rex Wood)
Subject: X Error of failed request:  BadPixmap (invalid Pixmap parameter)

Could someone PLEASE give a guess as to why this simple little program
causes a BadPixmap error on the FOURTH (bizarre???) call to XtRelaizeWidget()?

Here is the code:


int stoploop = 0;

static void Callback(Widget, XtPointer, XtPointer);

main()
{
        XtToolkitInitialize();
        XtAppContext app = XtCreateApplicationContext();
        while (1)
        {
                int junk = 0;
                Display *dis = XtOpenDisplay(app, NULL, NULL, NULL, NULL, 0,
                                                &junk, NULL);

                Widget top = XtAppCreateShell(NULL, NULL,
                                applicationShellWidgetClass, dis, NULL, 0);

                Widget box = XtVaCreateManagedWidget("x",
                                                        xmPushButtonWidgetClass,
                                                        top,
                                                        XmNheight, 25,
                                                        XmNwidth, 25, NULL);

                XtAddCallback(box, XmNactivateCallback, Callback, NULL);

                XtRealizeWidget(top);
                while (!stoploop)
                {
                        XEvent event;
                        XtAppNextEvent(app, &event);
                        XtDispatchEvent(&event);
                }
                stoploop = 0;
                XtReleaseGC(top, XDefaultGCOfScreen(XtScreen(top))); // needed?
                XtDestroyWidget(top);
                XtCloseDisplay(dis);
        }
}

static void Callback(Widget, XtPointer, XtPointer)
{
        stoploop = 1;
}


The error I get (yes, the 4TH time I try to show the box) is:

X Error of failed request:  BadPixmap (invalid Pixmap parameter)
  Major opcode of failed request:  55 (X_CreateGC)
  Resource id in failed request:  0xd0000d
  Serial number of failed request:  71
  Current serial number in output stream:  85


Please respond via email.  Thanks very, very much!

(NOTE: I realize this program does nothing useful, its an ultra-trivialized
version fo a real library routine)
-- 
-------------------------------------------------------------------------------
David Rex Wood -- davewood@cs.colorado.edu -- University of Colorado at Boulder
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67214
From: kriss@frec.bull.fr (Christian Mollard)
Subject: Re: Looking For David E. Smyth

In article <1993Apr9.144859.10535@nynexst.com>, zvi@nynexst.com (Zvi Guter) writes:

The author of Wcl (or the current care taker). His is the only name I found
in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
but the mail bounced back.
Any help in finding him will be greatly appreciated.

Try
	david@ap542.uucp
	david%ap542@ztivax.siemens.com


Xtian.


      /     /                              Name:    Christian Mollard      /
     /   /        __/                     Email:   C.Mollard@frec.bull.fr /
       /     __/   /    __/     __/      Phone:   (33) 76 39 78 92       /
   /        /     /  __  /   __  /      Bull:    229 78 92              /
__/  __/ __/   __/ _____/  _____/      Fax:     (33) 76 39 76 00       /
                                                                      /
Address:	BULL S.A., B.P. 208, 38432 Echirolles Cedex, France  /
____________________________________________________________________/

Newsgroup: comp.windows.x
Document_id: 67215
From: detroch@imec.be (Stefan De Troch)
Subject: virtual mwm ? 


-- 
Hi netland,

I thought that I once read about the existance of a virtual mwm like vtwm.
On the usual ftp sites (gatakeeper.dec.com, export.lcs.mit.edu) I can't find
any trace of this program. Could anybody give me a hint where to find this
program or confirm/deny the existance of this program.

Regards,

  Stefan

Newsgroup: comp.windows.x
Document_id: 67216
From: dsk@ravl.rice.edu (Dan S. Kirkpatrick)
Subject: Installation problem with X11R5

I am in the process of installing X11R5 on my Sun Sparcstation 2 and
have run into a problem.  I imagine it has something to do with a missing
screen driver, or something along those lines, but figured someone out there
in Internet land might be able to help.

I am installing it on a machine that already has OpenLook installed, and would
like to have both installed concurrently.  Thus, I set it up to compile to my
/usr/X11R5 directory.  I worked out all the kinks in getting it compiled (with
gcc), so that it compiles without any warnings.  I need it installed for PEX-SI,
so I set all those appropriate flags.  When I run it, however, I get a message
along the lines of:

Getting interface configuration : Operation not supported on socket

sunOpenFrameBuffer : Inappropriate ioctl for device

Fatal server error : no screens found 


Any ideas on how I can fix it?  Please respond by e-mail at the below
address.

Thanks in advance.

-Dan
-- 
"I do not want to be immortalized through my works; I want to be 
immortalized through not dying."  -Woody Allen

Dan Kirkpatrick                 | Dept of Electrical & Computer Engineering
~dsk@rice.edu                   | Rice University
uunet!rice.edu!dsk@uunet.uu.net | Houston, TX

Newsgroup: comp.windows.x
Document_id: 67217
From: dscheck@nextsrv1.andi.org (David Scheck)
Subject: Imake cpp problems on AIX


I am trying to build and use imake (X11R4) on an IBM RS/6000 running AIX V3.2.
I am having the following 2 problems.

(1) Many of my Imakefile's have contructs like
		/**/#This is a makefile
	at the start of lines to pass Makefile comments thru the C
	preprocessor and into the Makefile.  Most of the C preprocessors that
	I have used will not treat such a # as appearing at the start of the
	line.  Thus the C preprocessor does not treat the hash symbol as the
	start of a directive. 

	However the IBM cpp strips the comment and treats the hash symbol
	as the start of a directive.  The cpp fails when it determines
	that "This" is not a known directive.  I have temporarily hacked my
	imake to handle this situation but would like to come up with a better
	fix.

(2) Several Imakefiles use /**/ as a parameter to a macro when a particular
	use of the macro does not need a value for the parameter.  The AIX cpp
	gives warnings about these situations but continues to work OK.

If you are familiar with these problems and have solutions, I would appreciate
information about on your solutions.  (Perhaps, this is solved in a later
version of imake that I have not reviewed.)  Also, do you know of other cpp's
that behave similarly?

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
Document_id: 67218
From: dscheck@nextsrv1.andi.org (David Scheck)
Subject: imake on DOS and Windows


Has anyone had experience porting imake to DOS using a Microsoft, Watcom, or
any other DOS compiler? 

Since I do not have easy access to News, a response to
'white_billy@po.gis.prc.com' would be appreciated.

Newsgroup: comp.windows.x
Document_id: 67219
From: mlee@eng.sdsu.edu (Mike Lee)
Subject: Post script viewer

Hello, recently I have been printing out a lot of files on school's laser printer and feeling guilty about it.  Please help me by showing me where to get a post script viewer for X-windows.  Thank you for your help.





A student trying to enhence his cybernatic ability.


Newsgroup: comp.windows.x
Document_id: 67220
From: bading@cs.tu-berlin.de (Tobias 'Doping' Bading)
Subject: Re: Forcing a window manager to accept specific coordinates for a window


In article <1r5l8g$bub@wsinfo03.win.tue.nl> rcb5@wsinfo03.win.tue.nl (Richard Verhoeven) writes:

   Sorry, but olwm and tvtwm don't do it. They place the title at that position
   and the window at a position below it.

   This becomes a problem when you want a program to be able to save its current
   configuration and restore is later.

   Currently, my solution is:

	   XCreateWindow(...);
	   XSetWMProperties(..);
	   XMapWindow(...);
	   XFlush(...);
	   XMoveWindow(...);


   It works with olwm, but is less than elegant. All this leaves me wondering
   if I'm overlooking something obvious.

   Richard.


I know that the mwm has an resource to specify if positions are to be used for
the border of a window or for the "user" window. Maybe other window managers
have similar options.
Another way to figure out the difference between the "user" window position
and the window manager decoration window position is to subtract their
positions. You just have to use XQueryTree and remember that the window manager
decorations window is the parent of your window. Unfortunately, you can only
figure out the decoration width and height after the window has been mapped
this way.

Greeting,
          Tobias (bading@cs.tu-berlin.de)

Newsgroup: comp.windows.x
Document_id: 67221
From: neideck@nestvx.enet.dec.com (Burkhard Neidecker-Lutz)
Subject: Re: Animation with XPutImage()?

In article <1993Apr22.215913.23501@nrao.edu> rgooch@rp.CSIRO.AU (Richard Gooch) writes:
>  ... remove the shared memory segment...
>  Terrible, but it works.

Why is that terrible ? That's exactly the way our code has been doing
it for two years now and is the way that temporary files in UNIX systems
are managed most of the time (open, unlink).

		Burkhard Neidecker-Lutz

Distributed Multimedia Group, CEC Karlsruhe          EERP Portfolio Manager
Software Motion Pictures & BERKOM II Project         Multimedia Base Technology
Digital Equipment Corporation
neidecker@nestvx.enet.dec.com

Newsgroup: comp.windows.x
Document_id: 67222
From: cverond@nyx.cs.du.edu (Cristiano Verondini)
Subject: Image plotting source code needed

Hi,

	I'm looking for source sample on how to create a window with an image
in it (actually a 2dim matrix of unsigned char). Any help will be appreciated!
:))

	

Newsgroup: comp.windows.x
Document_id: 67223
From: ks@n8pph52.nt.com (Kamlesh Shah)
Subject: Question on Motif Diaog Shell Widget under vuewm...

Dear netters,

I have noticed something rather weared (I think) about creating a dialog shell
widget while running HP Vue's vuewm.

For some reason, every time I create a dialog shell the foreground and backgroun
d colors are different compared to my toplevel shell.
I am not doing anything special/different.

Does any body know anything about this problem?? How to fix it without hardcodin
g the colors ?

Please respond to kamlesh@salzo.cary.nc.usa ....

Thanks !
-Kamlesh

Newsgroup: comp.windows.x
Document_id: 67224
From: afielden@cbnewsb.cb.att.com (andrew.j.fielden)
Subject: X benchmarks


We are in the process of evaluating X-terminals. This includes running XRemote
over a serial line.
I would like to run some X benchmarks to determine comparative performance.
Has anyone written any such benchmarks, or know of any useful programs on the
net ? I heard of a program called "Xstone", but I couldn't locate it using
archie.

Please reply to afielden@mlsma.att.com, as I don't get to read this newsgroup
much.
Thanks in advance for any help.

-- 
+----------------------------------------+----------------------------------+
|Andrew Fielden. AT&T Network Systems UK |        Tel : +44 666 832023      |
|Information Systems Group (SUN support) |   Email : afielden@mlsma.att.com |
+----------------------------------------+----------------------------------+

Newsgroup: comp.windows.x
Document_id: 67225
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Hypercard for UNIX

Hi netlanders,

Does anybody know if there is something like Macintosh Hypercard for any UNIX 
platform?


Thanks in advance


Ron.

Newsgroup: comp.windows.x
Document_id: 67226
From: lapp@waterloo.hp.com (David Lapp)
Subject: Re: NumLock masking? interference with Meta/Compose/ExtendChar, ...

Ralph Seguin (rps@arbortext.COM) wrote:
: > My question is this:  Is there a means of determining what the state
: > of CapsLock and/or NumLock is?

: Alright.  Ignore this.  I have delved a bit deeper (XKeyEvent) and
: found what I was looking for.

: ev->state   has a bunch of masks to check against (LockMask is the one
: for CapsLock).  Unfortunately, it appears that the NumLock mask varies
: from server to server.  How does one tell what mask is numlock and
: which are for Meta (Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, Mod5Mask).
: eg, SGI's vendor server has Mod2Mask being NumLock, whereas Solaris
: 1.0.1 OpenWindows 3.0 has Mod3Mask for NumLock.  Is there an
: unambiguous means of determining NumLock's mask at runtime for any
: given server?  Sorry for the wasted bandwidth and my appalling ignorance.

You'll have to check the keysym(s) on each of the keys for each
modifier. The one with NumLock in its mapping is the modifier
you want. A bit ugly perhaps but I think its currently the only
way to do this (and it does have some precedent as keysyms are 
used to differentiate CapsLock from ShiftLock for the Lock
modifier).

I don't know of an accepted strategy for handling ambiguous
assignments either. (ie. what if NumLock is mapped for more then
one modifier). I suppose first found is as good as any.

X doesn't handle locking modifiers that well. 

Hope that helps,

Dave Lapp

Standard Disclaimer etc...

Newsgroup: comp.windows.x
Document_id: 67227
From: mitch@unidata.ucar.edu (Mitch Baltuch)
Subject: motif based graphing package


i am in need of a motif-based graphing package to integrate into a large
software package under development for distribution to universities.  it
can be either public domain or commercial, although a commercial package
can't have royalties required for binary only distribution.  we need 2-d
graphing capabilities at a minimum, but 3-d  would be nice.  any info would
be appreciated and i will summarize if there is interest.

thanks,
mitch
--
_______________________________________________________________________________
Mitchell S. Baltuch					Unidata Program Center
mitch@unidata.ucar.edu					UCAR, PO Box 3000
303/497-8652						Boulder, CO 80307-3000

Newsgroup: comp.windows.x
Document_id: 67228
From: ccgwt@trentu.ca (Grant Totten)
Subject: Re: PostScript on X-terminal


I tried to e-mail you but it bounced so...

Hi there,

In article <4263@his.UUCP> you write:
>From: sp1henhj@edit (Henrik Balthazar Hjort)
>Subject: PostScript on X-terminal
>
>
> I have a problem when I'm using PostScript. When I am working local
>on a SUN SPARCstaton IPC the PostScript works good, but when I connect
>to the SUN from a X-terminal I just get error messages that the
>PostScript cannot connect to the news-display.
>
> Why doesn't PostScript work on an X-terminal?
>
> Is there any way to make it work?
>

It might be that the X terminal doesn't support the "Postscript
Extensions to X" product.  I use the 'dxpsview' program on a 
DECstation 5000 to view postscript files but when I moved to an
NCD X terminal, I couldn't use it any more.  So I ftp'd and
compiled GhostScript (GNU software).  Now we can view postscript
files on our X terminals.

Hope this helps.

Grant

>
> Henrik "Henrik Hjort" Hjort
>
>
>
>
--
Grant Totten, Programmer/Analyst, Trent University, Peterborough Ontario
GTotten@TrentU.CA            Phone: (705) 748-1653   FAX: (705) 748-1246
========================================================================
Take everything in stride.  Trample anyone who gets in your way.

Newsgroup: comp.windows.x
Document_id: 67229
From: tomk@skywalker.bocaraton.ibm.com (Thomas Chun-Hong Kok)
Subject: Re: Hypercard for UNIX

In article <1993Apr23.114028.17633@bernina.ethz.ch>, queloz@bernina.ethz.ch (Ronald Queloz) writes:
> Hi netlanders,
> 
> Does anybody know if there is something like Macintosh Hypercard for any UNIX 
> platform?
> 
> 
> Thanks in advance
> 
> 
> Ron.

-- 

Try MetaCard - a HyperCard-like programming environment on X.


Chun Hong

Newsgroup: comp.windows.x
Document_id: 67230
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <BADING.93Apr23105229@athene.cs.tu-berlin.de> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
>
>I know that the mwm has an resource to specify if positions are to be used for
>the border of a window or for the "user" window. Maybe other window managers
>have similar options.
>Another way to figure out the difference between the "user" window position
>and the window manager decoration window position is to subtract their
>positions. You just have to use XQueryTree and remember that the window manager
>decorations window is the parent of your window. Unfortunately, you can only
>figure out the decoration width and height after the window has been mapped
>this way.
>
	Another way would be to use GetGeometry to find out where
you are relative to the frame, and TranslateCoordinates to find
out where your window's upperleft corner really is.
	-- Ethan



Newsgroup: comp.windows.x
Document_id: 67231
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: Key definitions in Emacs + X

In a prior article ajaffe@oddjob.uchicago.edu (Andrew Jaffe) wrote:
  > Hi.
  > 
  > I use Emacs and I want to customize my keyboard better.
  > When I set up stuff in my .emacs with a keymap and define-keys,
  > I can only access certain of the keys on my X-Terminal's
  > keyboard. I can't get e.g. F10, Home, End, PgUp, PgDn; they all
  > seem to have either the same or no keycode. I have a feeling
  > this can't be fixed in emacs itself, but that I need to do some
  > xmodmap stuff. Can someone help me?

Unfortunately, the key event handling is pretty much hardwired into
emacs.  I ran into this problem a while back; my solution was to
change the source code so that all of these special keys generated
character sequences which basically encoded the keysym and modifier
state as escape sequences -- for example, the sequence "ESC [ 1 B 7" 
would indicate that the "HOME" key was pressed, with the shift key
down.  You could also detect standard keys with odd modifiers, such
as "shift-Return".

If anybody wants these changes, they're welcome to them, but you'll
have to have the source available and be comfortable munging with
it a bit.  Basically you have to replace the keypress handling code
in the source file "x11term.c".  Maybe if someone at OSF is 
interested, I can send them the tweaks, but I imagine they've got
bigger fish to fry (hopefully including the much talked about 
emacs V19!).  If there's sufficient interest, I'll post the mods 
somewhere, although this probably isn't the appropriate group for it.

Notes: 

 * This special code will only apply if you let emacs create
   its own (X11) window.  If you run it in plain old tty mode (which 
   includes Xterm windows) then it's business as usual.

 * The patches I made were to version 18.58, under Sun OS 4.1.2
   [I also did this a while back under HP-UX].  The patches are
   in a chunk of code between '#if sun ... #endif' but could 
   easily be adapted for anything else.


+-------------------------------------------------------+------- /// -----+
| Mark Lanzo   KD4QLZ  lanzo@tekelec.com   919-460-5576 |    \\\///       |
+-------------------------------------------------------+---- \XX/ -------+

Newsgroup: comp.windows.x
Document_id: 67232
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: Title for XTerm

In a prior article naoumov@physics.unc.edu (Sergei Naoumov) writes:

  > Hey guys!
  > I work on many stations and would like this name and current logname
  > to be in a title of Xterm when it's open and a machine name only
  > when it's closed. In other words, I want $HOST and $LOGNAME to appear
  > as a title of opened XTerm and $HOST when XTerm is closed.
  > How can I do it?

[Apologies if I'm answering something already answered in the FAQ.
Our news feed has been losing a lot of articles lately - so I haven't
seen the FAQ lately to check.]


Two ways:
 
 1) When you start the xterm, you can use command line options:
         -n ICON_NAME           To set the icon label
         -T WINDOW_TITLE        To set the window title
         -title WINDOW_TITLE    Equivalent to -T WINDOW_TITLE

 2) You can use escape sequences to change things on the fly:

    The basic escape sequence is:
	ESC ] <P> ; <SOME_ARBITARY_TEXT> BEL

    where ESC and BEL are the ASCII ESCAPE and BELL characters,
    <P> is an ASCII decimal digit -- '2', '1', or '0', depending
    on whether you are trying to set the window or icon title,
    or both, and <SOME_ARBITARY_TEXT> is your desired label string.

    Hence, this command will set the window & icon title:
         echo "\033]0;YOUR_TITLE_GOES_HERE\007\c" 

    To set just the icon title:
         echo "\033]1;YOUR_TITLE_GOES_HERE\007\c" 

    To set just the window title:
         echo "\033]2;YOUR_TITLE_GOES_HERE\007\c" 

    Of course, you may have to fiddle with exact syntax,
    depending on how the echo command works on your system
    and what shell you are using (I've shown System-V semantics
    under Bourne or Korn shells).

    [Hint for Sun OS users:  use /usr/5bin/echo instead of
    /bin/echo or Csh's built-in echo.  Otherwise you'll have
    to embed literal ESC and BEL characters in the string
    instead of using convenient octal sequences.]

    If you want your titlebar updated continously, say to show
    your current directory, hostname, or somesuch, then you'll
    have to see if you can coerce your shell into spitting out
    the appropriate escape sequences when it prompts for commands.
    Sometimes you can just put the appropriate escape sequence
    in the prompt string itself, sometimes not ...


+-------------------------------------------------------+------- /// -----+
| Mark Lanzo   KD4QLZ  lanzo@tekelec.com   919-460-5576 |    \\\///       |
+-------------------------------------------------------+---- \XX/ -------+

    



Newsgroup: comp.windows.x
Document_id: 67233
From: lanzo@tekelec.com (Mark Lanzo)
Subject: Re: How do I find my AppContext?

In a prior article masc0442@ucsnews.sdsu.edu (Todd Greene) said:
 
 > Is there an Xt call to give me my application context?
 > I am fixing up an X/Motif program, and am trying to use XtAppAddTimeOut,
 > whose first argument is the app_context.  What call can I use
 > to give me this value?
 
	XtAppContext XtWidgetToApplicationContext(Widget)

Of course, just using the app context returned from 
XtCreateApplicationContext, XtAppInitialize, etc. is the
best option, unless that path is not available.

Newsgroup: comp.windows.x
Document_id: 67234
From: tracy@cs.ucf.edu (Tracy Rene Tolley)
Subject: HELP: xdm & Solaris2.1

I recently read here that Sun has a patch for xdm on
Solaris2.1.  I was wondering if anyone could give me the 
patch number. 

Thanks in advance,
Tracy Tolley
University of Central Florida - Technical Support

Newsgroup: comp.windows.x
Document_id: 67235
From: ziegenfE@moravian.edu (Eric W. Ziegenfus)
Subject: Re: PROBLEM: Running AIX info from a Sun rlogin shell.

In <1r74bcINN6ei@ome.sps.mot.com> wcl@risc.sps.mot.com (Wayne Long) writes:


>  When I run our RS6000's "info" utility through a remote login
>  shell (rlogin) from my Sun Sparc 1+, I can no longer type
>  lower case in any of info's window prompt's.

>  I thought the prob. may have been due to my Sun window mgr. 
>  (Openlook) being incompatible with the AIX Motif application
>  but I tried it under TVTWM also.  Same result.
>  
>  So this is presumably an X11 key definition problem between 
>  workstations - but my system admins. feign ignorance.
>  
>  What do I need to do the be able to type lower case into 
>  this remote AIX motif app. from within my local Openlook
>  window manager?
>  
>  
>-- 
>-------------------------------------------------------------------
>Wayne Long - OE215              Internet: wcl@risc.sps.mot.com
>6501 William Cannon Drive West  UUCP: cs.texas.edu!oakhill!risc!wcl
>Austin, Texas 78735-8598        Phone (512) 891-4649  FAX: 891-3818

I have had the exact same problem, but have not figured out a solution.
I run a PC with Linux (free-unix) with X11r5 and OpenWindows 3.0, I
would appreciate any solutions.

ewz
-- 

               /---------------------------------------------\
              | INTERNET:  ziegenfE@moravian.edu              |
              | UUCP:      ...!rutgers!lafcol!batman!ziegenfE |
               \_____________________________________________/

Newsgroup: comp.windows.x
Document_id: 67236
From: christy@cs.concordia.ca (Christy)
Subject: XFree86 --- need help...

Hi,

I just got XFree86 running on my pc with Consensys and encountered a few
minor (I hope) probems.

The pc is hooked up to a LAN where I want remote X applications to 
connect to my X-server.  I believe the command to permit this is
xhost.  When I'm logged on my pc and type 'xhost + '  ,  I get the error message saying
"You must be on local machine to enable access". 
what does this mean ?  ain't I already on the local machine?

Another problem I have is with the mouse movement.  I find that the 
mouse cursor moves extremely slow and choppy.
How can I make the mouse cursor move more accurately?


thank in advance.
Any help is much appreciated.

please send replies to christy@alex.qc.ca.


Christy

Newsgroup: comp.windows.x
Document_id: 67237
From: bshaw@spdc.ti.com (Bob Shaw)
Subject: SUMMARY  xon and X11R5


Hi folks
Thanks to the ones that replied, however, my problem turned out
to be very simple.

In my .Xresources I had a space after XTerm*font:   10x20.
Removing this and xrdb fixed my problem.

Also, same symptom, was that some of my users did not have the
proper capitals for XTerm*font.

Thanks again

Bob


Newsgroup: comp.windows.x
Document_id: 67238
From: bkline%occs.nlm.nih.gov (Bob Kline)
Subject: X11 load on the Network

Can someone point me in the direction of any papers (not necessarily
formally conducted studies) discussing how much traffic X apps generate
for the network, particularly in comparison with curses-bases apps 
over telnet?  Also, does an X server typically buffer up user keyboard
input a line at a time?  Can the X client control this, asking for
keystrokes immediately?  Thanks in advance for any feedback!

--
/*----------------------------------------------------------------------*/
/* Bob Kline                                      Phoenix Systems, Inc. */
/* bkline@occs.nlm.nih.gov                        voice: (703) 522-0820 */
/*----------------------------------------------------------------------*/

Newsgroup: comp.windows.x
Document_id: 67239
From: curtiss@cs.UND.NoDak.Edu (Chuck Curtiss x3289)
Subject: Athena Widgets

Where do I find the Athena Widgets that are needed for xtdm-2.4.8 

Thanks in advance



Newsgroup: comp.windows.x
Document_id: 67240
From: min@stella.skku.ac.KR (Hyoung Bok Min)
Subject: subscribe


subscribe min@stella.skku.ac.kr


Newsgroup: comp.windows.x
Document_id: 67241
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: RE: need shading program example in X


In article <930421105641.100043a@TGV.COM>, mahan@TGV.COM (Patrick L. Mahan) writes:
|> 
|> #
|> #Do anyone know about any shading program based on Xlib in the public domain?
|> #I need an example about how to allocate correct colormaps for the program.
|> #
|> #Appreciate the help.
|> #
|> 
|> I don't know if this might help, but I've just started playing with a program
|> called POVRay (Persistance of Vision Raytracer) that also displays its output
|> via X Windows.  It does a fairly good job of allocating the colormap on my
|> Psuedo-Color 8-plane display.  I got the source from from a site in Canda.
|> The person I retrieved them from was David Buck (dbuck@ccs.carleton.ca).
|> 

I think the original post was searching for existing implementations of
f.i. Gouroud-shading of triangles. This is fairly complex to do with plain
X. Simpler shading models are implemented already, f.i. in x3d (ask archie
where to get the latest version).
For Gouroud, a fast implementation will be possible utilizing some extension
only, either MIT-SHM to do the shade in an image and fast update the window
with it, or PEX/OpenGL which should be able to shade themselves. The portable
'vanilla X' way would be to shade in a normal XImage and use XPutImage(),
what would be good enough to do static things as f.i. fractal landscapes
or such stuff.

To speak about POVRay, the X previewer that comes with the original source
package is not that good, especially in speed, protocol-friendlyness and
ICCCM compliance. Have a look on x256q, my own preview code. It is on

141.76.1.11:pub/gfx/ray/misc/x256q/

The README states the points where it is better than xwindow.c from
POVRay 1.0

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67242
From: stevedav@netcom.com (Steve Davidson)
Subject: MOOLIT and OLIT

Does anyone know the difference between MOOLIT and OLIT?  Does Sun
support MOOLIT?  Is MOOLIT available on Sparcstations?

I have recntly downloaded a copy of wkshTree written by Eric Wallengren
of Univel.  There are many widgets that are apparently available only
to MOOLIT but not OLIT.

Is there a wkshTree program available under OLIT?

steved@cfcl.com

Newsgroup: comp.windows.x
Document_id: 67243
From: andre@bae.bellcore.com (Andre Cosma)
Subject: Is authentication a planned feature for X11R6?

Greetings,

My question is whether the upcoming release of X11R6 will provide
(strong) authentication between the X clients and server(s). If so,
will this feature be based on the Kerberos authentication mechanism
(and, if so, will Kerberos Version 5 be used)? Please reply via email.

Thanks,

--Andre
-- 
Andre S. Cosma         | RRC 1N-215          |  Bellcore - Security and
andre@bae.bellcore.com | 444 Hoes Lane       |       Data Services
(908) 699-8441         | Piscataway, NJ 08854|
----------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67244
From: garym@ie.utoronto.ca (Gary Murphy)
Subject: X on Amiga 4000?

I'm new to the hardware and with a mandate to port some X-based
stereo-video software --- does anyone know of or have experience with
X on Amiga machines?  If I can retain the X event handling, it would
ease my plight considerably, and if I can keep all the Motif bits, so
much the better!


-- 
Gary Lawrence Murphy ---------------- garym@virtual.rose.utoronto.ca
University of Toronto, Industrial Eng Dept    fax:    (416) 971-1373
4 Taddle Creek Rd, Toronto, Ont M5S 1A4       voice:  (416) 978-3776
The true destination is always just here, now ----------------------

Newsgroup: comp.windows.x
Document_id: 67245
From: brian@nostromo.NoSubdomain.NoDomain (Brian Colaric  Sun Dallas DSE)
Subject: Help: OS2 Presentation Mgr port to X

I need to port several OS/2 PM applications to X (OpenWindows or Motif),
and desperately need any information on how to go about doing this (short
of a complete rewrite.
 
Are there any tool to make porting easer?
Any References?
Any talent out there to hire to do this?
I will even take an OS/2 Presentation Mgr emulator for sun!
 
Any, and all replies (except flames) welcome!
 
 
Brian Colaric
 
Brian.Colaric@dallas.Central.Sun.COM



Newsgroup: comp.windows.x
Document_id: 67246
From: cjhs@minster.york.ac.uk
Subject: Re: Xt intrinsics: slow popups

Bryan Boreham (bryan@alex.com) wrote:
: In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
: > The application creates window with a button "Quit" and "Press me".
: > The button "Press me" pops up a dialog box. The strange feature of
: > this program is that it always pops up the dialog box much faster the
: > first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
: > it is *much* slower.
: 
: The shell is waiting for the window-manager to respond to its
: positioning request.  The window-manager is not responding because
: it thinks the window is already in the right place.
: 
: Exactly *why* the two components get into this sulk is unclear to
: me; all information greatly received.

Thanks for this clue, and thanks to Derek Ho also for a pointer in the
same direction.

One solution, due to Derek Ho: when the popup is popped up, we SetValue
its location -- which on repeat popups will be unchanged from the
previous popup. The slow response can be avoided by calling GetValue
first, and only using SetValue if the required location is different.
The problem can also be avoided by making a tiny alteration in the
location of the popup, so that the SetValue really does change the
location of the popup. (We tried this just for a double check on the
source of the problem.)

The solutions we have tried successfully are now as follows:

1) Use "twm" or "mwm" rather than "olwm"
2) Use "olwm", with resource "*wmTimeout: 10"
3) Only reset the location of the popup window if it is truely changed.

This is obviously working around some bug somewhere.

Thanks -- Chris Ho-Stuart

Newsgroup: comp.windows.x
Document_id: 67247
From: ge!severy%severy@uunet.UU.NET (severy)
Subject: Overriding window manager focus processing

     I am working on an X-Window based application that needs to 
override some of the window manager focus processing.  I am 
using X11R4 and Motif 1.1 currently, although I will also be 
working with Open Look in the future.

     What I need to do is under certain circumstances prevent the 
user from switching from one window of the application to 
another window.  Let's say, for example, that Window A is on top 
of Window B in the window hierarchy.  Normally, if the user clicks 
the mouse in Window B it will be brought to the top of the 
window hierarchy and placed on top of Window A.  Under certain 
circumstances if the user clicks the mouse in Window B I need to 
beep and prevent Window B from being raised on top of Window 
A.

      From the research and testing I've done so far, it appears that 
this window ordering is handled by the window manager, in this 
case Motif.  I haven't found any way to override this default 
processing through standard X Window functions.  I can tell 
when this switching occurs through focus change and mapping 
notify events, but I can't find any way to tell Motif not to make the 
switch.

      The temporary solution I've currently come up with is very 
kludgy but it partially works.  When I detect such a window switch 
in those cases when the switch is not allowed, I manually force 
the formerly top window back on top with an XRaiseWindow call 
and beep with the XBell function.  This provides the necessary 
functionality but looks ugly when the windows switch places 
twice.

      Does anyone know how I can tell Motif (or preferably *any* 
window manager) when I don't want the window order switch to 
actually take place?  Respond either by e-mail or posting to this 
newsgroup.

Cheers....     Randall

***************************************************************************
* Randall Severy                    *      UUNET: uunet!ge!severy         *
* GE Information Services           *   INTERNET: ge!severy@uunet.uu.net  *
* 401 N. Washington St.   MC05A     *      GENIE: RSEVERY                 *
* Rockville, MD  20850    USA       *      PHONE: +1-301-340-4543         *
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 67248
From: jeremy@wildcat.npa.uiuc.edu (Jeremy Payne)
Subject: Re: Xt intrinsics: slow popups

In article <735516045.1507@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
|> cjhs@minster.york.ac.uk wrote:
|> : Help: I am running some sample problems from O'Reilly volume 4,
|> : Xt Intrisics Programming Manual, chapter 3. popup
|> : dialog boxes and so on.
|> : 
|> : In example 3.5, page 76 : "Creating a pop-up dialog box"
|> : 
|> : The application creates window with a button "Quit" and "Press me".
|> : The button "Press me" pops up a dialog box. The strange feature of
|> : this program is that it always pops up the dialog box much faster the
|> : first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
|> : it is *much* slower.
|> : 
|> : Has anyone any experience with these sample programs, or why I get
|> : this behaviour - fast response time for the first time but slow response
|> : time from 2nd time onwards ?
|> : Anyone can give me some ideas on how to program popups so that each time
|> : they popup in reasonable fast response time ?
|> : 
|> : Thankyou - Shirley
|> 
|> Thanks to those who responded.
|> 
|> We were able to prevent this behaviour by two methods:
|> 
|> 1) running twm rather than olwm
|> 2) keeping olwm, but putting "wmTimeout: 10" in the resources
|> 
|> It has been suggested that the difficuty was something to do with the
|> window manager positioning the popup window. Any guru who can analyse
|> what is going on from this information, please post and let us know.
|> 
|> Thanks -- Shirley

I ran in to this problem I while ago, and from what I remember you should use
XtTranslateCoordinates etc. after realizing the main widget to calculate
the location of the popup, then use something like XtVaSetValues on the
popup widgets before ever using them.  Calling SetValues repeatedly (e.g.
every time something pops up) seems to be what slows you down.  I never
delved deep enough to figure out exactly why though...

---------------------------
Jeremy Payne
UIUC Neuroscience program /
College of Medicine
jrpayne@uiuc.edu
(217)244-4478
---------------------------

Newsgroup: comp.windows.x
Document_id: 67249
From: deloura@cs.unc.edu (Mark A. DeLoura)
Subject: Looking for X Window Server Frequency-of-Operations Data

Hello--  I'm currently designing the architecture of a chip which is
intended to help speed up common operations on a windowing system such as
X.  A friend and I are designing the chip as the final course project for
an advanced computer architecture course taught by Dr. Fred Brooks at
UNC-Chapel Hill.  While we feel that we've got a pretty solid design
currently, we'd really like to get ahold of some frequency data from an
X-Windows server so that we can make the most effective use of our bit
budget.  

Unfortunately, I've been unable to find anything of this sort in the
various X FAQs, or X manuals that I've seen.  Does anyone have some type of
frequency data, like how many Copy-rectangle operations vs draw-lines, and
things of that sort?  Or, barring that, a program that records requests to
the server into a logfile that I can munge on myself?

Any and all help would be very appreciated.

Many thanks,
    ---Mark

===============================================================================
 Mark A. DeLoura       deloura@cs.unc.edu      U of North Carolina, Chapel Hill

Newsgroup: comp.windows.x
Document_id: 67250
From: dbrooks@osf.org (David Brooks)
Subject: Re: Q: Colormaps with dialog shells

dyoung@media.mit.edu (David Young) writes:
| 
| I have an applicationShell which uses a colormap created with
| XCreateColormap() and uses all of the colors available for my 8-bit
| display....When I popup a dialogShell to prompt the user for
| some input I want the XmNdialogStyle to be set to
| XmDIALOG_PRIMARY_APPLICATION_MODAL.  The result is that if my cursor is
| over the dialogShell I get my colormap, but if the cursor is over the
| applicationShell (or any window other than the dialogShell) I get the
| default colormap.  But I'd like it so that if my cursor is over _any_
| window of my application, I get my colormap.

I *think* this is correct behavior.  Remember the default
colormapFocusPolicy is keyboard (meaning the cmap focus follows the
keyboard focus).  Since the dialog is modal, mwm won't allow keyboard
focus onto your main shell, and so it won't allow cmap focus either.

Since it sounds as though you have keyboardFocusPolicy:pointer, I
suggest you set colormapFocusPolicy:pointer also.  That way, the cmap
focus won't slavishly follow keyboard focus, but will beat its own path.

(if you have keyboardFocusPolicy: explicit, you can set cmap focus
explicit also, but you then need a binding to f.focus_color, probably on
MB1).
-- 
David Brooks					dbrooks@osf.org
Open Software Foundation			uunet!osf.org!dbrooks
Showres soote my foote


Newsgroup: comp.windows.x
Document_id: 67251
From: papresco@undergrad.math.uwaterloo.ca (Paul Prescod)
Subject: X Toolkits

I am considering making a reasonably large application for free
distribution (probably copylefted).  I am going to use X.  Now I'm
bewildered by the huge number of "standards" that "open systems" has
created.  

I've lived in a fairly tookit-sheltered environment.  Most of the tools
here were produced with the Athena Widget set, or X Intrinsics or Xw
(??).  

In my humble opinion, they look like crap.  I don't know, however, if
this is a characteristic of the tookits, or just poor aestetic taste
in the programmers.

I would like my app to look a little more "sculptured" like mwm.  I
understand, however, that mwm isn't free like the other tookits.

I am getting Linux, so I will have InterViews, but I don't know how it
will look.  I get the impression Andrew is from the FSF, but I don't
know what it looks like either.

If you can help explain this toolkit mess to me, I would be much
obliged.  Which are free?  Which are the best?  Which are portable?  Which
looks nice?  Which is not a resource hog?

Also, if you happen to know which are available on Linux and/or Sun,
that would be a big help too.

Thanks in advance.


Newsgroup: comp.windows.x
Document_id: 67252
From: ben@dbsm.oz.au (Benjamin Stephen Kelley)
Subject: Problems with color Xterm

We have recently obtained a copy of color_xterm (from export.lcs.mit.edu) after
seeing it mentioned in a previous article. On compilation, it reports the
following undefined symbols:
	_get_wmShellWidgetClass
	_get_applicationShellWidgetClass

	but still runs. When sending escape sequences to set the colour,
any colour comes out as black text on a black background. Any Ideas?

Has anyone used this program in colour successfully?

Can anyone point me to any other colour terminal emulators?

We are running OpenWindows 3 on Sun Sparcs running SunOS 4.1.3.

				advaTHANKSnce  Ben Kelley.

						ben@thor.dbsm.oz.au


Newsgroup: comp.windows.x
Document_id: 67253
From: barnett@grymoire.crd.ge.com (Bruce Barnett)
Subject: Re: Title for XTerm

In article <1993Apr22.173546.5198@gecko.uucp> lanzo@tekelec.com (Mark Lanzo) writes:

       [Hint for Sun OS users:  use /usr/5bin/echo instead of
       /bin/echo or Csh's built-in echo.  Otherwise you'll have
       to embed literal ESC and BEL characters in the string
       instead of using convenient octal sequences.]

Bad idea. using /usr/5bin/echo is slower than the built-in echo.
This is what I do. It does execute `hostname` once per shell window,
and does read in one extra file. But manipluating the titles does not
require executing extra programs.

Oh yes, it does execute some programs once per each system. 
But it stores them in a file for the next time...


if ( ! $?HOSTNAME ) then
	setenv  HOSTNAME `hostname`
endif

# figure how how to generate escape, bell, 
# and echo commands without a a line terminator
# I may have done this before. If so, the variable E is set

# have I executed this script before on this system?
if ( $?E ) then
#	echo "already set the echo variables">/dev/tty
else if ( -f ~/.echo.${HOSTNAME} ) then
	source ~/.echo.${HOSTNAME}
else if ( `echo -n |wc -l`  == 0 ) then
#	echo "built in echo is bsd" >/dev/tty
	# then berkeley style echo
	echo 'set ech = "echo -n"' >~/.echo.${HOSTNAME}
	echo "set E = `echo a | tr a '\033'`" >> ~/.echo.${HOSTNAME}
	echo "set B = `echo a | tr a '\007'`" >> ~/.echo.${HOSTNAME}
	echo 'set N = ""' >> ~/.echo.${HOSTNAME}
	source ~/.echo.${HOSTNAME}
else 
#	echo "built in echo is sysV" >/dev/tty
	echo 'set ech = "echo"' >~/.echo.${HOSTNAME}
	echo 'set E = "\033"' >> ~/.echo.${HOSTNAME}
	echo 'set B = "\007"' >> ~/.echo.${HOSTNAME}
	echo 'set N = "\c"' >> ~/.echo.${HOSTNAME}
	source ~/.echo.${HOSTNAME}
endif	


# Are we using shelltool, cmdtool or xterm?
# duplicate these aliases here to avoid problems
if ( $term =~ sun* ) then
	# Sun Aliases
	alias Header '${ech}  "${E}]l\!:1${E}\${N}"'
	alias IHeader '${ech}  "${E}]L\!:1${E}\${N}"'
else if ( $term =~ xterm ) then
	alias Header '${ech}  "${E}]2;\!:1${B}${N}"'
	alias IHeader '${ech}  "${E}]1;\!:1${B}${N}"'
endif



--
Bruce Barnett <barnett@crd.ge.com> uunet!crdgw1!barnett

Newsgroup: comp.windows.x
Document_id: 67254
From: rao@cse.uta.edu (Rao Venkatesh Simha)
Subject: xrn , xarchie for HP's


	Hi,
	I need xrn and xarchie for the HP's (9000/730, version 8 OS), either in
the source form or, (preferably) in executable form. Please suggest
where I can find this, 
	Send e-mail to: rao@cse.uta.edu
Thanks in advance,
Rao.
-- 
SSC

Newsgroup: comp.windows.x
Document_id: 67255
From: skip@eco.twg.com (Skip Koppenhaver)
Subject: Pulldown menu periodically hangs application on OpenWindows 3.0


Has anyone found a fix for the following problem?

Client Software:	SunOs 4.1.1, X11R5
Server Hardware:	Sun IPC
Server Software:	SunOs 4.1.1, Open Windows 3.0 (w/ patch 100444-37)

A Motif 1.2.2 application will periodically hang when run against the
OpenWindows 3.0 server (xnews). The pulldown is displayed but then no
button actions have any effect. Sometimes pressing <Return> will
unstick the application but not usually. It looks like the pulldown is
grabbing the focus and never letting go. Other windows on the display
continue to get updated so the server isn't hanging. If I log in from
another terminal and kill the Motif application then everything gets
back to normal. The same application when run against other X servers
(including MIT X11R5 Xsun, DecWindows, Tektronix X terminal) has no
problems. This is obviously a OpenWindows problem but I need a
work-around since most of our customers are OpenWindows users.

I have tried the following things:

    1. Installing the latest version of the OpenWindows server patch
       (100444-37).

    2. Using mwm (version 1.2.2) instead of olwm.

    3. Applying the patch specified in the Motif FAQ (question 110).
       This had the effect of disabling the point-and-click method of
       menu interaction (as opposed to the click-and-drag method), and
       screwing up the menu mnemonics keys. It did seem to help, but I
       was still able to get the application to hang.

Repeat By:

This is an intermittent problem so you'll have to try several times.

Click and release on a menu heading (pulldown menu will pop up)

Click and release on a menu item

Repeat until application hangs


Any help would be appreciated. Thanks in advance.
--
Skip Koppenhaver
skip@eco.twg.com

Newsgroup: comp.windows.x
Document_id: 67256
From: ma201rs@prism.gatech.EDU (SHONKWILER R W)
Subject: screen problem in unix/xwindows/solaris

Experiment: From a Sun openwindows 4.1.3 xterm window log into a
Solaris 2.x machine using rlogin; now do an "ls" and get the first
character of each line display in the last column of the display
with the rest of the line wrapped to the next line of the display.

Log out and the condition persists.  Check stty all, try reset
with no effect.

Use telnet instead of rlogin and it doesn't occur.

Try it from a unix console and it doesn't occur.

(1) What's causing this?
(2) Can it be avoided?
(3) How can the terminal characteristics be reset?

Please send replies to shenk@math.gatech.edu

-- 
SHONKWILER R W
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{allegra,amd,hplabs,seismo,ut-ngp}!gatech!prism!ma201rs
ARPA: ma201rs@prism.gatech.edu

Newsgroup: comp.windows.x
Document_id: 67257
From: jigang@dale.ssc.gov (Jigang Yang)
Subject: Re: internationalized menus & icon labels



             I have a problem with icon pixmap. My application has to run
   under openwindow and motif. I wrote my program in Motif with pixmap and
   icons. It runs fine under motif/motif window manager and X11R5/mwm. But 
   the icon pixmap does not show up under openwin/olwm and X11R5/olwm.

             Has anybody got into this kind of problem? Need a clue. An 
   example which works in both X11R5/motif and openwindow will be great.

-- 
Jigang Yang, jigang@dale.ssc.gov, jyang@sscvx1.bitnet
2550 Beckleymeade Ave. MS 4011  Tel: 214-708-3498
Dallas, TX 75237                Fax: 214-708-4898 
 

Newsgroup: comp.windows.x
Document_id: 67258
From: jigang@dale.NoSubdomain.NoDomain (Jigang Yang)
Subject: icon pixmap problem...



             I have a problem with icon pixmap. My application has to run
   under openwindow and motif. I wrote my program in Motif with pixmap and
   icons. It runs fine under motif/motif window manager and X11R5/mwm. But 
   the icon pixmap does not show up under openwin/olwm and X11R5/olwm.

             Has anybody got into this kind of problem? Need a clue. An 
   example which works in both X11R5/motif and openwindow will be great.

-- 
Jigang Yang, jigang@dale.ssc.gov, jyang@sscvx1.bitnet
2550 Beckleymeade Ave. MS 4011  Tel: 214-708-3498
Dallas, TX 75237                Fax: 214-708-4898 
 

Newsgroup: comp.windows.x
Document_id: 67259
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: X Toolkits

Excerpts from netnews.comp.windows.x: 23-Apr-93 X Toolkits Paul
Prescod@undergrad.m (1132)


> I am getting Linux, so I will have InterViews, but I don't know how it
> will look.  I get the impression Andrew is from the FSF, but I don't
> know what it looks like either.

If you're on the internet and your site isn't sheltered from external
tcp/ip traffic, you can use the Remote Andrew Demo to see what the
Andrew Toolkit looks like:

Remote Andrew Demo Service

This network service allows you to run Andrew Toolkit applications
without the overhead of obtaining or compiling the Andrew software.  You
need a host machine on the Internet, and you need to be running the X11
window system.  A simple "finger" command will allow you to experience
ATK applications firsthand.  You'll be able to compose multimedia
documents, navigate through the interactive Andrew Tour, and use the
Andrew Message System to browse through CMU's three thousand bulletin
boards and newsgroups.

To use the Remote Andrew Demo service, simply run the following command
on your machine:

    finger help@atk.itc.cmu.edu

The service will give you further instructions.   

Gary Keim
Andrew Consortium

Newsgroup: comp.windows.x
Document_id: 67260
From: c2xjfa@kocrsv01.delcoelect.com (James F Allman III)
Subject: Re: GUI Study


In article <1993Apr23.031744.19111@mercury.unt.edu>, seth@ponder.csci.unt.edu (Seth Buffington) writes:
> >Cutsie little Macintrash-like icons that are an instant recipe for
> >mousitis IMHO. System 7 is undoubtedly the worst GUI I have used (out of
> >that, RISCOS, MSWombles, and X11) simply because it does not provide enough
> >keyboard shortcuts. Windows I must confess I quite like (cover your ears
> >:-) ) because you can actually use it without having to ever touch the
> >mouse.
> [stuff delete]
> >the user rather than making things _easier_ - and there should always be
> >the option to do it your way if you want to, which is why I like the
> >UNIX/X combination so much - it's so customizable. 
> 
> Hear! Hear! I agree completely. One thing I can't stand about
> the Mac interface is its shear determination to FORCE you to use
> the mouse(what if your mouse breaks--your whole system is
> down!).  I like the mouse--it is handy on some occassions such
> as cut and past and moving icons around, etc.  But for most
> work, the keyboard and hot keys are 10-20 times faster than
> using the mouse. Sure it is a plus to be able to do something
> simple if you are an inexperienced user, but how long is it
> before your are experienced? A month? Two? (Speaking of PCs at
> the moment.)
> 	I don't think it is too much to ask that window
> programmers provide not only a menu/mouse interface but also
> look forward to those who would like to move on to hot keys and
> command line interfaces, which usually allows you to do more in
> less time IF you are experienced.
> 	All of the above equally applies to windowing systems on
> UNIX (especially since Unix is at least 500% more powerful than
> DOS).
> 
And at least 500% more user unfriendly as well!

Newsgroup: comp.windows.x
Document_id: 67261
From: jh@cadre.com (Joe Hartley)
Subject: Re: X on Amiga 4000?

In article 8yD@ie.utoronto.ca, garym@ie.utoronto.ca (Gary Murphy) writes:
>I'm new to the hardware and with a mandate to port some X-based
>stereo-video software --- does anyone know of or have experience with
>X on Amiga machines?  If I can retain the X event handling, it would
>ease my plight considerably, and if I can keep all the Motif bits, so
>much the better!
>

There is X for the Amiga, but it'll cost you.  GfxBase Inc., owned by
Dale Luck, one of the original Amiga architects, sells X for the Amiga.
There are many options available, including Motif.  Call 'em and get the
scoop.

GfxBase Inc.
1881 Ellwell Drive      Phone: 408-262-1469
Milpitas, CA 95035        Fax: 408-262-8276

I've got no connection with them, other than being a satisfied customer.


---
===============================================================================
Joe Hartley          | jh@cadre.com  -  Whenever you find that you are on the
Cadre Technologies   | side of the majority, it is time to reform. - M. Twain
222 Richmond St.     | --------------------------------------------------------
Providence, RI 02903 | Overman 1st Class - the Kilgore Trout Memorial Clench
(401) 351-5950 x266  |            of the Church of the SubGenius  
===============================================================================

Newsgroup: comp.windows.x
Document_id: 67262
From: jimf@centerline.com (Jim Frost)
Subject: How to make simplest possible composite widget?

Not being an Xt programmer by any stretch of the imagination, this is
driving me crazy and it's probably really simple to do.

I need to make a composite widget that does nothing at all but is
merely a placeholder in a widget instance heirarchy -- allowing me an
additional resource name level.

To illustrate I have an application with the following widget
heirarchy:

	    Shell Widget
	         |
	Application Widghet

I want the following:

	    Shell Widget
	         |
	Intermediate Widget
	         |
	 Application Widget

where the intermediate widget has a name but gets all its other
properties (and propagates down new values) from the shell widget.

I assume there's a simple way to do this but I can't find an example
and the documentation I have is rather vague about implementing
composite widgets.

Please respond via email.  Any help will be very much appreciated.

jim frost
jimf@centerline.com

Newsgroup: comp.windows.x
Document_id: 67263
From: tdunbar@vtaix.cc.vt.edu (Thomas Dunbar)
Subject: Re: X Toolkits


 libXaw3d, the 3D Athena widget set will greatly improve the
"sculptured" look. In Linux, with its shared, jump-table libs, you
don't even have to recompile or relink. you merely have to:
 ln -sf /lib/libXaw3d.so.3.0 /lib/libXaw.so.3



   thomas

Newsgroup: comp.windows.x
Document_id: 67264
From: rar@schooner.otra.COM (Rich Rollman)
Subject: File Formats

Hi folks,

Can anyone give me some information, the location of some
information, or some reference material for the following
file formats: WIFF, MO;DCA/IOCA, PCX.

If this is not quite the appropriate place to ask such
questions, please let me know a more appropriate one and
accept my apologies in advance.

Thanks for your help,

Rich Rollman
Dogleg Systems, Inc.
(908) 389-9597

Newsgroup: comp.windows.x
Document_id: 67265
From: smd@iao.ford.com (Steve Dahmen)
Subject: Changing colors on a label - HELP


I have a toggleButton widget (yes widget) and I have a routine
which changes the color of the foreground and background of the
label.  Well, the background changes alright, but the label
text does not redraw itself.

I am guessing that I have to force it to redraw with an
XExposeEvent sent to it via XSendEvent.  Is this the best
way to get the text up again?  I can't seeem to get
XSEndEvent to work right.... if this is a good approach,
might anyone have an example lying around to show me how to
do this?  I've RTFM all evening and did not find a decent
example.

PS I keep getting Segmentation Faults in XSEndEvent, tho all
the values are as expected.

Thanks in Advance

Stephen M. Dahmen


Newsgroup: comp.windows.x
Document_id: 67266
From: egan@phony25.cc.utah.edu (Egan F. Ford)
Subject: color xterm

I'm look for current patches for color xterm for X11R5 pl19 ro higher.  Could
someone please tell me where to get them for e-mail them to me.

Thanks.


-- 
Egan F. Ford
egan%phony25.cc.utah.edu@hellgate.utah.edu

Newsgroup: comp.windows.x
Document_id: 67267
From: hasty@netcom.com (Amancio Hasty Jr)
Subject: Re: X Toolkits

In article <C5y8wJ.3zE@undergrad.math.uwaterloo.ca> papresco@undergrad.math.uwaterloo.ca (Paul Prescod) writes:
>I am considering making a reasonably large application for free
>distribution (probably copylefted).  I am going to use X.  Now I'm

The following packages meet your criteria in that they are PD and
present an aesthetically pleasant graphical interface to the users.

If you can use 386bsd:
	there is xview3 (OpenLook)

	there is Interviews which looks a little like Motif

	there is gopath a very nice C++ toolkit for Athena Widgets and Motif
	         which is simpler
                 and better than interviews and you will enjoy
                 technical support from Bull via e-mail
		 It has a nice draw program (it uses motif) which can be used
		 to create graphical front-end to programs.
		 The data format is called streams which you can feed
		 to your programs. I ported gopath on an internet machine
		 which is gone but if you use gcc-2.3.3 with minimal effort
		 gopath can be ported to 386bsd.
		 Last but not least, gopath interfaces to toolkits via a driver
		 module. They have an MS-Windows driver module for instance.

	Also, many have written extensions to tk/tcl thus allowing powerful
	applications. For instance, tcl_nm  has snmp extensions for tk/tcl.
	With ease, I  can now combine snmp network operations with graphs,
	photo-widget, graphical interface, file operations, database 
	operations,etc.. The author of tcl_nm mail me a simple network 
	management application which was about 80 lines long - it displayed
	various environmental parameters from a router. I wrote  a simple
	strip chart script for displaying Real-Time ip received
	packets/seconds.


	Hope this helps,
	Amancio Hasty

	
-- 
This message brought to you by the letters X and S and the number 3
Amancio Hasty           |  
Home: (415) 495-3046    |  ftp-site depository of all my work:
e-mail hasty@netcom.com	|  sunvis.rtpnc.epa.gov:/pub/386bsd/incoming

Newsgroup: comp.windows.x
Document_id: 67268
From: sivap-s@cs.buffalo.edu (S. Suresh)
Subject: Re: screen problem in unix/xwindows/solaris

SHONKWILER R W (ma201rs@prism.gatech.EDU) wrote:
: Experiment: From a Sun openwindows 4.1.3 xterm window log into a
: Solaris 2.x machine using rlogin; now do an "ls" and get the first
: character of each line display in the last column of the display
: with the rest of the line wrapped to the next line of the display.

: Log out and the condition persists.  Check stty all, try reset
: with no effect.

The condition happens  when the TAB is not  set  to 8 spaces,  set and
then check out.

-- 
Suresh Sivaprakasam                    
Department of Computer Science,    SUNY Buffalo,    Amherst,   NY - 14260-0001
Internet :sivap-s@cs.Buffalo.EDU               Bitnet : sivap-s@SUNYBCS.BITNET

Newsgroup: comp.windows.x
Document_id: 67269
From: mcc@timessqr.gc.cuny.edu (George McClintock)
Subject: Re: XDM & DECnet ?

While I cannot answer questions about running XDM over a DECnet, I can
say that the following defines must be added to the site.def before
building R5 before any X clients will work over a DECnet.

From site.def

#define ConnectionFlags -DTCPCONN -DUNIXCONN -DDNETCONN
#define ExtraLibraries -ldnet

Hoping this helps,

George

--
/*******************************************************************
* The opinions expressed are those of the author and in no way     *
* represent the opinions of the CUNY Graduate School, its agencies *
* or personnel.  mcc@timessqr.gc.cuny.edu  ||  CMCGC@CUNYVM.BITNET *
*******************************************************************/
-- 
/*******************************************************************
* The opinions expressed are those of the author and in no way     *
* represent the opinions of the CUNY Graduate School, its agencies *
* or personnel.  mcc@timessqr.gc.cuny.edu  ||  CMCGC@CUNYVM.BITNET *

Newsgroup: comp.windows.x
Document_id: 67270
From: steerr@h01.UUCP (R. William Steer)
Subject: X-server for NT?

Has anybody generated an X server for Windows NT?  If so, are you willing
to share your config file and other tricks necessary to make it work?

Thanks for any information.

Bill Steer
Westinghouse
(412)374-6367

Newsgroup: comp.windows.x
Document_id: 67271
From: mppa3@syma.SUssex.ac.UK (Alan Richardson)
Subject: Now available: xvertext.4.0

Now available: xvertext 4.0 
--------------

Summary                                  
-------
xvertext provides you with four functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). Rotation  
is still achieved using XImages, but the notion of rotating a whole font
first has been dropped.

What's new?
-----------
I've added a cache which keeps a copy of previously rotated strings - thus
speeding up redraws.

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.4.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
Document_id: 67272
From: thor@surt.ATd.ucar.EDU (Richard E. Neitzel)
Subject: xcursor4.1

Xcursor version 4.1 is now on export as xcursor4.1.tar.Z. I've added 
a new option to determine if a requested cursor size is OK. Of course,
your server may lie!

-- 
Richard Neitzel thor@thor.atd.ucar.edu          Torren med sitt skjegg
National Center For Atmospheric Research        lokkar borni under sole-vegg
Box 3000 Boulder, CO 80307-3000	                Gjo'i med sitt shinn
303-497-2057                                    jagar borni inn.

Newsgroup: comp.windows.x
Document_id: 67273
From: dcc@dcs.ed.ac.uk (David Crooke)
Subject: Bitplaned ("non-chunky" pixel) cfb????

Is there a PD version of cfb, or other PD server stuff, which has a colour frame
buffer implementation which works in bitplaned mode, i.e. where the screen
memory is grouped so that "bit 0 of every pixel is here, bit 1 is there, etc."

The only such beast I know if at the moment is the GfxBase server for the
Commodore Amiga, and it is commercial. I don't know if they wrote their own cfb,
but I suspect they did.

Please respond by email, as I don't read this group.

Many thanks
Dave
-- 
David Crooke, Department of Computer Science, University of Edinburgh
Janet dcc@ed.dcs  :  Internet dcc@dcs.ed.ac.uk  :  IP talk dcc@129.215.160.2
Work: JCMB Rm 3310, King's Bldgs, W Mains Rd., Edinburgh EH9 3JZ. 031 650 6013
Home: 2FL, 39 Woodburn Terr, M'side, Edinburgh EH10 4ST. Tel: 031 452 9067

Newsgroup: comp.windows.x
Document_id: 67274
From: humesdg1@netnews.jhuapl.edu (Dave Humes)
Subject: xwd segmentation fault

I was planning to use the following pipe to move some display data to a system
that has a color hardcopy unit:

	xwd | xwud -display hostname:0.0

I had tested it with some simple windows like the OpenWindows file manager,
and it worked fine, but when I tried it with a more complex (larger) image,
the xwd part blew up with a segmentation fault.  I tried it without the pipe,
by redirecting xwd's output to a file and then used the file as input to xwud
and got the same error from xwud.  If I had to guess, it seems like it's
running out of memory, but this happened on a SPARC 10 with 64 megs, 128 meg
swap space, and only one user with minimal activity.  The file was about 3 MB.

This verion of xwd/xwud was supplied with the Sun OpenWindows 3.0 distribution
which I believe corresponds to X11 R4.

Any ideas?  Thanks in advance.
-- 
--------------------------------------------------------------------------
Dave Humes        |    Johns Hopkins University Applied Physics Laboratory
(410) 792-6651    |    humesdg1@aplcomm.jhuapl.edu
---------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67275
From: martinh@cac.washington.EDU (Martin Hunt)
Subject: Announcing tcpview: A Motif-based TCP/IP protocol analyzer


Tcpview is the result of several problems we had at UW.  We have several
Network General Sniffers which are heavily used to help debug problems on
several hundred subnets. These are good tools, but they are 1) heavy, 
2) hard to find when you need one, 3) limited in their software expandibility,
4) difficult to use to upload data for analysis, 5) cannot be remotely
operated, and 6) cannot resolve names with DNS, requiring much manual 
manipulation of the name table.  We also sometimes use tcpdump, but we found 
it 1) too difficult for most people, 2) did not have enough information for
many protocols, 3) could not be used interactively, 4) could not handle
TCP streams and 5) could not read Sniffer files.  However, tcpdump did do
a reasonable job of decoding a large number of protocols, and could be easily
modified.  Tcpview is an attempt to resolve these problems
by adding a Motif interface to tcpdump and expanding its features.

Tcpview has been tested on a DECstation 5000 and Sun 4 under Ultrix 4.2 and
SunOS 4.1 respectively.  It should work on the same systems as tcpdump.
It compiles with cc and gcc on the DEC and Sun.  To build tcpview you will
need Motif 1.1 or better.

The following files are available for anonymous ftp from 
ftp.cac.washington.edu in /pub/networking

tcpview-1.0.tar.Z	tcpview and tcpdump source code
tcpview-1.0.sun.tar.Z	Sun4 binaries
tcpview-1.0.dec.tar.Z	DEC Mips Ultrix 4.2 binaries

What tcpview adds to tcpdump:
- easier interface
- enhanced protocol decoding
- hex display of frame
- capture based on time, number of frames, or user interrupt
- can show ethernet addresses with manufacturer's name
- ethernet address host table
- can easily follow a stream, highlighting out-of-order frames
- can send TCP data to an external file or filter for additional
	processing.

-------------------------------------------------------------------------------
CHANGES TO TCPDUMP 2.2.1

New features:

Now reads and writes Network General Sniffer files.  When used with '-r', the 
file type will be automatically detected.

Can now read in (and use) an SNMP MIB file.

The hex format has been changed.

New time options have been added.

Options were added to allow viewing and processing of the data in TCP packets.

Bugs were fixed in the relative TCP sequence numbers. (-S flag)

New flags:
-R	read Sniffer file.  Not usually needed, except for reading from stdin
-ttt	prints delta times
-tttt	prints times relative to the first frame
-W	write a Sniffer save file (use with -w)
-x	print frame (minus link-level header) in hexdump format.  
	Sample output:

16:36:23.349851 jeff.cac.washington.edu.1285 > nic.funet.fi.ftp: S 0:0(0) win 16384
        0000  45 00 00 28 8a 98 00 00 3c 06 7c 9c 80 5f 70 02   |  E..(....<.|.._p.
        0010  80 d6 06 64 05 05 00 15 5b 19 4a 00 00 00 00 00   |  ...d....[.J.....
        0020  50 02 40 00 4e 13 00 00 00 00 00 00 00 00         |  P.@.N.........

-X	print TCP data in hexdump format (used with -Z)
-z	write TCP data to stdout (use with -t to eliminate timestamp)
-Z	write frames and TCP data to stdout


Martin M. Hunt
martinh@cac.washington.edu
Networks & Distributed Computing
University of Washington






--

-------------------------------------------------------------------------------
Martin Hunt                            martinh@cac.washington.edu   
Networks and Distributed Computing     University of Washington		  

Newsgroup: comp.windows.x
Document_id: 67276
From: inoue@crd.yokogawa.co.jp (Inoue Takeshi)
Subject: How to see characterset from wchar_t


We developed a toolkit running on the X Window System.
The toolkit copes with any languages based on X11R5's i18n
facility. As you know, there are 2 kinds of i18n implementation from MIT's 
X11R5 release -- Xsi and Ximp. Our original implementation of the toolkit
uses Xsi.

Our toolkit manages each character's size based on our own font management system.
In order to do that, the 'wchar_t' typed character strings must be decomposed
to character sets. This means that if one wchar_t type compound string with 
ASCII and Kanji mixed, for example, is given, each element of the wchar_t
array must be checked its corresponding character set based on a bit layout
and application environment's locale. In this case if the locale is 'japanese',
each wchar_t character will be classified either to iso8859-1, jisx0208 or so.

We need a function to do this. The function must check how many characters
from the top are the same character set and what the character set is.

We could not find any public X11R5 function to do that and inevitably, used
Xsi's internal functions to construct that function. The following is the
source code of that function 'decomposeCharacterSet()'.


//I18N.h
// This may look like C code, but it is really -*- C++ -*-
// $Id: I18N.h,v 1.1 1992/01/21 12:05:24 iima Exp iima $

#ifndef _I18N_H
#define _I18N_H

#include <X11/Xlib.h>

extern int decomposeCharacterSet(const wchar_t *wc_str,	/* IN */
				 int wc_len,		/* IN */
				 char *buf,		/* OUT */
				 int *buflen,		/* IN/OUT */
				 int *scanned_len,	/* OUT */
				 char **charset);	/* OUT */
extern XmString wcharToXmString(const wchar_t *wc_str);
extern XmStringCharSet charsetOfWchar(const wchar_t wc);

#endif /* _I18N_H */

//I18N.cc
/* $Id: I18N.cc,v 1.1 1992/01/21 12:05:05 iima Exp $ */

#include <stdlib.h>
#include <X11/Xlibint.h>
#include <Xm/Xm.h>
#include "I18N.h"

extern "C" {
#include <X11/wchar.h>
#define _XwcDecomposeGlyphCharset XXX_XwcDecomposeGlyphCharset
#define _Xmbfscs XXX_Xmbfscs
#define _Xmbctidtocsid XXX_Xmbctidtocsid
#include "Xlocaleint.h"
#undef _XwcDecomposeGlyphCharset
#undef _Xmbfscs
#undef _Xmbctidtocsid
    extern int _XwcDecomposeGlyphCharset(XLocale, const wchar_t*, int,
					 char*, int*, int*, int*);
    extern Charset *_Xmbfscs(XLocale, _CSID);
    extern _CSID _Xmbctidtocsid(XLocale, _CSID);
};

int decomposeCharacterSet(const wchar_t *wc_str,/* IN */
			  int wc_len,		/* IN */
			  char *buf,		/* OUT */
			  int *buf_len,		/* IN/OUT */
			  int *scanned_len,	/* OUT */
			  char **charset)	/* OUT */
{
    XLocale xlocale = _XFallBackConvert();
    int ctid;
    int status;
    Charset *xcharset;
    
    status = _XwcDecomposeGlyphCharset(xlocale, wc_str, wc_len, buf,
				       buf_len, scanned_len, &ctid);
    if (status == Success) {
	xcharset = _Xmbfscs(xlocale, _Xmbctidtocsid(xlocale, ctid));
	*charset = (xcharset) ? xcharset->cs_name : NULL;
    }
    else
	*charset = NULL;
    return status;
}
----------------

An included file above, "Xlocaleint.h", is also Xsi internal and we copied
the file to the toolkit directory and compiled.

A serious issue occured when we tried to compile a toolkit application on
our HP machine with its OS version of HP-UX9.01.

When we tried to link an application based on our toolkit,
link errors occured saying that the following functions are missing:
    _Xmbctidtocsid (code)
    _Xmbfscs (code)
    _XwcDecomposeGlyphCharset (code)
    _XFallBackConvert (code)

We had used MIT release version of X11R5 and its Xsi implementation until
HP-UP9.0 and ran applications successfully. One of the reasons to use Xsi was that
because HP did not release HP's X11R5 until the OS 9.0 and we had no way to 
know how HP's R5 would be implemented. We had hoped Xsi's popularity and used 
its internal functions. 

The HP's linker complains that there are no Xsi internal functions implemented.
We observe from HP's libX11.a, they used some Ximp implementation but we are
not sure if they used MIT's vanilla Ximp version or their own version of Ximp and
therefore, finding just counter part functions in MIT's Ximp for Xsi does not
seem to lead us a solution.

My question and goal is to know how we can construct a function like
'decomposeCharacterset()' listed above. Is there any function to check
character set of each element of wchar_t type strings depending on locales?
If it is a public function, that is perfect but even if it is not, we
want to use any internal functions in HP's X11R5 as we did for MIT's R5.

In order to render a 'wchar_t' type string, there must be some machinery
to judge character sets and that is how the proper fonts are selected for
the string. We have no way to find out that without any HP's X11R5 source 
files. We want to know how we can use that for our goal. 
Any help or comments would be highly appreciated.

I also appreciate if anyone tell me about Ximp treating around this area
even if it is not HP's implementation.

Thank you.

--
				Takeshi Inoue
				inoue@crd.yokogawa.co.jp
				Yokogawa Electric Corporation
				Open Systems Laboratory	0422(52)5557

Newsgroup: comp.windows.x
Document_id: 67277
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Looking for a filemanager under X11R5

In article <1993Apr21.130259.3773@atlastele.com> brians@atlastele.com (Brian Sheets) writes:
>Does anyone have a file manager that runs under UNIX/X11R5??
>

xdtm is working looking at, as is ftptool.  There really isn't anything of
any quality that I've seen though, and I'm seriously considering writing one
on my own.

-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 67278
From: tim@kimba.catt.citri.edu.au (Tim Liddelow)
Subject: Installing MIT X11R5 on Apollo

Can any Apollo GURUS out there let me know of their experiences building MIT X11R5,
with or without GCC 2.3.3.  In particular, is there anything I should watch out for.

Thanks in advance

--tim 
________________________________________________________________________________
  Tim Liddelow                                          for(;;) fork();
  Systems Programmer
  Centre of Advanced Technology in Telecommunications   My brain on a bad day.
  CITRI, Melbourne, Australia                           
  internet : tim@kimba.catt.citri.edu.au                
  Phone : +61 3 282 2455   Fax : +61 3 282 2444	        
________________________________________________________________________________

Newsgroup: comp.windows.x
Document_id: 67279
From: <CHLBS079@TWNMOE10.BITNET>
Subject: change default visual

My HP720 workstation uses PseudoColor (id 0x21, 255 colors) as the

default visual.  How can I start X with different visual as default?



Newsgroup: comp.windows.x
Document_id: 67280
From: usun@mcl.ucsb.edu (Sonnie)
Subject: X bitmap -> Postscript

Hey folks,

on the course to develope a X window application, we encountered
a problem. How could I transform a X window bitmap into a postscript
files ? Is there any library routines or source code I can call to
do the job ?

Thank you in advance.
p.s. Email reply please. I seldom read this newsgroup. =)


Newsgroup: comp.windows.x
Document_id: 67281
From: toml@boulder.parcplace.com (Tom LaStrange)
Subject: Re: Forcing a window manager to accept specific coordinates for a window

In article <C5xxq0.18M@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
>In article <BADING.93Apr23105229@athene.cs.tu-berlin.de> bading@cs.tu-berlin.de (Tobias 'Doping' Bading) writes:
>>
>>I know that the mwm has an resource to specify if positions are to be used for
>>the border of a window or for the "user" window. Maybe other window managers
>>have similar options.
>>Another way to figure out the difference between the "user" window position
>>and the window manager decoration window position is to subtract their
>>positions. You just have to use XQueryTree and remember that the window manager
>>decorations window is the parent of your window. Unfortunately, you can only
>>figure out the decoration width and height after the window has been mapped
>>this way.
>>
>	Another way would be to use GetGeometry to find out where
>you are relative to the frame, and TranslateCoordinates to find
>out where your window's upperleft corner really is.


As I've said before, there's no reliable way to find out the size of
the window manager decoration.  If your window has been reparented, you
can't assume that the window you're parented to is the window that
holds all of the window manager decoration.  There may be several
layers of windows.  Doing multiple XQueryTree's until you get to the
root will work in most cases, but there's no guarantee that the outside
decoration window is parented to the root window of the display (tvtwm).

--
Tom LaStrange        toml@boulder.ParcPlace.COM


Newsgroup: comp.windows.x
Document_id: 67282
From: theslim@anathema.engin.umich.edu (Eric Michael Slimko)
Subject: Real-Time Data Display Tool


Hi,

I'm looking for a X-Windows tool that can display data (in a
2D plot) in real time with a couple different signals.  
Anybody know of such a gem?  Please Email me as I do not read
this group often.

Thanks much!
Eric Slimko
theslim@caen.engin.umich.edu


Newsgroup: comp.windows.x
Document_id: 67283
From: clay@cs.scarolina.edu (F Rodney Clay)
Subject: Slider Position of Vertical Scrollbars

I need help positioning the slider of a List widget's horizontal scrollbar.  I am displaying the full
path of a selected file in a list widget.  The horizontal's slider defaults to the left side of the
list widget; however, I need the slider on the right side.  This is so the user can SEE the file name
they selected.  I know it's possible, because when files are displayed in a file selection dialog box,
the slider is on the right side.

Thanking any and all who can help in advance,
Rodney F. Clay

clay@cs.scarolina.edu

Newsgroup: comp.windows.x
Document_id: 67284
From: rao@cse.uta.edu (Rao Venkatesh Simha)
Subject: xrn, xarchie for HP 9000/730 - ASAP


	Hi,
	I need xrn and xarchie for the HP's (9000/730, version 8 OS), either in
the source form or, (preferably) in executable form. Please suggest
where I can find this, 
	Send e-mail to: rao@cse.uta.edu
Thanks in advance,
Rao.
-- 
SSC

Newsgroup: comp.windows.x
Document_id: 67285
From: matt@centerline.com (Matt Landau)
Subject: Re: Asynchronous X Windows?

In <ellis.735675321@nova> ellis@nova.gmi.edu (R. Stewart Ellis) writes:
>>Is there anyway to use X Windows over an async line?  Clearly you could use
>                                x
>It is X window.

No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
a number of other designations accepted by the X Consortium.  In fact,
doing "man X" on pretty much any X11 machine will tell you:

     The X Consortium requests that the following names  be  used
     when referring to this software:

                                  X
                           X Window System
                             X Version 11
                     X Window System, Version 11
                                 X11

There is no such thing as "X Windows" or "X Window", despite the repeated
misuse of the forms by the trade rags.  This probably tells you something
about how much to trust the trade rags -- if they can't even get the NAME
of the window system right, why should one trust anything else they have 
to say?

With regard to dialup X11 implementations, there are several.  You can
buy serial X11 terminals from a couple of companies, including both 
GraphOn and NCD.  (In fact, I'm composing this from an NCD running X11
over serial lines across 14.4 kbaud connection.)  

NCD also sells a software-only package that provides XRemote (which is
NCD's implementation of serial X11) for PC's.  There may be other such 
software packages available.

X11R6 is supposed to include a standardized compression scheme for running
X11 over low-speed connections.  It's called Low Bandwidth X (LBX), and 
is based on improved versions of the techniques used in NCD's XRemote. 

It seems likely that once LBX is released as a Consortium standard, there
will be several vendors willing to supply implementations for various 
sorts of hardware.

Followups directed to comp.windows.x
--
 Matt Landau			Waiting for a flash of enlightenment
 matt@centerline.com			  in all this blood and thunder

Newsgroup: comp.windows.x
Document_id: 67286
From: herzog@dogwalk.Eng.Sun.COM (Brian Herzog - SunSoft Product Engineering)
Subject: Re: Xsun not running on SPARCclassic

In article <1r3th9INNdtp@tom.rz.uni-passau.de> rank@winf.uni-passau.de (Christian Rank) writes:
>I've installed X11R5 with patches for Solaris 2.1 on our SPARCstation LX /
>SPARCclassic pool. On the LX, X11R5 runs fine, but on the classics,
>after giving the command startx, Xsun prints the following messages:
>	WARNING: cg3_mmap: can't map dummy space!
>	Mapping cg3c: No such device or address
>and exits.
>
>Does anybody know how to fix this problem?

I'm just guessing here, but I'd guess that X11R5 expects the CG3 to have
1152x900 resolution, and the version of the CG3 in the SPARCclassic is 
1024x768.

-- 
--------------------------------------------------------------------------------
Disclaimer: I do not represent SunSoft, Inc., Sun Microsystems, Inc., etc., etc.
Brian Herzog, SunSoft          herzog@Eng.Sun.COM             ...!sun!eng!herzog

Newsgroup: comp.windows.x
Document_id: 67287
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Tektronix

I remember seeing something in the X distribution mentioning support
for a Tektronix terminal in an X server.  Is this accurate? 
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 67288
From: rj@rainbow.in-berlin.de (Robert Joop)
Subject: Re: tvtwm & xsetroot, X11R5 and Sparc 10 keyboard

barr@pop.psu.edu (David Barr) writes:

>Did you install the sunkbd patch?  It's in the contrib directory on export.
>All the keys on my keyboard send events properly, except the following:
>The End, PageUp, PageDown on the 6-key cluster aren't recognized.
>Even the compose key works.  (Though I can't seem to get the composed
>characters in an xterm to get passed.)

>Anyone have a fix for the last two?

fix the table in .../X11R5/mit/server/ddx/sun/ or
use xmodmap(1).

put
  stty pass8; setenv LC_CTYPE iso_8859_1; setenv LESSCHARSET latin1
in your .login. the first prevents the stripping of bit 7.
the second sets the locale. the third makes less(1) show the character
instead of the octal representation.

rj

-- 
__________________________________________________
Robert Joop
  rj@{rainbow.in-berlin,fokus.gmd,cs.tu-berlin}.de
  s=joop;ou=fokus;ou=berlin;p=gmd;a=dbp;c=de

Newsgroup: comp.windows.x
Document_id: 67289
From: dick@bart.starnet.com (Dick Montgomery)
Subject: Re: X-window for PC

Briefly, StarNet Communications has four PC X server packages.

	Micro X-lite		$ 75.00
		Includes integrated tcp/ip, runs in 640KB, no arcs().

	Micro X-enlite		$150.00
		Includes integrated tcp/ip, runs under DOS, shape extension
		   "     interface to Novell tcp/ip

	Micro X-DOS		$345.00		($225 ea. in a 5-pack)
		Includes integrated tcp/ip, runs under DOS, shape extension
		   "     interface to Novell tcp/ip, FTP's PC/TCP, & PC-NFS.

	Micro X-WIN		$425.00		($300 ea. in a 5-pack)
		Includes Lanera TCPOpen tcp/ip stack & utilities
		   "     interface to FTP's PC/TCP, Sun's PC-NFS, & WinSock.

For more information contact:
----------------------------------------------------------------
StarNet Communications		FAX:	   1-408-739-0936
3073 Lawrence Expressway	Voice:	   1-408-739-0881
Santa Clara, Ca.  95051		E-mail     microx@starnet.com
----------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67290
From: amathur@ces.cwru.edu (Alok Mathur)
Subject: How to get 24bit color with xview frames ?

Hi !

I am using Xview 3.0 on a Sparc IPX under Openwindows along with a XVideo board
from Parallax which enables me to use 24 bit color. I am having some problems
utilizing the 24 bit color and would greatly appreciate any help in this matter.

I use Xview to create a Frame and then create a canvas pane inside which I use
to display live video. My video input is 24 bit color.

The problem is that my top level frame created as
	frame = (Frame) xv_create(NULL,FRAME,NULL);
seems to have a depth of 8 which is propagated to my canvas.

I would like to know how I can set the depth of the frame to be 24 bits.
I tried using the following Xlib code :

XVisualInfo visual_info;
int depth = 24;
Colormap colormap;
XSetWindowAttributes attribs;
unsigned long valuemask = 0;
Window *win;
Xv_opaque frame;

win = xv_get(frame,XV_XID);
XMatchVisualInfo(display,screen,depth,TrueColor,&visual_info);

/* So far so good */

colormap = XCreateColormap(display,win,visual_info,AllocNone);

/* It dies here with a BadMatch error :( */

attribs.colormap = colormap;
valuemask |= CWColormap;
XChangeWindowAttributes(display,w,valuemask,&attribs);
XSetWindowColormap(display,win,colormap);


Am I using a completely wrong approach here ? Is it possible to set the depth
and colormap for a window created by Xview ? What am I doing wrong ?

Thanks in advance for any help that I can get. I would prefer a response via
email although a post on the newsgroup is also okay.

Thanks again,


Alok.
---
ALOK MATHUR
Computer Science & Engg, Case Western Reserve Univ, Cleveland, OH 44106
11414 Fairchild Road, #2, Cleveland, OH 44106
Off - (216) 368-8871 Res - (216) 791-1261, email - amathur@alpha.ces.cwru.edu


Newsgroup: comp.windows.x
Document_id: 67291
From: azn30@RUTS.ccc.amdahl.com
Subject: Compiling X programs


Hi Guys,

	It has been a long time since I wrote a program using X. I am trying to 
	get myself re-familiarize with X. I would appreciate your help regarding
	the following problem.

	I am trying to compile a simple X program on sun running sunOS 4.1.2. 
	using
	cc -o ex ex.c -lXaw -lXmu -lXt -lXext -lX11 -lm
	I am getting an error

	ld: Undefined symbol
		_get_wmShellWidgetClass
		_get_applicationShellWidgetClass


 The simple program I tried to compile is given below.

#include <stdio.h>
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xaw/Form.h>

main(argc,argv)
int 	argc;
char	**argv;
{
	Widget	topLevel;
	Widget	frame;

	topLevel = XtInitialize("ex","Ex",NULL,0, &argc,**argv);
	frame = XtCreateManagedWidget("Form",formWidgetClass,topLevel,NULL,0);
	XtRealizeWidget(topLevel);
	XtMainLoop();
}




	I got the same error when I tried to build "xpostit" using the Imakefile
	provided with the software.

	I have compiled X programs before (not on this machine, but on other 
	machines running sunOS 4.0 and X11 R4). I did not get this error message
	Can anybody tell me why I am getting these messages.

	I would appreciate if you can email your responses to me at
	azn30@ruts.ccc.amdahl.com.

	Thanks
	Anand


Newsgroup: comp.windows.x
Document_id: 67292
From: raney@teal.csn.org (Scott Raney)
Subject: Re: Hypercard for UNIX

queloz@bernina.ethz.ch (Ronald Queloz) writes:

>Hi netlanders,

>Does anybody know if there is something like Macintosh Hypercard for any UNIX 
>platform?

There are several products you might investigate.  If you've got
$20,000 per seat and high-end hardware, Gain Momentum might be a good
choice.  It isn't compatible with HyperCard, but has a similar
architecture (and *way* more functionality).  I don't have contact
information, but they were recently purchased by Sybase who shouldn't
be too hard to find.

If you're running News on SPARC, check out HyperLook
(hyperlook@turing.com).  It uses Postscript as a scripting language
which is good if you need to do lots of display oriented scripting,
but not so good for non-programmers.  It was $995, last I heard.

You might also look at our product MetaCard.  We're alpha-testing
direct importing of HyperCard stacks (we've even made the test release
available for anonymous FTP), so we're obviously the closest in
functionality.  MetaCard runs on most UNIX workstations and costs
$495.  Email to info@metacard.com for more details.
  Scott

>Thanks in advance


>Ron.
-- 
***********************************************************************
* Scott Raney  303-447-3936            Remember: the better you look, *
* raney@metacard.com                   the more you'll see -- Lidia   *
***********************************************************************

Newsgroup: comp.windows.x
Document_id: 67293
From: megan@cs.uq.oz.au (Megan Grenenger)
Subject: Regression Testing and X

I'd appreciate any feedback on capture/playback tools for use with X clients.

I have pulled XTM from public domain but it appears to be set up to test
X servers not X clients. 

Any comparisons/comments on regression testing tools would be great -
particularly XTM, XRunner, Autotester, and SRI's CAPBAK, SMARTS and EXDIFF.

Megan Grenenger
megan@cs.uq.oz.au

Newsgroup: comp.windows.x
Document_id: 67294
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: need shading program example in X

# 
# I think the original post was searching for existing implementations of
# f.i. Gouroud-shading of triangles. This is fairly complex to do with plain
# X. Simpler shading models are implemented already, f.i. in x3d (ask archie
# where to get the latest version).
# For Gouroud, a fast implementation will be possible utilizing some extension
# only, either MIT-SHM to do the shade in an image and fast update the window
# with it, or PEX/OpenGL which should be able to shade themselves. The portable
# 'vanilla X' way would be to shade in a normal XImage and use XPutImage(),
# what would be good enough to do static things as f.i. fractal landscapes
# or such stuff.
# 
# To speak about POVRay, the X previewer that comes with the original source
# package is not that good, especially in speed, protocol-friendlyness and
# ICCCM compliance. Have a look on x256q, my own preview code. It is on
# 
# 141.76.1.11:pub/gfx/ray/misc/x256q/
# 
# The README states the points where it is better than xwindow.c from
# POVRay 1.0
# 

The version I have is using the x256q code instead of the default X Windows
code.  I have it currently running on a DEC Alpha running OpenVMS AXP and
so far have been pretty impressed.  The only "side-effect" of x256q is that
it requires xstdcmap -best be run before it will work, annoyning but not a
show stopper.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67295
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Tektronix

#
# I remember seeing something in the X distribution mentioning support
# for a Tektronix terminal in an X server.  Is this accurate? 
#

Xterm supports 401x emulation.


Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67296
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: Allocated colors...

Can anyone out there tell me how to get the total number of color cells
allocated in the default colormap?

e.g.   colormap = DefaultColormap(mydisplay, myscreen);

The MAXIMUM number of allocated cells is given by DefaultCells(mydisplay,
myscreen), but in general the number of cells actually allocated will be
much less than this, depending on the color requirements of the windows
currently in place. I'd like a way to determine this number. Thanks in
advance!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67297
From: mknewman@blkbox.COM (Marc Kraker Newman)
Subject: Unsubscribe pancamo@blkbox.comm

Please unsubscribe pancamo@blkbox.com.  This user has become inactive and I
wish to discontinue his participation in this mailing list.

Marc Newman
mknewman@lkbox.com

Newsgroup: comp.windows.x
Document_id: 67298
From: Iris_-_Smith@cup.portal.com
Subject: Re: Drawing Lines (inverse/xor)

You can also set the Foreground to the XOR of the foreground and background
colors:  XSetForeground(..., fg ^ bg);    This works great for me (at least
with TrueColor visuals).

Newsgroup: comp.windows.x
Document_id: 67299
From: tim@hssc.scarolina.edu (Tim White)
Subject: Re: X11 load on the Network

bkline%occs.nlm.nih.gov (Bob Kline) writes:

>Can someone point me in the direction of any papers (not necessarily
>formally conducted studies) discussing how much traffic X apps generate
>for the network, particularly in comparison with curses-bases apps 
>over telnet?  Also, does an X server typically buffer up user keyboard
>input a line at a time?  Can the X client control this, asking for
>keystrokes immediately?  Thanks in advance for any feedback!


   Ncd has an excellent document titled "Host Loading Considerations in the X 
  environment". I received my copy by emailing support@ncd.com. This may
  help out.
--
==============================================================================
Tim White				 University of South Carolina
tim@otis.hssc.scarolina.edu	   Humanities and Social Sciences Laboratory
(803)-777-7840 		  		     Columbia, S.C. 29208

Newsgroup: comp.windows.x
Document_id: 67300
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: Tektronix

In article <930424212154.1000227@tgv.com> mahan@TGV.COM (Patrick L. Mahan) writes:
># I remember seeing something in the X distribution mentioning support
># for a Tektronix terminal in an X server.  Is this accurate? 

>Xterm supports 401x emulation.

What I was talking about was using an Tek terminal as your X display.  I
should be possible to write an X server that does this as far as I can
tell, but what I'm asking is if there is already one.

-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 67301
From: proberts@informix.com (Paul Roberts)
Subject: How to mask the left button?

[I am posting this for a friend whose news service is "fubared as usual".
 I will forward replies to him, or if you want to try to reply directly,
 try: Return-Path: <uunet!sunfse.ese.lmsc.lockheed.com!mcfar>    PR ]


I have an event handler working for a ButtonPressMask like:

  XtAddEventHandler( plot_data->display, ButtonPressMask, FALSE,
                    show_mouse_position, plot_data);

but I would like to be able to have two types of actions: one to occur
with the left mouse, the other the right, and perhaps one with the
middle.  So my event handler would look more like:


  XtAddEventHandler( plot_data->display, left-ButtonPressMask, FALSE,
                    show_left_mouse_position, plot_data);

  XtAddEventHandler( plot_data->display, right-ButtonPressMask, FALSE,
                    show_right_mouse_position, plot_data);

However I don't know how to make my left-ButtonPressMask.  There didn't seem
to be one in the event mask lists I had on hand (although Button1MotionMask
looked promising).  My references also mentioned using "|" to or two
mask events.  Can you  use "&" to and two masks?  Would I want to in this
case? 

Any help would be appreciated.

Thanks, 

-lrm

Newsgroup: comp.windows.x
Document_id: 67302
From: kgrider@magnus.acs.ohio-state.edu (Keith A Grider)
Subject: Remote TEKTRONICS emulation

Hello,

I am looking for someone to help me with the proceedure for remote login, via
modem not ethernet, to our new silicon graphics iris machines.  I can log in to
them only as a vt100 terminal regardless of what I am emulating on my end.  I
have communication software, kermit, which supports tek 401x and vt102
emulation.  The x windows manual lists XTERM as the appropriate command to
change the terminal type.  When I try it the reponse is 'unable to open window'

Thanx in advance

Keith Grider
-- 
__________________________________________________________________________
Keith Grider		        	'Come on man, let's go do the crimes
kgrider@magnus.acs.ohio-state.edu	Yeah, Lets get sushi, and not pay'
						Repo Man

Newsgroup: comp.windows.x
Document_id: 67303
From: hdr@ross.COM (Henry D. Reynolds)
Subject: X11R5 on Sun4/110 cg2 comes up Mono


The 4/100 prints out the following message about it's framebuffer

cgtwo0 at vme24d16 0x400000 vec 0xa8 
cgtwo0: Sun-3 color board, fast read

Anybody know the story on this?
--

- Can I have an IMPULSE ITEM instead?

Henry D. Reynolds           hdr@ross.com -OR- hdr@nidhog.cactus.org
FONE: (512)892-7802 x253    ROSS Technology, Inc.
FAX:  (512)892-3036         5316 Hwy 290 West Suite 500 Austin, TX 78735

Newsgroup: comp.windows.x
Document_id: 67304
From: aa894@Freenet.carleton.ca (Terry MacLean)
Subject: How Do I Modify Key Map?


Hello folks,

I'm seeing these errors when I try to modify my key map:

mwm: invalid accelerator specfication, line x

I've added a line in the start up file before the line
that starts mwm. It looks like the following:

xmodmap keymapfile
mwm

I think that the problem has to do with a conflict between
function keys F1 through F7 which already have assigned
functions (e.g. Move, Minimize, etc).

The odd thing is that I don't see these errors if I run

xmodmap keymapfile

from an xterm.

Can anyone suggest a way to modify the key map, specifically
F1 through F7 AND not have mwm (Motif Window Manager) complain.

I realize this is a bit stupid, but we only have time to
implement, not time to learn how to implement.

Terry

Newsgroup: comp.windows.x
Document_id: 67305
From: r0506048@cml3 (Chun-Hung Lin)
Subject: Re: xman source

jlong@b4pps40.Berkeley.EDU (John Long) writes:
:    Where can I get xman source?  I would like to get the binaries for
: xman for an HP 9000/700, but I would settle for source.  
: 
: --
Try xport.lcs.mit.edu, in direcotry /contrib.
--
--------------------------------
=================================================================
Chun-Hung Lin ( LT )                     
r0506048@csie.ntu.edu.tw    
Communication & Multimedia Lab.
Dept. of Comp. Sci. & Info. Eng.
National Taiwan University, Taipei, Taiwan, R.O.C.
=================================================================

Newsgroup: comp.windows.x
Document_id: 67306
From: venky@engr.LaTech.edu (Venky M. Venkatachalam)
Subject: FAQ in comp.windows.x

Is there any FAQ list for Programming in X windows? 

Thankx for the info
			bye
				venky


Newsgroup: comp.windows.x
Document_id: 67307
From: aafc6@syma.sussex.ac.uk (Nightline)
Subject: Editres under Pie(TVT)wm

Hi, looking for any advice or suggestions about a problem I'm
having with MIT X11R5's editres, in particular under twm variants.

For a start, 9 times out of 10 (but NOT always) editres won't
grab a widget tree when running on our NCD (Decwindows) Xterms,
which I'm told will be fixed when the R5 (not R4) XDm is installed.
OK, so I tried running it on a Sun, running real R5, on the same
network - I get a widget tree, but it's ALWAYS for 'TWM Icon Manager'

Anybody know of any patches for (a) twm or (b) editres that I should
look at?

Thanks,
K

Newsgroup: comp.windows.x
Document_id: 67308
From: yuri@physics.heriot-watt.ac.UK (Yuri Rzhanov)
Subject: REPOST: XView slider

Hi Xperts,

this is a repost (no one responded to my desperate yell 8-(
I can't believe there is no XView wizards any more 8-)...

I'm using sliders in my XView apps, usually with editable numeric
field. But I seem to have no control over the length of this field.
In some apps it appears long enough to keep several characters,
in some - it cannot keep even the maximum value set by 
PANEL_MAX_VALUE! 

As I understand, PANEL_VALUE_DISPLAY_LENGTH, which controls
number of characters to be displayed in text items, doesn't
work in the case of slider, despite the fact that <panel.h>
contains the following bit:

	/* Panel_multiline_text_item, Panel_numeric_text_item,
	 * Panel_slider_item and Panel_text_item attributes
	 */
	PANEL_NOTIFY_LEVEL	= PANEL_ATTR(ATTR_ENUM,			 152),
	PANEL_VALUE_DISPLAY_LENGTH	= PANEL_ATTR(ATTR_INT,		 182),

which gives a hint that this attribute can be used for sliders.
But 1) setting this attribute gives nothing, and 2) xv_get'ting
this attribute gives warning: Bad attribute, and returns value 0.

Strange thing is that DEC's port of XView gives plenty of space
in a text fields, but not Sun's Xview...

Can someone share his experience in managing sliders in XView with me,
and clear this problem? 

Any help is very much appreciated.

Yuri

yuri@uk.ac.hw.phy

Newsgroup: comp.windows.x
Document_id: 67309
From: roeber@vxcrna.cern.ch (Frederick Roeber)
Subject: 24-bit Static color: will clients like it?

I'm writing an X server for some video-generation equipment.  The
hardware is "truecolor" in YUV space; in X terms it has a 24-bit
static color visual.  I would really like to have the server just
present this static visual, but I'm not sure if this will be 
acceptable to "most" X clients.  The three problems I see are:

  1) The colormap, though huge, is static.
  2) All pixels would be 3 bytes wide.
  3) Because the hardware actually lives in YUV space, the
     translation RGB->YUV will introduce some rounding error.

Being more of a server guy than a client guy, I ask: will these
limitations thwart many X clients?  Or will most of the X stuff
floating around blithely accept what they're given?  I could write
the server to also present a pseudocolor visual of, e.g., 8 bits, 
but I'd rather avoid this if not necessary.

I know there are no absolutes, but I'd appreciate hearing people's
opinions and suggestions.  Thanks!

-- 
Frederick G. M. Roeber | CERN -- European Center for Nuclear Research
e-mail: roeber@cern.ch or roeber@caltech.edu | work: +41 22 767 31 80
r-mail: CERN/PPE, 1211 Geneva 23, Switzerland | home: +33 50 20 82 99

Newsgroup: comp.windows.x
Document_id: 67310
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Polygon to raster converter required

Can anybody tell me if they know where I can obtain the source code for
a polygon filling algorithm, or any other graphics orientated mailing lists
that may be able to help me.

Thanks, Paul.
-- 
-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67311
From: nicholas@ibmpcug.co.uk (Nicholas Young)
Subject: Graphics editor required

See subject. An opportunity for sales-people (-persons? -entities?).

I am looking for a commercial/PD graphics editor with fairly limited
abilities that runs under X and preferably uses Motif widgets. It must
run on HP-UX version 9, either with or without the PEX extension. The
sort of things I want are simple drawing, resizing and moving of objects
such as lines, rectangles and text. Bounding rectangle operations are
sufficient for object selection. Ideally it should also allow the
creation and placement of more complex objects such as widgets (e.g.
text entry fields or labels), but this is not mandatory.

Does anyone have such an animal? If you do, please mail me with details
including price (especially run-time licensing since it must be
included in a product). Alternatively, send glossies to me at Logica,
68 Newman Street, London W1, including technical info please. For PD
stuff, I have some effort that could be put into porting.

Thanks for any help,
Nicholas Young.
-- 
Nicholas Young (+44 71 637 9111)

Newsgroup: comp.windows.x
Document_id: 67312
From: EEI.EEIIHY@memo.ericsson.SE (353-1-2800455)
Subject: help

--- Received from EEI.EEIIHY  353-1-2800455         93-04-26 12.28
  -> VAX.XPERT..EXPO.LCS.MIT.EDU..INET
  -: - - - - - - - - - - > MAIL USER IN VAX AND INTERNET
help


Newsgroup: comp.windows.x
Document_id: 67313
From: marc@pinet.aip.org (Marc Wiener)
Subject: core dump from getcons

We are getting a memory fault and a core dump whenever we end a Motif
session under Ultrix 4.3, running on a DEC 5000/240. An examintion of the 
core file leads us to believe it's from getcons. Does anyone know what
this is all about?

marc

-- 
Marc Wiener                    |    marc@aip.org
American Institute of Physics  |    
500 Sunnyside Blvd.            |    Voice: (516)576-2329 
Woodbury, NY 11797             |    Fax:   (516)349-7669

Newsgroup: comp.windows.x
Document_id: 67314
From: rchui@nswc-wo.nswc.navy.mil (Raymond Chui)
Subject: A Question I Do Not Found In FAQ

I created a pixmap or drawable window, then used XDrawLine() function 
drawed a line as below fingure:

		width = 300
	================================
	|				|
	|				|
	|			p1	|
	|			\	|
	|			 \	| height = 300
	|			  \	|
	|			   \	|
	|			    \	|
	|			     \	|
	|			      \	|
	|			       \|p3
	|				| 
	|===============================| \
					    \
					     p2

	I created the pixmap or drawable window only with size 300x300.
But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
My question is, dose the XDrawLine function can finger out that correct
p3(x3 and y3) for me? If you calculate x3 and y3. 

x3 = 300;

@ = art tan (( 800 - 100)/(500 - 270)) = 71.81 degrees;

y3 = 100 + x3/tan(@) = 100 + 300/tan(71.81) = 198.58 ~= (integer) 199.

How do I prove XDrawLine() give me the right x3, y3 or not?
Please don't ask me why I don't created a 900x900 pixmap. No, I don't
wan to. 

Thanks in advance!
-- 
Raymond H. Chui
NSWC N62
10901 New Hampshire Ave.
Silver Spring, MD 20903-5000
U.S.A.
Voice:1(301)394-3807 Ext. 45
FAX:1(301)394-4483
EMail:rchui@opal.nswc.navy.mil
 _ __                                  _    ,    __
' )  )                           /    ' )  /    /  ) /
 /--' __. , , ____   ______   __/      /--/    /    /_  . . o
/  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
          /
         '

Newsgroup: comp.windows.x
Document_id: 67315
From: rchui@nswc-wo.nswc.navy.mil (Raymond Chui)
Subject: Re: A Question I Do Not Found In FAQ

comp.windows.x
In article <1993Apr26.122007.25760@relay.nswc.navy.mil>, rchui@nswc-wo.nswc.navy.mil (Raymond Chui) writes:

	Please igore my previouse calculation mistaked. Please see the correct
calculation. Sorry!
|> I created a pixmap or drawable window, then used XDrawLine() function 
|> drawed a line as below fingure:
|> 
|> 		width = 300
|> 	================================
|> 	|				|
|> 	|				|
|> 	|			p1	|
|> 	|			\	|
|> 	|			 \	| height = 300
|> 	|			  \	|
|> 	|			   \	|
|> 	|			    \	|
|> 	|			     \	|
|> 	|			      \	|
|> 	|			       \|p3
|> 	|				| 
|> 	|===============================| \
|> 					    \
|> 					     p2
|> 
|> 	I created the pixmap or drawable window only with size 300x300.
|> But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
|> My question is, dose the XDrawLine function can finger out that correct
|> p3(x3 and y3) for me? If you calculate x3 and y3. 
|> 
 x3 = 300;
 @ = art tan (500 - 270)/(800 - 100)) = 18.19 degrees;
 y3 = 100 + (300 - 270)/tan(@) = 191.29 ~= 191 integer

|> 
|> How do I prove XDrawLine() give me the right x3, y3 or not?
|> Please don't ask me why I don't created a 900x900 pixmap. No, I don't
|> wan to. 
|> 
|> Thanks in advance!
|> -- 
|> Raymond H. Chui
|> NSWC N62
|> 10901 New Hampshire Ave.
|> Silver Spring, MD 20903-5000
|> U.S.A.
|> Voice:1(301)394-3807 Ext. 45
|> FAX:1(301)394-4483
|> EMail:rchui@opal.nswc.navy.mil
|>  _ __                                  _    ,    __
|> ' )  )                           /    ' )  /    /  ) /
|>  /--' __. , , ____   ______   __/      /--/    /    /_  . . o
|> /  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
|>           /
|>          '

-- 
Raymond H. Chui
NSWC N62
10901 New Hampshire Ave.
Silver Spring, MD 20903-5000
U.S.A.
Voice:1(301)394-3807 Ext. 45
FAX:1(301)394-4483
EMail:rchui@opal.nswc.navy.mil
 _ __                                  _    ,    __
' )  )                           /    ' )  /    /  ) /
 /--' __. , , ____   ______   __/      /--/    /    /_  . . o
/  \_(_(_(_/_/) ) )_(_) /) )_(_(_     /  ( o  (__/ / /_(_/_(_
          /
         '

Newsgroup: comp.windows.x
Document_id: 67316
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Title for XTerm


Yet again,

the escape sequences you are speaking about here are non standard and
dangerous. In fact, an ANSI compliant sequence parser HANGS on them.

Why are there such strange ESC sequences instead of compatible DSC ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67317
From: afielden@cbnewsb.cb.att.com (andrew.j.fielden)
Subject: X interactive performance

We recently got an NCD X-terminal to evaluate. This is running XRemote over
a serial line.
I wanted to get some measurement of response time, so I wrote a small Xlib
program which simply creates a window, maps it and sends the first Expose 
event to itself. The program times the delay from sending the event, to 
receiving it.  I thought this was the simplest way to test client/X-server 
round-trip delays. It's a similar concept to the ping(8C) program.

Is this a valid test to perform ? I've also tried the xbench program, available
from ftp.uu.net, which bombards the server with graphics operations, but I 
just wanted to get a quantative measure of what is "acceptable" interactive 
response time. Has anyone got any ideas on this subject ?

Thanks.
Andrew. (afielden@mlsma.att.com)

-- 
+----------------------------------------+----------------------------------+
|Andrew Fielden. AT&T Network Systems UK |        Tel : +44 666 832023      |
|Information Systems Group (SUN support) |   Email : afielden@mlsma.att.com |
+----------------------------------------+----------------------------------+

Newsgroup: comp.windows.x
Document_id: 67318
From: michel@crnsu1.IN2p3.FR (6893)
Subject: creating a GIF file.


	We are looking for a X client which can convert a xwd or a bitmap
file into a gif file for use on a Macintosh.

	Thanks

		michel@crnsu1.in2p3.fr
		Laurent MICHEL
		CRN - GTI
		BP 20
		67037 STRASBOURG cedex (France)
		Phone (33) 88 28 62 76

Newsgroup: comp.windows.x
Document_id: 67319
From: rlee@ssdc.SSDC.Sterling.COM (Richard Lee)
Subject: Re: Pulldown menu periodically hangs application on OpenWindows 3.0

Skip Koppenhaver (skip@eco.twg.com) wrote:
: 
: Has anyone found a fix for the following problem?
: 
: Client Software:	SunOs 4.1.1, X11R5
: Server Hardware:	Sun IPC
: Server Software:	SunOs 4.1.1, Open Windows 3.0 (w/ patch 100444-37)
: 
: A Motif 1.2.2 application will periodically hang when run against the
: OpenWindows 3.0 server (xnews). The pulldown is displayed but then no
: button actions have any effect. Sometimes pressing <Return> will
: unstick the application but not usually. It looks like the pulldown is
: grabbing the focus and never letting go. Other windows on the display
: continue to get updated so the server isn't hanging. If I log in from
: another terminal and kill the Motif application then everything gets
: back to normal. The same application when run against other X servers
: (including MIT X11R5 Xsun, DecWindows, Tektronix X terminal) has no
: problems. This is obviously a OpenWindows problem but I need a
: work-around since most of our customers are OpenWindows users.

I have seen the same problem using a SPARCStation 10, Solaris 2.1, OW 3.1.
In my case, it happens far more often than "periodically".

Help?



Newsgroup: comp.windows.x
Document_id: 67320
From: andreas@appel012.hydromech.uni-hannover.de (Andreas Dunker)
Subject: mail

Hello networld,

I'm looking for an X mailreader. Is there a Xelm?

Andreas


--
_______________________________________________________________________________
Andreas Dunker
andreas@appel012.hydromech.uni-hannover.de   We all live in a yellow subroutine
andreas@veeble.han.de                        The Beatles

Newsgroup: comp.windows.x
Document_id: 67321
From: gmh@hpfcso.FC.HP.COM (Greg Hughes)
Subject: Re: Looking for an R5 Xserver for HP9000/385

Update your 385 to HP-UX 9.0.  You get an R5 server and libraries.

Greg Hughes	gmh@fc.hp.com

Newsgroup: comp.windows.x
Document_id: 67322
From: duijnda@wldelft.nl (ArnoDuijndam)
Subject: Re: creating a GIF file.

In article <9304261216.AA04485@crnsu1.in2p3.fr> michel@crnsu1.IN2p3.FR (6893) writes:
>Path: wldelft.nl!sun4nl!mcsun!uunet!gatech!enterpoop.mit.edu!INTERNET!news-mail-gateway
>From: michel@crnsu1.IN2p3.FR (6893)
>Newsgroups: comp.windows.x
>Subject: creating a GIF file.
>Date: 26 Apr 1993 10:43:28 -0400
>Organization: The Internet
>Lines: 12
>Sender: news@athena.mit.edu
>Message-ID: <9304261216.AA04485@crnsu1.in2p3.fr>
>NNTP-Posting-Host: enterpoop.mit.edu
>To: xpert@expo.lcs.mit.edu
>
>	We are looking for a X client which can convert a xwd or a bitmap
>file into a gif file for use on a Macintosh.
>
>	Thanks
>
>		michel@crnsu1.in2p3.fr
>		Laurent MICHEL
>		CRN - GTI
>		BP 20
>		67037 STRASBOURG cedex (France)
>		Phone (33) 88 28 62 76

Just look at the pbmplus package; it does everything you could ever ask
for in converting pbm to almost any format (gif, tga, pcx etc...)

Arno Duijndam

Newsgroup: comp.windows.x
Document_id: 67323
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Is it just me, or is this newsgroup dead?

In article <930419000332.60e01d81@TGV.COM>, mahan@TGV.COM (Patrick L.
Mahan) writes:
|> #
|> # I've gotten very few posts on this group in the last couple days.  (I
|> # recently added it to my feed list.)  Is it just me, or is this group
|> # near death?
|> #
|> 
|> Seen from the mailing list side, I'm getting about the right amount of
|> traffic.

And seen from my point of view, I get far too much articles to keep up with
them. I am lucky if I can scan through the subjects from time to time.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67324
From: epstein@trwacs.fp.trw.com (Jeremy Epstein)
Subject: WANTED: X & security posting

A few days ago there was a posting in this group by Andrea Winkler
titled "X and Security / X Technical Conference".  I was one of the
instructors of that tutorial.  Unfortunately, my system purged
the message before I had a chance to see it, and I don't have
Andrea's email address.  If someone has Andrea's address and/or
the posting, I would really appreciate it if you'd forward it to
me!

Thanks
--Jeremy

Jeremy Epstein			Internet: epstein@trwacs.fp.trw.com
Trusted X Research Group	Voice: +1 703/803-4947
TRW Systems Division
Fairfax Virginia
-- 
Jeremy Epstein			Internet: epstein@trwacs.fp.trw.com
Trusted X Research Group	Voice: +1 703/803-4947
TRW Systems Division
Fairfax Virginia

Newsgroup: comp.windows.x
Document_id: 67325
From: oleg@sdd.comsat.com (Oleg Roytburd)
Subject: HP 2623A graphics terminal emulators

I would be grateful to anyone who knows about an X-windows application
that would emulate HP 2623A graphics in a manner similar to
the way TEK graphics windows are implemented in xterm.
Thanks for you help.

-- Oleg Roytburd (oleg@sdd.comsat.com)

Newsgroup: comp.windows.x
Document_id: 67326
From: Wilfred.Hansen@cs.cmu.edu
Subject: Andrew (was Re: X Toolkits)

Excerpts from netnews.comp.windows.x: 23-Apr-93 X Toolkits Paul
Prescod@undergrad.m (1132)

> I get the impression Andrew is from the FSF, but I don't know what it
> looks like either.

The Andrew User Interface System is supported, maintained, enhanced, and
distributed by the Andrew Consortium, Carnegie Mellon.  The distribution
terms are those of the X consortium, not the GNU Public License.  Thus
anyone can commercially exploit the Andrew code without restriction. 
(To encourage membership, however, we defer universal release of the
latest versions until Consortium members have had an opportunity to
explore the new capabilities.)

To se what AUIS looks like, you can try a remote demo.  You need an X
server (R5 is best) on a machine linked to the internet.  Give the
command 

	finger help@atk.itc.cmu.edu 

for instructions.

NOTE:  The demo version does not use the Motif-look-and-feel scrollbar,
but one is available.  You can use it on the demo by changing an option
in the ~/preferences file and starting a new editor.

The Andrew Toolkit component of AUIS is ideal if you want to build
applications using compound documents.  Andrew's major feature is its
architecture for recursive embedding of objects: equation in table in
figure in text, for example.  This architecture extends to areas not
usually found in toolkits, including file stream formats, cut/paste, and
printing.

Andrew also provides some of the most commonly requested applications: 
word processor, spreadsheet, drawing editor, and font editor (the latter
two are in version 5.2 which will be generally released on the XR6 tape
in December.)

Fred Hansen
Director, Andrew Consortium

Newsgroup: comp.windows.x
Document_id: 67328
From: lehors@koala.inria.fr (Arnaud Le_Hors)
Subject: ** Xpm 3.2g is available **

On export.lcs.mit.edu directory contrib, and avahi.inria.fr directory pub/xpm:
xpm-3.2f-to-3.2g.patch.Z
xpm-3.2g.tar.Z

/* Copyright 1990-93 GROUPE BULL -- See license conditions in file COPYRIGHT */
/**************************************************************************\
* 									   *
*  			HISTORY of user-visible changes			   *
* 									   *
\**************************************************************************/

3.2g	(93/04/26)

    ENHANCEMENTS:
	- much faster close colors
	- piping from/to compressed files now handles GNU's gzip (.z)  format
	- added XpmColorKey attribute - ability to specify which visual's
	  colors to use (ie: now it's possible to read in a pixmap in a
	  color visual, but use the colors specified for monochrome).
	- added -mono, -grey4, -grey and -color options to sxpm to demonstrate
	  the XpmColorKey attribute.
		- Jason Patterson <jasonp@fitmail.qut.edu.au>

    BUGS CORRECTED:
	- fixed bug where redefining "None" as a pixel stopped mask generation
	- minor SVR4 defines for <string.h>
	- fixed annoying closecolor bug related to read/write color cells
	- fixed minor bug in color value -> pixel overloading
	- manual updated to include new red/green/blue closeness attributes
		- Jason Patterson <jasonp@fitmail.qut.edu.au>

	- the top Imakefile was missing the depend target
	- sxpm/Imakefile fixed so that -L../lib is set before the standard
	  library location.
		- Vivek Khera <khera@cs.duke.edu>

	- lib/xpmP.h now defines bcopy as memcpy for VMS (required by recent
	  versions of VMS)
		- J. Daniel Smith <dsmith@ann-arbor.applicon.slb.com>

	- the lib/Imakefile didn't work with X11R4.

-- 
 Arnaud LE HORS - lehors@sophia.inria.fr - BULL Research France, Koala Project

Newsgroup: comp.windows.x
Document_id: 67329
From: gary@ioc.co.uk (Gary Phillips)
Subject: Re: Xt intrinsics: slow popups

In article <735525194.9026@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> Bryan Boreham (bryan@alex.com) wrote:
> : In article <735259869.13021@minster.york.ac.uk>, cjhs@minster.york.ac.uk writes:
> : > The application creates window with a button "Quit" and "Press me".
> : > The button "Press me" pops up a dialog box. The strange feature of
> : > this program is that it always pops up the dialog box much faster the
> : > first time. If I try to pop it up a 2nd time (3rd, 4th .... time), 
> : > it is *much* slower.
> : 
> : The shell is waiting for the window-manager to respond to its
> : positioning request.  The window-manager is not responding because
> : it thinks the window is already in the right place.
> : 
> : Exactly *why* the two components get into this sulk is unclear to
> : me; all information greatly received.

The only time I've seen similar behaviour is when an X application forked a child
without setting close on exec on the X display connection file descriptor.
The shell waited for a ConfigureNotify event that never arrived because it got
picked up by the child.  Sometimes the shell correctly got the ConfigureNotify if
the timing was 'right'.

-- 
Gary Phillips		| Email:  gary@ioc.co.uk
Phone: +44 81 528 9864	|	  phones@cix.compulink.co.uk
Fax:   +44 81 528 9878	|	  

Newsgroup: comp.windows.x
Document_id: 67330
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: imake - help needed

In article <1993Apr20.101306.21536@def.bae.co.uk>, paul@def.bae.co.uk (Paul
Byrne) writes:
|> Can someone please give me some pointers to setting up imake in a SUN
|> OPENWINDOWS
|> enviornment ? I've checked through all the documentation but can not
|> find any clues.

Sun's OpenWindows imake is broken. I suggest installing imake-pure, MIT's
X11R5 imake. You can get it from ftp.germany.eu.net in file
/pub/X11/misc/imake/imake-pure.tar.Z (117807 Byte).

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67331
From: steerr@h01.UUCP (R. William Steer)
Subject: X server for NT?

Does anybody have an X server for NT that they're willing to share files
or experiences?

Bill Steer
Westinghouse

Newsgroup: comp.windows.x
Document_id: 67332
From: hughm@brwal.inmos.co.uk (Hugh McIntyre)
Subject: Sun3/60 + X11R5 -> undeletable console messages.

We have an old Sun3/60 here which gets occasional use.  When X11R5 is started
on it any console messages during startup are undeletable.  After X is fully
started we run an xterm as the "console" - the problem is that any messages
that arrive before this starts go to the plain console.  "Refresh window" fails
to remove them.  The messages are a real pain since they sit in the middle of
the screen obscuring anything else below them.

At boot time the 3/60 lists two framebuffers  -  /dev/cgfour0 and /dev/bwtwo1.
We're running X in color, and I suspect that maybe the offending messages are
on the B/W framebuffer, and thereby not getting deleted.

My question is: has anyone else seen this, and is there an easy way to get rid
of these messages?

Please reply by e-mail to hughm@inmos.co.uk.

Hugh McIntyre.
INMOS Ltd., Bristol, UK.

(BTW: SunOS 4.0.3, X11R5, mwm).

PS: I know I can redirect output of the relevant commands to /dev/null - I'm
    looking for a more general solution).

Newsgroup: comp.windows.x
Document_id: 67333
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: 24-bit Static color: will clients like it?


In article <1993Apr26.123918.1@vxcrna.cern.ch>, roeber@vxcrna.cern.ch (Frederick Roeber) writes:
|> 
|> I'm writing an X server for some video-generation equipment.  The
|> hardware is "truecolor" in YUV space; in X terms it has a 24-bit
|> static color visual.  I would really like to have the server just
|> present this static visual, but I'm not sure if this will be 
|> acceptable to "most" X clients.  The three problems I see are:
|> 
|>   1) The colormap, though huge, is static.
|>   2) All pixels would be 3 bytes wide.
|>   3) Because the hardware actually lives in YUV space, the
|>      translation RGB->YUV will introduce some rounding error.
|> 
|> Being more of a server guy than a client guy, I ask: will these
|> limitations thwart many X clients?  Or will most of the X stuff
|> floating around blithely accept what they're given?  I could write
|> the server to also present a pseudocolor visual of, e.g., 8 bits, 
|> but I'd rather avoid this if not necessary.
|> 

Even 24Bit TrueColor machines are in most cases running an emulated
8 bit PseudoColor visual, only to get standard x clients, motif apps and
thelike to run. I strongly suppose you to emulate at least:

> 24 Bit TrueColor. Should be no problem, only some translation. Rounding
  should not make big misfits
> 8 bit PseudoColor. More of a problem, you have to emulate a colormap,
  pixel indices, conversion stuff. Furthermore, you should run your default
  screen on this visual.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67334
From: chudel@watarts.uwaterloo.ca (Chris Hudel)
Subject: 4-plane Xterminal (Do I want one?)

I've been offerred an old 4-bits/pixel greyscale Xterminal.  Aside from the
"real people have already upgraded to RISC architecture R5 servers", do I want
this Xterminal? 

I'm concerned about the 4-planes...I've only ever heard of 1 (mono) and 8
(colour) planes -- will I have any concerns with this 4-plane unit? 
[Specifically related to 4-planes vs 1 or 8]

Thanks!
-C-

PS: all R5 apps run on R4/R3 servers,right?

Newsgroup: comp.windows.x
Document_id: 67335
From: slosser@ntsc-rd.navy.MIL (Steve Slosser)
Subject: UNIX interest group:  Where is it?

I know that this is not the correct place to post this, but I have 
exhausted all other logical options.  I used to be on the INFO-UNIX 
newsgroup mailer.  The mailers mysteriously quite coming around the end of
last year.  All e-mails requesting that I be placed back on the list have
been ignored.  I have been unable to locate the administrator of this list.

If anyone knows of the internet address that I can send a the request to
get back on this list, can you please send it to me.  If you don't know
of this specific newsgroup mailer, I would appreciate the address of *any*
UNIX-related newsgroup.  Thanks.

                                       Cutoff,
                                       Steve
                                       slosser@ntsc-rd.navy.mil

PS - Sorry for the non-X-related question.


Newsgroup: comp.windows.x
Document_id: 67336
From: whaley@sigma.kpc.com (Ken Whaley)
Subject: Re: 24-bit Static color: will clients like it?

|
|Even 24Bit TrueColor machines are in most cases running an emulated
|8 bit PseudoColor visual, only to get standard x clients, motif apps and
|thelike to run. I strongly suppose you to emulate at least:
|
|> 24 Bit TrueColor. Should be no problem, only some translation. Rounding
|  should not make big misfits

Depends on the nature of the "rounding."  X allows the user to do bit
arithmetic on pixel values, (i.e.,  XOR foreground and backgroun pixel
values together to calculate a foreground color that when used with a
function of GXxor fill change foreground to background and vice-versa).
If your rounding does not preserve these types of calculations then 
clients that use them will break.

	Ken
--
Kenneth Whaley			 (408) 748-6347
Kubota Pacific Computer, Inc.	 Email: whaley@kpc.com
2630 Walsh Avenue
Santa Clara, CA.  95051

Newsgroup: comp.windows.x
Document_id: 67337
From: tomk@skywalker.bocaraton.ibm.com (Thomas Chun-Hong Kok)
Subject: Re: MOOLIT and OLIT

In article <stevedavC5y2Jz.3D7@netcom.com>, stevedav@netcom.com (Steve Davidson) writes:
> Does anyone know the difference between MOOLIT and OLIT?  Does Sun
> support MOOLIT?  Is MOOLIT available on Sparcstations?
> 

-- 
MoOLIT (Motif/Open Look Intrinsic Toolkit allows developers to build 
applications that can switch between Motif and Open Look at run-time,
while OLIT only gives you Open Look.

--
Internet: chunhong@vnet.ibm.com

Newsgroup: comp.windows.x
Document_id: 67338
From: gutenkun@fzi.de (Kai Gutenkunst)
Subject: Archie-Client ?

xgetftp-1.2 needs an archie client program.
Does anybody know, where I can get it?

Thanks in advance, Kai

Newsgroup: comp.windows.x
Document_id: 67339
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: 24-bit Static color: will clients like it?

In article <1993Apr26.123918.1@vxcrna.cern.ch>, roeber@vxcrna.cern.ch (Frederick Roeber) writes:
> I'm writing an X server for some video-generation equipment.  The
> hardware is "truecolor" in YUV space; in X terms it has a 24-bit
> static color visual.  I would really like to have the server just
> present this static visual, but I'm not sure if this will be 
> acceptable to "most" X clients.  The three problems I see are:
> 
>   1) The colormap, though huge, is static.
>   2) All pixels would be 3 bytes wide.
>   3) Because the hardware actually lives in YUV space, the
>      translation RGB->YUV will introduce some rounding error.

We tried to ship an X server once that only supported a 24bit
TrueColor visual. The main problems we encountered were:

	1) Clients written with logic like the following:

	    if (DefaultDepth() != 1)
		/* Assume default depth is 8bit */

	   These clients need an 8bit deep visual in the root window
	   to run correctly.

	2) Other clients didn't even bother to do that much, and just
	   outright assumed they had a *dynamic* visual class, with a
	   dynamic colormap. XStoreColors doesn't work on cmaps
	   associated with Static or TrueColor visual classes, but
	   many clients don't bother to check, they just start
	   throwing XStoreColor calls at you.

Though both are clearly client error, this is the case with so many
clients that it's easier for you to expose 8bit PseudoColor as a
default root window visual, than it ever would be for all these client
writers to change their clients to do the right thing.
--

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
Document_id: 67340
From: moore@halley.est.3m.com (Richard Moore)
Subject: Using message passing with XtAddInput 

In the past, I have used named pipes to communicate between processes using
the XtAddInput function to set up the event handling in Motif. Does anybody
know of a way to do this with message passing ( IPC ) ? I tried it here and
no luck so far.

Thanks


Newsgroup: comp.windows.x
Document_id: 67341
From: vidya-v@acsu.buffalo.edu (vidyaranya)
Subject: Red color on button on enter window.


This may be an FAQ, but I dont know where to get the FAQ list!
My OpenLook application has a few buttons. The first button turns
red(gets highlighted?) as soon as the sprite(mouse) is moved into the
application window. How do I suppress this?

Vidyaranya

Newsgroup: comp.windows.x
Document_id: 67342
From: gerard@dps.co.UK (Gerard O'Driscoll)
Subject: Re: Asynchronous X Windows?


>> No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
>> a number of other designations accepted by the X Consortium.  In fact,
>> doing "man X" on pretty much any X11 machine will tell you:
>> 
>>      The X Consortium requests that the following names  be  used
>>      when referring to this software:
>> 
>>                                   X
>>                            X Window System
>>                              X Version 11
>>                      X Window System, Version 11
>>                                  X11
>> 
>> There is no such thing as "X Windows" or "X Window", despite the repeated
>> misuse of the forms by the trade rags.  This probably tells you something >> about how much to trust the trade rags -- if they can't even get the NAME
>> of the window system right, why should one trust anything else they have 
>> to say?

I used to think this way, and not just about X. For example, incorrect
English constructs such as "its raining" or "it's window id" annoy me.
However, there comes a time when popular usage starts to dictate the way
things really are in the world. Indeed, the fact that X won out over NeWS
was really down to popular opinion (I know, we all think it's(!) technically
superior as well!).

On a related topic, who is to say that "color" is more or less correct
than "colour" - being Irish, and hence using English English as opposed
to American English, I always use the latter except, of course, for API
terms such as "XAllocColor" and "colormap".

In a world that uses the term "Windows" to refer to Microsoft Windows,
perhaps the time has come to accept "X Windows" as a valid term for X.
I think that this is a more concise and uncluttered term than, say,
"the X Window System" and, let's face it, almost everyone uses it.
Ultimately, we all need product sales to more than just X-literate
people. In this respect, product recognition is important and a short,
snappy, descriptive title ("X" is positively obscure) will help
when dealing with the average punter (it's sad - I thought I was a
software engineer!). Indeed it is unfortunate that X did not become
popularly known as Windows and let MS worry about whether it should
be called "Microsoft Windows" or "the Microsoft Window System" or
how about just plain "Microsoft"!

To summarise (or should that be "summarize") the point of this message:
I think there are far more pressing issues facing the X community than
worrying about subtle distinctions in the naming of the window system
(or should that be "windowing system"). Whatever gets recognised is
fine by me. I agree that one should be careful in interpreting what
trade papers say. However, I would be reluctant to come to this
conclusion purely on the basis of how they name the X Window System.


			Gerard O'Driscoll (gerard.odriscoll@dps.co.uk)
			Du Pont Pixel Systems Ltd.

Newsgroup: comp.windows.x
Document_id: 67343
From: mwchiu@tigr.org (Man-Wai Chiu)
Subject: Xm1.2.1 and OW server


We have a program written with X11R5 and Motif 1.2.1.  It runs fine on the Sun
X11R5 server and MacX.  When that program is run under the Sparc 2 and the
OW server, the program crashed itself along with the server.  It crashed before
the first window had showed up.

I got the following error from X.
XIO:  fatal IO error 32 (Broken pipe) on X server "perot:0.0"
      after 62 requests (59 known processed) with 0 events remaining.
      The connection was probably broken by a server shutdown or KillClient.

I have run the program with xmon and below is the last twenty lines or so from
xmon before both the program and server crashed.

           ............REQUEST: GetProperty
                        delete: False
                        window: WIN 00900001
                      property: ATM 00000074
                          type: ATM 00000074
                   long-offset: 00000000
                                        ..............REPLY: GetProperty
                                                     format: 00
                                                       type: <NONE>
                                                bytes-after: 00000000
           ............REQUEST: GetInputFocus
                                        ..............REPLY: GetInputFocus
                                                  revert-to: Parent
                                                      focus: WIN 0040000d
           ............REQUEST: ChangeProperty
                          mode: Replace
                        window: WIN 00900001
                      property: ATM 00000074
                          type: ATM 00000074
                        format: 08
                          data: 42 00 00 01 00 00 00 10 00 00 00 75 00 00 00 00 
           ............REQUEST: GetInputFocus

Please email to me if you have any idea of the above problem.
Thanks in advance.

--
MW Chiu
mwchiu@tigr.org

Newsgroup: comp.windows.x
Document_id: 67344
From: matt@centerline.com (Matt Landau)
Subject: Re: Asynchronous X Windows?

In <1382.9304261508@zztop.dps.co.uk> gerard@dps.co.UK (Gerard O'Driscoll) writes:
>>> No, it isn't.  It is the "X Window System", or "X11", or "X" or any of
>>> a number of other designations accepted by the X Consortium....
>>> 
>>> There is no such thing as "X Windows" or "X Window", despite the repeated
>>> misuse of the forms by the trade rags.  

>I used to think this way, and not just about X. For example, incorrect
>English constructs such as "its raining" or "it's window id" annoy me.
>However, there comes a time when popular usage starts to dictate the way
>things really are in the world. 

Well, yes and no.  I don't particularly want this discussion to spark
a lengthy debate, but I do think it's worth pointing out that "popular
usage" is not always sufficient excuse.  

In this case, for example, I think an appropriate parallel may be found
in the pronunciation of proper names: if people commonly misspelled or 
mispronounced your name, would you feel compelled to change it?  Probably
not.  

The same is true of X.  "The X Window System", "X", "X11", and related
monickers are proper names in the same sense that any product name is a
proper name.  In fact, some of them are *trademarked* names.  The fact 
that many people get them wrong is largely beside the point.  

As for the trade publications that promulgate things like "X Window" or
"X.windows" or any of the other nonsensical variants one often sees, 
consider the fact that these publications are supposedly written by 
*journalists*.  Would you trust the facts of a journalist who couldn't
be bothered to get the name of his/her source right?  Would you trust
a product review by someone who got the name of the product wrong?

Popular usage is as it may be, but I for one am all for holding people
who claim to be journalists to a higher standard of correctness.

>Indeed, the fact that X won out over NeWS
>was really down to popular opinion (I know, we all think it's(!) technically
>superior as well!).

X11 technically superior to NeWS?  Well, in *some* alternate universe
perhaps ...

Newsgroup: comp.windows.x
Document_id: 67345
From: mikell@cactus.org (Mikell Vanderlaan)
Subject: Unisys 22403 emulation


Has anyone seen source to an xterm package ready
to perform UNISYS 22403 TERMINAL EMULATION. 
Got a clunker... and ...  Got a connect!

return: mikell@cactus.org

-- 
////////////////////////////mikell@cactus.org/////////////////////////
////////////////////Calame Linebarger Graham & Pena///////////////////
//////////////////////////////Attys AT Law////////////////////////////

Newsgroup: comp.windows.x
Document_id: 67346
From: Wilfred.Hansen@CS.CMU.EDU
Subject: CFP: Andrew Technical Conference

*Reminder*   Plan now for the Andrew Conference.
*Date* The dates are as noted below.  (We have not changed them.)
*Submission extension*   We are still accepting papers.

*Tutorial topic*  
	_Converting Andrew source code to C++_

This tutorial will discuss the steps necessary to convert a site from C
(extended with classC) to C++.  Conversion of the source code requires
only a couple of steps:
	run the converter
	fill in missing type information
Describing this will not take long.  The remainder of the day will be
spent learning how to write objects in C++ and practicing.

------------------------------

1993 Andrew Technical Conference and Consortium Annual Meeting
June 24-25, 1993
Carnegie Mellon University
Pittsburgh, PA

The conference will be held on the last Thursday and Friday in June.  A
tutorial will be on Thursday the 24th and the conference proper on the
25th with the annual meeting at the dinner on the evening between the
two days.  All conference attendees are welcome at the annual meeting,
though only Consortium members will be able to vote.

This year's theme is 

	Application Construction by Non-Programmers

Much of the effort on X toolkits has been aimed at programmer
construction of applications.  There have, however, been some excellent
UIMS systems built on top of X.  Papers addressing the theme will
consider questions such as
	What is needed for application construction by non-programmers?
	Can we avoid programming altogether, or is a simple language needed?
	Is it sufficient to create applications, or must users be able to
create new widgets?
	Should widgets and applications be able to print themselves?

Your participation in the conference is welcome.  Papers are appropriate
on the theme or any aspect of the Andrew User Interface System, including

	applications
	experience with users
	new objects
	reviews of and proposals for revision of 
		internal Andrew protocols

We expect to have an RS/6000 with video projector available if you would
like to do a demonstration.  

Paper proposals should be submitted by 15 May 1993.
Acceptance will be 1 June with final papers due by 15 June.

Send papers via electronic mail to wjh+@andrew.cmu.edu.

Fred Hansen
Director, Andrew Consortium

Newsgroup: comp.windows.x
Document_id: 67347
From: ferguson@cs.rochester.EDU (George Ferguson)
Subject: Xarchie-2.0 available on export

[Please accept the following announcement for comp.windows.x.announce. -gf]

A completely revamped version of the X11 browser interface to Archie,
Xarchie, is now available as
	export.lcs.mit.edu:/contrib/xarchie-2.0.tar.Z

For those not familar with Archie or Xarchie, I include part of the
manpage intro:

  Xarchie is an X11 browser interface to the Archie Internet information
  system using the Prospero virtual filesystem protocol.  Archie
  provides information about files available for ftp anywhere on the
  Internet; Xarchie displays this information using an easy-to-use,
  point-and-click interface.  Xarchie allows you to further explore ftp
  sites by examining directories returned as query matches, and allows
  you to retrieve files located this way.

Xarchie 2.0 has been extensively tested on R4, R5, and a variety of
other flavors of X, and on a wide range of machines. A summary of the
new features (from the README) follows:

  * Major improvements include:
    - Multiple selections allowed in browser for use with other new
      features (FWF MultiList widget).
    - Ability to expand directories in browser.
    - Real fully-integrated ftp implementation.
    - Ability to save and reload query results, as well as print them.
    - Ability to resort results, and sort results by user-definable
      pseudo-weights.
    - Online help browser.
    - Color resources, done so that they don't break mono displays.
    - FWF FileSelector widget for local file operations.
    - Makefile.dst's supplied for the imake-impaired.

George
-- 
George Ferguson                 ARPA: ferguson@cs.rochester.edu
Dept. of Computer Science       UUCP: rutgers!rochester!ferguson
University of Rochester         VOX:  (716) 275-2527
Rochester  NY  14627-0226       FAX:  (716) 461-2018

Newsgroup: comp.windows.x
Document_id: 67348
From: bill@west.msi.com (Bill Poitras)
Subject: Re: Regression Testing and X

Megan Grenenger (megan@cs.uq.oz.au) wrote:
: I'd appreciate any feedback on capture/playback tools for use with X clients.

: Any comparisons/comments on regression testing tools would be great -
: particularly XTM, XRunner, Autotester, and SRI's CAPBAK, SMARTS and EXDIFF.

How about starting where I could find ANY of these.  For the commercial
ones, at least a phone number would be appreciated.

--
+-------------------+----------------------------+------------------------+
| Bill Poitras      | Molecular Simulations Inc. | Tel (617)229-9800      |
| bill@msi.com      | Burlington, MA 01803-5297  | FAX (617)229-9899      |
+-------------------+----------------------------+------------------------+
|FTP Mail           |mail ftpmail@decwrl.dec.com | Offers:ftp via email   |
|                   |Subject:<CR>help<CR>quit    |                        |
+-------------------------------------------------------------------------+

Newsgroup: comp.windows.x
Document_id: 67349
From: hue@island.COM (Pond Scum)
Subject: Re: How to get 24bit color with xview frames ?

amathur@ces.cwru.edu (Alok Mathur) writes:
>I would like to know how I can set the depth of the frame to be 24 bits.
>I tried using the following Xlib code :

>Am I using a completely wrong approach here ? Is it possible to set the depth

Yes.

>and colormap for a window created by Xview ? What am I doing wrong ?

Look up XV_DEPTH.  Also, you might want to try using XView colormap segments
instead of Xlib for your colormap stuff.  They will probably be easier
for you to use, and since you are using a TrueColor visual, you won't
be losing anything compared to straight Xlib.


-Jonathan		hue@island.COM

Newsgroup: comp.windows.x
Document_id: 67350
From: rvloon@cv.ruu.NL (Ronald van Loon)
Subject: Announcing the Motif++ mailing list

I am glad and proud to announce the new mailing-list for the PD Motif C++
bindings. I got over 40 replies in about one week of people interested in
such a list, and the software has now been properly installed, so the list
is now up and running. For those interested in joining, please send e-mail
to that extend to 'motif++-request@cv.ruu.nl' or 'rvloon@cv.ruu.nl'.

The blurb everyone who joins gets follows, as well as the original 
announcement for where Motif++ can be obtained.

Enjoy!

8< - 8< -


Welcome to the Motif++ Mailing List!

The Motif++ mailing list is a mailing list dedicated to Motif++, the PD C++
wrapper library for Motif, where people can ask questions about Motif++, 
swap stories, and give new ideas about new directions and improvements for the 
bindings. 

All requests of an administrative nature, like subscription, removal, etc.
should be directed to motif++-request@cv.ruu.nl

All e-mail sent to motif++@cv.ruu.nl will be sent to the entire list, so
please make sure when using 'vacation' type programs that will reply to
messages automatically, that the address for the mailing-list is excluded 
from auto-replies.

Enjoy!

Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

8< - 8< -

Hello Motif World,

over the past half year there have been a lot of relatively minor changes to
the Motif++ bindings. Imake support has been improved, a few defaults have
been changed, and a lot of other small things have been added.

This is basically a release which drops the 'gamma' status. Next release will
incorporate some improvements by Stefan Schwarz, and possibly will support
X11R5 and Motif 1.2.x.

Note to all of those who keep copies of the archive: please retrieve this
distribution (during off-peak hours), and delete all previous copies.

Here is the original ANNOUNCEMENT:

HISTORY

The University of Lowell, supported by a grant of the Open Software Foundation,
has developed a wrapper-library, that encapsulates Motif widgets in C++
classes. All resources of these Widgets can now be set through
member-functions, while objects can be used in callback-functions. The library
was made available for free or nominal cost for anonymous ftp at 129.63.1.1.
However, the library contained a large number of bugs and oversights, and only
worked under X11R3. Due to lack of subsequent fundings, the bindings are no
longer actively supported by the University of Lowell.

I, Ronald van Loon, at a certain point last year, have taken the Lowell 
bindings, fixing the bugs I came across, adding missing memberfunctions, and
enhancing functionality and made the bug-fixed library available for the
general public for anonymous ftp (made possible by Rick Murphy at DEC).

NEW RELEASE

I am now pleased to announce a new and updated release of the Motif++
bindings. 

This release offers:

- Full Motif1.1 and X11R4 support
- Support for Xbae widgetset 
- Two additional widgets, written by myself, that can be used to indicate
  progress in an application.
- Imake support. NB: this release relies heavily on the existence of imake
		     and its config files on your site. I have tried to
		     provide the bindings with a standard Makefile, tweakable
		     for those unfortunates without imake. I have not severely
		     tested the standard Makefile though. Contact me if you
		     have problems. The reason for calling this a gamma
		     release lies in the fact that I do not have a multitude
		     of platforms to test the Imake-files on.
- Lots of testfiles (even somewhat useful programs)
- An article I wrote on the usage of Motif, X and C++, previously posted
  on Usenet.

WHERE TO GET THE NEW MOTIF BINDINGS

Ftp:

Anonymous ftp at decuac.dec.com (192.5.214.1), directory /pub/X11.

Note:

Please be patient as the network link is quite slow. Please do not FTP large
files during working hours.

Also note that there is also a motif++.31.jan.92.tar.Z file at this site; this
is an old version of the bindings.

E-mail:

Those who don't have ftp can send me e-mail, and I will send the bindings by
e-mail.

REQUEST

Those who use the bindings and find bugs, or see room for improvement, please
contact me, and I will try to incorporate them in a future release (in case of
bugs, a bug-fix of course ;-). 

MORE INFORMATION 

Contact me at "rvloon@cv.ruu.nl".
If you are desperate, then you can call me at
+31 30 506711 (that is Utrecht, the Netherlands; those within the Netherlands
call 030-506711).

Enjoy!

-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.


Newsgroup: comp.windows.x
Document_id: 67351
From: tom@CapMgtSci.COM (Thomas Tulinsky)
Subject: MANUAL unsubscribe REQUEST

I am on the list under two addresses, I think:
	tom@capmgtsci.com
and
	zuma!tom@netcomsv.netcom.com

Please delete the second one, 
	zuma!tom@netcomsv.netcom.com

Thanks. Sorry for the screw up.

----------------------------------------------------------------------------
Tom Tulinsky		Capital Management Sciences	    West Los Angeles
tom@CapMgtSci.com	        310 479 9715

Newsgroup: comp.windows.x
Document_id: 67352
From: matt@centerline.com (Matt Landau)
Subject: Looking for updated XView textedit source (w/d-n-d support)

The XView version 3 source distribution included in the contrib section 
of X11R5 included the source to the textedit program.  I'd like to take 
the sources and modify them to add support for a ToolTalk-like message 
server, and maybe for ToolTalk while I'm at it, since the Sun-supplied
textedit binary doesn't seem to speak tooltalk.

However, the sources in the R5 contrib area seem to be for an older
version of textedit than the version shipped with OpenWindows 3.  For
example, the OWN 3.0 textedit includes drag and drop support and a 
dropsite in the main control area, while the source in contrib/xview
knows nothing about drag and drop.

The textedit.c included in the xview sources says it's version 15.50,
dated 5/22/90, while doing a 'what textedit' on the OWN 3.0 binary says:

        textedit.c 2.62 91/09/14 Copyr 1990 Sun Micro
        dragdrop.c 1.26 91/09/14 Copyr 1990 Sun Micro
        tooltalk.c 2.16 91/09/14 Copyr 1990 Sun Micro
        ds_relname.c    1.7 91/09/14 Copyr 1990 Sun Micro

So, does anyone know if the 9/14/91 sources to textedit are available?
I'd really like to work from the latest source if possible.

Please reply by email, and I'll post a summary if there's enough 
interest.
--
 Matt Landau			Waiting for a flash of enlightenment
 matt@centerline.com			  in all this blood and thunder

Newsgroup: comp.windows.x
Document_id: 67353
From: barnettj@pookie.crd.ge.com (Janet A Barnett)
Subject: Input Focus to a Window Other Than Where the Pointer Is


I have noticed in FrameMaker 3.1X on both the SGI and SUN platforms
that certain dialogs, such as "Column Layout..." for example, respond
to keyboard traversal even though the pointer is NOT in the dialog
window and even though the window manager keyboard focus policy is
POINTER.

How is this done?

I would like to emulate this behavior in my application. It seems a
reasonable behavior since when a dialog is popped up from a keyboard
action, the dialog is not guaranteed to be under the pointer and the
user should not have to reach for the mouse just to move the focus.

Alternatively, I'm open to any suggestions as to what is the "right"
way to insure that popups get the focus when they appear, particularly
when they are invoked from the keyboard and one's keyboard focus
policy is pointer.

Allen Barnett
(whose wife graciously allowed to use her account)

Newsgroup: comp.windows.x
Document_id: 67354
From: ian@csc.liv.ac.uk (Ian Finch)
Subject: Which X events are generated on application exit?

I'm writing an application running under X (using Motif), and I need to do
some stuff when the application quits.  Now, when I shut down my X Windows
session, it doesn't seem to send a SIGTERM (or whatever) signal to my
application (I'm trapping various signals like that).  Therefore, I thought
I could use an X signal to check for my top level window being destroyed.

However I seem to get DestroyNotify events whenever I move windows.  Is
there any way for me to check that the window is actually being destroyed
(some field to check or some combination of events?).

Replies by e-mail please and I will summarise.

Thanks for any help,
                      Ian
--
 //                             //
 // ian@compsci.liverpool.ac.uk //
 //                             //

Newsgroup: comp.windows.x
Document_id: 67355
From: rei@tsl.cl.nec.co.jp (Rei Hamakawa)
Subject: Xavier (AV Extension to InterViews)

Dear Folks:

It's a pleasure to be able to announce the release of a new freeware program, 
Xavier, an audio and video  extension to InterViews.

Xavier(eXtension AV class for IntERviews) is a C++ class library
that adds multimedia capability to InterViews. It allows composite
multimedia objects to be built from media objects.

Specifically, it adds audio and video objects to the classes available
in InterViews 3.0.1/3.1, and it does so without changing the
source code for the original classes (though several configuration
files for InterViews need to be changed via a patch file). 
 
Currently, the Xavier audio classes are only supported on SUN
workstations with an audio interface, such as the SPARCstation2.

Xavier has been tested in the following environments:

SUN:
  Machine : SPARCserver470 SPARCstation-IPC
  OS      : SUN-OS4.1.1 or later
  C++     : SUN C++ ver2.1

NEC(EWS):
  Machine : EWS4800/210,230
  OS      : EWS-UX/V(Rel4.0) WSOS41 Release5.1,Release5.2
  C++     : C++ Release3.1

It can be obtained via anonymous ftp from 

         interviews.stanford.edu in /pub/contrib/
          (Xavier.large-demo.tar, and Xavier.tar)

We are preparing a mailing-list for information regarding Xavier.
If you are interested, please contact
               
                   xavier@tsl.cl.nec.co.jp. 

I will add your e-mail address to our list.

[Reference]
o Rei Hamakawa, Hizekazu Sakagami, Jun Rekimoto:
  Audio and Video Extension to Graphical Interface Toolkits,
  The Third International Workshop on Network and Operating
  System Support for Digital Audio and Video, San Diego, 1992

***********************************************************************
* _                                                                   *
*  \ \      Rei Hamakawa (e-mail: rei@tsl.cl.nec.co.jp)               *
*   |o|                                                               *
*   |o|     C & C Systems Research Laboratories                       *
*   |o| __  NEC Corporation                                           *
*  O| || /  1-1, Miyazaki 4-Chome,      TEL : +81-44-856-2271         *
*  O| || |  Miyamae-ku, Kawasaki,       FAX : +81-44-856-2232         *
*  O| \/ |  Kanagawa 216 JAPAN                                        *
*    \__/                                                             *
***********************************************************************

Newsgroup: comp.windows.x
Document_id: 67356
From: barmar@think.com (Barry Margolin)
Subject: Re: Pulldown menu periodically hangs application on OpenWindows 3.0

In article <1rgt23INNonv@ssdc.SSDC.Sterling.COM> rlee@ssdc.SSDC.Sterling.COM (Richard Lee) writes:
>: A Motif 1.2.2 application will periodically hang when run against the
>: OpenWindows 3. server (xnews).

>I have seen the same problem using a SPARCStation 10, Solaris 2.1, OW 3.1.
>In my case, it happens far more often than "periodically".

I don't know if there's a corresponding patch for Solaris 2.1, but this
sounds like the following bug which is supposedly fixed in 100492-06, the
Solaris 1.x olwm Jumbo patch:

	1108642 - window system can hang in an errant pointer grab

Actually, I suspect that the OW 3.1 problem may be different, since the
README file says that this patch is just a SunOS 4.x version of the OW 3.1
olwm (but maybe that line came from an earlier version of the patch, and
they forgot to take it out in the -06 version).
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
Document_id: 67357
From: hedrick@geneva.rutgers.edu (Charles Hedrick)
Subject: Re: Xsun not running on SPARCclassic

herzog@dogwalk.Eng.Sun.COM (Brian Herzog - SunSoft Product Engineering) writes:

>I'm just guessing here, but I'd guess that X11R5 expects the CG3 to have
>1152x900 resolution, and the version of the CG3 in the SPARCclassic is 
>1024x768.

I've used X11R5 with classics set for both 1024x768 and 1152x900 (you
can choose which resolution you want in the PROM monitor before
booting).  One person had trouble with X11R5 that was fixed by
using the multi-screen version.  Here's how our version was built.
(You can just copy /usr/local/X11R5/bin/Xsun from farside.rutgers.edu
if you just want to see whether this version will work.)

  R5 distribution installed,
        from pub/R5/mit-[1-4] and contrib-[1-3] on export.lcs.mit.edu
  patches 1 - 23 installed,
	from pub/R5/fixes on export
  R5 Xsun Multi-screen patches installed, 
	from contrib/R5.Xsun.multi-screen* on export, 22-Mar-93
  Solaris 2.1 patches installed, release 1/update 2,
	from contrib/R5.SunOS5.patch* on export, 22-Mar-93

Compilation is with gcc 2.3.3.  Configuration is standard, except that
the root is /usr/local/X11R5, per Rutgers conventions.

Newsgroup: comp.windows.x
Document_id: 67358
From: oj@world.std.com (Oliver Jones)
Subject: Re: A Question I Do Not Found In FAQ

In article <1993Apr26.122007.25760@relay.nswc.navy.mil> rchui@opal.nswc.navy.mil writes:
>I created a pixmap or drawable window, then used XDrawLine() function 
>to draw a [clipped] line ... = 300
...
>I created the pixmap or drawable window only with size 300x300.
>But I draw line from p1(x1=270,y1=100) to p2(x2=500,y2=800).
>My question is, dose the XDrawLine function can finger out that correct
>p3(x3 and y3) for me? If you calculate x3 and y3. 

If you're asking, "does the X server perform clipping
correctly when drawing lines," the answer is "yes."

Newsgroup: comp.windows.x
Document_id: 67359
From: folkert@capints.UUCP (Folkert Boonstra)
Subject: comp.windows.x

I would like to keep track of X development on:
- A/UX
- ULTRIX
- OpenWindows
Currently I cannot use the newsgroup comp.windows.x 
and would like to use the Email based info. 
Thanks,


Folkert Boonstra 


Cap Gemini Innovation		Dutch Research Centre 
Burg.Elsenlaan 170		Phone:	+31 70 3957 239 
P.O. Box 3027			Fax:	+31 70 3957 237 
2280 GA Rijswijk (NL)		e-mail:	boonstra@capints.uucp


Newsgroup: comp.windows.x
Document_id: 67360
From: pjaques@camborne-school-of-mines.ac.UK (Paul Jaques)
Subject: Problem with dni and OW 3.0

Can anybody help me?

I am having a problem displaying images greater than 32768 bytes on a Sparc
IPC running Openwindows 3.0 and dni. My program runs on a Vax and displays
images on the IPC with no problems if I use Openwindows 2.0. The program uses
the following lines to display the image - it is the XPutImage() routine
that crashes.

	XImage          *ximage;
	ximage = XCreateImage(myDisplay, DefaultVisual(myDisplay, myScreen),
			      ddepth, ZPixmap, 0, image,
			      xwid, ywid, 8, 0);
	XPutImage(myDisplay, myWindow, myGC, ximage, 0, 0,
		  xpos, ypos, xwid, ywid);

The error I get is:-

XIO:  fatal IO error 65535  on X server "galaxy::0.0"
      after 30 requests (18 known processed) with 0 events remaining.
%XLIB-F-IOERROR, xlib io error
-SYSTEM-F-LINKDISCON, network partner disconnected logical link
%TRACE-F-TRACEBACK, symbolic stack dump follows
module name     routine name                     line       rel PC    abs PC

                                                           000773B9  000773B9
                                                           00077BBE  00077BBE
                                                           0007259D  0007259D
                                                           00072741  00072741
                                                           00072840  00072840
                                                           00072A27  00072A27
MYXSUBS         my_imtoiks                       3184      00000093  000010AF
TEST            main                              293      000000E5  00000EE5

I have a simple test program if anyone would like to test it !!

Thanks Paul.

-- 
-----------------------------------------------------------------------------
| Paul Jaques                                                               |
| Systems Engineer, Camborne School of Mines,                               |
|                   Rosemanowes, Herniss, Penryn, Cornwall.                 |
| E-Mail: pjaques@csm.ac.uk Tel: Stithians (0209) 860141 Fax: (0209) 861013 |
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67361
From: jgealow@mtl.mit.edu (Jeffrey C. Gealow)
Subject: Standard Colormaps

I'm working on an X11R5 application and have concerns regarding 
standard colormaps.

The X11R5 documentation says: "Usually, a window manager creates 
these colormaps."  I wonder what window manager the writer had 
in mind.  Neither twm or mwm seem to create standard colormaps.

Of course, one can use xstdcmap to create standard colormaps.  
However, xstdcmap doesn't seem to try very hard to avoid 
conflicts with the default colormap.  When I use standard 
colormaps created by xstdcmap, the rest of my display goes black.  
So it seems as if use of standard colormaps causes the very 
problem standard colormaps are intended to avoid.  Perhaps 
if every application used standard colormaps, things would 
be wonderful.  But not many applications seem to use 
standard colormaps.

Finally, the operation of the functions XmuGetColormapAllocation, 
XmuStandardColormap, and XmuCreateColormap seem inconsistent 
with the section 14.3 of the X11R5 XLIB documentation.

    According to the section 14.3 of the X11R5 XLIB documentation (p. 436):

    For GrayScale colormaps, only the colormap, red_max, red_mult, and 
    base_pixel members are defined.  The other members are ignored.  
    To compute a GrayScale pixel value, use the following expression:

            (gray * red_mult + base_pixel) &0xFFFFFFFF

    XmuGetColormapAllocation, defined in mit/lib/Xmu/CmapAlloc.c, is 
    used by XmuLookupStandardColormap, defined in mit/lib/Xmu/LookupCmap.c
    to select red_max, green_max, and blue_max values for the 
    call to XmuStandardColormap.  When the RGB_GRAY_MAP property is 
    specified, XmuGetColormapAllocation sets red_max to 30% of the 
    total number of cells in the gray scale, sets green_max to 59% 
    of the total number, and sets blue_max ot 11% of the total number.
    Referring to section 14.3, one would expect XmuGetColormapAllocation 
    to set red_max to the total number of cells in the gray scale.

    When the RGB_GRAY_MAP property is specified, XmuStandardColormap, 
    defined in mit/lib/Xmu/StdCmap.c, sets red_mult, green_mult, 
    and blue_mult all equal to 1.  Referring to section 14.3, 
    one would expect green_mult and blue_mult to be ignored.

    When red_mult, green_mult, and blue_mult all equal 1, 
    XmuCreateColormap, defined in mit/lib/Xmu/CrCmap.c, constructs 
    a gray map. The sum of red_max, green_max, and blue_max gives 
    the maximum gray value.  Referring to section 14.3, on would 
    expect red_max to give the maximum gray value.

Newsgroup: comp.windows.x
Document_id: 67362
From: ccdw@kudu.ru.ac.za (Dave Wilson)
Subject: Xlib timeouts?

I am in the process of modifying an X application that uses Xlib.  I'd
like to include a timer-driven facility (for network polling), but cannot
see how to do it using Xlib.  I know it can be done with Xaw, using
XtAppAddTimeout and XtTimerCallBackProc.  How do I do the same using
Xlib?

Thanks for any help.  Please email.

--
Dave Wilson
Computing Centre, Rhodes University
Grahamstown, South Africa

Newsgroup: comp.windows.x
Document_id: 67363
From: phil@flex.eng.mcmaster.ca (Phil Nguyen)
Subject: How to unsubscribe from mailing list

I try to unsubscribe from this group by sending an email but that doesn't work.

Could some one tell me the listserv address and command for me to unsubcribe ?

I am leaving this Friday (30th April 93) and the mail box will overflow
soon after that.

Thanks

-----------------------------------------------------------------
Philip Nguyen
Research Engineer
Flexible Manufacturing Research and Development Centre (FMR&D)
McMaster University
1280 Main St. West
Hamilton, On L8S 4L7
Voice: (416) 529-7070 ext 2902 or 7343
Fax: (416) 572-7944
e-mail: phil@flex.eng.mcmaster.ca
-----------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67364
From: gcw@met.ed.ac.uk (Gordon Watson)
Subject: How can get a pixel value from a Drawable ??

How can get a pixel value from a Drawable, without having to copy it to the client
as an XImage and use XGetPixel ?? - I want to select pixels from an animating
window on the server, without having to copy the whole lot back to my client.
(X11R5).

Any pointers appreciated,

Gordon.


=====================================================================
  Gordon C. Watson,                                    _------_      
                                                      {  {     }     
  Meteorology Department, Edinburgh University,      (__________)    
                          Scotland.                   /  /  /  /     
  JANET - G.C.Watson@uk.ac.ed   INTERNET - gcw@met.ed.ac.uk  
=====================================================================





Newsgroup: comp.windows.x
Document_id: 67365
From: edwind@lims01.lerc.nasa.gov (Tom NGUYEN)
Subject: How to resolve different font formats ...?

Hi All!

I tried to run SoftPC, a PC emulation software program, installed on a Silicon 
Graphics workstation from a Human Design System (HDS) X terminal, and 
everything went fine, except the fonts could NOT be converted from one type 
of format to the other - HDS uses different font format from SGI worksation.
So, I have the following questions:

1. How do you resolve different font formats from different machines?

2. Is there a program to convert one type of font format to another?

If you have similar problems/experiences and have found a solution, please 
let me know.  Your help will be greatly appreciated!

Thank you in advance for your help and information.

Tom Nguen

edwind@lims01.lerc.nasa.gov


Newsgroup: comp.windows.x
Document_id: 67366
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Archie-Client ?


Get Xarchie 2.0 instead.
--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67367
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Standard Colormaps

In article <1rjdk8INNcnh@senator-bedfellow.MIT.EDU>, jgealow@mtl.mit.edu (Jeffrey C. Gealow) writes:
> I'm working on an X11R5 application and have concerns regarding 
> standard colormaps.
> 
> The X11R5 documentation says: "Usually, a window manager creates 
> these colormaps."  I wonder what window manager the writer had 
> in mind.  Neither twm or mwm seem to create standard colormaps.

Standard colormaps were spec'd with the intention that window managers
would make them available. This doesn't mean that every window manager
author in the world immediately dropped everything they were doing and
implemented this at top priority.

The ESGE server we ship makes the XA_RGB_BEST_MAP available at
startup. It doesn't wait for window managers to do it.

> Of course, one can use xstdcmap to create standard colormaps.  
> However, xstdcmap doesn't seem to try very hard to avoid 
> conflicts with the default colormap.  When I use standard 
> colormaps created by xstdcmap, the rest of my display goes black.  
> So it seems as if use of standard colormaps causes the very 
> problem standard colormaps are intended to avoid.  Perhaps 
> if every application used standard colormaps, things would 
> be wonderful.  But not many applications seem to use 
> standard colormaps.

Does your hardware have only one CLUT? Since standard colormaps
typically devour all 256 entries, there is no way it can avoid
displacing the entire default colormap if your hardware has only one
CLUT.

I don't believe standard colormaps are intended to aboid possible
colormap flashing between clients using the default coilormap. Rather,
colormap flashing will be avoided between two clients that use the
same standard colormap. An example would be two clients that need a
full color range would both use XA_RGB_BEST_MAP (or whatever it's
called under X11R5).

If you are trying to avoid colormap flashing with the default
colormap, your best bet is to try to load all the colors you use into
that colormap. If you can't do that, then you'll get flashing on a one
hw CLUT framebuffer.

Now if your window manager used the same standard colormap as your
client, this flashing could also be avoided. Perhaps some window
managers have command line options for selecting standard colormaps?
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
Document_id: 67368
From: klute@tommy.INformatik.uni-dortmund.DE (Rainer Klute)
Subject: Imake support for xmosaic


	Imake support for xmosaic
	=========================

Although xmosaic is a great program in general, it unfortunately comes
without Imake support. So I created one. Until Marc Andreessen finds the
time to incorporate it in an official xmosaic release, you can easily do it
yourself. Use anonymous FTP to get

	ftp.germany.eu.net:/pub/X11/misc/xmosaic.Imake.tar.z

The file's size is 3200 Byte. You will need gzip to unpack it. Have fun!

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67369
From: julia@netcom.com (Julia Miller)
Subject: Posix Message Catalogs

Can someone tell me in 25 words or less how to compile posix
message catalogs so that I can use them with catgets, catopen, etc.
I know what the format for the catalogs is, but don't know how
to compile them.

Please reply to chas@blackwhite.com

Thanks in advance,

chas

Black & White Software, Inc.   	| Leaders in Systems & Software Solutions
2155 S. Bascom Ave. Suite 210   | Contact Black & White for information on
Campbell, CA 95008   		| X Windows & OSF/Motif Software & Support
(408) 369-7400   		| OSF/Motif & MS-Windows GUI Builders
(408) 369-7406   		| Add on Widgets, Editors and Help Systems
info@blackwhite.com   		| C++ and Ada Motif Bindings

Newsgroup: comp.windows.x
Document_id: 67370
From: susan+@andrew.cmu.EDU (Susan Straub)
Subject: REGISTRATION:  Andrew Tutorial & Technical Conference

                          1993 Andrew Tutorial 
                                  and 
                          Technical Conference 


When:  Thursday and Friday, June 24 and 25, 1993 
    (Deadline for Registration:  June 4, 1993) 

Where:  Carnegie Mellon University in Pittsburgh, Pennsylvania.   

Sponsor:  Andrew Consortium of CMU's School of Computer Science.  

Schedule:  The Tutorial  will be on Thursday, followed by dinner and the
    Annual Meeting.  The Conference proper will be on Friday.  All
    Conference attendees are welcome at the Annual Meeting.  

    Wednesday, June 23 

        Check in:  After 4:00 PM 
        Informal Reception:  7:30 PM 

    Thursday, June 24 

        Tutorial:  9:00 A.M. - 5:00 PM 
        Conference Dinner:  6:30 PM 
        Annual meeting:  8:00 PM 

    Friday, June 25 

        Technical Conference:  9:00 AM - 5:00 PM 

Cost:  
    Tutorial fee includes breaks, lunch and tutorial materials:  $100 
    Conference fee includes conference dinner, breaks and proceedings: $100 
    Rooms (student housing):  $50 / night 

Housing is tight around the campus area, so please register soon.  If you 
prefer to stay in off-campus housing, please contact us for suggestions. 
Mary Anne Cowden will be handling registration.  You can contact her by
email,  mc8b+@andrew.cmu.edu,  or by phone, (412) 268-6710.  
 Registration Form 

Please complete the attached form and return it to: 

Mary Anne Cowden 
Andrew Consortium Technical Conference 
Carnegie Mellon University 
Smith Hall 106 
5000 Forbes Avenue 
Pittsburgh, PA 15213-3890 

                                     <-       cut along here       -> 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - 



Name:              ______________________________________________ 

Address: 	______________________________________________ 

		______________________________________________ 

Organization: 	______________________________________________ 

Email:               ______________________________________________ 

Phone:              ______________________________________________ 




Tutorial		$ ___________     $100 
Conference		$ ___________     $100 
Housing		$ ___________      $50/night 

	TOTAL ENCLOSED     $ ___________ 


      Please make checks payable to Carnegie Mellon University.   
 

Newsgroup: comp.windows.x
Document_id: 67371
From: bnoble+@cs.cmu.edu (Brian Noble)
Subject: X Server scanline padding question


I am *almost* done porting XFree86 1.2 to a new piece of display
hardware, but have run into a snag I think may be somewhat
commonplace, so I'm sending a net-feeler.

I have a display that is a non-interlaced, memory mapped, 1-bit
720x280 display.  The server's view of the world, (obtained via xwd |
xwud), seems to be exactly what it should be.  However, the displayed
version of the framebuffer gives the impression that the server is
using scanlines that are too long.  After a bit of experimentation, it
seems that the problem was that the server was padding the line out to
a word boundry, but the scanline size in the buffer is 90 bytes, which
isn't exactly divisible by four.  Changing the following defines in
mit/server/include/servermd.h:

----

#define BITMAP_SCANLINE_PAD  32
#define LOG2_BITMAP_PAD		5
#define LOG2_BYTES_PER_SCANLINE_PAD	2

---

to:

---

#define BITMAP_SCANLINE_PAD  16
#define LOG2_BITMAP_PAD		4
#define LOG2_BYTES_PER_SCANLINE_PAD	2

---

Was not exactly the right solution.  How do I tell the server either
(a) don't pad the scan lines at all ('cause this server is only being
built to run on this particular display), or to pad only to byte
boundries?

I'm using a customized version of XFree86v1.2, under Mach 3.0.

Thanks
Brian

Newsgroup: comp.windows.x
Document_id: 67372
From: darcym@fpddet4.mentorg.com (Darcy McCallum)
Subject: Keyboard mapping and window placement questions

These are two common subjects so I hope someone has had to deal with these
specific questions.

1.  If my application depends on modifiers, what is the best lookup method?
My choices are to call XGetModifierMapping() for each key press with a 
modifier, or make the call once at the init of the app and store the modifiers
in a lookup table.  I would like to do it the second way, but I can't seem to
get the notify when the user uses xmodmap to remap the modifiers.  I know that
when an app calls XSetModifierMapping() a MappingNotify event is generated
(non-maskable) which I can pick up and modify my internal table.  But, I don't
seem to get any notify events when the user uses xmodmap.  If I use Xt, all 
O'Reilly has to say is '...is automatically handled by Xt...'.  If I use Xlib, ala XNextEvent(), I get nothing.  This all stems from problems with users of 
the Sun 4/5 keyboard and the NumLock; plus various Alt/Meta/etc. modifier 
requirements.

2.  I would like to place a popup so that it will be to the immediate right
of my main window.  I want it at the same y coord, and their right/left
sides touching.  What I need to ask for is the x,y coord of the window 
manager's border for the main window.  This should ring a bell with anyone
who has called XtMoveWidget(), immediately checking the x,y after the move
and seeing that it is right, and in their next callback asking for the x,y
and seeing that it is now offset by the WM border.

Any help would be most appreciated.

Darcy
darcy_mccallum@mentorg.com

Newsgroup: comp.windows.x
Document_id: 67373
From: hans@xelion.nl (Hans Bos)
Subject: Save Under with X11R5

I have the following problem on X11R5 servers.

When a window of my is obscured by a pop up window which has
the Save Under attribute set, the subwindows of my window are not restored.

Normally, the subwindows are redrawn when the parent window gets an expose
event, but because the save under attribute is used for the pop up window
that obscured my window, no expose event is sent.

When ExposureMask is set for the child windows, those windows are correctly
updated when the popup window disappears, however then the application
gets too many expose events and you see extra redraws.

Everything works fine with X11R4.

Is this something that is changed between X11R4 and X11R5 (obvious)?
Is it something I do wrong?
Is there something that the popup window should do (which is also mine)?
Is this a bug in X11 release 5?

Greetings,
-- 
----------------------------------------------------------------------
Hans Bos                     	   domain : hans@xelion.nl
Xelion BV                          uucp   : ...!sun4nl!xelion!hans
Postbus 88                         phone  : +31 15 622121

Newsgroup: comp.windows.x
Document_id: 67374
From: rgasch@nl.oracle.com (Robert Gasch)
Subject: Overriding default WM Behaviour


I posted this about tow weeks ago but never saw it make it (Then again
I've had some problems with the mail system). Apologies if this appears
for the second time:

Usually when I start up an application, I first get the window outline
on my display. I then have to click on the mouse button to actually
place the window on the screen. Yet when I specify the -geometry 
option the window appears right away, the properties specified by
the -geometry argument. The question now is:

How can I override the intermediary step of the user having to specify
window position with a mouseclick? I've tried explicitly setting window
size and position, but that did alter the normal program behaviour.

Thanks for any hints
---> Robert

PS: I'm working in plain X, using tvtwm.



******************************************************************************
* Robert Gasch        * Der erste Mai ist der Tag an dem die Stadt ins      *
* Oracle Engineering   * Freihe tritt und den staatlichen Monopolanspruch    *
* De Meern, NL        * auf Gewalt in Frage stellt                          *
* rgasch@nl.oracle.com *                           - Einstuerzende Neubauten *
******************************************************************************


----------------------- Headers ------------------------
>From uupsi7!expo.lcs.mit.edu!xpert-mailer Thu Apr 22 17:24:28 1993 remote from aolsys
Received: from uupsi7 by aolsys.aol.com id aa19841; Thu, 22 Apr 93 17:10:35 EDT
Received: from srmftp.psi.com by uu7.psi.com (5.65b/4.0.071791-PSI/PSINet) via SMTP;
        id AA02784 for ; Thu, 22 Apr 93 12:04:36 -0400
Received: from expo.lcs.mit.edu by srmftp.psi.com (4.1/3.1.072291-PSI/PSINet)
 id AA17104; Thu, 22 Apr 93 10:19:31 EDT
Received: by expo.lcs.mit.edu; Thu, 22 Apr 93 06:57:38 -0400
Received: from ENTERPOOP.MIT.EDU by expo.lcs.mit.edu; Thu, 22 Apr 93 06:57:37 -0400
Received: by enterpoop.MIT.EDU (5.57/4.7) id AA27271; Thu, 22 Apr 93 06:57:14 -0400
Received: from USENET by enterpoop with netnewsfor xpert@expo.lcs.mit.edu (xpert@expo.lcs.mit.edu);contact usenet@enterpoop if you have questions.
To: xpert@expo.lcs.mit.edu
Date: 22 Apr 93 08:09:35 GMT
From: rgasch@nl.oracle.com (Robert Gasch)
Message-Id: <3873@nlsun1.oracle.nl>
Organization: Oracle Europe
Subject: Overriding Default Behaviour


Newsgroup: comp.windows.x
Document_id: 67375
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: X Toolkits

Excerpts from misc: 27-Apr-93 Re: X Toolkits Sivesh Pradhaan@rebels.b (423)

> I do not have finger!!! So is there any other way of accessing this service 
> like mail server or telnet or ftp?

You can use telnet:

% xhost +atk.itc.cmu.edu
% telnet atk.itc.cmu.edu 79
run-demo

Newsgroup: comp.windows.x
Document_id: 67376
From: lakshman@ms.uky.edu (Lakshman K)
Subject: Realtime X-tensions

Hi,
	Iam looking for information on any work that deals with real-time
support in X-windows????!!
	Would be happy if you could provide any pointers or information
thanks
Lakshman
lakshman@ms.uky.edu 


Newsgroup: comp.windows.x
Document_id: 67377
From: neal@grover.stat.washington.edu (Phil Neal)
Subject: Wierd xdm behavior

Dear sun and windows people,

I am running sun workstations with SunOs 4.1.1 and 
vanilla X11 R5. I have a bunch of xterminals as well.

Today I had my xdm fail. At about 9:30
it was impossible to login to a host from an xterminal.
The message was the "xdm too many retransmissions".
In my xdm-errors file I had the following entries:


  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256
  >error (pid 7927): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >
  >I also had:
  >
  >error (pid 7457): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256
  >error (pid 7462): WARNING: keyboard on display :0 could not be
  >secured
  >error (pid 7423): Server for display :0 terminated unexpectedly:
  >256

Also, at the console, the login box would come up for
about 2 seconds and then
it would go away. It would do this continuously.

I could login from another workstation to the hosts in question,
however, I could not login on the console.

I tried killing xdm and restarting it but that didn't help.
I finally rebooted all the hosts. (Which hurts when done in the
middle of the day).

Any help would be appreciated.

Thanks,
Phil 
-- 
Phil Neal, Systems Programmer, Statistics Department GN-22
University of Washington, Seattle, Wa. 98195 USA  | 206-685-1627
----------------------------------------------------------------
"Look, another bit!" -- Repo Man (the movie)

Newsgroup: comp.windows.x
Document_id: 67378
From: black@westford.ccur.com (Samuel Black)
Subject: Re: Realtime X-tensions

>	I am looking for information on any work that deals with real-time
>	support in X-windows????!!
>	Would be happy if you could provide any pointers or information

Concurrent has a product called RealTimeX (tm) that is a set of real-time
extensions to the X Window System.  RealTimeX is currently supported on
the Concurrent Series 7000 and Series 8000 with the GA5000 graphics
accelerator.  If you need/want more info, let me know.

		- sam black

-------------------------------------------------------------------------------
Once you remove the absurdity from human existence, there isn't much left.
		     __________
		    /  _______/__
		   /__/______/  /	black@westford.ccur.com
	  Concurrent /_________/
	Computer Corporation
-------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67379
From: moore@halley.est.3m.com (Richard Moore)
Subject: Re: X interactive performance

For image display, about 10 frames per second seems to be the lower limit
for interactive operations. For just bringing up an image for viewing less
than 1 second seems to be a good number. Of course the measure of response
time should be based on the applications you are planning to run.

Newsgroup: comp.windows.x
Document_id: 67380
From: panvalka@cs.unc.edu (Anay Panvalkar)
Subject: Frame buffer question for X11R5 (Sun)

X Window installation on a Sun4/470 with CG6 alone and with CG2 as
screen:0.0 and CG6 as screen:0.1.

Questions:
1)  Are there any hardware configuration changes on the CG2 and/or
CG6 devices that need to be made other than pulling out and inserting the
CG2 frame buffer in the vme bus?

2)  The CG6 is called a 'graphics accelerator' as apposed to a 'frame buffer'.
What is the significance of this to the X server and how do we install
the SunOS driver / X to be compatable.

-----------------------
I would appreciate any information on this. 
I am posting this on the behalf of Dr. John Charlton (who does not have net
access). Please reply to him directly at charlton@bme.unc.edu or just send
it at this address and I will forward it. 

Thank you for your help!

-Anay
panvalka@cs.unc.edu

Newsgroup: comp.windows.x
Document_id: 67381
From: mike@hopper.Virginia.EDU (Michael Chapman)
Subject: Re: 4-plane Xterminal (Do I want one?)

In article <C63srv.57w@watserv1.uwaterloo.ca> chudel@watarts.uwaterloo.ca (Chris Hudel) writes:
>
>
>PS: all R5 apps run on R4/R3 servers,right?

The 4-bit server should work fine.  As far as I know, Xterminals
running older versions can run the latest apps as long as the host 
machine has the R5 libraries installed. I could be wrong though.
-- 
mike@hopper.acs.virginia.edu 

"I will NOT raise taxes on the middle class." -Unknown

Newsgroup: comp.windows.x
Document_id: 67382
From: gse9k@uvacs.cs.Virginia.EDU (Scott Evans)
Subject: MenuButton Widget Question

I'm trying to create a button that has both a label and a bitmap using
the MenuButton widget.  Is this possible?  Right now, all I get is the
bitmap -- no sign of the label.

Any help would be appreciated.



scott

Newsgroup: comp.windows.x
Document_id: 67383
From: herlock@lclark.edu (Jon Herlocker)
Subject: How to access 24-bit color on cg8?

We have a Sun 3/80 and we have just acquired a cg8 frame buffer card.

The cg8 is supposed to support both a 24-bit color visual and a monochrome visual.
The default visual for the xnews server is the monochrome, and we are unable to change it to
the 24-bit visual. We have tried using XGetVisualInfo to get a visual of depth 24, but had no
success.  xdpyinfo gives no information about a 24-bit deep visual, only monochrome. 

There are two possible solutions:
	If someone has patches for X11R5 Xsun server, could they forward them to us?

	Otherwise, could someone instruct us how to access the 24-bit color in openwindows?
-- 
Jon Herlocker		email:  herlock@lclark.edu
Lewis & Clark College
Portland, OR 97219

Newsgroup: comp.windows.x
Document_id: 67384
From: joel@zodiac.z-code.COM (Joel Reymont)
Subject: Xsun not finding default font (Sol2.1)

Hi, netters!

I've just built X11R5 pl 21 under Solaris 2.1. I've used the multi-screen 
patch, as well as the R5.SunOS... patch and everything builds great, except 
for that error message Xsun gives me upon startup. It says: 
"Cannot set default font path '[stuff deleted]'" and "Cannot set default font
'fixed'". If I supply the -fp option, it doesn't complain about the font path
but still complains about the font. I have symlinks from /usr/lib/ to the 
place where my distribution lives.

Could somebody help me?

	-joel

-- 
-----------------------------------------------------------------------------
Joel Reymont    !   Z-Code Software Corporation    ! e-mail: joel@z-code.com 
-----------------------------------------------------------------------------
4340 Redwood Hwy, Suit B.50, San Rafael, CA 94903
-----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67385
From: saint@mitchell.hac.com (Kathy Saint)
Subject: Callback parameter problem after X11R5 upgrade


We've just recently upgraded our X11 to R5 and are now running into problems
with some of our applications that use Motif 1.1.  It appears that pointer to
the widget being passed to the callback function (i.e., the "w" of
(w, client, call) ) is nil.  The client and call pointers are okay in some
instances, but bogus in other instances.

We are running SunOS 4.1.2 on a Sun 4.  After compiling X11R5 and all 23
patches (with the MotifBC flag set), we recompiled Motif and then we 
recompiled the application.

Did we skip a step or leave something out?  Is there a flag that we should
have used?  Should we have left Motif alone?

Any answers or suggestions would be greatly appreciated.

Thanks
Kathy

==============================================================================
Kathy Saint             ||  "She's a witch!! She's a witch!!."
"I'm not dead yet."     ||  "How can you tell she's a witch?"
                        ||  "She looks like one!!"
saint@mitchell.hac.com  ||      - "Monthy Python & the Holy Grail"

Newsgroup: comp.windows.x
Document_id: 67386
From: gpatapis@boyd.tansu.com.au (George Patapis)
Subject: Re: DESQview/X on a PC and network Traffic


In article 1369@qdeck.com, support@qdeck.com (Technical Support) writes:
>In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>
>>What sort of traffic is generated with the X-calls?  I am curious to find
>>out the required bandwidth that a link must have  if one machine running
>>DV/X is supporting multiple users (clients) and we require adequate response
>>time.  Anyone have any ideas ??  
>
>I expect the limiting factor will be your server machine, not the network
>itself. To give you a real-world example, here at Quarterdeck we have
>roughly 100 people using DVX to talk to a bunch of unix boxes, novell
>file servers, and each other. It's not _too_ much of a load on our
>Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
>segment). If you had a badly loaded net, or the apps you wanted to run
>were very network intensive, you could run into some slowdowns.
>
>But the biggest problem would be the machine itself. Say you have a 486
>33 with plenty of ram and a fast hard disk and network card. If you have
>10 people running programs off it, you're going to see some slowdowns
>because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
>attempt to see if tasks are idle and make sure they give up their time
>slice, but if you have 10 working programs running, you'll know it.
>

Well I can buy a bigger and more powerful server machine because of the 
significant drop in price year after year.  The link I want to use 
though (ISDN 64K) is costly and the bandwidth limited.  That's why my
interest lies in seeing if such a link can be used and see what traffic 
goes through it.


>Having said that, if you can tweak the programs being run (by adding
>in calls to give up time slices when idle and that sort of
>thing), you could probably run 15-20 people on a given machine before
>you started seeing slowdowns again (this time from network bandwidth).

Hmmm.  Has anyone at your centre monitored the traffic at all?  Are you
running any standard MS-Windows programs like Word ?  What sort of 
packets go blazing through? What size link do you have (2Mb or 10Mb ?).
What is the average traffic flow going through your network or do you
have few high peaks and then many low points?


>It all really depends on what the programs are doing (ie. you're going
>to see a slowdown from X-bandwidth a lot sooner if your apps are all
>doing network things also...)
>-- 

What do you mean by network things?  I vision using MS Windows and other
Windows applications over the network were the processes are running on
the server and all I am getting are the displays.  I am wondering how 
good is the X and subsequently DV/X protocol in transferring these 
images with X-calls and displaying them on a client's machine.


>       Quarterdeck Office Systems - Internet Support - Tom Bortels
> Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
>  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
>   Q/Fax: (310) 314-3214 from touch-tone phone for Technotes On Demand!




---
__/ __/ George Patapis ---------------------PAN METRON ARISTON---------- __/ __/
__/ __/ Telecom C.S.S.C Lane Cove---email:gpatapis@cssc-syd.tansu.com.au __/ __/
__/ __/ P.O.Box A792 Sydney South --fax  :(02) 911 3 199---------------- __/ __/
__/ __/ NSW, 2000, Australia.-------voice:(02) 911 3 121---------------- __/ __/



Newsgroup: comp.windows.x
Document_id: 67387
From: ron@cr.CRic.COM (R Lundstrom)
Subject: REQUEST UNSUBSCRIBE

Please remove me from this mailing list - we finally
got our news feed!

	Ron L.

--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ron Lundstrom  Collaborative Research Inc.  617-487-7979 x148  %
% ron@cric.com        1365 Main Street        617-891-5062 (fax) %
%                    Waltham, MA. 02154                          %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Newsgroup: comp.windows.x
Document_id: 67388
From: jeffcop@i88.isc.com (Jeff Copeland)
Subject: HP Interface Architect

Hey GUI folks,

Does anyone out there have experience with the HP Interface Architect
(GUI dev tool)?  If so, can I call you and ask a couple of quick
questions?  I promise I'll be brief, the questions are simple, and of
course I'll call on my nickel.

Jeff Copeland
jeffcop@i88.isc.com

708-505-9100 x330
INTERACTIVE Systems Corp. (now a Systemhouse co.)
-- 
Jeff Copeland
jeffcop@i88.isc.com          708-505-9100   x330

Newsgroup: comp.windows.x
Document_id: 67389
From: bradley@grip.cis.upenn.edu (John Bradley)
Subject: XV 3.00 has escaped!

No, not another false alarm, not a "It'll certainly be done by *next* week"
message...  No, this is the real thing.  I repeat, this is *not* a drill!

Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
finally escaped.  I was cleaning its cage this morning when it overpowered
me, broke down the office door, and fled the lab.  It was last seen heading
in the general direction of export.lcs.mit.edu at nearly 30k per second...

If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.

Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.

--jhb

Newsgroup: comp.windows.x
Document_id: 67390
From: vaughan@ewd.dsto.gov.au (Vaughan Clarkson)
Subject: Connecting a digitiser to X (REPOST)

Hi there

(I posted this to comp.windows.x.intrinsics but got no response, so I'm posting
here.)

I'm wanting to connect a digitiser made for PCs into my workstation (an HP 720).
It is my understanding the X windows can understand a variety of input devices
including digitiser tablets.  However, this digitiser makes use of the serial
port, so there would seem to be a need to have a special device driver.

The HP manual pages say that the HP X server will accept X input from
devices listed in the /usr/lib/X11/X*devices file (* = display number).
I shouldn't think I would be able to simply insert /dev/rs232c as an input
device in this file and expect a digitiser to work.  But maybe I'm wrong.  Am I?

What I would like to know is: does anybody out there have a digitiser connected
to their workstation for use as a pointer for X (rather than just as input to a
specific X application)?  If so, what were the steps required for installation?
Did you need a special device driver?  Did the manufacturer supply it?  Are
there generic public domain device drivers around?  (I understand that
digitisers generally use only a couple of standard formats.)

Any help would be greatly appreciated.

Cheers
- Vaughan

-- 
Vaughan Clarkson                  ___________    Email: vaughan@ewd.dsto.gov.au
Engineering Ph.D. Student              |                  Phone: +61-8-259-6486
& Glider Pilot			       ^                    Fax: +61-8-259-5254
     ---------------------------------(_)---------------------------------

Newsgroup: comp.windows.x
Document_id: 67391
From: fabian@vivian.w.open.de (Fabian Hoppe)
Subject: Searching CAD-software

Hi out there!

I'm looking for (mechanic-construction)CAD-software either PD-sources
or Sun 3-binaries (respective the licence.. :-).
Who knows _ANY_ package (and a source/site to get it..) ?

Thx, Fabian

-- 
Fabian Hoppe				Phone  : ++49 2332 12580
Elsternstr. 57				Fax    : ++49 2332 83741
W-5820 Gevelsberg			EMail  : fabian@vivian.w.open.de
Germany

Newsgroup: comp.windows.x
Document_id: 67392
From: fish@daacdev1.stx.com (John Vanderpool)
Subject: is there a simple way to check what action a mouse button will take?

w/o actually executing it? somehow one of my xterminal users has made it
so that a click of MB3 (right) automatically kills all clients - oh my :-(

		thanx,
			fish
--
John R. Vanderpool     INTERNET: fish@eosdata.gsfc.nasa.gov
NASA/GSFC/HSTX         VOX: 301-513-1683                
"So you run, and you run, to catch up with the sun, but it's sinking,
 racing around to come up behind you again." -rw/dg

Newsgroup: comp.windows.x
Document_id: 67393
From: fish@daacdev1.stx.com (John Vanderpool)
Subject: anybody have patched version of xroach for tvtwm???

i read about the code you can put in to most applications so that
the virtual desktop stuff in tvtwm doesn't confuse them (or is the
application confusing the virtual-ness? [chicken & the egg?]

but wanted to see if it has been applied to a version of xroach

i never could quite get ssetroot to work either? any suggestions.
luckily xv -root -quit does the trick for the most part

also, i'ld be quite interested in hearing more about the icon region
for each virtual window under tvtwm that i read a thread on last week
here
	thanx,
		fish
--
John R. Vanderpool     INTERNET: fish@eosdata.gsfc.nasa.gov
NASA/GSFC/HSTX         VOX: 301-513-1683                
"So you run, and you run, to catch up with the sun, but it's sinking,
 racing around to come up behind you again." -rw/dg

Newsgroup: comp.windows.x
Document_id: 67394
From: "Derrick J. Brashear" <db74+@andrew.cmu.edu>
Subject: SUMMARY: virtual mouse in ol{v}wm

I got the following today from Gary Risebrough and it worked fine:

Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
ITO2@aodc.gov.au (554)

> hi,

> With regard to :
> > I have the following lines in my .Xresources:
> > olwm.KeyboardCommands: Full
> > olvwm.KeyboardCommands: Full
> > olwm.GrabVirtualKeys:  true
> > olvwm.GrabVirtualKeys: true

> I have :
> > OpenWindows.KeyboardCommands:   Full
> > OpenWindows.VirtualGrabKeys :   False

> which seems to work.

> Cheers!
> ----------
> Gary Riseborough                         Phone :  +61 2 563  gary@AODC.gov.au



Newsgroup: comp.windows.x
Document_id: 67395
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: Problem with xterm, no access to tty


I'm running xterm under X11R5, Motif 1.1, mwm and UNIX SVR4 on a UNISYS
386 based machine. My default shell is /bin/csh or the C shell. Whenever
I run xterm, I get the following message before the first C shell prompt:

Warning: no access to tty; thus no job control in this shell...

After this, I can't run any job control commands like fg, bg etc. Also,
I can't run another xterm from the command line of this xterm (I can only
launch additional xterms from a .mwmrc menu).

I'd appreciate some help with this problem, or pointers to where I can get
some help. By the way, my environment variable TERM is set to xterm.

----------------------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com

Newsgroup: comp.windows.x
Document_id: 67396
From: sgreene@nimbus.com (Spencer Greene)
Subject: How can I change sun/cgthree fb writes to dword?

Hello Xperts out there.
I've just built X11R5 for SunOS 4.1.1/SPARC.
I have gcc-2.2 and I'd like to use its 64-bit capability
to generate an X11 release which will render to the frame
buffer using store-double (64-bit) machine code.
Can anyone tell me which directories/source files/
compiler switches to begin with?

thanks in advance
-- 
- Spencer Greene                                          +1 408 727 5445 -
- Nimbus Technology Inc.                               sgreene@nimbus.com -
- Santa Clara, California USA            {sgiblab,ub-gate}!c2tech!sgreene -
- "Patriotism is the last refuge of a scoundrel."    --Dr. Samuel Johnson -

Newsgroup: comp.windows.x
Document_id: 67397
Subject: Re: XV 3.00 has escaped!
From: sands@ccu1.aukuni.ac.nz (Greg Sands)

bradley@grip.cis.upenn.edu (John Bradley) writes:

>If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.

Before I even think about getting this, is it going to be posted to 
comp.sources.x at any time in the near future?  

Greg.

-- 
Greg Sands.                           |  Department of Engineering Science
-----------                           |  University of Auckland           
g.sands@auckland.ac.nz                |  New Zealand.

Newsgroup: comp.windows.x
Document_id: 67398
Subject: Re-entrancy of Xlib functions. Known problem???
From: visser@eedwsa.itwol.bhp.com.au (Martin Visser)

I've found a problem in the use of Xlib functions regarding re-entrancy. I
decided to implement an animated cursor (using 6 created cursors) by calling
XDefineCursor from a SIG_ALRM signal handler. This is used to indicate we are
waiting for a operator request to complete. (on a production control system).
I was redrawing the screen underneath the animated cursor and then restoring
the standard cursor when complete. I found dumped core , and upon analysis
it was when the SIG_ALRM handler was called during a XDrawString call. XDrawString
was doing a bcopy (presumably an internal structure) when the XDefineCursor
was called. Presumably the (internal) structure that XDrawString was manipulating
was not in a stable state and sent XDefineCursor to where it shouldn't have been.

Has anyone else experienced this? Is there any official documentation that
says you should ensure this doesn't happen? Or should bcopy() be atomic.
We are running on SGI Irix 4.0.1 with X11R4.



-- 
Regards, Martin

   /\/\     :  Martin Visser - Electrical / Software Engineer 
  / / /\    :  Engineering Technology Department
 / / /  \   :  BHP Steel - Slab and Plate Products Division
/ / / /\ \  :  P.O. Box 1854 Wollongong NSW 2500 AUSTRALIA
\ \/ / / /  :  Phone    +61-42-75-7522 ext. 6207
 \  / / /   :  Fax      +61-42-75-7038 
  \/\/\/    :  E-mail   visser@itwol.bhp.com.au

Newsgroup: comp.windows.x
Document_id: 67399
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Imake-TeX: looking for beta testers

In article <1rl3efINNl7p@fbi-news.Informatik.Uni-Dortmund.DE>,
klute@tommy.informatik.uni-dortmund.de (Rainer Klute) writes:
|> As I announced at the X Technical Conference in January, I would like
|> to
|> make Imake-TeX, the Imake support for using the TeX typesetting system,
|> publically available. Currently Imake-TeX is in beta test here at the
|> computer science department of Dortmund University, and I am looking
|> for
|> some more beta testers, preferably with different TeX and Imake
|> installations.

Judging from the responses so far, I have not made clear enough in my
article quoted above that Imake-TeX is not for installing TeX, but for
*using* it. With Imake-TeX, you will never again have to fiddle around with
calling latex and its various utility programs (makeindex, bibtex). Simply
type "make" and your document's DVI file will be up-to-date. All you have
to do is to write a simple Imakefile and let Imake generate a suitable
Makefile for you. Here is such an Imakefile:

	#include "TeX.tmpl"
	PaperFormatA4()
	SimpleLatexTarget(document)

The generated Makefile provides the following commands:

    make depend:    Searching the TeX source files for dependencies like
                    \input{somefile}

    make dvi:       Generate an up-to-date DVI file

    make viewdvi:   Display it on your screen

    make ps:        Generate a PostScript version of your document

    make viewps:    Display it

    make clean:     Remove unnecessary things

    make veryclean: Remove even the DVI file

    make Makefiles: Generate Makefiles in subdirectories


If ...

a) ...this seems attractive to you,
b) ...you are willing to test Imake-TeX and send me a short test report,
c) ...you are willing to cope with a rudimentary English documentation
   (however, the German version is completed and included),

then you are invited as a beta tester. I am looking forward to your e-mail.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67400
From: vallot@chine.ilog.fr (Joseph Vallot)
Subject: Re: XV 3.00 has escaped!


In article <123645@netnews.upenn.edu>, bradley@grip.cis.upenn.edu (John
Bradley) writes:
|> From: bradley@grip.cis.upenn.edu (John Bradley)
|> Subject: XV 3.00 has escaped!
|> Date: 28 Apr 93 01:27:46 GMT
|> 
|> No, not another false alarm, not a "It'll certainly be done by *next* week"
|> message...  No, this is the real thing.  I repeat, this is *not* a drill!
|> 
|> Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
|> finally escaped.  I was cleaning its cage this morning when it overpowered
|> me, broke down the office door, and fled the lab.  It was last seen heading
|> in the general direction of export.lcs.mit.edu at nearly 30k per second...
|> 
|> If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
|> 
|> Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.
|> 
|> --jhb

Newsgroup: comp.windows.x
Document_id: 67401
From: p7003ag@sun1.LRZ-Muenchen.DE
Subject: German keyboard ALT-GR ?


Hi ppl,

I am running XFree386 under Linux SLS1.0 and am trying to get the german
keyboard working. I have already recompiled my kernel and the german
keyboard in the textmode works just fine.
I have found out, that there is a preconfigured german keymap for X
called Xmodmap.gr in /usr/lib/X11, so I ran xmodmap /usr/lib/X11/Xmodmap.gr.
My first impression was very good, I was able to get Z and Y straight :)
There's still a little problem I can't solve however:
I cannot get at the backslash, bar, brackets and curly brackets.
The ALT-GR key doesn't seem to work.
I tried xev to find out whether it produces an event at all and it does.
Looking up its keycode (113) in the Xmodmap I found the entry "Mode_switch"
which doesn't ring any bell. The entries for the keys I cannot use seem
to be correct. Example: keycode XX = ssharp questn backslash
The first 2 entries I can even get at. The first one is the unmodified
key and the second is the key with shift, but what is the 3rd??
My guess is that it should be the key with ALT-GR but it isn't.
If anybody has run into similar problems and knows how to solve them,
help would be appreciated.

CU

Alaric

Newsgroup: comp.windows.x
Document_id: 67402
From: 9130037@golum.riv.csu.edu.au (CHAN Yin Mei)
Subject: Help! Anything about X.

From 9150618 Thu Apr 29 16:36:43 1993
Date: Thu, 29 Apr 1993 16:36:42 +1000
From: 9150618 (Gavin Fairlamb)
To: 9130037
Status: R


Hello, folks...
        I am doing a uni. project and was wondering if you could
   supply with some specific info. or references for info. regarding
   		1). Considerations for installation of XWindows in
		a HP 9000(unknown model)
                2). Motif, OPENLOOK, XToolkit????
                3). X11, X11R.... 
                4). Glossary of any term on X 
	We considering this software for the project which deals
     in image analysis...

     Any info. would be greatly appreciated.

        Please email to 9130037@golum.riv.csu.edu.au

 	


Newsgroup: comp.windows.x
Document_id: 67403
From: 9130037@golum.riv.csu.edu.au (CHAN Yin Mei)
Subject: Help! Anything about X.

From 9150618 Thu Apr 29 16:36:43 1993
Date: Thu, 29 Apr 1993 16:36:42 +1000
From: 9150618 (Gavin Fairlamb)
To: 9130037
Status: R


Hello, folks...
        I am doing a uni. project and was wondering if you could
   supply with some specific info. or references for info. regarding
   		1). Considerations for installation of XWindows in
		a HP 9000(unknown model)
                2). Motif, OPENLOOK, XToolkit, Linux????
                3). X11, X11R.... 
                4). Glossary of any term on X 
	We considering this software for the project which deals
     in image analysis...

     Any info. would be greatly appreciated.

        Please email to 9130037@golum.riv.csu.edu.au

 	


Newsgroup: comp.windows.x
Document_id: 67404
From: spatel@cs.tamu.edu (Samir K Patel)
Subject: Background Processing in X Applications

I have written a server program which makes socket connections to many nodes
and collects data from that nodes periodically. I need to display this data on
my X Application. I tried
to invoke this server using XtAddAppTimeout which works ok. But the
problem here is some time there is delay in collecting data. So I doesn't
returns to EventLoop during that time and my application remains busy and
It doesn't respond to users input. I button press events are queued and
exected after server finished its task. Now I am going to try AppAddInput
call. So that It reads pipe only when there is something to read in pipe.

I am thinking of creating one pipe in which server will write and client
which is my X application will read. Now I have some doubts which you may
be able to clarify.

1) When I fork a process. It will create to copy of my process. Right !!
   Now what does this two copies mean? Two Shells. Where should I fork
   my application. What are the responsibilities of this processes. How
   should I call this processes.?

2) Can I fork more than one processes. So that I can read from more
   than one servers input.

Thanks

Samir Patel

/////////////////////////////////////////////////////////////////////////////

spatel@cs.tamu.edu

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Newsgroup: comp.windows.x
Document_id: 67405
From: restrugo@netcom.com (Ramiro Estrugo)
Subject: Sources for vuewm gadgets

Does anyone know any sites/resources where I can find gadgets for the vuewm
window manager?  Such as types,actions,icons for the file manager and
event manager...etc....


tanks, all input appreciated....


Newsgroup: comp.windows.x
Document_id: 67406
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Xsun not finding default font (Sol2.1)

joel@zodiac.z-code.COM (Joel Reymont) writes:

>Hi, netters!

>I've just built X11R5 pl 21 under Solaris 2.1. I've used the multi-screen 
>patch, as well as the R5.SunOS... patch and everything builds great, except 
>for that error message Xsun gives me upon startup. It says: 
>"Cannot set default font path '[stuff deleted]'" and "Cannot set default font
>'fixed'". If I supply the -fp option, it doesn't complain about the font path
>but still complains about the font. I have symlinks from /usr/lib/ to the 
>place where my distribution lives.

Try to run Xsun under truss(1).

	The best way to do this is by logging in over the network
	and typing:

	truss -t open Xsun

open("/opt/X11R5/lib/X11/fonts/misc/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/Speedo/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/Speedo/fonts.alias", O_RDONLY, 0666) Err#2 ENOENT
open("/opt/X11R5/lib/X11/fonts/75dpi/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/75dpi/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/100dpi/fonts.dir", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/100dpi/fonts.alias", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/6x13.pcf", O_RDONLY, 0666) = 8
open("/opt/X11R5/lib/X11/fonts/misc/cursor.pcf", O_RDONLY, 0666) = 8

This will give you and idea of where Xsun things the fonts should be.

If you have defined  a project root and done a make install, everything
should have gone right by default, even without symbolic links.

Casper

Newsgroup: comp.windows.x
Document_id: 67407
From: wilde@bernina.tik.ethz.ch (Erik Wilde)
Subject: X audio extension

Is there an "official extension" to X which allows the use of audio? Most
of the X audio programs use system-specific ways to access the audio
capabilities of the computer they run on. Is there a hardware-independent
way to do this (like the video extension XV)? Thanks for any help.

Erik Wilde (wilde@tik.ethz.ch)
  Swiss Federal Institute of Technology   (ETH Zuerich)
  Laboratory of Computer Engineering and Networks (TIK)
  ETH-Zentrum, ETZ G61.2, CH - 8092 Zuerich
  Phone: +41-1-254-7009  Fax: +41-1-251-2504

Newsgroup: comp.windows.x
Document_id: 67408
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Imake-TeX: looking for beta testers

As I announced at the X Technical Conference in January, I would like to
make Imake-TeX, the Imake support for using the TeX typesetting system,
publically available. Currently Imake-TeX is in beta test here at the
computer science department of Dortmund University, and I am looking for
some more beta testers, preferably with different TeX and Imake
installations.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67409
From: marcus@iiasa.ac.at (Marcus SCHNELL)
Subject: Re: Save Under with X11R5

Hans Bos (hans@xelion.nl) wrote:
: I have the following problem on X11R5 servers.
: 
: When a window of my is obscured by a pop up window which has
: the Save Under attribute set, the subwindows of my window are not restored.
: Normally, the subwindows are redrawn when the parent window gets an expose
: event, but because the save under attribute is used for the pop up window
: that obscured my window, no expose event is sent.

We had the same problem and on most of our machines it works if we use
Backing Store instead of Save under.

Marcus

*****************************************************************
*    Marcus Schnell                         marcus@iiasa.ac.at  *
*    International Institute for Applied Systems Analysis IIASA *
*    A-2361 Laxenburg AUSTRIA                                   *
*    Phone   : (+43 2236) 715 21 *487                           *
*    FAX     : (+43 2236) 731 48                                *
*    Vice-Commissioner of the Australian Rules Internet         *
*      Football League (ARIFL) 1992, 1993, ...                  *
*****************************************************************


Newsgroup: comp.windows.x
Document_id: 67410
From: deepak@expert.cc.purdue.edu (Deepak Mulchandani)
Subject: Help in developing a X-Windows interface for GDB

Hi,

  I am trying to write an X-windows based interface that runs on top of GDB. Could 
anyone help me in understanding the way we are supposed to "fork" GDB off as a 
subprocess ?? I currently use pipes but when I try and debug this program, the 
following happens :

PROGRAM :

	main()
	{
           int x;
 

	   printf("enter x : ");
           scanf("%d", &x);
           printf("x = .%d.\n", x );

        }

OUTPUT :

	The program hangs without returning the output of the printf statement. When I type
in a value (like 5), then all the printf's output comes out at one time.


Is there any other way, besides using PIPES to do this i.e., like ioctl or something else ??

Thanks,

Deepak

--------------------------------------------------------------------------------------------
Deepak Mulchandani
Advanced Products Research and Development Laboratory
Motorola, Semiconductor Products Sector
Austin, TX
(512) 928-7642 							     deepak@inxs.sps.mot.com


Newsgroup: comp.windows.x
Document_id: 67411
From: sherman@lea.csc.ncsu.edu (Chris Sherman)
Subject: Re: XV 3.00 has escaped!

In <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:

>Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
>finally escaped.  

It really bums me out that xv went shareware.

 * XV is shareware for PERSONAL USE only.  You may use XV for your own
                       ^^^^^^^^^^^^
                       What does this mean anyway?  Can I sit in a company
                       and look at pictures off the net in my spare time?

 * amusement, and if you find it nifty, useful, generally cool, or of
 * some value to you, your non-deductable donation would be greatly
 * appreciated.  $25 is the suggested donation, though, of course,
 * larger donations are quite welcome.  Folks who donate $25 or more
 * can receive a Real Nice bound copy of the XV manual for no extra
 * charge.
 *
 * Commercial, government, and institutional users MUST register their
 * copies of XV, for the exceedingly REASONABLE price of just $25 per
 * workstation/X terminal.  Site licenses are available for those who
 * wish to run XV on a large number of machines.  Contact the author
 * for more details.

Now since universities are institutions (right?), doesn't this mean that
most everyone in the world is affected by this?  (I don't believe there
are that many running X windows at home yet, relatively speaking).

Can the author legally sell xv?  Xv uses tiff and jpeg code developed
by others.  Did the author get permission to sell these works?  Did
the author also get permission from all the people who contributed to
xv to sell their work as well?

My guess is that now nobody is going to want to help the author
maintain the code anymore now that xv has become a commercial product,
and support for xv will begin to slide downhill.

If this is the case, then that's a bummer.  I really liked xv.

-- 
     ____/     /     /     __  /    _  _/    ____/
    /         /     /     /   /      /     /          Chris Sherman
   /         ___   /        _/      /          /
 _____/   __/   __/   __/ _\    _____/   _____/        sherman@lea.csc.ncsu.edu

Newsgroup: comp.windows.x
Document_id: 67412
From: spang@nbivax.nbi.dk (Karsten Spang)
Subject: Cannot create 24 plane window

    Hello X'ers

I have a problem: I am not able to create a window with 24 bit planes. The
following code illustrates the problem:

#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

main()
{
        Display *display;
        Window win;
        XVisualInfo vinfo;
        Colormap colormap;
        XSetWindowAttributes attributes;
        XEvent event;
        Status status;

        display=XOpenDisplay(NULL);
        status=XMatchVisualInfo(display,DefaultScreen(display),24,TrueColor,
                &vinfo);
        if (!status){
                fprintf(stderr,"Visual not found\n");
                exit(1);
        }
        colormap=XCreateColormap(display,DefaultRootWindow(display),
                vinfo.visual,AllocNone);

        attributes.colormap=colormap;

        win=XCreateWindow(display,DefaultRootWindow(display),0,0,100,100,
                0,24,InputOutput,vinfo.visual,CWColormap,&attributes);
        XMapWindow(display,win);
        for (;;){
                XNextEvent(display,&event);
        }
}

I tried this with an SGI with 24 plane TrueColor server, and with an HP
9000-700 24 plane DirectColor server (with the obviously neccessary change),
both running X11R4. On the client side, I have tried with X11R4 Xlib on
HP 9000-700 and DECstation, and with X11R3 Xlib on DECstation. All the
combinations gave BadMatch error on the CreateWindow request.

As far as I can tell from the manual, the only attribute which may give
a BadMatch, is the colormap, if it belongs to a wrong visual. But the
visual was correctly matched, as I did not get the error message. What
am I doing wrong? For information I can tell that xwud aborts with the
same error.

                                   Karsten
-- 
--------------------------------------------------------------------------------
InterNet:       krs@kampsax.dk                             Karsten Spang
Phone:          +45 36 77 22 23                            Kampsax Data
Fax:            +45 36 77 03 01                            P.O. Box 1142
                                                           DK-2650 Hvidovre
                                                           Denmark

Newsgroup: comp.windows.x
Document_id: 67413
From: lindholm@ucs.ubc.ca (George Lindholm)
Subject: Re: XV 3.00 has escaped!

In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
>No, not another false alarm, not a "It'll certainly be done by *next* week"
>message...  No, this is the real thing.  I repeat, this is *not* a drill!
>
>Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
>finally escaped.  I was cleaning its cage this morning when it overpowered
>me, broke down the office door, and fled the lab.  It was last seen heading
>in the general direction of export.lcs.mit.edu at nearly 30k per second...
>
>If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
>
>Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.

And here is the first patch :-) The following fixes some problems with the
Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
having to use the ucb stuff:

*** 1.1	1993/04/28 06:05:03
--- Imakefile	1993/04/28 08:20:35
***************
*** 209,215 ****
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! 
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
--- 209,218 ----
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! all::
! 	@echo ""
! 	@echo "  Did you remember to 'make depend' first?"
! 	@echo ""
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
***************
*** 222,238 ****
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
     MakeSubdirs($(SUBDIRS))
-    DependSubdirs($(DUBDIRS))
  #endif
  
  
  all::
- 	@echo ""
- 	@echo "  Did you remember to 'make depend' first?"
- 	@echo ""
- 
- all::
  	@echo "  building xv ..."
  	@echo ""
  
--- 225,236 ----
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
+ #  define IHaveSubdirs
     MakeSubdirs($(SUBDIRS))
  #endif
  
  
  all::
  	@echo "  building xv ..."
  	@echo ""
  
***************
*** 259,267 ****
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
- DependTarget()
    
  AllTarget($(PROGRAMS))
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
--- 257,269 ----
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
    
+ 
  AllTarget($(PROGRAMS))
+ DependTarget()
+ #ifdef IHaveSubdirs
+    DependSubdirs($(SUBDIRS))
+ #endif
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 08:19:31
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #if defined(sun) && defined(SYSV)
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(0)
+ #define PAUSE_SIG        sigpause(0)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #if defined(sun) && defined(SYSV)
+ #define random() rand()
+ #define srandom(x) srand(x)
+ #endif
  
  
  
*** 1.1	1993/04/28 06:09:50
--- xcmap.c	1993/04/28 07:09:03
***************
*** 9,15 ****
--- 9,19 ----
  
  /* include files */
  #include <stdio.h>
+ #if defined(sun) && defined(SYSV)
+ #include <string.h>
+ #else
  #include <strings.h>
+ #endif
  #include <ctype.h>
  
  #include <X11/Xos.h>
*** 1.1	1993/04/28 06:17:41
--- tiff/Imakefile	1993/04/28 08:53:34
***************
*** 49,59 ****
--- 49,69 ----
  
  tif_compress.o: Imakefile
  
+ #if HasGcc
  g3states.h: mkg3states.c t4.h
          -${RM} g3states.h
+ 	${CC} -traditional -o mkg3states ${CFLAGS} mkg3states.c
+         ./mkg3states > g3states.h || rm g3states.h
+ #else
+ g3states.h: mkg3states.c t4.h
+         -${RM} g3states.h
          ${CC} -o mkg3states ${CFLAGS} mkg3states.c
          ./mkg3states > g3states.h || rm g3states.h
+ #endif
  
  depend:: g3states.h
  
+ clean::
+ 	-${RM} mkg3states g3states.h
+ 
  DependTarget()
-- 
George Lindholm                                  phone:    (604) 822-4375
University Computing Services, UBC               fax:      (604) 822-5116
6356 Agricultural Road, Vancouver, B.C., Canada  internet: lindholm@ucs.ubc.ca
V6T 1Z2                                          bitnet:   USERGNL@UBCMTSG

Newsgroup: comp.windows.x
Document_id: 67414
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: X-Server documentaion

Where can I get documentation about the X-Server-Internals?
BTW, I'm also interested in documentation about TIGA.

Any hints welcome.

Thanks, rainer.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 67415
From: J.K.Wight@newcastle.ac.UK (Jim Wight)
Subject: Re: MenuButton Widget Question

Scott Evans <server.cs.Virginia.EDU> writes:
> I'm trying to create a button that has both a label and a bitmap using
> the MenuButton widget.  Is this possible?  Right now, all I get is the
> bitmap -- no sign of the label.

That's expected. The first sentence describing the bitmap resource in the
MenuButton section of the "Athena Widget Set - C Language Interface"
documentation states

      bitmap      A bitmap to display instead of the label.

One way round this might be to make use of the button's backgroundPixmap
resource, but remember that you, or a user of your application, won't be able
to set it from a resource file. Also, the button won't automatically be the
size of the bitmap. The bitmap will be tiled if necessary, or you could set the
button's dimensions to match its size.

Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232



Newsgroup: comp.windows.x
Document_id: 67416
From: julian@comp.lancs.ac.uk (Julian G. Self)
Subject: Re: XV 3.00 has escaped!

Wasn't the shareware fee a "suggestion" by John?
Is so then it's up to the individual to make the choice whether or not to
honour it and part with money.  Personally if I was in his position I would
do exactly the same thing, John has obviously put in lot of time and effort
into xv and why shouldn't he receive some money for it.

Just my pennies worth

(Keep up the good work John)


	Julian


-- 
NAME:   Julian G. Self                  PHONE: +44 524 65201 ext 3141
EMAIL:  julian@comp.lancs.ac.uk         FAX:   +44 524 381707
POST:   University of Lancaster, Department of Computing, Engineering Building,
        Bailrigg, Lancaster, Lancashire, LA1 4YR, UNITED KINGDOM.

Newsgroup: comp.windows.x
Document_id: 67417
From: irishjd@nscultrix2.network.com (john d. irish)
Subject: Button sensitivity problem: MOTIF app under OpenWindows

The MOTIF application consists of multiple Transient shells as children 
of a single TopLevel shell:

+-----------+   +---------------+   +----------------+
| AppShell  |---| TopLevelShell |---| TransientShell |
+-----------+   +---------------+ | +----------------+
                                  |
                                  | +----------------+
                                  |-| TransientShell |
                                  | +----------------+
                                  |

While a Transient shell is popped-up, my application modifies the 
sensitivity of a button in the TopLevel shell which is hidden by the 
Transient shell window.  When the Transient shell is popped-down, the 
button sensitivity is correct but the button text remains unchanged 
(i.e., solid/shaded).  Subsequent selection of the button causes the 
text to revert to the correct visual state.

When tracing event messages sent to the application, many of the events 
seen under mwm are not present under OpenWindows.

If anyone has any suggestions or solutions please post or send me mail.
  Thanks!


Newsgroup: comp.windows.x
Document_id: 67418
From: spang@nbivax.nbi.dk (Karsten Spang)
Subject: Re: Cannot create 24 plane window (summary)

In article <1993Apr28.100545.1217@nbivax.nbi.dk>, spang@nbivax.nbi.dk (Karsten Spang) writes:
> I have a problem: I am not able to create a window with 24 bit planes.
> ... gave BadMatch error on the CreateWindow request.
> 
> As far as I can tell from the manual, the only attribute which may give
> a BadMatch, is the colormap, if it belongs to a wrong visual. But the
> visual was correctly matched

I got several answers, the most complete was from Errol Crary 
(errolc@tv.tv.Tek.com):
>I have just looked at the R4 server listings (.../mit/server/dix/window.c )
>and there are several ways in which you can get a BadMatch error, even
>though my O'Reilly book only says "BorderWidth is nonzero for InputOnly".
>
>1- if ((class == InputOnly) && ((bw != 0) || (depth != 0)))
>
>
>2- /* Find out if the depth and visual are acceptable for this Screen */
>
>
>3- if (((vmask & (CWBorderPixmap | CWBorderPixel)) == 0) &&
>    (class != InputOnly) &&
>    (depth != pParent->drawable.depth))
>
>
>4- if (((vmask & CWColormap) == 0) &&
>    (class != InputOnly) &&
>    ((visual != ancwopt->visual) || (ancwopt->colormap == None)))
>
>
>So, 
>case 1 is InputOnly which is not your case;  it seems to be the
>     O'Reilly case.
>Case 2 should not be the case since you got the visual for the screen.
>Case 3 looks suspicious; you are giving no CWBorder... in the attribute
>     mask, and since the visual is not the parent depth, I would suspect you
>     need to supply a border pixel from the new colormap you are going to use
>     for this window.
>Case 4 does not seem to be the problem since you do supply the CWColormap
>     in the attributes.

                             Thanks for your help

                                   Karsten
-- 
--------------------------------------------------------------------------------
InterNet:       krs@kampsax.dk                             Karsten Spang
Phone:          +45 36 77 22 23                            Kampsax Data
Fax:            +45 36 77 03 01                            P.O. Box 1142
                                                           DK-2650 Hvidovre
                                                           Denmark

Newsgroup: comp.windows.x
Document_id: 67419
From: tgl+@cs.cmu.edu (Tom Lane)
Subject: Re: XV 3.00 has escaped!

sherman@lea.csc.ncsu.edu (Chris Sherman) gripes:
> It really bums me out that xv went shareware.

xv's been shareware for about a year ... hadn't you noticed?
I don't have a problem with this.  John Bradley has put a *hell*
of a lot of work into xv, and if he feels that it's time to get
some monetary reward from it, that's surely his right.

> Can the author legally sell xv?  Xv uses tiff and jpeg code developed
> by others.  Did the author get permission to sell these works?

Had you bothered to consult the distribution terms of the IJG JPEG
code (which are right there in the xv distribution), you would have
observed that we specifically grant permission for use in shareware
and commercial software.  Sam Leffler's libtiff copyright also grants
permission for unrestricted use including resale.

> My guess is that now nobody is going to want to help the author
> maintain the code anymore now that xv has become a commercial product,

"Commercial"?  There's a big difference between a polite request
for a voluntary donation and commercial, it's-illegal-to-copy-this-
and-we'll-sic-our-lawyers-on-you software.

I do agree that John's readme file could be a little clearer about
what he means by personal use.

			regards, tom lane
			organizer, Independent JPEG Group

Newsgroup: comp.windows.x
Document_id: 67420
From: oj@world.std.com (Oliver Jones)
Subject: Re: Xlib timeouts?

In article <ccdw.735917051@kudu> ccdw@kudu.ru.ac.za (Dave Wilson) writes:
>I am in the process of modifying an X application that uses Xlib.  I'd
>like to include a timer-driven facility (for network polling)

You have to do the same sorts of things that Xt does with its main loop.
That is, you have to rig up a timer queue, and you have to put a 
select(2) or poll(2) call in your main loop.  You can obtain the 
file descriptor of the X display connection using 
    fd = ConnectionNumber (display);

The functionality of the main loop dispatcher in Xt is quite useful.
The good news is, you can get the source and plagiarize!

Newsgroup: comp.windows.x
Document_id: 67421
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

In article <0frolV200awVI3IV4s@andrew.cmu.edu> "Derrick J. Brashear" <db74+@andrew.cmu.edu> writes:
:
:I got the following today from Gary Risebrough and it worked fine:
:
:Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
:ITO2@aodc.gov.au (554)
:

:> I have :
:> > OpenWindows.KeyboardCommands:   Full
:> > OpenWindows.VirtualGrabKeys :   False
:
:> which seems to work.
:

Where can I find man pages about VirtualGrabKeys resource - it doesn't
show up in my OpenWindows 3.0 man pages...
-- 
:s 
:s Larry W. Virden                 INET: lvirden@cas.org
:s Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614

Newsgroup: comp.windows.x
Document_id: 67422
From: klute@tommy.informatik.uni-dortmund.de (Rainer Klute)
Subject: Re: Imake-TeX: looking for beta testers

In article <1rnodlINNlde@fbi-news.Informatik.Uni-Dortmund.DE>,
klute@tommy.informatik.uni-dortmund.de (Rainer Klute) writes:
|> If ...
|> 
|> a) ...this seems attractive to you,
|> b) ...you are willing to test Imake-TeX and send me a short test
|> report,
|> c) ...you are willing to cope with a rudimentary English documentation
|>    (however, the German version is completed and included),
|> 
|> then you are invited as a beta tester. I am looking forward to your
|> e-mail.

Please don't respond anymore, I have enough beta testers now. Thank you.

-- 
  Dipl.-Inform. Rainer Klute      I R B :  immer richtig beraten
  Univ. Dortmund, IRB
  Postfach 500500         |)|/    Tel.: +49 231 755-4663
D-W4600 Dortmund 50       |\|\    Fax : +49 231 755-2386

  new address after June 30th: Univ. Dortmund, D-44221 Dortmund

Newsgroup: comp.windows.x
Document_id: 67423
From: sysrick@orion.spd.louisville.edu (Rick McTeague)
Subject: Need help with MIT-MAGIC-COOKIE

I'm trying to turn on Xauthorization using MIT-MAGIC-COOKIE on my servers
(CPU heads, HP700RX Xterminals), but I'm running into a couple of problems.

First, at least one of our applications (Maple) doesn't seem to understand 
how to deliver the magic cookie, and won't run on a display with authorization
turned on. 

Second, we have people with client software on remote machines, and I
really don't want to hassle them with having to copy their .Xauthority
file to the remote machine... assuming that the clients there support
Xauthorization.

So, what I would like to do is turn on MIT-MAGIC-COOKIE by default, with
non-privileged users able to turn it off - dropping back to host-based
authorization.

(Yes, I know how to turn it off by changing the Xconfig file for the
heads and the Client Authorize setting for the Xterminals, but
non-privileged users can't do this.)

I've checked with the HP Support Line, and there doesn't appear to be a way.
Can anyone confirm this, or do you know of a way to accomplish what I
want?

BTW, I'm running HPUX 9.0, and Vue 3.0.

Thanks in advance,
Rick
-- 

Rick McTeague
Electrical Engineering Department, Speed Scientific School
University of Louisville, Louisville, KY 40292
(502) 588-7020

Internet: sysrick@starbase.spd.louisville.edu

Disclaimer: I'm a stand-up comedian; if anyone takes me seriously, I'm
            doing something wrong!

Newsgroup: comp.windows.x
Document_id: 67424
From: malik@alvserv-2.dfki.uni-kl.de (Thomas Malik)
Subject: Re: Overriding default WM Behaviour

specify RamdomPlacement (or RandomPlace ? )
in your .tvtwmrc. This places the windows not-interactively
in pseudo - random positions on your screens.

Newsgroup: comp.windows.x
Document_id: 67425
From: dus@dusws1.ctd.ornl.gov (Steinert D A)
Subject: ButtonPress/ButtonRelease events -> multiple clients

How can I capture ButtonPress/ButtonRelease events in multiple clients?
I want to know if the user is still at the display before locking the screen.
I can get  KeyPress/KeyRelease and Pointer motion events, but if the user
is pressing the mouse button in the same location (the mouse doesn't move)
I can't capture the events.  

The O'Reilly Xlib Programming Manual (vol. 1) says on page 252;
   "Only one client can select button events on any one window at one time, 
    due to the grab that automatically takes place."  

Any help would be appreciated.

Deryl Steinert
dus@ornl.gov 

Newsgroup: comp.windows.x
Document_id: 67426
From: snail@lsl.co.uk
Subject: Congruent Corporation. X/Motif on Windows NT

OK, many people emailed me asking for information on Congruent Corporation's
product which allows X/Motif unix applications to function on Windows NT.
Today I was sent a telephone number by a kind person by the name of Sam (I'd
give better attribution, but the mail is in a different application on VMS :-()

The number to call in New York City is (212)431-5100

The email address is info@congruent.com

The product is NTNIX.

Other details I do not know.

They said they'd send me email info, but as yet it has not arrived. More
as I get it. Cheers Folks!
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
Document_id: 67428
From: steve@smartstar.com
Subject: Motif Server for ASCII terminals

Does anyone know of an X server for character cell terminals?
Doesn't have to be anything fancy, as long is it works.

Newsgroup: comp.windows.x
Document_id: 67429
From: snail@lsl.co.uk
Subject: Congruent Corporation. X/Motif more info!

Here follows a headerless (my editing) email message in full (except for the
header) sent to me by congruent corporation today. I received it about 5
minutes ago, and still haven't read it.

Have fun.
-------------------------------------------------------------------------------

Product Overview
	Allows Existing Unix/X Applications to be hosted on Windows NT
	Includes Common X Support Clients
	Supports X Terminals
	Provides Multiuser NT
	Facilitates Porting Unix/X Applications to Window NT
	BSD Behavior
	X Programming Libraries
	
Target Market
	Customers With Unix/X Applications Who Want To Standardize On Windows NT
	Allows Hosting On Windows NT With Minimal Effort
	Permits X Clients On Single Windows NT System To Support Multiple Users
	X Servers Can Be X Terminals, Unix Based, NT Based, Windows Based
	
BSD Library Behavior
	Minimize Unix Porting Effort
	Layered Above Standard C Libraries/WINSOCK
	NT Registry Path/Drive Replacement
	BSD Include File Layout
	True Berkeley Sockets
	Supplies Common BSD Functions Missing From NT

X Programming Libraries
	Complete X.V11R5 Libraries
	Motif Widget Libraries
	Motif UIL
	Registry Based X Configuration Locator
	Direct to Windows GDI via "local socket" winnt:0

X Support Applications
	Includes Full Set Of X Client Applications
	Motif Window Manager (MWM)

Multiuser NT Capabilities
	NtNixTerm: Special Adaptation of Xterm
	Special NT Hosted Command Shell
	Provides LOGNAME, HOME facilities
	Multiple Users on Multiple X Servers Can Simultaneously Access Single NT System

X Terminal Support
	BOOTP to Boot X Terminals
	TFTPD For Font Loading
	Font Server For Scaled X Fonts
	XRemote for Serial SLIP X

info@com.congruent (Congruent Information)
-- 
snail@lsl.co.uk      

"Washing one's hands of the conflict between the powerful and the powerless
 means to side with the powerful, not to be Neutral."
                                                     Quote by Freire.
                                                     Poster by OXFAM.

Newsgroup: comp.windows.x
Document_id: 67430
From: dac@cbnewsf.cb.att.com (david.a.copperman)
Subject: click to focus vs. point to focus?

I am having the problem of ensuring point-to-focus when the mouse
cursor enters a window in my application.  I'm using InterViews,
but that may not matter, this seems to be a generic problem in X.
For example, I use OpenWindows on a Sparc2, with point-to-focus
set, and that generally works, but not always, depending on what
was going on in some window when I move the cursor from one shell
tool window to another.  Or so it seems...

My question, then, is what can I do within X to guarantee point-to-
focus within my application?  Thanks for any response.

Dave

Newsgroup: comp.windows.x
Document_id: 67431
From: lrn@howdy.wustl.edu (Larry Roger Nittler)
Subject: X on amiga 4000

Hi,  there were a couple of articles posted to this group the other
day with the above subject heading.  Unfortunately, they expired 
before I could read them.  I could really use an xterm-like thing    
on my Amiga 4000; could somwone give me any information.
Thanks,
Larry R. Nittler


Newsgroup: comp.windows.x
Document_id: 67432
From: lennart@blade.stack.urc.tue.nl (Lennart Benschop)
Subject: Wanted: diagram drawing program


I am looking for a  program to draw various kinds of diagrams on my Linux
system.

- It must be free.
- It must run on standard (monochrome) X with a small screen size (800x600)
  No motif/openlook etc.
- It must compile under Linux with gcc/g++. Most generic unix software
  works ok.
- It must produce postscript files that I can include into LaTeX documents
  with dvips. Or just tell me another free program that converts one
  of the supported formats to ps.
- It must produce drawings that are larger than the window size (scrollable).

I know of several such programs, idraw, xfig. tgif. I have
no experience with any of them. Features I would like in the programs are.

- ability to draw circles, arcs, straight lines, boxes and arrows.
- support for both dashed and solid line styles for all of these objects.
- support for texts in any size.
- ability to move/copy/resize/rotate any part of the drawing.
- ability to turn any part of the drawing into a library component
  (e.g. a transistor symbol composed of three lines, an arrow and a circle)
- any aid (numeric coordinates, screen grid) to align parts of the drawing.
- less essential, but in fact very handy: preservation of connection.
  If I move one part of the drawing, the lines that connect that part to the
  rest of the drawing, stay connected.

Ideally I want the tool so general and flexible that it is comfortable to
draw electronic schematics, flow charts, logic diagrams, data flow diagrams
and block diagrams with it. 

I just want to know which of the programs offer which of the features on my
whishlist and are there any other programs? How demanding are the programs
with respect to disk space, memory and CPU usage? Are any of the programs
known to work on Linux with monochrome X?

Lennart.

Newsgroup: comp.windows.x
Document_id: 67433
From: Wilfred.Hansen@cs.cmu.EDU
Subject: AIX3.2 version of Andrew 5.1

                          The Andrew Consortium
          of the School of Computer Science at Carnegie Mellon 
                         is pleased to announce

                          AUIS 5.1.1 for AIX3.2
                                 4/26/93

The Andrew User Interface System version 5.1 (our CDrom version) was
developed for AIX  version 3.1 on the IBM RS/6000 and many other
platforms.  To accomodate AIX version 3.2, we have created a patch to
the sources.  The patch and accompanying instructions for its
application can be retrieved at no charge via anonymous-ftp from the
internet host emsworth.andrew.cmu.edu (128.2.45.40) in the directory
./aixpatch.  For those without internet access, a 3.5" diskette can be
ordered for $10 by sending, or faxing, a purchase order to the address
below. 

The base 5.1 system can be ordered from us as a CDrom or ftp'ed from the
same host.

Note that this patch adds no additional functionality but simply allows
AUIS to compile under AIX3.2.

-----------

The Andrew User Interface System (AUIS) is a comprehensive environment
on top of X11 windows in which you can create, use, and mail multi-media
applications and documents.   A major advantage of AUIS is the
capability to recursively embed objects.  Thus, one can edit text that
not only contains multiple fonts, indentation, and other typography, but
also  contains embedded raster images, spreadsheets, drawing editors,
equations, simple animations, and so on. These embedded objects can
themselves contain other objects, including text.

AUIS has three components:

    The Andrew User Environment is an integrated and extensible set
    of applications beginning with the ez text editor, a help
    system, a system monitoring tool, an editor-based shell
    interface, and other editors corresponding to the various
    available types of objects. 

    The Andrew Toolkit (ATK) is a portable, object-oriented
    user-interface toolkit that provides the architecture wherein
    objects can be embedded in one-another.  With the toolkit,
    programmers can create new objects that can be embedded as
    easily as those that come with the system. 

    The Andrew Message System (AMS) provides a multi-media interface
    to mail and bulletin-boards.  AMS supports several mail
    management strategies and implements many advanced  features
    including authentication, return receipts, automatic sorting of
    mail, vote collection and tabulation, enclosures, audit trails
    of related messages, and subscription management. It also
    provides a variety of interfaces that support ttys and
    low-function personal computers in addition to high-function
    workstations. 

The current public release of Andrew, Version 5.1,  includes support for
the new Internet MIME (Multipurpose Internet Mail Extensions) standards
for multipart, multimedia mail.  A newer release, 5.2, for members of
the Andrew Consortium has numerous additional features including new
editors for drawings, images, fonts, and user preferences.


Remote Andrew Demo Service

You can try out Andrew from your own work station via the Remote Andrew
Demo Service.  You need a host machine on the Internet running the X11
window system.  You'll be able to compose multimedia documents, navigate
through the interactive Andrew Tour, and use the Andrew Message System
to browse through a few of CMU's four thousand bulletin boards and
newsgroups.

To get started with the Remote Andrew Demo service, simply run the
following command on your machine:

	finger help@atk.itc.cmu.edu

The service will give you further instructions.   


More information about Andrew is available from:

    Information Requests
    Andrew Consortium
    Carnegie Mellon University
    Smith Hall 106
    5000 Forbes Avenue
    Pittsburgh, PA 15213-3890
    USA
    phone: +1-412-268-6710
    fax: +1-412-682-6938
    info-andrew-request@andrew.cmu.edu

Contact info-andrew-request@andrew.cmu.edu for additional information.  


Newsgroup: comp.windows.x
Document_id: 67435
From: skelley@umiacs.umd.edu (Stephen Kelley)
Subject: X11R5 vs X11R4 Configure Event Handling

REPOST:

I have two questions (well probably more...) about how Expose & Configure
events are handled.

I have an appl. which uses 1 window to draw in.  Since I give the user the
capability of scaling and zooming as well as allowing the window to be
resized, I made a translation table for the Expose & Configure events.
The Expose event calls my redraw method while the Configure event
calls my rescale method.  The rescale method invokes a "fake" Expose
event (actually just calls the redraw w/ an appropriate Expose struct)
to draw the data.

Quest 1.
When the appl. is compiled/linked w/ R4 (running in either R4 or R5 env.)
I get multiple (>4) redraws when the window gets uncovered or the size
is changed.  I assume I'm getting cascading events.  Is that right?
Any suggestions as to how to handle/trap events in a better way?

Quest 2.
When the appl. is compiled/linked w/ R5 I get no Expose events
whatsoever.  Do events and/or translation tables act differently in R5?

Thanks in advance



-- 
====================================================================================
Steve Kelley	UMCP CS/UMIACS			Captain, I protest!
		skelley@umiacs.umd.edu		I am *NOT* a merry man! - Worf

Newsgroup: comp.windows.x
Document_id: 67436
From: mmc@cs.rit.edu (Mahendra M Chheda)
Subject: Print from within an application

Hi,

I have an application which draws graphs, bar charts etc. I need to include
print support for these from within my application i.e. a user can print
the graphs from within the applictaion by clicking on a print button. I am 
not sure if I can invoke xwd & xpr from within my application and specify
the window id to get my window dump and then send this file for printing or 
if there are other ways of doing this. I would appreciate any help in this 
regard. Thanx.

	- Mahendra.

PS : Please mail your replies to me as I am not a regular reader of this 
news group. I will post a summary if there is sufficient interest.

-- 

***************************************************************************
	Mahendra Chheda			#
	mmc@cs.rit.edu			#
	mmc7274@ritvax.isc.rit.edu	#
					#
	Office :			#	Residence :
	Dept. of Computer Science	#	440 Kimball Drive
	Rochester Institute of Tech.	#	Rochester, NY 14623
	Tel. 716-475-2079		#	Tel. 716-292-5726
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 67437
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscribe

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
Document_id: 67438
From: david@pop (David E. Smyth)
Subject: Re: Looking For David E. Smyth

Christian.Mollard@ec.bull.fr writes:
>zvi@nynexst.com (Zvi Guter) writes:
>
>>The author of Wcl (or the current care taker). His is the only name I found
>>in the dist tree. I have tried to mail him at: David.Smyth@ap.mchp.sni.de,
>>but the mail bounced back.
>>Any help in finding him will be greatly appreciated.
>
>Try
>	david@ap542.uucp
>	david%ap542@ztivax.siemens.com

Nope, here I am:	david@jpl-devvax.jpl.nasa.gov

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6193 (do NOT use v-mail yet!)
CCCP, X and Object Guru.		office: 525/C165
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
	"That Sun Windows thingy, what's it called?  You know, its
	really awful.  X?  Motif?  That's it - Motif! Yuck!"
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67439
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscrive

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
Document_id: 67440
From: kelsey@mdd.comm.mot.com (Joe Kelsey)
Subject: Re: XV 3.00 has escaped!

In <1rmhiuINNh2a@skeena.ucs.ubc.ca> lindholm@ucs.ubc.ca (George Lindholm) writes:
>In article <1rlhhkINNg62@skeena.ucs.ubc.ca>, lindholm@ucs.ubc.ca (George Lindholm) writes:
>> In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
>> And here is the first patch :-) The following fixes some problems with the
>> Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
>> having to use the ucb stuff:

>Oops, I didn't get the signal processing right (thats what I get from doing
>the work on an ascii terminal). Here is the fixed patch:

The patches for xv.h need to use ``#ifdef SVR4'' rather than the
overly complex ``#if defined(sun) && defined(SYSV)'' in order to
generically compile XV on i386SVR4Architecture.  Also, rand and srand
don't work very well--use lrand48 and seed48 to get better results.
Otherwise, xv-3.00 compiles just fine on my Esix System V 4.0.4 box
with XFree86 and gcc-2.3.3.  I just uncommented the gcc definition in
the Makefile, added -L/usr/X386/lib -I/usr/X386/include to the COPTS
line and modified LIBS to include -lsocket -lnsl.  Really John, if you
just use the Imakefile things like this don't even have to get
mentioned...

*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 17:47:38
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #ifdef SVR4
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(SIGALRM)
+ #define PAUSE_SIG        sigpause(SIGALRM)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #ifdef SVR4
+ #define random lrand48
+ #define srandom seed48
+ #endif
  
  

Newsgroup: comp.windows.x
Document_id: 67441
From: bingle@cs.purdue.edu (Richard Bingle)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk> julian@comp.lancs.ac.uk (Julian G. Self) writes:

   Wasn't the shareware fee a "suggestion" by John?
   Is so then it's up to the individual to make the choice whether or not to
   honour it and part with money.  Personally if I was in his position I would
   do exactly the same thing, John has obviously put in lot of time and effort
   into xv and why shouldn't he receive some money for it.

It is interesting to look at the change(s) of mind that John has had.

The AUTHOR file for xgif (an early incarnation of xv) reads (in part) 
as follows...

  Do whatever you want with this program, though it *would* be nice if my name
  remained on it somewhere...  Other than that, it may be freely modified,
  distributed, and used to fill up disk space.

The README file for xv 1.00 (?) reads (in part) as follows...

  NOTE:  If you like the program and decide to use it, *please* send me a short
  email message to that effect.  Be sure to mention the full name of your
  organization.  When our sponsors ask us 'what have you been doing', it would
  be most handy to be able to come up with a nice long list of organizations
  that are using code developed in the GRASP Lab.  Brownie points, as
  it were.

The copyright notices as it appeared then was...

  /*
   * Copyright 1989, 1990 by the University of Pennsylvania
   *
   * Permission to use, copy, and distribute for non-commercial purposes,
   * is hereby granted without fee, providing that the above copyright
   * notice appear in all copies and that both the copyright notice and this
   * permission notice appear in supporting documentation.
   *
   * The software may be modified for your own purposes, but modified versions
   * may not be distributed.
   *
   * This software is provided "as is" without any express or implied warranty.
   */

The README file for xv 2.00 reads (in part) as follows...

  Also, if you find XV to be nifty, useful, generally 'cool', and of
  some value to you, your donation (not tax-deductable) would be greatly
  appreciated.  $10 (U.S.) is probably a fine amount to donate.
  Folks who donate $25 and up will receive a nice, bound copy of the XV Manual
  printed on a spiffo 600-dpi laser printer.  It'll look lovely mounted over
  your fireplace.

Which looks to me as a suggestion (see Julian's comment above).

The copyright notices as it appeared then was...

  * Copyright 1989, 1990, 1991, 1992 by John Bradley and
  *                       The University of Pennsylvania

The README for xv 3.00 reads (in part) as follows...

  XV is shareware for PERSONAL USE only.  You may use XV for your own
  amusement, and if you find it nifty, useful, generally cool, or of
  some value to you, your non-deductable donation would be greatly
  appreciated.  $25 is the suggested donation, though, of course,
  larger donations are quite welcome.  Folks who donate $25 or more
  can receive a printed, bound copy of the XV manual for no extra
  charge.  If you want one, just ask.  BE SURE TO SPECIFY THE VERSION
  OF XV THAT YOU ARE USING!

  Commercial, government, and institutional users MUST register their
  copies of XV, for the exceedingly REASONABLE price of just $25 per
  workstation/X terminal.  Site licenses are available for those who
  wish to run XV on a large number of machines.  Contact the author
  for more details.

The second paragraph to me says that universities MUST register and
pay (a potentially) large sum of money.

The copyright notices now read...

  * Copyright 1989, 1990, 1991, 1992, 1993 by John Bradley

Was this developed on upenn's time/equipment?  What do they, and the
GRASP lab mentioned above, have to say about all this?

Richard Bingle                                             bingle@cs.purdue.edu
Dept. of Computer Sciences                             {backbone}!purdue!bingle
Purdue University                                                (317) 494-0893
West Lafayette, IN 47907-1398

Newsgroup: comp.windows.x
Document_id: 67442
From: a93xaEPS@gsd.harvard.edu (Evan Smyth)
Subject: Re: How to mask the left button?

One way to "mask" the left button check the contents of the XEvent that the
XAddEventHandler send to your event_handling function (in your case, it is the
show_mouse_position function. 

If the XEvent arrive in this function as 

XEvent p_event;

then, the value of p_event->xbutton.button is the button that was pressed. So, 
you just do a switch on that value in order to distinguish between them. In case
it was not clear p_event->xevent.button is an int. 

By the way, you mentioned the Button1MotionMask and if anyone can help me with 
these MotionMasks I would be grateful. I can not figure out how do distinguish
between motions by which button is pressed as the motion is occurring. In 
essence I would like an seperate event-handler for motion with each button. 
Unfortunately, the XEvent sent by a MotionMask does not seem to contain the 
value of the pressed button.

Any ideas,
eps

Newsgroup: comp.windows.x
Document_id: 67443
From: mattf@cac.washington.edu (Matthew Freedman)
Subject: Non-Roman Font Availability

Can anybody tell me anything about the availibility of non-Roman fonts
for X-Windows? Especially Unicode and/or han idiographic fonts.

Also, how about conversion tools for getting PC/Macintosh fonts into a
format suitable for X? I would assume it is not too difficult for
bitmap fonts.

The FAQ's for this group and comp.fonts are not very helpful on these
questions. 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
= Matthew M. Freedman                                                 =
= U. of Washington Information Systems       mattf@cac.washington.edu =
= 4545 15th Ave. NE; 3rd Floor               (206) 543-5593           =
= Seattle, WA  98105                                                  =
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Newsgroup: comp.windows.x
Document_id: 67444
From: lindholm@ucs.ubc.ca (George Lindholm)
Subject: Re: XV 3.00 has escaped!

In article <1rlhhkINNg62@skeena.ucs.ubc.ca>, lindholm@ucs.ubc.ca (George Lindholm) writes:
> In article <123645@netnews.upenn.edu> bradley@grip.cis.upenn.edu (John Bradley) writes:
> >No, not another false alarm, not a "It'll certainly be done by *next* week"
> >message...  No, this is the real thing.  I repeat, this is *not* a drill!
> >
> >Batten down the hatches, hide the women, and lock up the cows, XV 3.00 has
> >finally escaped.  I was cleaning its cage this morning when it overpowered
> >me, broke down the office door, and fled the lab.  It was last seen heading
> >in the general direction of export.lcs.mit.edu at nearly 30k per second...
> >
> >If found, it answers to the name of 'contrib/xv-3.00.tar.Z'.
> >
> >Have a blast.  I'm off to the vacation capital of the U.S.:  Waco, Texas.
> 
> And here is the first patch :-) The following fixes some problems with the
> Imakefile files and makes it possible to compile xv-3.00 under Solaris without 
> having to use the ucb stuff:

Oops, I didn't get the signal processing right (thats what I get from doing
the work on an ascii terminal). Here is the fixed patch:

*** 1.1	1993/04/28 06:05:03
--- Imakefile	1993/04/28 08:20:35
***************
*** 209,215 ****
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! 
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
--- 209,218 ----
  OBJS4=	xcmap.o
  
  PROGRAMS= xv bggen vdcomp xcmap
! all::
! 	@echo ""
! 	@echo "  Did you remember to 'make depend' first?"
! 	@echo ""
  
  #if defined(HaveJpeg) || defined(HaveTiff)
  #  ifdef HaveJpeg
***************
*** 222,238 ****
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
     MakeSubdirs($(SUBDIRS))
-    DependSubdirs($(DUBDIRS))
  #endif
  
  
  all::
- 	@echo ""
- 	@echo "  Did you remember to 'make depend' first?"
- 	@echo ""
- 
- all::
  	@echo "  building xv ..."
  	@echo ""
  
--- 225,236 ----
       SUBDIRS = tiff
  #  endif
  #  define PassCDebugFlags
+ #  define IHaveSubdirs
     MakeSubdirs($(SUBDIRS))
  #endif
  
  
  all::
  	@echo "  building xv ..."
  	@echo ""
  
***************
*** 259,267 ****
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
- DependTarget()
    
  AllTarget($(PROGRAMS))
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
--- 257,269 ----
  
  
  SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
    
+ 
  AllTarget($(PROGRAMS))
+ DependTarget()
+ #ifdef IHaveSubdirs
+    DependSubdirs($(SUBDIRS))
+ #endif
  
  NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
*** 1.1	1993/04/28 06:09:50
--- xcmap.c	1993/04/28 07:09:03
***************
*** 9,15 ****
--- 9,19 ----
  
  /* include files */
  #include <stdio.h>
+ #if defined(sun) && defined(SYSV)
+ #include <string.h>
+ #else
  #include <strings.h>
+ #endif
  #include <ctype.h>
  
  #include <X11/Xos.h>
*** 1.1	1993/04/28 08:33:13
--- xv.h	1993/04/28 17:47:38
***************
*** 284,292 ****
--- 284,298 ----
  
  
  /* signal macros */
+ #if defined(sun) && defined(SYSV)
+ #define HOLD_SIG         sighold(SIGALRM)
+ #define RELEASE_SIG      sigrelse(SIGALRM)
+ #define PAUSE_SIG        sigpause(SIGALRM)
+ #else
  #define HOLD_SIG         sigblock(sigmask(SIGALRM))
  #define RELEASE_SIG      sigblock(0)
  #define PAUSE_SIG        sigpause(0)
+ #endif
  
  
  /* default for most folks */
***************
*** 318,323 ****
--- 324,333 ----
  #define random  rand
  #define srandom srand
  #endif
+ #if defined(sun) && defined(SYSV)
+ #define random() rand()
+ #define srandom(x) srand(x)
+ #endif
  
  
  
*** 1.1	1993/04/28 06:17:41
--- tiff/Imakefile	1993/04/28 08:53:34
***************
*** 49,59 ****
--- 49,69 ----
  
  tif_compress.o: Imakefile
  
+ #if HasGcc
  g3states.h: mkg3states.c t4.h
          -${RM} g3states.h
+ 	${CC} -traditional -o mkg3states ${CFLAGS} mkg3states.c
+         ./mkg3states > g3states.h || rm g3states.h
+ #else
+ g3states.h: mkg3states.c t4.h
+         -${RM} g3states.h
          ${CC} -o mkg3states ${CFLAGS} mkg3states.c
          ./mkg3states > g3states.h || rm g3states.h
+ #endif
  
  depend:: g3states.h
  
+ clean::
+ 	-${RM} mkg3states g3states.h
+ 
  DependTarget()

Newsgroup: comp.windows.x
Document_id: 67445
From: Rick Miller <rick@ee.uwm.edu>
Subject: X-Face?

I'm not familiar at all with the format of these "X-Face:" thingies, but
after seeing them in some folks' headers, I've *got* to *see* them (and
maybe make one of my own)!

I've got "dpg-view" on my Linux box (which displays "uncompressed X-Faces")
and I've managed to compile [un]compface too... but now that I'm *looking*
for them, I can't seem to find any X-Face:'s in anyones news headers!  :-(

Could you, would you, please send me your "X-Face:" header?

I *know* I'll probably get a little swamped, but I can handle it.

	...I hope.

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
Document_id: 67446
From: bkilgore@ips.iacd.honeywell.com (Bruce Kilgore)
Subject: RE: X-Server documentation


> 
> Where can I get documentation about the X-Server-Internals?
> BTW, I'm also interested in documentation about TIGA.
> 
> Any hints welcome.
> 
> Thanks, rainer.
> 
> -- 
> Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
> ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
> Penzingerstr. 76                 |
> A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.a
> 

The only book I know of is :
	"The X Window System Server - X Version 11, Release 5"
	by Elias Israel / Erik Fortune
	Digital Press  Copyright 1992
	Order number EY-L518E-DP
	DP ISBN 1-55558-096-3
	PH ISBN 0-13-972753-1

But if there are any more, please post/email me the names.


--


-- bkilgore



   Thus spake the master programmer:
       "After three days without programming,
           life becomes meaningless."
              - Geoffrey James "The Tao of Programming"

 ------------------------------------------------------
|     Disclaimer: Any and *ALL* opinions are mine!     |
|------------------------------------------------------|
| William Bruce Kilgore                                |
| email  bkilgore@ws15.ips.iacd.honeywell.com          |
| phone  (602) 436-4837  or  (602) 436-4866            |
| smail  16404 N Black Canyon HWY, Phoenix Az 85023    |
 ------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67447
From: neal@fuentez.COM (Neal Norwitz)
Subject: Getting OPENBUGS for Motif 1.2

Hello!!!

The title just about says it all.

I need a list of the bugs for Motif 1.2.

Thanks,
Neal


Newsgroup: comp.windows.x
Document_id: 67448
From: swalker@bbn.com (Susan Walker)
Subject: XmTextField truncation with LANG bug(???)

I have found a situation which I think is a bug in X or Motif, but I'm hoping
is really just a mistake on my part.  Does anyone know anything about
this problem........

- I am using an XmTextField, and setting its XmNvalue to a hardcoded
  text string (ascii or Kanji) either via XtSetValues or XmTextSetString.
  The problem is that when the XmTextField is displayed, the text is getting
  truncated, depending on the setting of the environment variables
  LANG (more specifically LC_ALL).  When they are set to japanese,
  the text gets truncated.  When they are set to english, everything
  works fine.  I am taking the default for XmNcolumns.
  (Please note that hardcoding of text is NOT done in my actual
   application, just in my sample code to make things easier)
	
- I am running Motif 1.2, X11R5 via HPUX9.01.  My test program is set up
  to handle 16 bit Kanji characters.  I have remembered to do   
  XtSetLanguageProc() prior to my MrmInitialize and my font resources
  are set to japanese fonts.

- Don't know if this matters, but my dialog box and TextField is initially
  created with UIL. 


The problem does NOT happen with XmText.  Unfortunately substituting
XmTextFields with XmTexts in my application is not an acceptable
alternative (way too much code to be modified while in beta!)

I have a small test program which illustrates the problem if anyone
wants it.  My best guess is that either the X code or Motif is not
properly allocating memory for japanese, but since I don't have the
source to look at it is just a guess.

Please let me know if this sounds familiar, or if you have a suggestion,
or if you want the sample program.

THANKS!!!!!!!!

- Susan 

  swalker@bbn.com
  617-873-8190


Newsgroup: comp.windows.x
Document_id: 67449
From: smarks@trantor.Eng.Sun.COM (Stuart Marks)
Subject: Re: Xt intrinsics: slow popups

In article <1993Apr20.114824.9110@alex.com>, bryan@alex.com (Bryan Boreham) writes:
|> 
|> The shell is waiting for the window-manager to respond to its
|> positioning request.  The window-manager is not responding because
|> it thinks the window is already in the right place.
|> 
|> Exactly *why* the two components get into this sulk is unclear to
|> me; all information greatly received.

This problem is caused by a bad interaction between the way olwm reparents
windows, a misfeature of the X protocol, and a bug in the Xt intrinsics.  

The Intrinsics bug is that it ignores the (x,y) position given in
ReparentNotify events.  Olwm is structured in such a way that, when a window
is popped down, the last event the client receives is a ReparentNotify event. 
At this point, the Intrinsics' notion of the shell's location is out of date.

If a SetValues is done using the same (x,y) position, the Intrinsics thinks it
needs to move the shell, so it issues a ConfigureWindow request to move it
there.  However, a (mis)feature of the X protocol is that a ConfigureWindow
request that has no effect will generate no ConfigureNotify event.  The
Intrinsics thus waits for an event that will never arrive, and times out after
wmTimeout has expired.  (Actually, things are somewhat more complex because
the request is redirected to the window manager, but the net result is the
same.)

The solution is for the Intrinsics to note the (x,y) positioning information
in ReparentNotify events.  This has been implemented and is available in X11R5
public fix 20.  This is XBUG 5513 for those of you who are interested in
gorier details.

s'marks

-- 
Stuart W. Marks				stuart.marks@eng.sun.com
Window Systems Technology		2550 Garcia Ave. M/S 21-228
SunSoft, Inc.				Mountain View, CA 94043

Newsgroup: comp.windows.x
Document_id: 67450
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: XView 3.0 window positioning problems

I don't seem to be able to get window positions reliably through
the XView xv_get() function:

   x = (int) xv_get(my_frame, XV_X);
   y = (int) xv_get(my_frame, XV_Y);

For example, if I set XV_X & XV_Y to 50,50 the frame comes up
in the correct position, with the top left corner (the size
handle) at 50,50. xv_get() returns 50,50 as well. But later on
xv_get() returns 5,25 without any intervening xv_set(my_frame,
XV_?). My frame is fitted around a canvas, and it turns out
(by measuring on the screen) that 5,25 is the position of the
first pixel in my canvas relative to the frame's origin. What
gives? Any help most appreciated!

Derek

P.S. On a related subject, is there any way of querying the
window manager as to the thickness of borders it puts around
frames, etc.?

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67452
From: pjs@euclid.JPL.NASA.GOV (Peter J. Scott)
Subject: Re: XV 3.00 has escaped!

I've found that I have to add the "-8" option for displaying JPEGs
with the new version.  For some reason, if I don't, it goes into
24-bit mode and the resulting image is displayed with 216 colors 
(from a 6x6x6 array) instead of 256 and looks grainier.  Since I'm
on the ubiquitous 8-bit pseudo color display I would have thought it
could tell that.

-- 
This is news.  This is your       |    Peter Scott, NASA/JPL/Caltech
brain on news.  Any questions?    |    (pjs@euclid.jpl.nasa.gov)

Newsgroup: comp.windows.x
Document_id: 67453
From: colinm@max.carleton.ca (Colin McFadyen)
Subject: X11R5 support for 386i GX??

  Does X11R5 support the graphics accelerator board
in the Sun 386i????

Thanks in advance.

Colin.


Newsgroup: comp.windows.x
Document_id: 67454
From: panguyen@vela.acs.oakland.edu (panguyen)
Subject: REPOST: COSE-GUI

 
  
this is a repost... I like to find out more about this also...

*** Message Part 2: Text ****************************************
The COSE announcement specifies that Motif will become the common
GUI. But what does this mean exactly?
 
- Do they mean that all "COSE-complient" apps will have the Motif
  look and feel?
 
- Do they mean that all "COSE-complient" apps will use the Motif
  toolkit API?
 
- Do they mean both of the above?
 
- Is it possible that there will be a Motif-API complient toolkit with
  an OpenLook Look & Feel?
 
- How about an OLIT/XView/OI/Interviews API toolkit with a Motif L & F?
  (I know OI already does this, but will this be considered COSE-complient?)
 
- Will there be more than one "standard" toolkit API or L & F supported?
 
- How does using ToolTalk fit in with Motif?
 
This is my attempt to start a discussion in order to pull as much
knowledge about these questions off the net... Feel free to e-mail
or followup.
 
--
--------------------------------------------------------------------
-- Gil Tene "Some days it just doesn't pay     -
-- devil@imp.HellNet.org    to go to sleep in the morning." -
-- devil@diablery.10A.com     -
--------------------------------------------------------------------
 



Newsgroup: comp.windows.x
Document_id: 67455
From: ktz@lrs.e-technik.uni-erlangen.de (Martin Kreutzer)
Subject: Problem with German keyboard on a Sparc10

Yesterday I changed the US-Keyboard of my Sparc10 with a german keyboard.
And now I cannot get any "Alt Graph" characters ('tilde' usw.).
When I exit from X I can get the characters, but not under X.

Can anybody give me some hints, where to check for the correct installation
of the keyboard.

Martin Kreutzer


Newsgroup: comp.windows.x
Document_id: 67456
From: gerben@rna.indiv.nluug.nl
Subject: What is second best?

Answers please by e-mail, since not all groups in the header are carried here.

Hi!

Personally, I like NeXTSTEP very much. Even more when I realise how much a  
burden ordinary X or Windows programming is. I also like Objective-C better  
than I like C++.

But, sometimes the restrictions are there. For instance it sometimes has to be  
MS-Windows or X. Now I'm looking for pointers to tools on those environments  
that come close to NeXTSTEP, the appkit etc. Also, environs that support rapid  
prototyping (like with IB) without producing spaghetti-code as soon as you want  
to do real work.

Maybe STEPSTONE with some Windows version of a kit of UI objects? Interviews  
(what it is exactly, I don't know. I kind of lost touch with that world when I  
started with NeXTSTEP.)

Thanks,

-- 
Gerben Wierda    [NeRD:7539]        Tel. (+31) 35 833539
  "If you don't know where you are going, any road will 
  take you there." From the Talmud(?), rephrased in 
  Lewis Carroll, "Alice in Wonderland".

Newsgroup: comp.windows.x
Document_id: 67457
From: smeets@speedy.cci.de (Vincent Smeets)
Subject: Sun 3/80 with SunOS 4.0.3 as X-Terminal

At the moment, I am using a Sun 3/80 (cgfour/bwtwo) with SunOS 4.0.3
and OpenWindows 2.0.

This configuration is slow and I can't run all the programs on OW2. For
example, when I start a mailtool from OW3 and display it on my OW2
display, I can't open the compose window.

I want to install an X11R5 or X11R4 server on my Sun and use xdm (yes,
we have xdm already running for other X-Terminals) to log in and start
the X programs.

Is there a "ready to go" binairy of the X11 server for my configuration
(I have read something about Xsun), or must I compile the X11 stuff by
myself?

Any help is welcome

	V. Smeets

-- 
--	Vincent Smeets			Competence Center Informatik GmbH
--	smeets@cci.de			Software Engineering / Ada
--	whois VS36			4470 Meppen, Germany

Newsgroup: comp.windows.x
Document_id: 67458
From: deford@netwrx1.NW1.COM (Brian DeFord)
Subject: preventing user from hitting CTRL-ALT-BKSP to exit X

Hello,

	I am admin for an RS/6000 running AIX 3.2, X11R5, Motif, and xdt3.
	I want to prevent the user from hitting CNTL-ALT-BKSPC to exit X.
	
	I've tried invoking X with 'xinit -T', but that doesn't work.
	xinit appends the -T to the call to .xinitrc, and not to the
	call to X.  

	The man page to xinit is no help.  In fact, it tells
	me that xinit is a script when it is really a binary file.  

	So far, the only way I've been able to accomplish this feat is
	to add the -T to the call to X in /usr/lpp/X11/defaults/xserverrc.
	I would rather not do it this way.  Does anyone have any other ideas?

 
------------------------------------------------------------------------
  Brian DeFord				Internet: deford@netwrx1.nw1.com	
  Open Networks, Inc.			Usenet:   uunet!netwrx1!deford
  11490 Commerce Park Dr. #205		Tel:      703-648-0013
  Reston, VA 22091			FAX:      703-648-0016

	
























I want to prevent the 

Newsgroup: comp.windows.x
Document_id: 67459
From: muller@mafalda.inria.fr (Christophe Muller)
Subject: Re: XV 3.00 has escaped!


> It is interesting to look at the change(s) of mind that John has had.

Very interested indeed! This is against this kind of "changes" that the GNU
COPYLEFT is protecting us.

Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
shows because of its "-loop" feature that display does not have (display
from the *wonderful* ImageMagick package! :-D), but I think I will implement
it myself (even a shell-script should do the job) and forget xv.

Cheers,
Christophe.
-- muller@simulog.fr

     =    Are you the police?  --  No ma'am, we're musicians.    =

Newsgroup: comp.windows.x
Document_id: 67460
From: dlemoin@xobu.nswc.navy.mil (D. lemoine)
Subject: Colormap Problem

I am saving an image on one machine and redisplaying the image on
another machine (both are HP 9000 Model 750s).  The image is created
using XCreateImage and XGetImage and displayed with XPutImage.  The
image is redisplayed correctly except that the colors are wrong because
the server on the other machine is using a different colormap.

I tried saving the colormap (pixel and rgb values) and on the redisplay,
performed a table lookup against the new colormap.  This didn't work
because some rgb combos don't exist in the new colormap.

Is there a way to force the server to load colors into set pixel values, or
is there a simpler way to solve this problem?  I tried using xinitcolormap
but couldn't get that to work either.

Any help would be appreciated.

--------------------------------------
Don Lemoine
Naval Surface Warfare Center
Dahlgren Division
Dahlgren, VA 22405
(703)663-7917
dlemoin@xobu.nswc.navy.mil


Newsgroup: comp.windows.x
Document_id: 67461
From: apara@ctp.com (Atul Parasnis)
Subject: DCE RPC, Threads, X/Motif Clients


	Has anyone used DCE threads with an X Client?
	Is it possible to have one thread listening for incoming RPCs
	while another processes X Events? How do you set something
	like this up?
					_ Atul
					(apara@ctp.com)

				

Newsgroup: comp.windows.x
Document_id: 67462
From: sinclair@dcs.glasgow.ac.uk (Duncan Sinclair)
Subject: Glasgow RX - remote execution of X programs, Part01/01

[[ I posted this a few weeks back, but all I got back was an error
   message "pnews: /dev/null: Permission denied".  Yep, /dev/null
   had a mode of 600.  (Arrghhh!!)  ]]

With renewed interest in "setting the DISPLAY variable", etc.. I
thought I would post my contribution.

This Perl script is my solution.  It trys to be intelligent about
what it's doing so that you should be able to type "rx host.domain.etc",
and get a xterm running on "host.domain.etc", with all the difficult
stuff taken care of.

In theory, this program can do *everything* you ever wanted to do
when you wanted to run a remote command in the background - it
doesn't even need to be an X program.  Try a "rx big-machine make"
for instance, for a backgrounded make on the remote "big-machine".

For more details and a full list of features read the README file,
about 20 lines below...  All comments welcome.

Duncan.



#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 1)."
# Contents:  README Imakefile MANIFEST Makefile rx.man rx.pl
# Wrapped by sinclair@dcs.gla.ac.uk on Thu Apr  8 18:47:48 1993
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(1442 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X
X   Glasgow RX - remote execution of X programs.  Version 3.1.7
X
XCopyright 1992 Duncan Sinclair <sinclair@dcs.gla.ac.uk>
X
XTrivial to install, but there's an Imakefile to make it even more trivial.
X
XThe perl script needs some customisation before it is installed, just
Xedit the "rx.pl" file, and read the comments.  Once you've done
Xthis you can "xmkmf", then "make install install.man".
X
XFEATURES:
X
X*) Does the right thing for off-site remote execution.  Including
X   setting up $DISPLAY to include domain names, and passing
X   magic cookies, or doing the "xhost" stuff.
X
X*) Allow different remote user name.  (rx -l user host ...)
X
X*) Smart quoting of arguments - makes passing wild-cards easy.
X
X*) Custom command execution - link it to "remacs" to get a remote
X   emacs command.
X
X*) Automatic xterm options - names the xterm according to hostname,
X   and turns on "login shell".
X
X*) Default command is xterm.
X
X*) Propagates X-ish env. variables to remote session - user may
X   extend the list of variables to pass.
X
X*) Special handling for bourne shell users.
X
X*) Tries to do remote execution from same directory as local.
X   That is, it propagates $PWD, in an intelligent manner.
X
X*) Logs errors in a file.
X
X*) Overall Intelligence (TM) - makes reasoned decisions about what
X   you are trying to do, and tries to "do the right thing".
X
X*) Written in Perl, for portability and hackability.
X
XFor more info, read the man page or the source.
X
END_OF_FILE
if test 1442 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'Imakefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Imakefile'\"
else
echo shar: Extracting \"'Imakefile'\" \(370 characters\)
sed "s/^X//" >'Imakefile' <<'END_OF_FILE'
X# Glasgow RX Imakefile.
X
X         PROGRAMS = rx
X
Xall:: $(PROGRAMS)
X
Xinstall:: safe
X
XInstallNamedProg(rx.pl,rx,$(BINDIR))
XInstallManPage(rx,$(MANDIR))
X
Xinstall::
X	$(RM) $(BINDIR)/rxterm
X	$(LN) $(BINDIR)/rx $(BINDIR)/rxterm
X
Xsafe:
X	@grep -s 'debug = 0' rx.pl || false
X
Xshar: safe
X	makekit -m -p
X	@-perl -pi -e "s/sinclair@dcs.gla.ac.uk/sinclair@dcs.gla.ac.uk/;" Part*
X
END_OF_FILE
if test 370 -ne `wc -c <'Imakefile'`; then
    echo shar: \"'Imakefile'\" unpacked with wrong size!
fi
# end of 'Imakefile'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(313 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X README                     1	Read me first
X Imakefile                  1	
X MANIFEST                   1	This shipping list
X Makefile                   1	
X rx.man                     1	
X rx.pl                      1	
END_OF_FILE
if test 313 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Makefile'\"
else
echo shar: Extracting \"'Makefile'\" \(10172 characters\)
sed "s/^X//" >'Makefile' <<'END_OF_FILE'
X# Makefile generated by imake - do not edit!
X# $XConsortium: imake.c,v 1.65 91/07/25 17:50:17 rws Exp $
X#
X# The cpp used on this machine replaces all newlines and multiple tabs and
X# spaces in a macro expansion with a single space.  Imake tries to compensate
X# for this, but is not always successful.
X#
X
X# -------------------------------------------------------------------------
X# Makefile generated from "Imake.tmpl" and </tmp/IIf.a04196>
X# $XConsortium: Imake.tmpl,v 1.139 91/09/16 08:52:48 rws Exp $
X#
X# Platform-specific parameters may be set in the appropriate <vendor>.cf
X# configuration files.  Site-specific parameters should be set in the file
X# site.def.  Full rebuilds are recommended if any parameters are changed.
X#
X# If your C preprocessor does not define any unique symbols, you will need
X# to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
X# "make World" the first time).
X#
X
X# -------------------------------------------------------------------------
X# site-specific configuration parameters that need to come before
X# the platform-specific parameters - edit site.def to change
X
X# site:  $XConsortium: site.def,v 1.2 91/07/30 20:26:44 rws Exp $
X
X# -------------------------------------------------------------------------
X# platform-specific configuration parameters - edit sun.cf to change
X
X# platform:  $XConsortium: sun.cf,v 1.72.1.1 92/03/18 13:13:37 rws Exp $
X
X# operating system:  SunOS 4.1.3
X
X# $XConsortium: sunLib.rules,v 1.7 91/12/20 11:19:47 rws Exp $
X
X# -------------------------------------------------------------------------
X# site-specific configuration parameters that go after
X# the platform-specific parameters - edit site.def to change
X
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 cq
X  BOOTSTRAPCFLAGS =
X               CC = gcc -fpcc-struct-return
X               AS = as
X
X         COMPRESS = compress
X              CPP = /lib/cpp $(STD_CPP_DEFINES)
X    PREPROCESSCMD = gcc -fpcc-struct-return -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/X11
X
X     TOP_INCLUDES = -I$(INCROOT)
X
X      CDEBUGFLAGS = -O2
X        CCOPTIONS =
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# -------------------------------------------------------------------------
X# X Window System Build Parameters
X# $XConsortium: Project.tmpl,v 1.138.1.1 92/11/11 09:49:19 rws Exp $
X
X# -------------------------------------------------------------------------
X# X Window System make variables; this need to be coordinated with rules
X
X          PATHSEP = /
X        USRLIBDIR = /usr/X11/lib
X           BINDIR = /usr/X11/local/bin
X          INCROOT = /usr/X11/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/X11/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        PEXLIBSRC = $(EXTENSIONSRC)/lib/PEXlib
X      PHIGSLIBSRC = $(EXTENSIONSRC)/lib/PEX
X
X# $XConsortium: sunLib.tmpl,v 1.14.1.2 92/11/11 09:55:02 rws Exp $
X
XSHLIBLDFLAGS = -assert pure-text
XPICFLAGS = -fpic
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        DEPPEXLIB =
X           PEXLIB = -lPEX5
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         SOPEXREV = 1.0
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          LINTPEX = $(LINTLIBDIR)/llib-lPEX5.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
X# -------------------------------------------------------------------------
X# Imake rules for building libraries, programs, scripts, and data files
X# rules:  $XConsortium: Imake.rules,v 1.123 91/09/16 20:12:16 rws Exp $
X
X# -------------------------------------------------------------------------
X# start of Imakefile
X
X# Glasgow RX Imakefile.
X
X         PROGRAMS = rx
X
Xall:: $(PROGRAMS)
X
Xinstall:: safe
X
Xinstall:: rx.pl
X	@if [ -d $(DESTDIR)$(BINDIR) ]; then set +x; \
X	else (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); fi
X	$(INSTALL) -c $(INSTBINFLAGS) rx.pl $(DESTDIR)$(BINDIR)/rx
X
Xinstall.man:: rx.man
X	@if [ -d $(DESTDIR)$(MANDIR) ]; then set +x; \
X	else (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); fi
X	$(INSTALL) -c $(INSTMANFLAGS) rx.man $(DESTDIR)$(MANDIR)/rx.$(MANSUFFIX)
X
Xinstall::
X	$(RM) $(BINDIR)/rxterm
X	$(LN) $(BINDIR)/rx $(BINDIR)/rxterm
X
Xsafe:
X	@grep -s 'debug = 0' rx.pl || false
X
Xshar: safe
X	makekit -m -p
X	@-perl -pi -e "s/sinclair@dcs.gla.ac.uk/sinclair@dcs.gla.ac.uk/;" Part*
X
X# -------------------------------------------------------------------------
X# common rules for all Makefiles - do not edit
X
Xemptyrule::
X
Xclean::
X	$(RM_CMD) "#"*
X
XMakefile::
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
Xtags::
X	$(TAGS) -w *.[ch]
X	$(TAGS) -xw *.[ch] > TAGS
X
Xsaber:
X	# load $(ALLDEFINES) $(SRCS)
X
Xosaber:
X	# load $(ALLDEFINES) $(OBJS)
X
X# -------------------------------------------------------------------------
X# empty rules for directories that do not have SUBDIRS - do not edit
X
Xinstall::
X	@echo "install in $(CURRENT_DIR) done"
X
Xinstall.man::
X	@echo "install.man in $(CURRENT_DIR) done"
X
XMakefiles::
X
Xincludes::
X
X# -------------------------------------------------------------------------
X# dependencies generated by makedepend
X
END_OF_FILE
if test 10172 -ne `wc -c <'Makefile'`; then
    echo shar: \"'Makefile'\" unpacked with wrong size!
fi
# end of 'Makefile'
fi
if test -f 'rx.man' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rx.man'\"
else
echo shar: Extracting \"'rx.man'\" \(3551 characters\)
sed "s/^X//" >'rx.man' <<'END_OF_FILE'
X.TH RX 1 "4 March 1993" "X Version 11"
X.SH NAME
Xrx,rxterm,r* - remote command, xterm, anything execution
X.SH SYNOPSIS
X.B rx
X[
X.B \-l
X.I username
X]
X.I host
X[
X.I command
X]
X.br
X.B rxterm
X[
X.B \-l
X.I username
X]
X.I host
X[
X.IR args .\|.\|.
X]
X.SH DESCRIPTION
XThe 
X.B rx
Xprogram connect to the specified
X.I host
Xand executes the specified
X.I command
Xin the background, returning immediately.  To allow the execution
Xof X programs, it copies a number of environmental variables to
Xthe remote session.  If you omit
X.IR command ,
Xthen rx will start an xterm on the remote host.  The
X.B rxterm
Xvarient starts a remote xterm on a host, and also passes
X.I args
Xto the remote xterm as arguments.
X.PP
XShell metacharacters which are not quoted are interpreted on the local
Xmachine, while quoted metacharacters are interpreted on the remote
Xmachine.
X.PP
XIf the name of the file from which
X.B rx
Xis executed is anything other than ``rx,''
X.B rx
Xtakes this name, stripped on a leading ``r'' as the command
Xto run on the remote host, using any
X.I command
Xparameters as arguments for the remote command.
X.PP
XIf
X.B rx
Xthinks you are using
X.B xauth
Xbased X authorisation, and you are calling to a off-site host, or
Xto a different username, it will attempt to copy an authorization
Xkey to the remote account.  Otherwise it will try to use
X.B xhost(1)
Xto grant access to the remote host.
X.SH OPTIONS
X.TP
X.BI \-l " username"
XUse
X.I username
Xas the remote username instead of your local username.  In the absence
Xof this option, the remote username is the same as your local username.
X
X.SH ENVIRONMENT
XIf set, the values of PATH, DISPLAY, XENVIRONMENT, XAPPLRESDIR,
XXFILESEARCHPATH, XUSERFILESEARCHPATH, OPENWINHOME, LD_LIBRARY_PATH,
Xand XAUTHORITY are exported to the remote program, unless the
Xremote username is different, or the remote host is off-site, in which
Xcase only DISPLAY is exported, with in all cases any variables named in the
Xvariable RXENV.
X.PP
XThe DISPLAY variable is tweaked as appropriate, to contain as qualified
Xa hostname as is needed.
X.SH DIAGNOSTICS
X.TP
X.IB command ": don't recognise my name."
X.B rx
Xcannot decode the name it has been called under.  In this case
Xit prints a warning message, and continues, as normal.
X.TP
X.B "rx: usage: rx [-l username] hostname [args...]"
XThis means it could not decode the arguments given to it.
X.SH AUTHOR
XDuncan Sinclair <sinclair@dcs.glasgow.ac.uk>, July 1992
X.br
XOriginally based on a program with the same name from the
X.B gwm
Xdistribution.  To distinguish this "rx" from other programs
Xwith similar names, you should refer to this program as the
X.B Glasgow
X.BR rx .
X.SH "SEE ALSO"
XX(1), rsh(1), xterm(1), xauth(1), xhost(1), gwm(1)
X.SH BUGS
X.B Rx
Xmakes a number of assumptions about the relationship between the
Xlocal user, and the remote one, depending on whether the remote
Xhost is onsite or not, and whether an alternative username was used
Xor not.
X.PP
XIn particular, if either the locally used shell, or the remotely
Xused shell is the standard Bourne Shell,
X.B sh(1)
Xthen strange things are more likely to happen.  Especially when 
Xit's only one of them.
X.PP
XSometimes quoting can get messed up.
X.PP
XIt's too easy to fool the smarts in
X.B rx
Xto make it believe something that is not true, and fail because of it.
X.PP
XWhen
X.B rx
Xuses
X.B xhost
Xto grant access, the
X.B xhost
Xcommand may fail silently.
X.PP
XIf
X.B rx
Xtries to send to large a command to the remote machine, it will
Xlikely fail with a parse error from csh.  If this happens, you
Xwill probably have to reduce the size of the exported environment.
END_OF_FILE
if test 3551 -ne `wc -c <'rx.man'`; then
    echo shar: \"'rx.man'\" unpacked with wrong size!
fi
# end of 'rx.man'
fi
if test -f 'rx.pl' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'rx.pl'\"
else
echo shar: Extracting \"'rx.pl'\" \(9028 characters\)
sed "s/^X//" >'rx.pl' <<'END_OF_FILE'
X#! /usr/local/bin/perl
X# CONFIG: change the line above to point to your copy of perl.
X##############################################################################
X# Glasgow RX  version 3.1.7
X#
X# Copyright 1992 Duncan Sinclair <sinclair@dcs.gla.ac.uk>
X#
X# Last Modified:  Early April 1993.
X#
X# Distribution limited, as per the usual MIT copyright.
X##############################################################################
X# remote execution of X programs.  Based on a script in an old version of gwm.
X#
X# To install, put rx in your bin and make rxterm a link to it.
X#  Some configuration will be necessary, see "CONFIG" comments...
X#
X# More and more this is less and less like the original....
X#
X# Major hacked to work for our(my) set up, and also partly
X#  re-written to work with sh, rather than ksh.
X#
X# Maybe I'll turn this into our first zsh script!
X#
X# Looks like it turned into a perl script at some point - big improvement.
X##############################################################################
X# This code tries to be intelligent in the way it works.  This means there
X#  are tons of implicit assumptions about the environment it is run in.
X#  These assumptions are all valid on the machines I use, and in my
X#  environment.  At the same time, I try to make as few assumptions as possible
X#  about the remote machine.  Here's a list of all the more tricky ones...
X# *) That the remote machine has csh.  (Linux?)
X# *) That $RSHELL = /bin/(k)?sh ==> remote shell = /bin/(k)?sh.  (Make same.)
X# *) If remote shell = sh, that $PATH is compatible.  (Use csh, etc..)
X# *) I pass a cookie to the remote machine if need be, but does it
X#    know what to do with a cookie. (eat it?)
X# *) There must be others...
X##############################################################################
X# Why am I using csh to run the remote commands?  Simply because it doesn't
X#  interact badly with rsh, and hang waiting for a file descriptor to
X#  be closed.  I'd rather use zsh, or bash, or even perl, but they are not
X#  as universal as csh.
X##############################################################################
X#
Xrequire "stat.pl";
X#
X# What we called?
X#
X$argv0 = $0 ;
X$argv0 =~ s:.*/:: ;
X#
X# CONFIG:
X# Change these variables to be your domain name, and a pattern that
X#  will match all variations on your domain name.  You must include
X#  those leading dots!!! If your hostname includes your domain, see
X#  the code further down, marked "XXX"
X#
X$DOM  = ".dcs.gla.ac.uk" ;
X$DOMPAT = "\.dcs(\.gla(sgow)?(\.ac\.uk)?)?" ;
X#
X# CONFIG:
X# Change this to your value of BINDIR, or set the variable to "" if
X#  you think your users are smarter than that.
X#
X$XPATHS = "/usr/X11/bin" ;
X#
X# CONFIG:
X# Make this the name of your "remote shell" command.
X#
X$RSH = "rsh" ;
X#
X# end of CONFIG
X#
X# Some variables we'll no doubt use sometime...
X#
X$usage = "$argv0: usage: $argv0 [-l username] hostname [args...]\n" ;
X$RSHELL = (getpwuid($<))[8] || "/bin/sh" ;
X$HOME = $ENV{"HOME"} || (getpwuid($<))[7] ;
X$XAUTH = $ENV{"XAUTHORITY"} || $HOME . "/.Xauthority" ;
X$LOGF = "~/.rx.log" ;
X@STUFF = () ;
X$debug = 0 ;
X#
X# Before anything else, close stdin.  This might stop rx hanging
X#  due to rsh weirdness.
X#
Xclose(STDIN);
X#
X# do a "-l" flag...
X#
Xif ($ARGV[0] eq "-l") {
X  shift ;
X  $User = $ARGV[0] || die $usage ;
X  @LUser = ("-l",$User) ;
X  shift ;
X}
X#
X# Pick a host, any host...
X#
X$MACH = $ARGV[0] || die $usage ;
Xshift ;
X#
X# Things to think about for the remote machine.
X#
X$MACH =~ s/$DOMPAT// ;
X$OffSite = $MACH =~ /\./ ;
X#
X# Where am I?  Seems we can't trust the dumb user to set HOSTNAME right!
X#
X#$HOSTNAME=$ENV{HOSTNAME} || `hostname` ;		# Current Host
X$HOSTNAME=`hostname` ;					# Current Host
X$HOSTNAME =~ s/\n// ;
X#
X#  If all your hostnames include your domain, comment out the next line.
X#
Xif ( $OffSite ) { $HOSTNAME = $HOSTNAME . $DOM ; }	# XXX
X#
X# Now we know where we are, and they are, are they different?
X#
X$Diff = $HOSTNAME ne $MACH ;
X#
X# What is the display going to be?
X# !! Danger !! Heavy Regular expressions follow...
X# This needs to be re-written to be modular and can so be extended to
X#  support resetting host:* to unix:*, as required.
X#
X$DISPLAY = $ENV{"DISPLAY"} || ":0.0" ;
X$DISPLAY =~ s/$DOMPAT// ;
X$DISPLAY =~ s/^(unix)?(:\d(\.\d)?)$/$HOSTNAME$2/ if ($Diff) ;
X$DISPLAY =~ s/^([^.]*)(:\d(\.\d)?)$/$1$DOM$2/ if ($OffSite) ;
X$ENV{"DISPLAY"} = $DISPLAY ;
X#
X# Here comes the hard bit in sh.  Quote our args.
X# Also have to quote quotes.  To cope with csh braindamage,
X#  quotes are quoted thus; ' -> '\''
X# So for an arg "foo'bar", we get "'foo'\''bar'".
X#
Xforeach (@ARGV) {
X  s#\'#\'\\\'\'#g ;
X  s#(.*)#\'$1\'# ;
X}
X#
X# So what we doing?
X#
XPROG: {
X  if ($argv0 eq "rx") { last PROG ; }
X  if ($argv0 eq "rxterm") {
X    #unshift(@ARGV,"-ls") if ($Diff) ;
X    unshift(@ARGV,"xterm","-ls","-n",$MACH) ;
X    last PROG ;
X  }
X  if ($argv0 =~ /r(.*)/) { unshift(@ARGV,$1) ; last PROG ; }
X  warn "$argv0: don't recognise my name." ;
X}
X#
X# If nothing else, become an rxterm.
X#
Xif (@ARGV == 0) {
X  #unshift(@ARGV,"-ls") if ($Diff) ;
X  unshift(@ARGV,"xterm","-ls","-n",$MACH) ;
X}
X#
X# Some special considerations if we are not ourselves on the other side.
X#
Xif ($OffSite || $User) {
X  #
X  # We want to pass a cookie here.
X  #
X  if (-e $XAUTH) {
X    #
X    # This is going to be unsecure, as the cookie will appear in a number
X    #  of command line args.  But at least it'll work.
X    # This will need enhanced if we ever fix the code above to
X    #  set DISPLAY to ":0.0", when we return to the server.
X    #
X    $CooKie = `PATH=\$PATH:$XPATHS xauth list $DISPLAY` ;
X    chop($CooKie) ;
X    @CooKs = split(' ',$CooKie) ;
X    shift(@CooKs) ;
X    unshift(@STUFF,"xauth","add",$DISPLAY,@CooKs,";") if (@CooKs == 2) ;
X  } else {
X    #
X    # Yuk.  What a crock.  I hate doing this.
X    #
X    system("xhost +$MACH >/dev/null 2>/dev/null") if ($Diff) ;
X  }
X  #
X  # We really only want to pass a value for $DISPLAY.
X  #
X  @VARS=("DISPLAY", split(' ',$ENV{"RXENV"})) ;
X} else {
X  #
X  # Some variables we wish to export
X  #
X  @VARS=(
X    "DISPLAY",
X    "XENVIRONMENT",
X    "XFILESEARCHPATH",
X    "XUSERFILESEARCHPATH",
X    "XAPPLRESDIR",
X    "OPENWINHOME",
X    "LD_LIBRARY_PATH",
X    # "MANPATH",		# for "rxman", and bourne shell users.
X    "XAUTHORITY",
X    split(' ',$ENV{"RXENV"}),
X    ) ;
X  #
X  # Braindead bourne shell, needs to be given a $PATH...
X  # We would rather not pass the current $PATH, because it might not work
X  #  on the destination machine.  I'd rather it was set by the user's
X  #  remote shell during the rsh.
X  # Fortunately, all *my* X programs are in an arch independant place, and
X  #  so it shouldn't cos a problem, locally.
X  # We check against $RSHELL, because they might be running another shell,
X  #  differant from their login shell.  I know, sounds weird, but it's too
X  #  common round here.
X  # I've also included ksh in the brain-damage, cos I can't see an easy way
X  #  to pass throught $ENV{"ENV"} without it being too late. (We only have
X  #  one person who has ksh as a login shell anyway...)
X  # Oh, yeah.. we are assuming that if it's bourne shell here, then it's
X  #  bourne shell there.  Much more important than this is that it it ISNT
X  #  bourne shell here, it better not be bourne shell there.
X  #
X  if ($RSHELL =~ m#/(k)?sh#) { push(@VARS,"PATH"); }
X}
X#
X# Validate $PWD routine...
X#
Xsub validate_pwd {
X  local(@pwdstats, @dotstats);
X  local($pwd) = $_[0];
X
X  unless (defined($pwd))          { return undef; } ;
X  unless (@dotstats = stat("."))  { return undef; } ;
X  unless (@pwdstats = stat($pwd)) { return undef; } ;
X  if (($pwdstats[$ST_DEV] != $dotstats[$ST_DEV]) ||
X      ($pwdstats[$ST_INO] != $dotstats[$ST_INO])) { return undef; } ;
X  $pwd;
X}
X#
X# Try and find a nice, valid, pwd.
X#
XPRESENT: {
X  if ($PWD = $ENV{"PWD"}) {
X    $FOOPWD = $PWD ;
X    $FOOPWD =~ s#(/tmp_mnt|/export)?/(.*)#/$2# ;
X    $PWD = &validate_pwd($FOOPWD) || &validate_pwd($PWD) ;
X  }; 
X  unless ($PWD) {
X    chop($PWD = `pwd`) ;
X    $FOOPWD = $PWD ;
X    $FOOPWD =~ s#(/tmp_mnt|/export)?/(.*)#/$2# ;
X    $PWD = &validate_pwd($FOOPWD) || &validate_pwd($PWD) || $HOME;
X  }
X}
X$PWD =~ s#(.*)#\'$1\'# ;
X#
X# Try to find somewhere nice to live on the other side.
X#
Xunless ($OffSite) {
X  unshift(@STUFF,"test","-d",$PWD,"&&","cd",$PWD,";");
X}
X#
X# Start building the full command.
X#
Xforeach $var (@VARS) {
X  ($val = $ENV{$var}) &&
X     unshift(@STUFF,"setenv","$var","\'"."$val"."\'",";") ;
X}
X#
X# Some commands to do on the other side...
X#
Xunshift(@STUFF,"set","nonomatch",";");	# only if we are using csh.
X#
X# Build the remote command.
X#
X$REMOTE=("(umask 077 ; ((".join(" ",@STUFF,@ARGV).")</dev/null >&$LOGF &))") ;
X$REMOTE =~ s#\"#\\\"#g ;
X$REMOTE = "\"" . $REMOTE . "\"" ;
X#
X# Build the arg list for the exec.
X#
X@COMM=($RSH,@LUser,"$MACH","csh","-fc",$REMOTE) ;
X#
X# Do it!
X#
Xif ($debug) {
X  print "@COMM\n" ;
X} else {
X  exec @COMM ;
X}
X#
X# Rsh doesn't return any indication of how it went over
X# on the other side, but that's OK, cos we aint going to
X# wait around to see what happened.
X#
Xexit 0 ;
X#
X# tHe ENd
END_OF_FILE
if test 9028 -ne `wc -c <'rx.pl'`; then
    echo shar: \"'rx.pl'\" unpacked with wrong size!
fi
chmod +x 'rx.pl'
# end of 'rx.pl'
fi
echo shar: End of archive 1 \(of 1\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have the archive.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0


-- 
    Duncan Sinclair  |  sinclair@dcs.gla.ac.uk  |  sinclair@uk.ac.gla.dcs
      ---  Would the *real* UNIX Operating System please stand up.  ---

Newsgroup: comp.windows.x
Document_id: 67463
From: rpicas@porto.INescn.PT (Rui Picas)
Subject: subscribe me

please subscribe me.

e-mail: rpicas@porto.inescn.pt

Newsgroup: comp.windows.x
Document_id: 67464
From: barmar@think.com (Barry Margolin)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk> julian@comp.lancs.ac.uk (Julian G. Self) writes:
>Wasn't the shareware fee a "suggestion" by John?

It's a request to personal users; it's a requirement for commercial,
government, and institutional users.

Someone else asked whether the authors of the JPEG and TIFF software had
given permission to incorporate their code into a commercial product.  I
found the following in jpeg/README:

    We specifically permit and encourage the use of this software as the
    basis of commercial products, provided that all warranty or liability
    claims are assumed by the product vendor.

and the following in tiff/Copyright:

    Permission to use, copy, modify, distribute, and sell this software and
    its documentation for any purpose is hereby granted without fee, ...

Looks like he's OK on that account.
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
Document_id: 67465
From: smedley@tuns.ca (Trevor J. Smedley)
Subject: Buying X Terminals

We are planning on buying 15-20 X Terminals.  I have the article from Jim
Morton regarding prices, etc., and am looking for any other information
that will help me decide which to buy.

The terminals will be connected to a DEC 3000/400 AXP with 96Mb RAM,
running OSF/1.  From what I have found out so far, it would be best to run
as much as possible in the terminal itself (X11, window manager, xterm,
etc.), and that in order to do this we need n Mb RAM in the Xterminal
(where n ranges from 4 to 10, depending on who I talk to).

What should I be looking for?  What sort of questions should I be asking
the salespeople?

Thanks

Trevor J. Smedley - smedley@tuns.ca
School of Computer Science
Technical University of Nova Scotia

Newsgroup: comp.windows.x
Document_id: 67466
From: kartik@hls.COM (Kartik Chandrasekhar)
Subject: Multiple(Not Simultaneous) server connections

Hi,

   We have a requirement for dynamically closing and opening
different display servers within an X application in a manner such
that at any time there is only one display associated with the client.

   Assumming a proper cleanup is done during the transition should
we anticipate any problems.


kartik
kartik@hls.com


Newsgroup: comp.windows.x
Document_id: 67467
From: tommc@hpcvusj.cv.hp.com (Tom McFarland)
Subject: Re: XmTextField truncation with LANG bug(???)

In article <lttm1lINNrli@news.bbn.com>, swalker@bbn.com (Susan Walker) writes:
|> I have found a situation which I think is a bug in X or Motif, but I'm hoping
|> is really just a mistake on my part.  Does anyone know anything about
|> this problem........
|> 
|> - I am using an XmTextField, and setting its XmNvalue to a hardcoded
|>   text string (ascii or Kanji) either via XtSetValues or XmTextSetString.
|>   The problem is that when the XmTextField is displayed, the text is getting
|>   truncated, depending on the setting of the environment variables
|>   LANG (more specifically LC_ALL).  When they are set to japanese,
|>   the text gets truncated.  When they are set to english, everything
|>   works fine.  I am taking the default for XmNcolumns.
|>   (Please note that hardcoding of text is NOT done in my actual
|>    application, just in my sample code to make things easier)
|> 	
|> - I am running Motif 1.2, X11R5 via HPUX9.01.  My test program is set up
|>   to handle 16 bit Kanji characters.  I have remembered to do   
|>   XtSetLanguageProc() prior to my MrmInitialize and my font resources
|>   are set to japanese fonts.
|> 
|> - Don't know if this matters, but my dialog box and TextField is initially
|>   created with UIL. 
|> 
|> 
|> The problem does NOT happen with XmText.  Unfortunately substituting
|> XmTextFields with XmTexts in my application is not an acceptable
|> alternative (way too much code to be modified while in beta!)
|> 
|> I have a small test program which illustrates the problem if anyone
|> wants it.  My best guess is that either the X code or Motif is not
|> properly allocating memory for japanese, but since I don't have the
|> source to look at it is just a guess.

The problem was that TextField was improperly walking the string; it used
the character count instead of the byte count... a significan "Oops". 
The problem has been fixed and the patch is included in the latest periodic
patch from HP support services.

Tom McFarland
<tommc@cv.hp.com>

Newsgroup: comp.windows.x
Document_id: 67468
From: thewalt@canuck.ce.berkeley.edu (C. Thewalt)
Subject: Re: XV 3.00 has escaped!

The copyright notices themselves seem to be making conficting
restrictions.  I do not know how to reconcile:

/* Copyright Notice
 * ================
 * Copyright 1989, 1990, 1991, 1992, 1993 by John Bradley
 * 
 * Permission to use, copy, and distribute XV in its entirety, for 
 * non-commercial purposes, is hereby granted without fee, provided that
 * this license information and copyright notice appear in all copies.
 *

... with:

 *
 * XV is shareware for PERSONAL USE only.  You may use XV for your own
 * amusement, and if you find it nifty, useful, generally cool, or of
 * some value to you, your non-deductable donation would be greatly
 * appreciated.  $25 is the suggested donation, though, of course,
 * larger donations are quite welcome.  Folks who donate $25 or more
 * can receive a Real Nice bound copy of the XV manual for no extra
 * charge.
 * 
 * Commercial, government, and institutional users MUST register their
 * copies of XV, for the exceedingly REASONABLE price of just $25 per
 * workstation/X terminal.  Site licenses are available for those who
 * wish to run XV on a large number of machines.  Contact the author
 * for more details.
...

It strikes me that the first part gives you the right to use, without
fee, the program for noncommercial purposes if the info appears in all
copies. This seems to cover educational institutions despite what the
rest of the notice says.  And the first part doesn't say subject to
the conditions outlined below... 

Chris
--
Christopher Robin Thewalt               (thewalt@ce.berkeley.edu)
Dept. of Civil Engineering              These opinions are not necessarily
University of California, Berkeley      shared by my employer...

Newsgroup: comp.windows.x
Document_id: 67469
From: gentry@bcstec.ca.boeing.com (Tim Gentry)
Subject: "XIO: fatal IO error 22" problem

Posted for a friend without posting access (but with e-mail access...)
----------------------------

Help, anyone!

I have a X client that is abnormally terminated with the following message:

XIO:   fatal IO error 22 (Invalid argument) on X server "xxxxx:0.0"
       after 10058 requests (10057 known processed) with 78 events remaining.

It has been known to occur when displaying on the Xsun (X11R4) server.  It
occurs with a higher frequency when the client displays on the Xdomain
(X11R4) server running on DomainOS 10.3.5 on an Apollo.

Anybody know why this may be happening? Any suggestions would be greatly
appreciated.

Reply-To: has been set to me.  I'll summarize to the net.

Doug Leary
REDARS Software Development
Boeing Computer Services
dcl@luey.ca.Boeing.COM


-- 
    Tim Gentry   Boeing Computer Services   gentry@bcstec.ca.boeing.com
 This posting in no way officially represents the opinions of Boeing, Boeing
     Computer Services -- or possibly even the poster, for that matter.

Newsgroup: comp.windows.x
Document_id: 67470
From: sti@cs.hut.fi (Sami-Jaakko Tikka)
Subject: Re: finding out state of state keys (eg, CapsLock and NumLock)

In <9304211637.AA03386@blue.arbortext.com> rps@arbortext.COM (Ralph Seguin) writes:

>My question is this:  Is there a means of determining what the state
>of CapsLock and/or NumLock is?

I don't know any way except to see what modifiers are on in th
Keypress event.  Of course if there is some reason why you need to
always know the state of modifiers even if your windows don't have the
keyborads focus you can always ask for KeyPress events from the root
window.  Then you get all the KeyPresses and you always know what have
been pressed.

>An even more pointed question: Is there an easy means of making an X
>keyboard act like a PC keyboard?  ie, CapsLock is active, and the user
>presses shift-a, I'd like to get a lowercase 'a' instead of 'A'.

I think this is just a question of how to implement XLookupString.
You can always write another function that interprets the KeyPresses
as you like.  You can look at the implementation of XLookupString from
the Xlib sources and then modify it a little bit.
-- 
        Sami.Tikka@hut.fi | /G=Sami/S=Tikka/O=hut/ADMD=fumail/C=fi/
                           "Live Long and Prosper!"

Newsgroup: comp.windows.x
Document_id: 67471
From: probert@ucsb.edu (Dave Probert)
Subject: image data format question

** I am posting this for a friend **
** please respond to vaughn%sonatech@hub.ucsb.edu **

I'm working on an application where we are creating a dither pattern 
and rendering it in a window by applying it to the stipple pattern 
of the GC.  The following code segment almost works if the window width 
is an even multiple of 8.  If it is not an even multiple it skews the 
pattern towards the right.  Another problem, whether it is an even 
multiple of 8 or not, is a series of vertical lines spaced 8 pixels 
apart.


extern	Display	       *dpy;
extern	Window		xid;
extern	GC		gc;

extern	int	Max_X, Max_Y;		/* set in resize handler	*/

dither(pixels)

	char	*pixels;		/* dither pattern data		*/

	{
	char	*bm;			/* bitmap data			*/
	char    *bmp;
	long	 I, arraymax;


	arraymax = Max_X*Max_Y;

	bm  = (char *)malloc(arraymax);
	bmp = bm;

	for (I=j=0; I<arraymax; I++)
		{
		if (pixels[I] & DITHER_BIT)
			*bmp |=   2<<j;		/* pixel on		*/
		else
			*bmp &= ~(2<<j);	/* pixel off		*/

		if (++j > 7)
			{
			bmp++;
			j = 0;
			}
		}

	stipple = XCreateBitmapFromData(dpy, xid, bm, Max_X, Max_Y);
	free(bm);

	XClearWindow(dpy, xid);

	XSetStipple(dpy, gc, stipple);
	XSetFillStyle(dpy, gc, FillStippled);
	XFillRectangle(dpy, xid, gc, 0, 0, Max_X, Max_Y);
	XSetFillStyle(dpy, gc, FillSolid);
	}

I suspect the answer is to pad the data.

--
Mike Vaughn
Sonatech

Newsgroup: comp.windows.x
Document_id: 67472
From: adrian@ora.COM (Adrian Nye)
Subject: Re: Keyboard mapping and window placement questions


> If I use Xt, all 
> O'Reilly has to say is '...is automatically handled by Xt...'.  If I use Xlib, ala XNextEvent(), I get nothing.  This all stems from problems with users of 
> the Sun 4/5 keyboard and the NumLock; plus various Alt/Meta/etc. modifier 
> requirements.

That's not all it says.  The coverage of modifiers is in Chapter 8
of Volume Four (or chap 7 in older Athena editions), where there is about 
10 pages on how to specify translations to capture
various combinations of keys or buttons.

The Xlib route uses XLookupString and there is a lot of coverage
of how that works in Volume One,  chapter 9.  You should read this
to understand how all the mappings work before trying to do anything
complicated.

Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
Document_id: 67473
From: dips@aurora (Deeptendu Majumder)
Subject: Re: XV 3.00 has escaped!

Julian G. Self (julian@comp.lancs.ac.uk) wrote:
: Wasn't the shareware fee a "suggestion" by John?
: Is so then it's up to the individual to make the choice whether or not to
: honour it and part with money.  Personally if I was in his position I would
: do exactly the same thing, John has obviously put in lot of time and effort
: into xv and why shouldn't he receive some money for it.

: Just my pennies worth

: (Keep up the good work John)

Yeah I agree..I am very impressed by the kind of effort that has gone into
the lastest release...some people are just looking for excuses to gripe..
I personally feel that the work is worth much more that $25...after seeing
the kind of things people get paid for..

d.



Newsgroup: comp.windows.x
Document_id: 67474
From: moose@orb.utc.com (Bruce Trvalik)
Subject: GUI tools

We are making a transition from NextStep to X-windows. I am trying to find the best GUI tool for our needs.  I have looked at several tools but they all seem basically the same (each salesman will beg to differ). I realize that there are differences but I don't have an infinate amount of time to discover what they are. The tools I have looked at so far are UIM/X, X-designer, Tele-Use, tcl/tk,Interviews, and SUIT. 
So far I've drawn the following conclusions:

1) The builder for Interviews is not very mature, bad docs
2) Tele-Use is very expensive and uses a proprietary toolkit
3) UIM/X & X-designer seem about the same, even though X-designer does not have a interpreter (I'll by Centerline if I need one)
4) tcl/tk is a little buggy
5) I know very little about the ICS Builder (just have the sales info)
6) Due to a corporate agreement X-designer is much cheeper than any other comercial product.
7) For the time I'm spending I could have bought all of them (well different money)
8) We will have to live with any shortcomings and make it work
9) this type of tool seems great, but noone seems to talk about them on the net. Is there another news group for this ?
10) SUIT cost too much for comercial development.

I'm hoping someone out there has a strong opinion on at least one of these products.

thanks 

---
*	Bruce Trvalik  AOA-----------------*
*       (617)864-0201   check your mind at the door - The Band That Time Forgot
*	moose@aoa.utc.com
*       aoa!moose@bbn.com

Newsgroup: comp.windows.x
Document_id: 67475
From: bglenden@colobus.cv.nrao.edu (Brian Glendenning)
Subject: Re: XV 3.00 has escaped!


Alas, we too will have to stop using it.

Brian
--
       Brian Glendenning - National Radio Astronomy Observatory
bglenden@nrao.edu          Charlottesville Va.           (804) 296-0286

Newsgroup: comp.windows.x
Document_id: 67476
From: david@pop (David E. Smyth)
Subject: Re: R5 table widget causing trouble with XtQueryGeometry

I just got a bug report and a fix for this exact problem from
fisher@iscp.bellcore.com (Greg Fisher):

> ... the most serious problem I have identified has not
> been incorporated.  This problem occurs when the Table widget's
> GeometryManager is invoked by a child.  This will work correctly if
> the table widgets parent complies with the Xt protocols.  However, if
> they do not, as is the case for some Motif widgets, and they ignore
> XtCWQueryOnly, then the sizing will be incorrect.
>         In order to see this problem, the following events must
> happen:
> 1. A child of the table widget must request a new size.
> 2. The table widget must query its parent for a new size having set
>    XtCWQueryOnly.
> 3. The parent must ignore the XtCWQueryOnly bit and resize the table
>    widget.  As part of the resize, XmpTableForgetProposedLayout is
>    called.  This will set tw->table.current_cols and
>    tw->table.current_rows to zero.
> 4. The table will continue setting up the new size, working under the
>    assumption that it is working with a proposed and not actual
>    layout.  At the end, it will call XmpTableSaveProposedLayout.  This
>    will save tw->table.cols and tw->table.rows and restore their
>    values from tw->table.current_cols and tw->table.current_rows.
>    However, these have already been set to zero.
> 5. Since the table widget has already been resized, it will not need a
>    second resize.
> 6. Next, another widget managed by some ancestor of the table is
>    resized.  This results in the parent of the table requesting the
>    tables preferred size.  Since tw->table.cols and tw->table.rows are
>    zero, this will return 0x0 as the preferred size.
> 7. The parent is very likely to grant this request, resulting in a
>    loss of the whole table from the display.
> 

He isolated the problem a proposed a workaround which seems precisely
correct.  Here is the new implementation of XmpTableNewProposedLayout
which will be released with the next update in 5 weeks:

Xmp/Table.c:

void XmpTableNewProposedLayout( tw )
    XmpTableWidget tw;
{
    XmpTableConsiderSameSize(       tw );
    XmpTableProposedColsAndRows(    tw );
    XmpTableQueryParentForResize(   tw );    /* query only, no resize */

    /*
     * Since we only made a query, we *should* still need to continue.
     * However, Motif is broken so that we actually may already have
     * been resized.  In that case, the proposed layout is already
     * forgotten, so we should just quietly exit.
     */
    if ( tw->table.resize_status == RSdueToRequest )
    {
        XmpTableMakeColsFitQueryWidth(  tw );
        XmpTableMakeRowsFitQueryHeight( tw );
        XmpTableGetProposedChildSize(   tw );
        XmpTableSaveProposedLayout(     tw );
    }
    /* else the resize has already been done.  Our proposed layout would
     * have been forgotten in the process.
     */
}

The XpTable the fix is identical, except of course for the names:

Xp/Table.c:

void XpTableNewProposedLayout(  tw )
    XpTableWidget  tw;
{
    XpTableConsiderSameSize(       tw );
    XpTableProposedColsAndRows(    tw );
    XpTableQueryParentForResize(   tw );    /* query only, no resize */
    /*
     * Since we only made a query, we *should* still need to continue.
     * However, some manager widgets are broken so that we actually may
     * already have * been resized.  In that case, the proposed layout
     * is already forgotten, so we should just quietly exit.
     */
    if ( tw->table.resize_status == RSdueToRequest )
    {
        XpTableMakeColsFitQueryWidth(  tw );
        XpTableMakeRowsFitQueryHeight( tw );
        XpTableGetProposedChildSize(   tw );
        XpTableSaveProposedLayout(     tw );
    }
    /* else the resize has already been done.  Our proposed layout would
     * have been forgotten in the process.
     */
}

-------------------------------------------------------------------------
David Smyth				david@jpl-devvax.jpl.nasa.gov
Senior Software Engineer,		(818)306-6193 (do NOT use v-mail yet!)
CCCP, X and Object Guru.		office: 525/C165
Jet Propulsion Lab, M/S 525-3660 4800 Oak Grove Drive, Pasadena, CA 91109
------------------------------------------------------------------------- 
	"That Sun Windows thingy, what's it called?  You know, its
	really awful.  X?  Motif?  That's it - Motif! Yuck!"
-------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67477
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Subject: Re: Overriding default WM Behaviour


Just create the window in the place you want it and set the program
position field in the WM_NORMAL_HINTS property, then map it.

Then, assuming they have a non brain dead window manager, the user can
say whether they want to us program specified positions or not. For
tvtwm the UsePPosition command in the .tvtwmrc will do this.

Now, I'm sure that by the time this message gets out of our local news
timewarp someone will have advised you to set the user position bit in
the WM_NORMAL_HINTS. _Do_not_ do this. It's evil. It's a disservice to
your users. Offler the tusked crocodile god will come in the night and
remove your vital organs with a blunt spoon if you even contemplate
it.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

Newsgroup: comp.windows.x
Document_id: 67478
From: fwr8bv@fin.af.MIL
Subject: xdm and env. vars

Hi,

I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
the .login file doesn't get executed and therefore neither the olwm
root-window nor my applications know about these variables.

I used the "DisplayManager._0.userPath" resource in /usr/lib/X11/xdm/xdm-config
to succesfully pass the PATH variable.  But I am having problems passing anything else!!!  I tried execing $HOME/.login in /usr/lib/X11/xdm/Xsession
but that didn't help.  I also tried using
	"DisplayManager.exportList: HELPPATH MANPATH ARCH"
which didn't work either.

I would appreciate any help on this matter.

Thanks in advance,
Shash

+-----------------------------------------------------------------------------+
+ Shash Chatterjee                           EMAIL:  fwr8bv@fin.af.mil        +
+ EC Software                                PHONE:  (817) 763-1495           +
+ Lockheed Fort Worth Company                FAX:    (817) 777-2115           +
+ P.O. Box 748, MZ1719                                                        +
+ Ft. Worth, TX 76101                                                         +
+-----------------------------------------------------------------------------+


Newsgroup: comp.windows.x
Document_id: 67479
From: hannguye@nosc.mil (Han N. Nguyen)
Subject: Action Translation Table implementation


Hello,


Our application requires us to capture keypad presses for all windows
in a number of applications.  We are trying to use action translation
tables to implement this.  We have only succeeded by assigning the
translation table to every individual widget in all windows in a single
application.  The Xt calls we make are included below.

It would be much more convenient if we could assign the translation
table to a class of widgets rather than individual widget instantiations,
and also accomplish it for MULTIPLE applications.  If someone could
describe how do this it would be greatly appreciated.

Platform: Sun Sparc w/ X11R4 & Motif 1.1.4

***********************************************************************

static XtActionsRec actionsTable[] = {
        {"up", do_up},
        {"right", do_right},
        {"middle", do_middle},
        {"left", do_left},
        {"down", do_down},
	{"bye", quit},
};

static char defaultTranslations[] = 
		"<Key>KP_8: up() \n\
		 <Key>KP_6: right() \n\
		 <Key>KP_5: middle() \n\
		 <Key>KP_4: left() \n\
		 <Key>KP_2: down() \n\
		 <Key>KP_1: bye()"; 

XtTranslations	trans_table, trans_table2;

(. . .)

    XtAddActions(actionsTable, XtNumber(actionsTable));
    trans_table = XtParseTranslationTable(defaultTranslations);

    widget = XtCreateManagedWidget("msg", xmPushButtonWidgetClass,
		form, wargs, n);

    XtOverrideTranslations(widget, trans_table);

***********************************************************************



Newsgroup: comp.windows.x
Document_id: 67480
From: garyrich@qdeck.com (Gary Rich)
Subject: Re: DESQview/X on a PC and network Traffic

In article <1rkloc$k49@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>
>In article 1369@qdeck.com, support@qdeck.com (Technical Support) writes:
>>In article <1qtk84$rn5@picasso.cssc-syd.tansu.com.au> gpatapis@boyd.tansu.com.au writes:
>>
>>>What sort of traffic is generated with the X-calls?  I am curious to find
>>>out the required bandwidth that a link must have  if one machine running
>>>DV/X is supporting multiple users (clients) and we require adequate response
>>>time.  Anyone have any ideas ??  
>>
>>I expect the limiting factor will be your server machine, not the network
>>itself. To give you a real-world example, here at Quarterdeck we have
>>roughly 100 people using DVX to talk to a bunch of unix boxes, novell
>>file servers, and each other. It's not _too_ much of a load on our
>>Ethernet (with maybe 4 concentrators, so you have 20-30 people on each
>>segment). If you had a badly loaded net, or the apps you wanted to run
>>were very network intensive, you could run into some slowdowns.
>>
>>But the biggest problem would be the machine itself. Say you have a 486
>>33 with plenty of ram and a fast hard disk and network card. If you have
>>10 people running programs off it, you're going to see some slowdowns
>>because you're now on (effectively) a 3.3 MHz 486. Of course, DVX will
>>attempt to see if tasks are idle and make sure they give up their time
>>slice, but if you have 10 working programs running, you'll know it.
>>
>
>Well I can buy a bigger and more powerful server machine because of the 
>significant drop in price year after year.  The link I want to use 
>though (ISDN 64K) is costly and the bandwidth limited.  That's why my
>interest lies in seeing if such a link can be used and see what traffic 
>goes through it.

Since I don't think Tom always gets time to read this group, I'll take the
liberty of responding to some of this.  If you really want Tom to reply
you should send mail to support@qdeck.com.

A 64k line is certainly going to restrict you far more than the 10mbps
ethernet that we typically run.  How restrictive it will be depends on 
what you run and how you run it.  I would think that a couple of instances
of some really nasty program like "Smoking Clover" would make the link 
useless for anyone else.  On the other hand, probably 50 xclocks quietly
updating every 10 seconds or so wouldn't impact it too much.  In the real
world, you will be somewhere in between these two extremes.

Going by the way I personally use X on a daily basis, I wouldn't want to have
to share that 64k link with more than 3-4 other people.

>>Having said that, if you can tweak the programs being run (by adding
>>in calls to give up time slices when idle and that sort of
>>thing), you could probably run 15-20 people on a given machine before
>>you started seeing slowdowns again (this time from network bandwidth).
>
>Hmmm.  Has anyone at your centre monitored the traffic at all?  Are you
>running any standard MS-Windows programs like Word ?  What sort of 
>packets go blazing through? What size link do you have (2Mb or 10Mb ?).
>What is the average traffic flow going through your network or do you
>have few high peaks and then many low points?

Our corporate WAN is as unique as any other.  The usage patterns are not very
good predictors of how yours will behave.  The only one of our low bandwidth
links that normally get used in this way is a 56k link to Ireland that they
often use to run a DOS text based client end of a client-server database 
remotely from the DVX machine behind me. Since the server end is (or was) always
at this end (California) it is faster to remotely run the client via DESQview
X and have a short hop to the server than running the client locally and having
a long hop to the server.  As I warned you, this tells us very little about
how you usage pattern will fill a 64k ISDN link.

Running Word for Windows remotely is going to itself be very usage dependent.
Let's break it into pieces and look at it.  Tracking the mouse pointer is easy
and efficient to translate from Windows calls into X. Popping up a menu is a
little more involved and will generate some traffic.  Restoring the screen
that was covered by that menu may be easy and may not be.  Does the server
that it's displaying on have backing store?  If so and the server had enough
memory the display can be updated locally and will generate little network
traffic. If no backing store, then what was being covered up?  If it was a 
solid colored rectangle of space we can tell your xserver to draw that quite
easily.  If it was a full color backdrop of Ren & Stimpy we may have to send
it back to the X server bit by bit.  DVX will do its level best to only redraw
that small area, but in some unusual cases the entire screen may need to be 
repainted.  Assuning a 1024x768 screen with 4 bits per pixel that's 3145728 bits
that has to be sent.  Worst possible case you're looking at about 50 seconds.
In reality it would never be this bad since the screen will always have parts 
that will be tranlatable into higher level X calls.

>
>
>>It all really depends on what the programs are doing (ie. you're going
>>to see a slowdown from X-bandwidth a lot sooner if your apps are all
>>doing network things also...)
>>-- 
>
>What do you mean by network things?  I vision using MS Windows and other
>Windows applications over the network were the processes are running on
>the server and all I am getting are the displays.  I am wondering how 
>good is the X and subsequently DV/X protocol in transferring these 
>images with X-calls and displaying them on a client's machine.

X was designed from the ground up to be efficient across a network.  It's 
pretty good for this.  X programs are best, DOS text programs are almost
as good (since we conert them to X easily).  Something like WinX is a hybrid.
We intercept the calls Windows makes to it's graphics driver/ mouse driver
keyboard driver and convert them to X.  The calls Windows is making are in
no way designed to be efficient on a packet switched network.  We go to a 
lot of trouble to convert them to the highes level Xlib calls we can, but
we are somewhat limited because we only know what Windows and its applications
tell us.

+--------------------------------------------------------------------------+
|   Quarterdeck Office Systems                    ____________________/_   |
|         Gary Rich - Problem Resolution Dept.    _________________///__\  |
|  _____________________________________________  ______________/////___\  |
|   Anonymous FTP site = qdeck.com                ___________///////____\  |
|          ---For---          ---Write to---      ________/////////_____\  |
|    Pricing/Ordering info :  info@qdeck.com      _____///////////______\  |
|     Technical Questions  : support@qdeck.com    __/////////////_______\  |
|         Quarterdeck BBS - (310) 314-3227        \\\\\\\\\\\\\\\\\\\\\\\  |
+--------------------------------------------------------------------------+


Newsgroup: comp.windows.x
Document_id: 67481
From: william@lanai.cs.ucla.edu (William Cheng)
Subject: Re: Wanted: diagram drawing program

In article <1roouu$gdj@tuegate.tue.nl> lennart@blade.stack.urc.tue.nl (Lennart Benschop) writes:
>
>I am looking for a  program to draw various kinds of diagrams on my Linux
>system.
>
>- It must be free.
>- It must run on standard (monochrome) X with a small screen size (800x600)
>  No motif/openlook etc.
>- It must compile under Linux with gcc/g++. Most generic unix software
>  works ok.
>- It must produce postscript files that I can include into LaTeX documents
>  with dvips. Or just tell me another free program that converts one
>  of the supported formats to ps.
>- It must produce drawings that are larger than the window size (scrollable).
>
>I know of several such programs, idraw, xfig. tgif. I have
>no experience with any of them. Features I would like in the programs are.
>
>- ability to draw circles, arcs, straight lines, boxes and arrows.
>- support for both dashed and solid line styles for all of these objects.
>- support for texts in any size.
>- ability to move/copy/resize/rotate any part of the drawing.
>- ability to turn any part of the drawing into a library component
>  (e.g. a transistor symbol composed of three lines, an arrow and a circle)
>- any aid (numeric coordinates, screen grid) to align parts of the drawing.
>- less essential, but in fact very handy: preservation of connection.
>  If I move one part of the drawing, the lines that connect that part to the
>  rest of the drawing, stay connected.
>
>Ideally I want the tool so general and flexible that it is comfortable to
>draw electronic schematics, flow charts, logic diagrams, data flow diagrams
>and block diagrams with it. 
>
>I just want to know which of the programs offer which of the features on my
>whishlist and are there any other programs? How demanding are the programs
>with respect to disk space, memory and CPU usage? Are any of the programs
>known to work on Linux with monochrome X?

In the list you mentioned, tgif handles everything except rotation and
any size text.  It only supports 90 degrees rotation.  Currently, it
supports 11 (X11R4 standard) font sizes.  However, it allows arbitrary
scaling of the entire drawing.  Effectively, it allows any font sizes, but
you can only have 11 different sizes per drawing.

Tgif takes up 850K (compiled with -O option) on a SPARCstation.  I was told
that it compiles under Linux, but I haven't tried it yet.  It works with
both color and monochrome X.
-- 
Bill Cheng // UCLA Computer Science Department // (310) 645-8328
3564-C Boelter Hall // Los Angeles, California 90024 // USA
william@CS.UCLA.EDU      ...!{uunet|ucbvax}!cs.ucla.edu!william

Newsgroup: comp.windows.x
Document_id: 67482
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: XDM, Xkernel, and olwm


	Greetings,
	We have a network of ~20 Sun Workstations, running SunOS 4.1.1
and Openwindows 3.  7 of these are Sun 3's that we have modified to
run Seth Robertson's xkernel image, effectively turning them into
xterminals.  We use xdm (X11R4) to manage the displays.

	When we had 3 xkernel machines, things worked fine, but when
we installed 4 more last weekend, we appear to have found a weakness.
With 7 clients to 1 Sparc 2, the Sparc 2 window manager is eventually
getting munged.  

	Let me try to be precise:  The user sitting at the machine
that does all the actual processing for these xterminals is having
control of his keyboard and screen yanked away.  (When this was the
department chair, it was kind of cute).  We poked at xdm for a few
days and are satisfied that it is not at fault.  Our current theory is
that olwm (the Sun version) was not meant for running multiple copies
on one machine (which is what happens -- the console user runs olwm,
and every xterminal logged in has olwm running on the xterminal
server). 

	Has anyone had any prior experience with this sort of behavior?
	Can anyone shoot obvious holes in this theory?
	How about obvious gimmes?
	And, of course, any ideas on how to solve it?

	Any ideas are greatly appreciated.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d++ -p+ c+++ m*/m- s++/- g+ w+/w-- x+
  email for explanation if interested...

Newsgroup: comp.windows.x
Document_id: 67483
From: euamol@eua.ericsson.se (Mats Larsson)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

In article 28858@cas.org, lwv26@cas.org (Larry W. Virden) writes:
>In article <0frolV200awVI3IV4s@andrew.cmu.edu> "Derrick J. Brashear" <db74+@andrew.cmu.edu> writes:
>:
>:I got the following today from Gary Risebrough and it worked fine:
>:
>:Excerpts from mail: 29-Apr-93 Re: ol{v}wm 3 virtual keybo..
>:ITO2@aodc.gov.au (554)
>:
>
>:> I have :
>:> > OpenWindows.KeyboardCommands:   Full
>:> > OpenWindows.VirtualGrabKeys :   False
>:
>:> which seems to work.
>:
>
>Where can I find man pages about VirtualGrabKeys resource - it doesn't
>show up in my OpenWindows 3.0 man pages...

VirtualGrabKeys is not an OW resource. It belongs to
olvwm(1).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mats Larsson                   | Email: Mats.Larsson@eua.ericsson.se
ELLEMTEL Telecom Systems Labs  | Phone: +46 8 727 3658
S-125 25 Alvsjo, SWEDEN        | Fax:   +46 8 727 4168
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
Document_id: 67484
From: manli@cs.uh.edu (Man Lung Li)
Subject: malloc problem

How do you solve the problem when the message "Cannot perform malloc"
shows for XtCreateManagedWidget call?

I have the application written in X11R5 running on DECstation using
Athena widgets.  As soon as I added codes to do Remote Procedure Call,
the program refused to work.  I also have my program working using
just Xlib calls with RPC.  My executable code is about 1.4M and I don't
have any idea how much memory is the DECstation 3100/5100.

Any help will be appreciated.  Thanks.

-- 
----------------------------------------------------------------------
Man L. Li (manli@cs.uh.edu)
Dept. of Computer Science
Univ. of Houston, Houston,TX 77204-3475

Newsgroup: comp.windows.x
Document_id: 67485
From: uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607)
Subject: xdm configuration

---
Hello!

We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
comming up with a chooser menu with different machines on it (works) an then
connect to them. But the only connection works is localhost!
An 'X -indirect <machine>' works very well!
The configuration:

		- starting the 'xdm' at boot time with no servers specified
		   in Xservers
		- starting the X-server at boot time with X -indirect localhost

	     ---> the chooser menu appears with the machines named in
		  Xacces bye
			'*	CHOOSER <machine1> <machine2> ... BROADCAST	
		- the number of users on this machines and the load is 
		    displayed correct

		- selecting an other machine than my own host the X-server
		   starts and nothing happens, after a time out the CHOOSER menu
		   appears again.

I know the xdm bug in X11R4, but all machines running X11R5

Please help
			Lars


-------------------------------------------------------------------------------

Lars Koeller			    E-Mail: uphya001@odie.Uni-Bielefeld.de
Universitaet Bielefeld (Germany)	    uphya001@dave.hrz.Uni-Bielefeld.de
Fakultaet fuer Physik / D0-231	    Phone:  +49 521-106-5375
Universitaetsstr. 25		    Fax:    +49 521-106-5244
4800 Bielefeld 1		    Telex:  932 362



Newsgroup: comp.windows.x
Document_id: 67486
From: uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607)
Subject: xdm configuration

---
Hello!

We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
comming up with a chooser menu with different machines on it (works) an then
connect to them. But the only connection works is localhost!
An 'X -indirect <machine>' works very well!
The configuration:

		- starting the 'xdm' at boot time with no servers specified
		   in Xservers
		- starting the X-server at boot time with X -indirect localhost

	     ---> the chooser menu appears with the machines named in
		  Xacces bye
			'*	CHOOSER <machine1> <machine2> ... BROADCAST	
		- the number of users on this machines and the load is 
		    displayed correct

		- selecting an other machine than my own host the X-server
		   starts and nothing happens, after a time out the CHOOSER menu
		   appears again.

I know the xdm bug in X11R4, but all machines running X11R5

Please help
			Lars


-------------------------------------------------------------------------------

Lars Koeller			    E-Mail: uphya001@odie.Uni-Bielefeld.de
Universitaet Bielefeld (Germany)	    uphya001@dave.hrz.Uni-Bielefeld.de
Fakultaet fuer Physik / D0-231	    Phone:  +49 521-106-5375
Universitaetsstr. 25		    Fax:    +49 521-106-5244
4800 Bielefeld 1		    Telex:  932 362





Newsgroup: comp.windows.x
Document_id: 67487
From: rryan@panix.com (Rob Ryan)
Subject: Efficient PC Clients

We're looking at various X11 clients for PC's and we're looking for some
information about the relative efficiency of different products.  Are any
notably efficient (fast)?  Are any notably inefficient?  I assume that a
Graphics Accelerator makes them significantly faster (right now I'm looking
at ico running on Xoftware/32 for Windows sitting on the Distinct TCP/IP
platform, and it's (not surprisingly) much slower than ico running on the
Sparc10's console.  What are the key ways of improving performance for
PC (presumably Windows) clients?

Also, what about async solutions?  (Yes, I appreciate that it will be 
*much* slower even with V.42bis.)  I'm in the process of installing PPP
(with header compression).  How does that compare to cslip?  I've seen
a product called XRemote by NCD that promises to be pretty efficient, but
are there comparable products out there?  If we're looking for efficiency
for async, PC clients, what should we be looking at in addition to standard
PPP w/ compression and XRemote?

Any information would be greatly appreciated.  I'm still taking in all
the information in the faq, but any tips about the relative efficiency
of various product offerings would be great.  (I get the impression
that discussions about speed are largely application specific, but
that not withstanding, any comments would be appreciated.)  Thanks.

-- Rob
-- 
Rob Ryan, System Constructs Inc.
    rryan@panix.com

Newsgroup: comp.windows.x
Document_id: 67488
From: sirosh@cs.utexas.edu (Joseph Sirosh)
Subject: X Design choice for color handling: question

Most graphics systems I have seen have drawing routines that also specify
a color for drawing, like

Drawpoint(x,y,color) or Drawline(x1,y1,x2,y2,color) or
Fillrectangle(x1,y1,x2,y2,color) 

With X, I have to do something like 
XSetForeground(current_color)
XDrawPoint(d,w,x,y)

Why split this into two functions? Why did X designers decide to not associate
the color with the object being drawn, and instead associate it with the
display it is being drawn on?

Joseph Sirosh


Newsgroup: comp.windows.x
Document_id: 67489
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr29.102341.13820@comp.lancs.ac.uk>
julian@comp.lancs.ac.uk (Julian G. Self) writes:
|> Wasn't the shareware fee a "suggestion" by John?
|> Is so then it's up to the individual to make the choice whether or not to
|> honour it and part with money.  Personally if I was in his position I would
|> do exactly the same thing, John has obviously put in lot of time and effort
|> into xv and why shouldn't he receive some money for it.
|> 
|> Just my pennies worth
|> 
|> (Keep up the good work John)

The fee is a suggestion for an individual but licensing is mandatory
for commercial, government, and institutional users. I wonder how many
users of xv own the system that it runs on.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
Document_id: 67490
From: sirosh@cs.utexas.edu (Joseph Sirosh)
Subject: Encapsulated Postscript and X

How do I view .eps files on X? I have an image in color encapsulated
postscript, and need to view it on my screen.

Are there any utilities that will let me convert between encapsulated
postscript and plain postscript?

Joseph Sirosh

Newsgroup: comp.windows.x
Document_id: 67491
From: rvloon@cv.ruu.nl (Ronald van Loon)
Subject: Re: XV 3.00 has escaped!

In <46464@sophia.inria.fr> muller@mafalda.inria.fr (Christophe Muller) writes:


|"> It is interesting to look at the change(s) of mind that John has had.
|"
|"Very interested indeed! This is against this kind of "changes" that the GNU
|"COPYLEFT is protecting us.
|"
|"Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
|"shows because of its "-loop" feature that display does not have (display
|"from the *wonderful* ImageMagick package! :-D), but I think I will implement
|"it myself (even a shell-script should do the job) and forget xv.
|"
|"Cheers,
|"Christophe.
|"-- muller@simulog.fr
|"
|"     =    Are you the police?  --  No ma'am, we're musicians.    =

JUst use xloadimage instead (or xli).
-- 
Ronald van Loon     | In theory, there is no difference 
(rvloon@cv.ruu.nl)  | between theory and practice.
3DCV Group, Utrecht |   
The Netherlands     | In practice however, there is.

Newsgroup: comp.windows.x
Document_id: 67492
From: bnoble+@cs.cmu.edu (Brian Noble)
Subject: Re: X Server scanline padding question


Figured it out.  The answer lies in mit/server/ddx/mfb/mfbcustom.h.

Brian

Newsgroup: comp.windows.x
Document_id: 67493
From: gdmr@dcs.ed.ac.uk (George Ross)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun>, fwr8bv@fin.af.MIL writes:
> I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
> SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
> variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
> the .login file doesn't get executed and therefore neither the olwm
> root-window nor my applications know about these variables.

One usual suggestion is to put everything into your every-time shell rc-file
instead of your login-only one, which is fair enough if you only have a few
users who know what they're doing.  If you have several hundred users who do
what the books tell them, though, then it's confusing at best.  Another is to
have your xterms run login shells, but that still leaves the window manager
and the things that get started from its menus with the wrong environment.

Our alternative is that instead of having xdm run the client startup scripts,
it runs the user's favourite shell as a login shell, and has *it* then run the
rest of the startup scripts.  That way the user's usual environment gets set
up as normal and inherited by everything.  You can find an almost-current copy
of our scripts and things in contrib/edinburgh-environment.tar.Z, available
from the usual places. 
-- 
George D M Ross, Department of Computer Science, University of Edinburgh
     Kings Buildings, Mayfield Road, Edinburgh, Scotland, EH9 3JZ
Mail: gdmr@dcs.ed.ac.uk      Voice: 031-650 5147      Fax: 031-667 7209

Newsgroup: comp.windows.x
Document_id: 67494
From: greg@Software.Mitel.COM (Gregory Lehman)
Subject: Looking for drawing packages

Greetings.

I am developing an application that allows a *user* to interactively
create/edit/view a visual "model" (i.e. topology) of their network, and
I was wondering if anyone knew of any builder tools that exist to
simplify this task.

In the past I have used Visual Edge's UIM/X product to develop other
GUIs, so I am familiar with UIMSs in general.

The topology will support objects and connecting links.  Once the
topology is created, I want to provide the user with capabilities to
support grouping, zooming, etc.

I am looking for some form of a higher abstraction other than X drawing
routines to accomplish this.  Specifically, the zooming and grouping
aspects may prove difficult, and certainly time consuming,  if I have
to "roll my own".

Suggestions?

-greg

greg@software.mitel.com

Newsgroup: comp.windows.x
Document_id: 67495
From: mppa3@syma.sussex.ac.uk (Alan Richardson)
Subject: xvertext version 5.0 released

Now available: xvertext 5.0 
---------------------------

Another day, another xvertext release...

Summary                                  
-------
xvertext provides you with several functions to draw strings at any angle in   
an X window (previous versions were limited to vertical text). 

What's new since 4.0?
---------------------
o Existing bitmap fonts can be magnified to give reasonable fonts at large
  sizes.
o Bounding boxes can be obtained.
o The GC's stipple bitmap is honoured.
o Font IDs can be cached when font names are unavailable.
o An Imakefile is present.
o The demos are better (including a ransom note like the 
  comp.sources.postscript one)

Where can I get it? 
-------------------
comp.sources.x (soon...)
export.lcs.mit.edu : contrib/xvertext.5.0.shar.Z  (now)

-- 
Alan Richardson,                             * "You don't have to be *
School of Maths & Physical Sciences,         *  old to be wise"      *
Univ. of Sussex, Brighton BN1 9QH, ENGLAND   * ******Judas Priest*****
UK: mppa3@uk.ac.sussex.syma         elsewhere: mppa3@syma.sussex.ac.uk

Newsgroup: comp.windows.x
Document_id: 67496
From: hwn@cci.dk (Henrik W. Nielsen)
Subject: Help. BadMatch making 24bit win on 8bit server !!



I'm trying to make a 24 bit window using XCreateWindow on a 8 bit
PseudoColor server. As far as I know this should be possible if you
server supports a TrueColor or DirectColor visual. I'm using a
Sun IPC with a RasterFLEX card.

Running xdpyinfo gives:
...
screen #0:
  dimensions:    1152x900 pixels (352x275 millimeters)
  resolution:    83x83 dots per inch
  depths (4):    1, 5, 8, 24
  root window id:    0x80083
  depth of root window:    8 planes
  number of colormaps:    minimum 1, maximum 6
  default colormap:    0x80080
...
  number of visuals:    8
  default visual id:  0x80079
...
  visual:
    visual id:    0x80079
    class:    PseudoColor
    depth:    8 planes
    size of colormap:    256 entries
    red, green, blue masks:    0x0, 0x0, 0x0
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x8007a
    class:    TrueColor
    depth:    24 planes
    size of colormap:    256 entries
    red, green, blue masks:    0xff, 0xff00, 0xff0000
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x8007b
    class:    DirectColor
    depth:    24 planes
    size of colormap:    256 entries
    red, green, blue masks:    0xff, 0xff00, 0xff0000
    significant bits in color specification:    8 bits


My code looks like this:

if ((Xio.DspPtr = XOpenDisplay(NULL)) == NULL)
    logexit(1, "Cannot connect to X server %s", XDisplayName(NULL));

Xio.Scr = DefaultScreen(Xio.DspPtr);   /* use this screen                 */

if (XMatchVisualInfo(Xio.DspPtr, Xio.Scr, 24,
		     DirectColor, &Xtern.ColorInfo))
{
   memset(&SetWinAttrib, 0, sizeof(XSetWindowAttributes));
   Xio.GSwin = XCreateWindow(Xio.DspPtr, RootWindow(Xio.DspPtr, Xio.Scr),
			     x, y, w, h, 0, 24, InputOutput,
			     Xtern.ColorInfo, 0, &SetWinAttrib);
}


This results in a BadMatch error. Can anyone please tell me why ?


------------------------------------------------------------------------------
| Henrik Winther Nielsen                                     CCCCCCC  II  
| Basic Development                                         CC  CCCC      
| CCI Europe                   Mail:  hwn@cci.dk            CC CC     II  
| Oester Parkvej 9             Phone: 86295588 (361)        CC  CCCC  II  
| DK-8270 Hoejbjerg                                          CCCCCCC  II  
| Denmark                                                    e u r o p e       
 ------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67497
From: oj@world.std.com (Oliver Jones)
Subject: Re: X Design choice for color handling: question

In article <lu1oftINNnfk@cascais.cs.utexas.edu> sirosh@cs.utexas.edu (Joseph Sirosh) writes:
>
>...Why did X designers decide to not associate
>the color with the object being drawn, and instead associate it with the
>display it is being drawn on?

In X10, the drawing attributes were bundled into drawing
requests;  that is, the server's drawing model was stateless.

This caused problems with performance and network traffic,
so the X11 redesign included the graphic context to codify
the drawing state.  Most application designers who want to
draw things in several different colors create a GC for
each color during initialization, then pass the GC id in
each drawing request.

For more information see Scheifler and Gettys's article
in the 1986 ACM Transactions on Graphics.



Newsgroup: comp.windows.x
Document_id: 67498
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: x11perfcomp visualization ?


Hi,

is there any script/program/thelike already existing which could transform
the output of x11perfcomp (a huge table) into a nice 3d'ish diagram or
graph by producing postscript output from x11perfcomp input ?

Maybe someone has already written such beast ...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67499
From: sjg@phlim.ph.kcl.ac.uk (Simon Gornall)
Subject: Re: XV 3.00 has escaped!

In article <1993Apr30.084145.20953@cv.ruu.nl>, rvloon@cv.ruu.nl (Ronald van Loon) writes:
} In <46464@sophia.inria.fr> muller@mafalda.inria.fr (Christophe Muller) writes:
} 
} 
} |"> It is interesting to look at the change(s) of mind that John has had.
} |"
} |"Very interested indeed! This is against this kind of "changes" that the GNU
} |"COPYLEFT is protecting us.
} |"
} |"Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
} |"shows because of its "-loop" feature that display does not have (display
} |"from the *wonderful* ImageMagick package! :-D), but I think I will implement
} |"it myself (even a shell-script should do the job) and forget xv.

We too will have to stop using it. Shame really - it was rather nice.
Still, I have no objection to the owner claiming money for legit. 
work he's put in. We'll just go back to the older versions of Xv.

Simon.

Newsgroup: comp.windows.x
Document_id: 67500
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: XV 3.00 has escaped!



Will there be no chance to get the Author of this _REALLY_ superb program
to remove the 'institutional' point in his license statement ?
Or at least to say 'except educational ones' at this ?

I understand that use of this software by either commercial or governmental
users should be result in a donation to its creator, but the everytime
rare on money universities, schools or whatever else institutions should
not be restricted.

If the situation stays as is and the Author explicitely states that
he treats universities and schools as institutions in this context,
i'll have to fallback to xv 2.21 here. Maybe our disk capacity will
soon be dead, when every user has a copy of xv-3.00 in his home dir...

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67501
From: gowen@jade.tufts.edu (G. Lee Owen)
Subject: Re: Encapsulated Postscript and X


> How do I view .eps files on X? I have an image in color encapsulated
> postscript, and need to view it on my screen.

	Several ways are available -- pageview (which I think came
with our system, so I can't point), ghostview (with ghostscript), and
the new xv 3.00 package all do so.  I recommend the latter two,
especially xv if you want to do any conversion.

> Are there any utilities that will let me convert between encapsulated
> postscript and plain postscript?
	I'm not sure offhand, but I will attempt to mail you the
comp.lang.postscript FAQ, which has a list of utilities.

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d++ -p+ c+++ m*/m- s++/- g+ w+/w-- x+
  email for explanation if interested...

Newsgroup: comp.windows.x
Document_id: 67502
From: aep@world.std.com (Andrew E Page)
Subject: Encyclopedia/Directory of Widgets?

  Is there such a document either in the Bookstores or possible
on an ftp site somewhere?  Nothing really fancy, just something
that gives a listing of the available widgets, and the resources
that are pertinant to them, and what flavors of Motif they
occur in.



-- 
Andrew E. Page   (Warrior Poet) |   Decision and Effort The Archer and Arrow
Mac Consultant                  |     The difference between what we are
Macintosh and DSP Technology    |           and what we want to be.

Newsgroup: comp.windows.x
Document_id: 67503
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: chars of big fonts are shown partially

Hi all,

I wrote a small application which uses pixmaps copied into a window
to show some drawings. This works perfectly for all kind of objects
expect large fonts. What happens on the screen is that the right
half of the font is not shown. The way I create these things is
quite simple; some aggregated code:

XFillRectangle(Disp, Pixs, AnyColor, 0, 0, Width, Height);
XDraw[Line|Rect|String](...);
XCopyArea(Disp, Pixs, Win, 0, 0, Width, Height, 0, 0);

I am using a RS6K 340 with BOS 3.2.

The question is:
  is this a bug in the AIX X-server (may be some PTFs), or did I do
  something wrong within my code??

Sorry for the cross-posting, but I really do not know what kind of
error it is.


Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1 (Germany)

Tel: +49 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
Document_id: 67504
From: schietke@unitas.or.uni-bonn.de (Juergen Schietke)
Subject: extension to damaged chars of big fonts

Sorry about the garbage code, the following is used of course:

XSetForeground(Disp, PixGC, BackgroundColor);
XFillRectangle(Disp, Pixs, PixGC, 0, 0, Scr_width, Scr_height);
XSetForeground(Disp, PixGC, ForegroundColor);
XDraw[Line|String|Rectangle](Disp, Pixs, PixGC, ...);
XCopyArea(Disp, Pixs, Win, PixGC, 0, 0, Win_width, Win_height, 0, 0);

Juergen Schietke
Research Insitute for Discrete Mathematics
University of Bonn
Nassestr. 2
5300 Bonn 1

Tel: (+49) 0228 738786
E-Mail: schietke@or.uni-bonn.de

Newsgroup: comp.windows.x
Document_id: 67505
From: atae@spva.ph.ic.ac.uk (Ata Etemadi)
Subject: Re: XV 3.00 has escaped!

In article <BGLENDEN.93Apr29182711@colobus.cv.nrao.edu>, bglenden@colobus.cv.nrao.edu (Brian Glendenning) writes:
-| 
-| Alas, we too will have to stop using it.
-| 
-| Brian
-| --
-|        Brian Glendenning - National Radio Astronomy Observatory
-| bglenden@nrao.edu          Charlottesville Va.           (804) 296-0286

It says in the licence that non-profit organisations have the rights to
copy, use, distribute etc.. Does that not cover NRAO ? I sure hope it
covers us. Please someone let me know if I have to buy a licence.

	best regards
		Ata <(|)>.
-- 
| Mail          Dr Ata Etemadi, Blackett Laboratory,                          |
|               Space and Atmospheric Physics Group,                          |
|               Imperial College of Science, Technology, and Medicine,        |
|               Prince Consort Road, London SW7 2BZ, ENGLAND                  |
| Internet/Arpanet/Earn/Bitnet atae@spva.ph.ic.ac.uk or ata@c.mssl.ucl.ac.uk  |
| Span                              SPVA::atae       or     MSSLC:atae        |
| UUCP/Usenet                       atae%spva.ph.ic@nsfnet-relay.ac.uk        |

Newsgroup: comp.windows.x
Document_id: 67506
From: glb@uvacs.cs.Virginia.EDU (Gina Bull)
Subject: Need patches to use /dev/cgtwelve0

The good news is we just got two Sparc10's. The bad news is
that /dev/cgtwelve0 is apparently not supported in X11R4 or
X11R5. Does anyone know of a patch (and how I can obtain it)
to either X version that will enable us to use X11 on our
Sparc10's? 

adTHANKSvance
Gina

Newsgroup: comp.windows.x
Document_id: 67507
From: mdb@rossby.colorado.edu (Mark Borges)
Subject: Re: SUMMARY: virtual mouse in ol{v}wm

>>>>> Regarding Re: SUMMARY: virtual mouse in ol{v}wm;
>>>>> euamol@eua.ericsson.se (Mats Larsson) adds:
: VirtualGrabKeys is not an OW resource. It belongs to olvwm(1).

Not only that, the olvwm(1) (version3.3) man-page says it's called

     GrabVirtualKeys " (Boolean)"
          This resource controls whether the keys below marked as
          involving  grabs  will  be  active  or  not.   If  this
          resource is set to False, then  none  of  the  bindings
          marked  below  with  an  asterisk  will ever be active.
          Default value:  True



Newsgroup: comp.windows.x
Document_id: 67508
From: dulimart@podunk.cps.msu.edu (Hansye S. Dulimarta)
Subject: -geometry option.


Greetings,
  I need some help with the detail of geometry specification.  I have a
program that uses Xlib to create a simple window.  I tried to hard code
the x,y location in XCreateWindow but it didn't work.  I also tried
XSetStandardProperties, XSetWMHints with no luck.  Could somebody
enlighten me on this subject.

Hans.
--
 Hans Dulimarta [dulimart@cps.msu.edu]
 Pattern Recognition & Image Processing Laboratory
 Department of Computer Science
 Michigan State University


Newsgroup: comp.windows.x
Document_id: 67509
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: X Design choice for color handling: question


In article <lu1oftINNnfk@cascais.cs.utexas.edu>, sirosh@cs.utexas.edu (Joseph Sirosh) writes:
|> Most graphics systems I have seen have drawing routines that also specify
|> a color for drawing, like
|> 
|> Drawpoint(x,y,color) or Drawline(x1,y1,x2,y2,color) or
|> Fillrectangle(x1,y1,x2,y2,color) 
|> 
|> With X, I have to do something like 
|> XSetForeground(current_color)
|> XDrawPoint(d,w,x,y)
|> 
|> Why split this into two functions? Why did X designers decide to not associate
|> the color with the object being drawn, and instead associate it with the
|> display it is being drawn on?

For flexibility. Anyway, what you say is not really true. The color information
is associated with a GraphicsContext, not with a display, and the GC _IS_
a parameter to the drawing routines.

So, if you need to fast switch between green dotted lines and blue ones of
width 2, you can make 2 GCs for those cases and then simply do

XDrawLine(dpy,win,gc_red,x1,y1,x2,y2);
XDrawLine(dpy,win,gc_blue,x3,y3,x4,y4);

for this effect.

This is eventually more complicated to do for the programmer, but also much
more efficient and flexible. You would not include all the other parameters
like line pattern, with, cap and joinstyle, drawmode and so on in every
drawing call, so why do it for color ? BTW, stay away from XDrawPoint()
if you don't really need it (to draw RANDOM points), for image transfers
there are Image routines.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67510
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: Encapsulated Postscript and X


EPS _IS_ plain postscript. It is only wrapped by some comments and stripped
of any dubious commands for compatibility. You can simply do

%!

save gsave
/showpage {} def

% Include eps file here

grestore restore

showpage

% end of file

and this way show it on it's natural page position and size.

Programs may use the %%BoundingBox: comment in the EPS file to do
arbitrary scale, rotate and translate to include it in more complicated
ways than above.

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 67511
From: soenke@wiwi12.uni-bielefeld.de (Soenke Voss)
Subject: How can I get a window to draw in ?


I have the task to program a X application for the first time and have some severe difficulties creating a window in which I can draw something.
Unfortunately some basic books on the topic of X application programming are not available to me for the moment.

I am running a hp720 with hpux 8.07, VUE and X11R4 using Xt anbd Xaw.

What I did until now:
I initialized the X Intrinsics cxreating a top level widget with XtAppInitialize. I passed as a application_class name 'commandWidgetClass'.
Then I set the argument values for window height and width using XtSetArg and
passed it to the toplevel widget with XtSetValues.
When I call XtRealizeWidget, I get a window of the specified size, but I have no idea how I can draw something in it.

Can anybody send me some help and perhaps some basic information how to use the widgets ?
In which situation it is useful to use them and in which not ?

Thanks very much in advance

Soenke

--------------------------------------------------------------------------------Soenke Voss                                                 Faculty of Economics
soenke@wiwi12.uni-bielefeld.de                           University of Bielefeld
                                                                         Germany  
--------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67512
From: meunier@inf.enst.fr (Sylvain Meunier)
Subject: Re: XV 3.00 has escaped!

In article <BGLENDEN.93Apr29182711@colobus.cv.nrao.edu>, bglenden@colobus.cv.nrao.edu (Brian Glendenning) writes:
|> 
|> Alas, we too will have to stop using it.
|> 
|> Brian
We where following version of xv and I have been very surprise to discover that
the new version is a shareware: What a pitty !!! :-( .
What I found on the Inthernet was the freeware. I make myself a freeware and
I spent long time on it but I don't plain to make paid to use it. I think
if evrybody spent some time to make freeware, evrybody will be paid by the use
of other freeware.

Here we will stay with XV 2 and drop XV 3.

-- 
	S. Meunier		E-Mail: meunier@inf.enst.fr

Newsgroup: comp.windows.x
Document_id: 67513
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Encyclopedia/Directory of Widgets?


The Only directory I know of that lists commercial and non-commercial
widgets is the ICS Widget Data book.  ICS sells the widgets for various
prices.  There are also some public domain widgets in the delivery. 

The ICS Widget databook is a subscription kind of thing, where 
you pay some nominal fee, get a cd with the widgets and then you 
can use the public domain widgets freely, and selectively activate 
widgets which you want to purchase the right to use from them. 
The nice thing about this is that you can purchase whole sets of widgets
such as those used in dataviews.  I dont know there pricing schemes
but It is often better to buy than to redevelop the more complex 
widgets, especially if you only one customer to distribute to. 

This is the extent that I know about them except that I got their 
databook catalog  and it looked impressive (lots o' widgets there)

I dont work for ICS or have any widgets being sold by them.
hope this helps you.
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 67514
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

I'm trying to get MH compiled (and then xmh) and I'm having some problems.
I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
anyone have any suggestions on what I can add to get it to compile??

===========

bin             /usr/local/bin
debug           off
etc             /usr/local/lib/mh
mail            /usr/mail
mailgroup       mail
mandir          /usr/man
manuals         gen
chown           /bin/chown
editor          prompter
remove          /bin/mv -f
# if no TCP/IP sendmail is available: change mts entry to sendmail
mts             sendmail/smtp
bboards         off
bbdelivery      off
bbhome          /usr/spool/bboards
mf              off
pop             off
# options       SEE BELOW
cc              gcc
ccoptions       -O -ansi -D__STDC__=0 -DSYSV -DSYSV386 -DSCO -D_SVID
curses          -lcurses
ldoptions       -s
ldoptlibs
lex             lex
sprintf         int
sharedlib       off
slibdir         /usr/local/lib
oldload         off
ranlib          off

# define BIND only of the BSD4.3 named (TCP/IP) is used
# define SOCKETS only if the system has BSD4.3 sockets (TCP/IP)
options         ATZ BIND DUMB MHE MHRC MORE='"/usr/bin/more"'
options         OVERHEAD SHADOW SOCKETS SYS5 SYS5DIR
options         TZNAME WHATNOW

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
Document_id: 67515
From: paw@coos.dartmouth.edu (Pat Wilson)
Subject: Re: XV 3.00 has escaped!


> * Commercial, government, and institutional users MUST register their
> * copies of XV, for the exceedingly REASONABLE price of just $25 per
> * workstation/X terminal.  Site licenses are available for those who
> * wish to run XV on a large number of machines.  Contact the author
> * for more details.
>...

I would have appreciated an announcement of the policy change - 
Dartmouth will not be able to run xv 3.0, and I'm probably going 
to have to take v2 off line (I somehow missed the "shareware"
designation in the README of v2, and didn't realize that we were
supposed to register).

I also debate whether this, with the new "institutions must pay"
policy belongs in the contrib directory on export - to me, "contrib"
means "contributed" (i.e. no strings, except copyright) attached.

--
Pat Wilson
Systems Manager, Project NORTHSTAR
paw@northstar.dartmouth.edu

Newsgroup: comp.windows.x
Document_id: 67516
From: jbrandt@hns.com (Jim Brandt)
Subject: Multiple Heads on Sparc-2

I have a SPARC-2 with 2 CGSIX cards in it.  I'd like
to have the R5 server recognize the second card.


I mknod created a /dev/cgsix1 device, but when I brought up the
server, the second device was ignored.  

How do I setup the second card?


Note:  If I borrow a cgthree card, and put a cgthree and
a cgsix card in the same SPARC-2 box, the R5 server finds
the second card. I then set the DISPLAY to the
second card, and start a second window manager.  

Worse case is I trade cards with someone, but maybe someone
out there has seen this problem already...


email is preferred... post if you must...

Thanks in advance....


Jim

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jim Brandt
Hughes LAN Systems/Hughes Network Systems
550 South Winchester Blvd         
Suite 406                          
San Jose, CA 95128                /-----------------------
_________________________________/ email: jbrandt@hns.com
                                   email: jbrandt@hls.com
_________________________________  Voice: (408) 246-5590
                                 \ Fax:   (408) 246-2306
                                  \-----------------------
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

Newsgroup: comp.windows.x
Document_id: 67517
From: pv@semt1.smts.cea.fr (Pierre Verpeaux)
Subject: Re: xdm configuration

In article <C6ADru.JpF@hermes.hrz.uni-bielefeld.de>, uphya001@odie.uni-bielefeld.de (Lars Koeller,D0-231/258,1065375,0526189607) writes:
|> ---
|> Hello!
|> 
|> We want to configure our X11R5 sytem (i486 33Mhz running BSD-like UNIX)
|> comming up with a chooser menu with different machines on it (works) an then
|> connect to them. But the only connection works is localhost!
|> An 'X -indirect <machine>' works very well!
|> The configuration:
|> 
|> 		- starting the 'xdm' at boot time with no servers specified
|> 		   in Xservers
|> 		- starting the X-server at boot time with X -indirect localhost
|> 
         ...........   more deleted


You need to start the X-server with -indirect its_name.

If you start it with -indirect localhost, it use the loopback adress as
it's adress. So when it try to contact another host, this one try to answer
on its loopback adress. Not good.

Remember that every machine has the adress 127.0.0.1 on the loopback network.

-- 
Pierre Verpeaux 	DMT/SEMT/LAMS		(1)69.08.65.42	

Newsgroup: comp.windows.x
Document_id: 67518
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: Encyclopedia/Directory of Widgets?


I forot to mention the free widget foundation which maintains a freely
available set of widgets.  Info on this group can be gotten from 
free-widgets-request@kazoo.cs.uiuc.edu   this list is maintained by volunteers
and you may subscribe to a mailing list which discusses various 
aspects of using and abusing these widgets

Brian
-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 67519
From: rgb@roadnet.ups.com (Rudy Bonefas)
Subject: Need X Win PopUp Menu package


Rather than write my own, can anyone direct me to a package that will let me create
cascaded popup menus in X windows.  For reasons of portability, the package should 
not rely on any X toolkit other than XLib and the XT Intrinsics.  Something written
in C++ would be nice, too.

Thanks



Newsgroup: comp.windows.x
Document_id: 67520
From: adrian@ora.COM (Adrian Nye)
Subject: Re: Cannot create 24 plane window (summary)


> I got several answers, the most complete was from Errol Crary 
> (errolc@tv.tv.Tek.com):
> >I have just looked at the R4 server listings (.../mit/server/dix/window.c )
> >and there are several ways in which you can get a BadMatch error, even
> >though my O'Reilly book only says "BorderWidth is nonzero for InputOnly".

As of the third edition (June 92) the O'Reilly book (Vol 2) under
XCreateWindow says:

BadMatch
	Any invalid setting of a window attribute
	Attribute besides win_gravity, event_mask, do_not_propogate+mask,
	    override_redirect, or cursor specified for InputOnly window
	depth non-zero for InputOnly
	Parent of InputOutput is InputOnly
	border_width is non-zero for InputOnly
	depth or visual invalid for screen
	width or height is 0


Adrian Nye
O'Reilly and Associates

Newsgroup: comp.windows.x
Document_id: 67521
From: gilley@decvaxrobins.af.mil
Subject: Re: Looking for drawing packages


In article <14569@greg>, greg@Software.Mitel.COM (Gregory Lehman) writes:
|>Path: wrdis01!gatech!howland.reston.ans.net!usc!cs.utexas.edu!utnut!torn!nott!uotcsi2!geovision!software.mitel.com!greg
|>From: greg@Software.Mitel.COM (Gregory Lehman)
|>Newsgroups: comp.windows.x,comp.windows.x.motif
|>Subject: Looking for drawing packages
|>Message-ID: <14569@greg>
|>Date: 27 Apr 93 20:08:10 GMT
|>Organization: Mitel. Kanata (Ontario). Canada.
|>Lines: 24
|>Xref: wrdis01 comp.windows.x:36152 comp.windows.x.motif:13750
|>
|>Greetings.
|>
|>I am developing an application that allows a *user* to interactively
|>create/edit/view a visual "model" (i.e. topology) of their network, and
|>I was wondering if anyone knew of any builder tools that exist to
|>simplify this task.
|>
|>In the past I have used Visual Edge's UIM/X product to develop other
|>GUIs, so I am familiar with UIMSs in general.
|>
|>The topology will support objects and connecting links.  Once the
|>topology is created, I want to provide the user with capabilities to
|>support grouping, zooming, etc.
|>
|>I am looking for some form of a higher abstraction other than X drawing
|>routines to accomplish this.  Specifically, the zooming and grouping
|>aspects may prove difficult, and certainly time consuming,  if I have
|>to "roll my own".
|>
|>Suggestions?
|>
|>-greg
|>
|>greg@software.mitel.com
|>


You don't mention your platform but Digital has a custom widget, NetEd, 
which does exactly what you want to do. Cost is nominal 300 or so - call your
local office.  The widget is supported on a variety of platforms and I heard
rumblings of porting to Sun, etc. so it may be worth the check.

Charlie Gilley
Digital Equipment Corp.

Newsgroup: comp.windows.x
Document_id: 67522
From: Sean Michael Goller <wipeout+@CMU.EDU>
Subject: Porting Athena Widgets to Xview?

I checked the FAQ on this first, and no luck..


I need to convert the R5 Tree widget for use with xview v3.0. The
problem is the fact that xview uses their own event loop system, and I
was wondering if anyone had any tips (or converted source) on converting
these pups.


Thanks,
    Sean. (wipeout+@cmu.edu)


Newsgroup: comp.windows.x
Document_id: 67523
From: ajaffe@oddjob.uchicago.edu (Andrew Jaffe)
Subject: XArchie 2.0.1 Icon problems


Hi! I've just installed the new XArchie 2.0.1 and it all works
fine, except:

on our grayscale xterm the custom icons compiled into the
program don't work at all, but on the BW terminal it works fine.
I can set the icon to an xbm file with .twmrc, but that doesn't
give the neat-o change when busy action. (Other programs with
similar actions, e.g. xmail, xbiff, work fine.)

The X-interface author, George Ferguson, suggests it might be a
problem with the X intrinsics, but isn't willing to hack around
to fix it himself. But I know zero about X programming, so I
don't think I can find it. 

Does anyone out there know an obvious fix for the problem?

Andrew

-- 
Andrew Jaffe                                     ajaffe@oddjob.uchicago.edu
Dep't of Astronomy and Astrophysics, U. Chicago
5640 S. Ellis Ave                                (312) 702-6041
Chicago, IL 60637-1433                           (312) 702-8212 FAX

Newsgroup: comp.windows.x
Document_id: 67524
From: gml4410@ggr.co.UK (Lack Mr G M)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun>, fwr8bv@fin.af.MIL writes:
> I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
> SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
> variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
> the .login file doesn't get executed and therefore neither the olwm
> root-window nor my applications know about these variables.

     You  should  try  having  a  .xsession  script in $HOME to do these
things.  xdm will  start  up  your  process  using  the  system  version
(usually /usr/lib/X11/xdm/Xsession), which should check whether you have
your won and change to that if you do.  (Take a copy of the  system  one
and edit it). 

     Note, that this file requires "x" access to be set.

-------------------------- Gordon Lack ----------------------------------
The contents of this message *may* reflect my personal opinion.  They are
*not* intended to reflect those of my employer, or anyone else.

Newsgroup: comp.windows.x
Document_id: 67525
From: gperez@cec.uchile.cl (GonZaLo Perez C.)
Subject: Re: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

Jesse W. Asher (jessea@u013.me.vp.com) wrote:
>I'm trying to get MH compiled (and then xmh) and I'm having some problems.
>I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
>anyone have any suggestions on what I can add to get it to compile??

>===========

>bin             /usr/local/bin
..
>cc              gcc
>ccoptions       -O -ansi -D__STDC__=0 -DSYSV -DSYSV386 -DSCO -D_SVID

	I think the -traditional option to gcc would help.
	personally I used -traditional -O2 -funroll-loops to compile it
	on SUN4.1.1.

	hope this helps...

gonzalo
gperez@dcc.uchile.cl

Newsgroup: comp.windows.x
Document_id: 67526
From: rick@ee.uwm.edu (Rick Miller)
Subject: How to Make Your Own X-Face: in 0x000C Easy Steps!

Will someone who can 'see' the X-Face included in this header please reply
and tell me if it turned out okay?

I'm not all too sure about my viewing software.  I *hand*-converted this
thing in "vi" from a Sun rasterfile... what a pain!

For folks who haven't the slightest, it went like this:

-------------------------------------------------------------

		How to Make Your Own X-Face:
		   in 0x000F Easy Steps!

	1. Scan my Drivers' License into a *.PCX file.
	2. Use WinGIF to 'trim' my face out of the license,
		'reduce' it by half, and
		convert it to *.BMP.
	3. Use Paintbrush to touch up manually.
	4. Use WinGIF to 'reduce' it by half again.
	5. Use Paintbrush to touch up again.
	6. Use WinGIF to 'reduce' it by half *again*
		and convert it to *.GIF.

		[now over to the UNIX side...]

	7. Use Snapshot to convert the *.GIF to a Sun rasterfile.
	8. Use IconEdit to touch it up and
		convert it to an X bitmap.
	9. Use "vi" (yes, a *text* editor) to manually convert
		the rasterfile into the "Uncompressed X-Face" format.
		(Lots of global "ed" commands, and by the time you're
		 done you'll mirror hex bytewise in your sleep!!)

		[now over to the *Linux* side...]

	A. Use "compface" to convert it to what you see here:

 %:A<m@Dob}BO"'E",EEQGbn7qy(En7aS5U([k//"G{6^HIbY9X8~+PD($}6szF"&vVxCXSn
 8mw^0G#nVHE%W,`X"[j0s{r.~%zs:O|HFU=LwzYgH

	B. Try viewing it by whatever means you have available.
	C. Go back to step 9, but do it *right* this time.

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
Document_id: 67528
From: sigler@hp750.itg.ti.com (John Sigler)
Subject: Pixmap standard?


Our group is interested in using a 'pixmap' format for multi-colored
icons/buttons etc that is easily converted to and from other format from
'resource' files. Using pbmplus we can easily move to/from Xpm to our other
environments of MS-Windows and OS/2 PM :-(. We were wondering if Xpm or some
other format is under consideration to be used as a standard by the X
consortium for R6 as we would prefer to use whatever will be best supported by
X. 

Along the same subject line, is the reason the standard X pixmap is not used
because it doesn't have an associated colormap and other attributes? or is it
more involved? just wondering why there aren't editors for pixmaps out there
for the 'original' format.

Email replies preferred. Thanks in advance.
--
John Sigler     
Texas Instruments
email: sigler@hp750.itg.ti.com
Standard disclaimers go here.

Newsgroup: comp.windows.x
Document_id: 67529
From: Ed Hew <edhew@xenitec.on.ca>
Subject: biz.sco.* newsgroups/mlists FAQ (periodic posting)


              Evolution of SCO newsgroups and Mailing Lists
              ---------------------------------------------
   
   Many readers enjoyed the opportunity to obtain and contribute useful
   information on SCO Open Desktop since 1990 through the ancestral USENET
   newsgroup sco.opendesktop or it's companion mailing list.  Similarly,
   there was a demonstrated need for an information and discussion forum
   for SCO products in general.
   
   With the increasing demand for accessibility and for additional SCO
   newsgroups, many current contributors including those who have been
   active in circulating SCO related newsgroups and mailing lists felt
   that the readership would be best served by creating a biz.sco.*
   hierarchy to improve propagation (and hence availability) worldwide.

   biz.sco.{opendesktop,general,announce} were newgrouped May 1, 1991 in
   accordance with accepted procedure within "biz".  Given the content,
   this change relocated the "opendesktop" newsgroup to a more proper place
   within the established usenet news hierarchy and adds the new "announce"
   and "general" groups.  On Aug 1, 1991, the former "sco-list@uunet.uu.net"
   became "scogen" in keeping with established biz.sco.* naming conventions.

   biz.sco.binaries and biz.sco.sources were newgrouped on June 1, 1992
   to respectively accommodate SCO Xenix, UNIX and OpenDesktop specific
   binaries and source code.  The binaries and sources news groups are
   moderated, with moderator and submissions information and policy
   outlined in the periodic imformational postings in those newsgroups.
   Respecting USENET etiquite, these newsgroups are _not_ gated to
   mailing lists, but are archived on several nuucp and ftp hosts.

   biz.sco.magazine was newgrouped Dec 14, 1992, to provide a discussion
   area for the readers, writers and publishers of SCO Magazine.
   
   Subject to the USENET NEWS hierarchies carried by your upstream feed,
   you are now able to subscribe to the following:
   
        Newsgroup                    mailing list subscription
        ---------                    -------------------------
        biz.sco.opendesktop          scoodt-request@xenitec.on.ca
        biz.sco.general              scogen-request@xenitec.on.ca
        biz.sco.announce             scoann-request@xenitec.on.ca
	biz.sco.sources			<none>
	biz.sco.binaries		<none>
	biz.sco.magazine	     scomag-request@xenitec.on.ca

   You are _strongly_ encouraged to obtain these newsgroups via USENET
   NEWS mechanisms vrs mail.  Anyone having difficulty arranging a news
   feed for these newsgroups is welcome to email the undersigned and
   I'll do my best to help.  We also offer all required software in
   source code form via anonymous FTP and UUCP, as do many archive sites.
   If, after having explored all options, you are still unable to receive
   biz.sco.* as news, you may subscribe to the mailing lists.
   
   The 4 discussion newsgroups are bi-directionally gated to companion
   mailing lists, so anyone not having access to NEWS but who does have a
   UUCP or Internet mail feed can still participate fully using email.
   Mailing list subscribers should send their request to the appropriate
   "mailing list subscription" address above, including in the message body:

	Add: subscriber_address		-eg-
	Add: your_logname@site.do.main  -or-
	Add: up!stream!yoursite!your_logname

   Inclusion of an alternative working bang-path relative to a well know
   major functional site might prove beneficial.  Deletions are handled
   the same way, simply substitute "Delete:" for "Add:", ensuring that
   you use the exact same address you subscribed with.  Mailing list
   subscribers receive "how to post to the mlist" article submission
   information when their request is processed.  If you don't receive
   an acknowledgement within a few days, check your routing and try a test
   message via xenitec.on.ca back to your host.  In such cases, it's likely
   that someone, somewhere, is bouncing mail replies to you (and would do
   the same with mailing list traffic), and you'll want to resolve your
   connectivity problem before trying to subscribe again.  Mailing list
   subscriptions are free, subject to whatever arrangements you may have
   with the site(s) feeding you.
   
   Should you receive no response or experience a sudden and prolonged
   drop to zero volume on one of the mailing lists, this indicates that we
   are no longer able to find a working route to your site.  We loose a
   handful of subscribers this way each month.  If this happens to you,
   please email us your known working bang-path relative to a major site.

   What's in the newsgroups (and mailing_lists where applicable):
   
   biz.sco.opendesktop: Technical questions and answers and informative
                        postings relating to past, present, and future
                        implementations of the SCO OpenDeskTop operating
                        environment and it's various bundled components.
   
   biz.sco.general:     Questions, answers and comments on SCO products
                        in general, and of course resulting discussions.
   
   biz.sco.announce:    SCO and SCO Developer product announcements of
			interest to current and future users of SCO products,
			and to SCO developers, resellers and distributors.
                        (moderated, followups directed to biz.sco.general).

   biz.sco.sources:	SysV or BSD source code for useful programs and
			utilities, modified to compile and run with various
			incarnations of SCO Xenix, UNIX, and/or OpenDesktop.

   biz.sco.binaries:	Binary packages compiled from SCO compatible source
			code, often from source posted in biz.sco.sources
			and often installable using the SCO "custom" utility.

   biz.sco.magazine:	Interaction between the SCO Magazine readers, 
			writers and publishers.

   You should always endeavour to post your article to the most applicable
   newsgroup.  For example, posting your ODT question to the "general"
   newsgroup will preclude your question and answers to it from being
   saved in the public ODT archives.  Appropriate crossposting is allowed.

   The undersigned is solely responsible for administration of the biz.sco
   namespace.  Suggestions for additional biz.sco.* newsgroups and/or
   mailing lists should be emailed to the address below.
--
  Ed. A. Hew,    <edhew@xenitec.on.ca>    ....!uunet.ca!xenitec!eah
  XeniTec Consulting Services, Kitchener ON, Canada +1 519 570 9848
  triOS Training Centres Ltd. Mississauga ON Canada +1 800-387-8649
          [biz.sco.* newsgroups and mailing lists godfather]

Newsgroup: comp.windows.x
Document_id: 67530
From: schlotz@kestrel.unx.sas.com (David Schlotzhauer)
Subject: xcutsel or xcb question


i want to do something like this:

  date | xcb -s 0 | xcutsel

to get the output of the date command put into the XPRIMARY selection.
unfortunately, xcutsel is an interactive little bugger and there isn't a
command argument to tell it to just do it and not put up its little
window.  so, is there some other command that i CAN use like this?  or,
is there an analog to xcb that will put stuff in XPRIMARY instead of cut
buffer 0?

-- 
David Schlotzhauer                    Phone: (919) 677-8000
SAS Institute Inc.                   E-Mail: schlotz@unx.sas.com

Newsgroup: comp.windows.x
Document_id: 67532
From: rtparies@b8.b8.ingr.com (Randy Paries)
Subject: :Help with XClearArea

Hi, 
	Could some please tell me the errors of my ways. 
	I am trying to update a drawable. This drawable 
	happens to be a Pixmap on a button. 
	
	The problem is that after I do the :
XClearArea(XtDisplay(m_usr[0]),XtWindow(m_usr[0]), 80, 8, 40, 40, True);

	This appears to work. I then do

sprintf(tmp_str,"R=%d",++fun);
XDrawString(XtDisplay(m_usr[0]), bmaps[0] ,my_gc, 78, 10, tmp_str, (strlen(tmp_str)) );

	The problem is that the new info is drawn but the old info is
	still there. Even if I pass XClearArea a False and see it clear
	when it redraws the new info, the old info is still there.


Help Please!!!
        Thanks
-- 
------------------------------------------------------------------------     
Randy Paries           rtparies@turq.b8.ingr.com
x6191  cr041           Intergraph, Huntsville Alabama
------------------------------------------------------------------------     



	
	

Newsgroup: comp.windows.x
Document_id: 67533
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: X-windows extensions for Perl???

Using the usersub stuff in perl, you can incorporate things like curses for
use in perl.  I was wondering if anyone had done this with X (preferably
Motif), and if so, where I could get the source for it?

-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
Document_id: 67534
From: stevea@lachman.com (Steve Alexander)
Subject: Re: Compiling mh-6.8 (and xmh) on SCO 3.2.4.

In article <1993Apr30.132044.15762@vpbuild.vp.com> jessea@u013.me.vp.com (Jesse W. Asher) writes:
>I'm trying to get MH compiled (and then xmh) and I'm having some problems.
>I've got mh-6.8, using gcc on SCO 3.2.4.  My MH file is listed below.  Does
>anyone have any suggestions on what I can add to get it to compile??

Here's the one that I used:

# @(#)$Id: MH,v 1.7 90/04/06 09:44:31 sources Exp $
# SCO 3.2.4v2
bin	/usr/local/bin
bboards	on
etc	/usr/local/lib/mh
mail	/usr/spool/mail
mailgroup	mail
ldoptlibs	-lsocket -lcrypt_i
mandir	/usr/man
cc	gcc
ccoptions	-traditional
manuals	none
chown	/bin/chown
mts	sendmail/smtp
pop	on
debug	off
sharedlib	off
signal	void
sprintf int
options	ATTVIBUG BIND DPOP DUMB RENAME SOCKETS SYS5 SYS5DIR VSPRINTF FCNTL MHE MHRC MIME MORE='"/usr/bin/more"' POPSERVICE='"pop3"' RPATHS FOLDPROT='"700"' MSGPROT='"600"' SBACKUP='"\\043"' SHADOW
curses	-lcurses -ltermcap
ranlib	off

You may want to use a different locking style; my mailbox is mounted over NFS
so I use fcntl-style locking.

I also applied the following tweak to sbr/makedir.c:

*** /src/public/mh-6.8/sbr/makedir.c    Tue Dec 15 10:55:22 1992
--- sbr/makedir.c       Tue Apr 13 14:02:04 1993
***************
*** 24,30 ****
  #include <sys/types.h>
  #include <sys/stat.h>
  #endif        /* SYS5DIR */
! #if defined(SVR4) || defined(ncr)
  #include <unistd.h>
  #endif

--- 24,31 ----
  #include <sys/types.h>
  #include <sys/stat.h>
  #endif        /* SYS5DIR */
! #if defined(SVR4) || defined(ncr) || defined(SYS5)
! #define MAXPATHLEN 1024
  #include <unistd.h>
  #endif

That took care of everything but the man pages, which I installed by hand.

Good luck,
-- Steve
-- 
Steve Alexander, Lachman Technology, Inc. | stevea@lachman.com
(708) 505-9555 x256 FAX: (708) 505-9574	  | ...!{sun,ico}!laidbak!stevea

Newsgroup: comp.windows.x
Document_id: 67535
From: ethan@cs.columbia.edu (Ethan Solomita)
Subject: Desqview/X over TCP/IP: how reliable? how is it implemented?


	Three q's:

1) is it reliable?

2) how does it send the information from a MS Windows app over
the X11 protocol? Does it just draw everything as graphics into
one window, or does it use multiple windows and essentially work
more cleverly?

3) If I want to run MS Word, for example, remotely, do I have to
run a separate copy of MS Windows remotely, and then start MS
Word from that, or can MS Word be started remotely on its own?

	Thanks a lot!
	-- Ethan



Newsgroup: comp.windows.x
Document_id: 67536
From: morris@sg25.npt.nuwc.navy.MIL (morris hirsch)
Subject: (none)

We are adding a Motif wrapper to a family of data display programs.

These programs are each written as a 'main loop' with these steps:
- use semop to check a semaphore and if true access new data
  otherwise block (new data comes quite often)
- use msgop to check for messages and if true read them
  otherwise continue (messages are user commands and not often)
- update the display according to latest data and messages.

We typically have several of these running in windows,
plus a data producer serving some device and setting the flag.
Everyone blocking makes sure the device server gets to run.

Xt and Xm also have a 'main loop' model that we must fit into.
O'Reilly Vol IV Ch 9 discusses adding a file-watcher and also
how to add workprocs that are run during idle time.

We can 'open-up' our existing main loop and call it as a workproc.
The problem is our blocking until new data is no longer appropriate.
Neither is letting the program free-run because others are hurt.

The unix select call lets you block until any of several i/o are ready.
We want that for the X main loop except not file i/o.
Any suggestions or examples most welcome!

We run SGI Personal Iris and Indigo systems.

Morris Hirsch aka morris@sg25.nusc.navy.mil or 401 841 7800



Newsgroup: comp.windows.x
Document_id: 67537
From: stellr@smyrna.cc.vt.edu (Ray Stell)
Subject: Prereq: public-patch-0



-- 
In the R5 file fix-01 there is the line that reads as the subject
line here.  I don't see a file fix-00.  When I got a few Hmmm...
lines putting on fix-01, it made me wonder if I has missed 00.
Am I off the mark?

Thank you.  
======================================================================
Ray Stell		stellr@smyrna.cc.vt.edu		(703) 231-4109

They call Stephen the first martyr.  
Hadn't Lazarus the rawer deal? - C. S. Lewis

Newsgroup: comp.windows.x
Document_id: 67538
From: styx@eurom.rhein-main.de (Ruediger Merz)
Subject: Re: preventing user from hitting CTRL-ALT-BKSP to exit X

hi,
> Hello,
> 
> 	I am admin for an RS/6000 running AIX 3.2, X11R5, Motif, and xdt3.
> 	I want to prevent the user from hitting CNTL-ALT-BKSPC to exit X.

try DontZap in /usr/lib/X11/Xconfig

cu
	styx

-----
                ** Free Software Association of Germany **
                  Great software should be free software
                 Phone: 069 - 6312083 Data: 069 - 6312934

Newsgroup: comp.windows.x
Document_id: 67539
From: ma201rs@prism.gatech.EDU (SHONKWILER R W)
Subject: scrollbar in xterm

Is it possible to get an xterm scrollbar to come out on the right
side instead of the left?

Ron Shenk

-- 
SHONKWILER R W
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{allegra,amd,hplabs,seismo,ut-ngp}!gatech!prism!ma201rs
ARPA: ma201rs@prism.gatech.edu

Newsgroup: comp.windows.x
Document_id: 67540
From: vinod@sommerfeld.WPI.EDU (Vinod K Nair)
Subject: using XTERM to display output {?}

Hello, I am writing a program which forks of a number of child processes
and each of the children printing things on the screen (quite messy in
one window)... 

The "xterm  -Sxxd"  option seems to be the solution to opening up
slave windows only to display output and I use the following code to
open up a pty (taken from Stevens)...and manage to open up an x-term
successfully.... 

The problem however is how do I write into this x-term ? Please help!


static char pty_name[12];
int pty_master( void );

int pty_master( void )
{
  int i,fd;
  char* ptr;
  struct stat statbuff;
  static char ptychar[] = "pqrs";
  static char hexdigit[] = "0123456789abcdef";
  
  for( ptr = ptychar; *ptr!=0; ptr++ ) {
    strcpy( pty_name, "/dev/ttyXY" );
    pty_name[8] = *ptr;
    pty_name[9] = '0';
    
    if( stat( pty_name, &statbuff) < 0 )
      break;

    for( i=0; i < 16; i++ ) {
      pty_name[9] = hexdigit[i];
      if( (fd = open( pty_name, O_RDWR )) >= 0 )
	return( fd );
    }
  }
  return(-1);
}

  

-- 
Vinod  						   email : vinod@ee.wpi.edu
An eye for an eye makes the whole world blind
			-Mohandas Karamchand Gandhi

Newsgroup: comp.windows.x
Document_id: 67541
From: mcgary@intellection.com (Mike McGary)
Subject: Re: Keyboard mapping and window placement questions

In article <1993Apr27.182912.3388@news.mentorg.com> darcym@fpddet4.mentorg.com (Darcy McCallum) writes:

>   These are two common subjects so I hope someone has had to deal with these
>   specific questions.
>
>   1.  [....question 1 deleted.....]
>
>   2.  I would like to place a popup so that it will be to the immediate right
>   of my main window.  I want it at the same y coord, and their right/left
>   sides touching.  What I need to ask for is the x,y coord of the window 
>   manager's border for the main window.  This should ring a bell with anyone
>   who has called XtMoveWidget(), immediately checking the x,y after the move
>   and seeing that it is right, and in their next callback asking for the x,y
>   and seeing that it is now offset by the WM border.
>
>   Any help would be most appreciated.
>
>   Darcy
>   darcy_mccallum@mentorg.com

I have done this before, but I'm not sure I used the best approach (although
I tried several methods...).

You have to run up the window heirarchy (using XQueryTree()) until you get
to the root window.  Now, this is not so simple because some window managers
slap a window over the root window that is the same size as the root window,
so be sure to take that into account for further calculations.

Calculate the position and width/height offsets for each window using
XGetGeometry().  BE SURE TO TAKE THE BORDER_WIDTH INTO CONSIDERATION.
Remember a windows border_width IS ON THE OUTSIDE of a window, so the
windows x,y,width,height must be adjusted accordingly.

All of this should give you pretty good numbers for how much space the
window-manager is using.

Now, to place the new window, you have to use the same numbers to calculate 
where you want to place it, because the window-manager will re-parent it on
the OUTSIDE of where you place your window (if I remember correctly).

DISCLAIMER: All of this is from memory, and I no longer have the code.  But
I did get it working under several window managers correctly.  Feel free to
call or e-mail for further info.

              -McGary

-- 
Mike D. McGary                VOICE: (214) 620-2100
Intellection                  FAX:   (214) 484-8110
1603 LBJ Freeway, Suite 780   ARPA:  mcgary@intellection.com
Dallas, Texas 75234           UUCP:  intellection.com!mcgary@cs.utexas.edu

Newsgroup: comp.windows.x
Document_id: 67542
From: scott@shuksan.ds.boeing.com (Scott Moody)
Subject: X server only on Sun?

I have been using a HDS X-terminal, and really like it. What
is really powerful is that it can run the X server without
running a window manager. One can then run a special client
X program called a window manager, either (1) run 
motif or openlook from it's own firmware (limiting the network
traffic - but having no HOME). or (2) run motif or openlook
from some home place (like a sparc, or vms).

This is powerful, especially since I can exit one window manager
(without killing windows) and then start up another manager.
(Some of my VMS tools need special meta-mouse combos that work in
one manager and not the other).

Well the question is:

  On a sparcstation running openlook, does anyone know how to
  break apart olwm from the olwm_slave program? Basically I
  want to run only the server, and go somewhere else to run
  the window manager.

---
Please respond my e-mail (as well as posting) because of the
large volumes in window.X)

Thanks.



-- 
Scott Moody   (206) 773-4313   "There are no answers .. just cross references"
     scott@shuksan.boeing.com  
     uunet!bcstec!shuksan!scott

Newsgroup: comp.windows.x
Document_id: 67543
From: support@qdeck.com (Technical Support)
Subject: Re: Desqview/X over TCP/IP: how reliable? how is it implemented?

In article <C6BFLB.KEM@cs.columbia.edu> ethan@cs.columbia.edu (Ethan Solomita) writes:
>
>	Three q's:
>
>1) is it reliable?

I use it all day every day (maintaining our ftp site and answering mail
via support@qdeck.com), and I can honestly say that in the last few
months I've never had my machine go down due to any sort of tcpip network
manager instability. (Of course, I've crashed my machine quite a few times
on purpose, during beta testing and that sort of thing, but the tcpip
portion is quite stable...)

However, keep in mind that DVX and the network managers are only going
to be as stable as the software they sit on top of (so if your underlying
network kernel is flakey, you can't expect DVX to be terribly stable...)

>2) how does it send the information from a MS Windows app over
>the X11 protocol? Does it just draw everything as graphics into
>one window, or does it use multiple windows and essentially work
>more cleverly?

It just goes as a window that has graphics drawn into it. (To vastly
over-simplify what goes on, we just take the windows graphics API calls,
and translate them directly to X-protocol; unfortunately, windows was
not really written to be network-aware, so sometimes we see a speed
penalty when an app does something stupid, like sending a big white bitmap
to erase something rather than just drawing a white box; fortunately,
that sort of thing is rare...)

>3) If I want to run MS Word, for example, remotely, do I have to
>run a separate copy of MS Windows remotely, and then start MS
>Word from that, or can MS Word be started remotely on its own?

You need to run MS windows, which Word then runs inside. You could run
multiple windows programs within the one WinX window, and windows has
ways to automagically start winapps when you start windows, so in practice
it's not really a major problem. I have my system set up so that I can
run WinX, which automatically starts Word Full-screen (for windows), so
I never see any part of windows but word...)

-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
anonymous ftp: qdeck.com (149.17.8.10), leave your email address as password

Newsgroup: comp.windows.x
Document_id: 67544
From: bernward@moepi.do.open.de (Bernward Averwald)
Subject: Re: xdm and env. vars

In article <9304292140.AA29951@haji.haji_sun> fwr8bv@fin.af.MIL writes:
>Hi,
>
>I am using xdm on X11R5 with OW3 and Xview3 on Sun3s and SPARCs running 
>SunOS 4.1.1.  Prior to using xdm, I used to set PATH and other environment
>variables (like MANPATH, HELPPATH, ARCH, etc) in my .login file.  With xdm,
>the .login file doesn't get executed and therefore neither the olwm
>root-window nor my applications know about these variables.

I always use the following in my .[t]cshrc:

...
f ( $?LOGIN == 0 ) then
   source $home/.login
endif
...

and in .login:

...
setenv LOGIN 1
...

So I don't need to set all environment variables in my .cshrc, but they get
set if I login via xdm or xon | xrsh | rx and so on.

Hope this helps,

Bernward
-- 
Bernward Averwald, Heinrichstr. 42, D-4600 Dortmund 1, Voice: +49 231 144048
FAX: +49 231 144047, e-mail: bernward@moepi.do.open.de            (b@rcc.de)
                     I think I need a Lear Jet

Newsgroup: comp.windows.x
Document_id: 67545
From: hps@jach.hawaii.edu (Henry Stilmack - JAC Hawaii SysMgr)
Subject: Help building XView on SPARC Classic


Can anyone help with this?

System: SPARC Classic, Solaris 2.1, gcc 2.3.3, X11R5

When I try to build the XView libraries (xview3, patched with the patch from
the X11R5-Solaris kit), I get the following error:

rm -f ndet_loop.o shared/ndet_loop.o
gcc -fpcc-struct-return -E   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   ndet_loop.c \
| xstr -l _libxview_xstr -c -
gcc -fpcc-struct-return -fPIC   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   -c x.c \
-o shared/ndet_loop.o
In file included from ../../.././build/include/xview/notify.h:29, from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
/usr/include/sys/ucontext.h:25: parse error before `sigset_t'
/usr/include/sys/ucontext.h:25: warning: no semicolon at end of struct or union
/usr/include/sys/ucontext.h:26: warning: data definition has no type or storage class
/usr/include/sys/ucontext.h:29: parse error before `}'
/usr/include/sys/ucontext.h:29: warning: data definition has no type or storage class
In file included from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
./../.././build/include/xview/notify.h:286: parse error before `*'
./../.././build/include/xview/notify.h:286: warning: data definition has no type or storage class
In file included from x.c:35:
/usr/include/sys/user.h:226: `MAXSIG' undeclared, outside of functions
ndet_loop.c:71: `NSIG' undeclared, outside of functions
ndet_loop.c:85: variable `ndet_sigvec' has initializer but incomplete type
ndet_loop.c:88: parse error before `*'
ndet_loop.c:88: warning: data definition has no type or storage class
ndet_loop.c: In function `ndet_fig_sig_change':
ndet_loop.c:687: `NSIG' undeclared (first use this function)
ndet_loop.c:687: (Each undeclared identifier is reported only once
ndet_loop.c:687: for each function it appears in.)
ndet_loop.c: In function `ndet_signal_catcher':
ndet_loop.c:751: parse error before `ucontext_t'
ndet_loop.c:764: `sigset_t' undeclared (first use this function)
ndet_loop.c:764: parse error before `newmask'
ndet_loop.c:766: `newmask' undeclared (first use this function)
ndet_loop.c:769: `oldmask' undeclared (first use this function)
ndet_loop.c:777: parse error before `)'
ndet_loop.c:795: warning: assignment makes pointer from integer without a cast
ndet_loop.c:798: parse error before `)'
ndet_loop.c: In function `ndet_send_delayed_sigs':
ndet_loop.c:825: `sigset_t' undeclared (first use this function)
ndet_loop.c:825: parse error before `newmask'
ndet_loop.c:837: `newmask' undeclared (first use this function)
ndet_loop.c:839: `oldmask' undeclared (first use this function)
ndet_loop.c:848: parse error before `)'
ndet_loop.c: At top level:
ndet_loop.c:1022: parse error before `*'
ndet_loop.c:85: storage size of `ndet_sigvec' isn't known
*** Error code 1
make: Fatal error: Command failed for target `ndet_loop.o'
rm -f ndet_loop.o shared/ndet_loop.o
gcc -fpcc-struct-return -E   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   ndet_loop.c \
| xstr -l _libxview_xstr -c -
gcc -fpcc-struct-return -fPIC   -O2  -I../../.././build/include  -I/usr/X11R5/include  -DSVR4 -DSYSV  -DFUNCPROTO=15 -DOS_HAS_LOCALE -DOS_HAS_MMAP   -c x.c \
-o shared/ndet_loop.o
In file included from ../../.././build/include/xview/notify.h:29, from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
/usr/include/sys/ucontext.h:25: parse error before `sigset_t'
/usr/include/sys/ucontext.h:25: warning: no semicolon at end of struct or union
/usr/include/sys/ucontext.h:26: warning: data definition has no type or storage class
/usr/include/sys/ucontext.h:29: parse error before `}'
/usr/include/sys/ucontext.h:29: warning: data definition has no type or storage class
In file included from ../../.././build/include/xview_private/ntfy.h:24, from x.c:18:
./../.././build/include/xview/notify.h:286: parse error before `*'
./../.././build/include/xview/notify.h:286: warning: data definition has no type or storage class
In file included from x.c:35:
/usr/include/sys/user.h:226: `MAXSIG' undeclared, outside of functions
ndet_loop.c:71: `NSIG' undeclared, outside of functions
ndet_loop.c:85: variable `ndet_sigvec' has initializer but incomplete type
ndet_loop.c:88: parse error before `*'
ndet_loop.c:88: warning: data definition has no type or storage class
ndet_loop.c: In function `ndet_fig_sig_change':
ndet_loop.c:687: `NSIG' undeclared (first use this function)
ndet_loop.c:687: (Each undeclared identifier is reported only once
ndet_loop.c:687: for each function it appears in.)
ndet_loop.c: In function `ndet_signal_catcher':
ndet_loop.c:751: parse error before `ucontext_t'
ndet_loop.c:764: `sigset_t' undeclared (first use this function)
ndet_loop.c:764: parse error before `newmask'
ndet_loop.c:766: `newmask' undeclared (first use this function)
ndet_loop.c:769: `oldmask' undeclared (first use this function)
ndet_loop.c:777: parse error before `)'
ndet_loop.c:795: warning: assignment makes pointer from integer without a cast
ndet_loop.c:798: parse error before `)'
ndet_loop.c: In function `ndet_send_delayed_sigs':
ndet_loop.c:825: `sigset_t' undeclared (first use this function)
ndet_loop.c:825: parse error before `newmask'
ndet_loop.c:837: `newmask' undeclared (first use this function)
ndet_loop.c:839: `oldmask' undeclared (first use this function)
ndet_loop.c:848: parse error before `)'
ndet_loop.c: At top level:
ndet_loop.c:1022: parse error before `*'
ndet_loop.c:85: storage size of `ndet_sigvec' isn't known
*** Error code 1
make: Fatal error: Command failed for target `ndet_loop.o'

Obviously, most of this is due to the problem encountered while including 
<sys/ucontext.h> - I've tried several approaches, but can't get past this point.
Any help would be greatly appreciated.

Mahalo nui o kakou,
_______________________________________________________________________________
Henry Stilmack                               )  
Computing Systems Manager                    ) Perform random kindnesses 
UK/Netherlands/Canada Joint Astronomy Centre )   and senseless acts of beauty
660 N. A'ohoku Place, Hilo, HI 96720         )   
hps@jach.Hawaii.Edu       808-969-6530       )    
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67546
From: rbroders@oracle.com (Robert Brodersen)
Subject: Resolution, bitmapped fonts, device independence...

I recently corrected the resolution on my Sparcstation by changing
/usr/lib/X11/xdm/Xservers from:
:0 local /usr/bin/X11/X :0 -ar1 500 -dpi 100
to:
:0 local /usr/bin/X11/X :0 -ar1 500 -dpi 85

I determined that my 19" 1152x900 monitor was 85 dpi by measuring the
active screen area and dividing by resolution.

However, this has caused my application fonts to behave strangely.
After some research, I believe this is caused by my applications
requesting fonts by Family, Weight, Slant, and Pointsize.  I believe
that X is grabbing the first font on the path with these characteristics
and displaying it.  Since I have only 75dpi and 100dpi fonts on my
path, the results are inaccurate.  I do have some Speedo fonts, but
not for the family I am using (Helvetica).

I think this is incorrect.  The fonts should always be provided in the
resolution of the display.  This never seems to happen unless you
explicitly request fonts by xres and yres!  This is true of both the
scaleable and bitmapped fonts!  For instance, the command

xfd -fn '-bitstream-charter-*-*-*-*-*-240-*-*-*-*-*-*'

Will invoke a 75dpi font (despite the fact that this is a Speedo font).

The command  

xfd -fn '-adobe-courier-*-*-*-*-*-240-*-*-*-*-*-*'

Will invoke a 75dpi font or a 100dpi font (depending on my font path).
Despite the fact that X knows my display is 85 dpi, and that it can
generate an 85dpi font for me!  Unless I my applications specifies a
resolution, X appears to pick a stupid default.

Is this a bug?  Is it a feature?  If so, why?  Is there anything I can
do to get around this problem?  People have suggested that I lie about
my resolution, and specify a single font path (75 or 100, not both).
This would at least make my app consistent, but I like being able to
look at rulers that appear in my paint application and say: "Yup, thats
an inch".  Anyone have a set of 85dpi bitmapped fonts I can use?

System info:
Sun Sparc 10/41 w/32 MB, SunOS 4.1.3.

xdpyinfo:
version number:    11.0
vendor string:    MIT X Consortium
vendor release number:    5000
screen #0:
  dimensions:    1152x900 pixels (348x272 millimeters)
  resolution:    85x85 dots per inch

xset q font path:
  /usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/Speedo/,/usr/lib/X11/fonts/100dpi/,/usr/lib/X11/fonts/75dpi/

--
Thanks-           rbroders@oracle.com       -Bob Brodersen (415)-506-2189
Applications Architect, Applications Technology Group, Applications Division
                  Oracle Corporation, Redwood Shores, CA 94065

Newsgroup: comp.windows.x
Document_id: 67547
From: barnettj@pookie.crd.ge.com (Janet A Barnett)
Subject: Re: Help. BadMatch making 24bit win on 8bit server !!

In article <1993Apr30.120234.15637@cci.dk> hwn@cci.dk (Henrik W. Nielsen) writes:
>
>
>I'm trying to make a 24 bit window using XCreateWindow on a 8 bit
>PseudoColor server. As far as I know this should be possible if you
[stuff deleted]
>   Xio.GSwin = XCreateWindow(Xio.DspPtr, RootWindow(Xio.DspPtr, Xio.Scr),
>			     x, y, w, h, 0, 24, InputOutput,
>			     Xtern.ColorInfo, 0, &SetWinAttrib);
>}
>
>
>This results in a BadMatch error. Can anyone please tell me why ?
>
>

The colormap element of SetWinAttrib must be a legitimate TrueColor
colormap. So, use XCreateColormap() with the proper visual and use it
in SetWinAttrib (and don't forget the mask!).

And the inevitable caveat: I usually use widgets, setting the visual
and colormap resources rather than direct X routines, so I could be
wrong. But, I think this is the general difficulty.

Allen Barnett
(whose wife graciously allowed to use her account)



Newsgroup: comp.windows.x
Document_id: 67548
From: Wilfred.Hansen@cs.cmu.EDU
Subject: The Andrew View V. 2  No. 1

The latest issue of The Andrew View, newsletter of the Andrew Consortium
is available.  The simplest way to get it is via ftp from
emsworth.andrew.cmu.edu (128.2.45.40) in directory ./newsletters; 
subdirectories ASCII and PostScript contain the newsletter in those
formats.  

If you have requested it in the past, you will receive an email copy. 
You may request to be placed on the mailing list by sending your request
to info-andrew-request@andrew.cmu.edu.

Fred Hansen

Newsgroup: comp.windows.x
Document_id: 67550
From: jessea@u013.me.vp.com (Jesse W. Asher)
Subject: Xw widget set ported to X11R5??

I'm trying to compile xftp which uses the Xw widget set and I'm having
problems.  We're using Motif and X11R5 and it seems that my version of the
Xw stuff was only ported to R3.  Are there patches out to port this to R5
(or a newer port altogether)??

Or perhaps a newer port of xftp for use with R5??
Thanks in advance.


-- 
      Jesse W. Asher                                          (901)762-6000
                             Varco-Pruden Buildings
                 6000 Poplar Ave., Suite 400, Memphis, TN  38119
    Internet: jessea@vpbuild.vp.com                   UUCP: vpbuild!jessea

Newsgroup: comp.windows.x
Document_id: 67551
From: Jim Ennis <JIM@UCF1VM.BITNET>
Subject: Hummingbird Software Query

Hello,

  I am considering buying the Hummingbird X-Windows software for a MS-Windows
3.1 PC (386-40MHZ, NE2000 Ethernet board).  Would anyone tell me if they
are using this package in a similar environment and if they are happy with
it?  I will be connecting to Sun SparcStation 10 running Sun OS 4.1.3.

Thanks very much,

Jim Ennis
University of Central Florida

Newsgroup: comp.windows.x
Document_id: 67552
From: min@stella.skku.ac.KR
Subject: (none)

ubject: subscrive


please subscribe me.

e-mail: min@stella.skku.ac.kr


Newsgroup: comp.windows.x
Document_id: 67553
From: barr@pop.psu.edu (David Barr)
Subject: Re: XV 3.00 has escaped!

In article <C6C39r.5so.2@cs.cmu.edu> tgl+@cs.cmu.edu (Tom Lane) writes:
>"Commercial"?  There's a big difference between a polite request
>for a voluntary donation and commercial, it's-illegal-to-copy-this-
>and-we'll-sic-our-lawyers-on-you software.

There is?  Then why does the documentation say:

}Commercial, government, and institutional users MUST register their
}copies of XV, for the exceedingly REASONABLE price of just $25 per
}workstation/X terminal.

It doesn't sound like a "voluntary donation" to me.

--Dave
-- 
System Administrator, Penn State Population Research Institute
#define ENOTTY          25              /* Not a typewriter */

Newsgroup: comp.windows.x
Document_id: 67554
From: deepak@expert.cc.purdue.edu (Deepak Mulchandani)
Subject: Redirecting stdout/stderr of a program


Hi,

    Does anyone know how to redirect the stdout and stderr of a program to
    a callback function in X ? The program does not fork() a child process
    so I guess I can't use pipes.

    Can anyone help ?

    Thanks,

    Deepak


Newsgroup: comp.windows.x
Document_id: 67555
From: bamboroughp@logica.co.uk
Subject: Wanted: Rolling Demo Creator

WANTED:
 I have to produce a "Rolling Demonstration" of some X Window/Motif software.
Does anybody know if there is some Public Domain software to record/playback X
Window events or similar ?

Thanks in advance ...

Paul Bamborough bamboroughp@logica.co.uk

I must protest captain - I am NOT a merry Man !!!! - Worf STTNG

Newsgroup: comp.windows.x
Document_id: 67556
From: slayer@b64743.student.cwru.edu (Chad Dougherty)
Subject: NetVis for Xfree86??



--
| Chad Dougherty                  | "TV sucks"---                           |
| Case Western Reserve Univ.      | "I know you're upset right now, boy,    |
| crd6@po.cwru.edu                | so I'll PRETEND you didn't say that!!"  |
| slayer@b64743.student.cwru.edu  |                -Homer Simpson to Bart   |


Newsgroup: comp.windows.x
Document_id: 67557
From: hps@KEKOA.JACH.HAWAII.EDU (Henry Stilmack - JAC System Mgr.)
Subject: Choosing a window manager

A while back (i.e., several months) someone posted a method for allowing 
a user to choose (via XMenu and something else??) a window manager 
interactively at X startup time. Could the original poster (or anyone 
else) please Email a copy of the method to me, as I have lost the 
original posting? Thanks.

______________________________________________________________________________
Henry Stilmack                               )  
Computing Systems Manager                    ) Perform random kindnesses 
UK/Netherlands/Canada Joint Astronomy Centre )   and senseless acts of beauty
660 N. A'ohoku Place, Hilo, HI 96720         )   
hps@jach.Hawaii.Edu       808-969-6530       )    
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67558
From: joe@islandsw.com (Joe McGuckin)
Subject: Vitex rasterflex32 experience?

I'm going to be purchasing one of these soom for my SS2.

Does anyone have any experience with this card?

Positive or negative comments welcome!

Please respond immediately.

Thanks,

  Joe


---------------------------------------
Joe McGuckin             joe@islandsw.com
Island Software    	 oilean!joe@sgi.com
(415) 969-5453



Newsgroup: comp.windows.x
Document_id: 67559
From: dean@gene.med.umn.edu (Dean Flanders (IHG))
Subject: Planet X

Does any one out there have experience with Planet X, I am
considering buying it to use on a SPARCstation IPC, in this
way I can run Mac programs from the SPARC.

Would you recommend buying this piece of Software and what is
the emulation on the SPARC like?  Does it give a window of a
Mac or does it give a window of just the individual programs?

Any information would be greatly appreciated.

Thanks,

Dean

=========================================================================
Institute of Human Genetics           I
University of Minnesota               I
Box 206 UMHC                          I    "If all you have is a hammer,
Harvard Street at East River Road     I     you tend to look at every
Minneapolis, MN  55455                I     problem as a nail."
                                      I
Voice (612) 625-5128                  I                      -Maslow
Fax (612) 626-7031                    I
Email dean@lenti.med.umn.edu          I
==========================================================================




Newsgroup: comp.windows.x
Document_id: 67560
From: sriram@tcs.com (Sriram Srinivasah)
Subject: Re: Animation with XPutImage()?

In article <1993Apr21.154620.16330@infodev.cam.ac.uk>, dcr@mail.ast.cam.ac.uk (Derek C. Richardson) writes:
|> Hi, I'm new to this group so please bear with me!
|> 
|> Two years ago I wrote a Sunview application for fast animation
|> of raster files. With Sunview becoming rapidly obselete, I've
|> finally decided to rewrite everything from scratch in XView.
|> I put together a quick test, and I've found that XPutImage()
|> is considerably slower (factor of 2 on average?) than the
|> Sunview command pw_rop() which moves image data from memory
|> pixrects to a canvas. This was on a Sparc IPX. It seems that:
|> (1) the X protocol communication is slowing things down; or
|> (2) XPutImage is inefficient...or both! My question is, what
|> is the fastest way in X11R5 to dump 8 plane image data to
|> a window? Can I take advantage of the fact that the client is
|> running on the same machine as the server? Or am I stuck with
|> XPutImage() (in which case I might as well give up now...)?
|> 
|> All help appreciated...thanks!
|> 
|> Derek
|> 

The *fastest* way is to use an X server with shared memory extension. It uses
shared memory if it is a local X server (hence images don't have to be duplicated),
and defaults to the regular image routines if either the shared mem extension
is not available, or if it's  not the localhost.

Sriram

Newsgroup: comp.windows.x
Document_id: 67561
From: Thomas_Richard_Stevenson@mts.cc.wayne.edu (Thomas R. Stevenson)
Subject: XCOMM in Imakefile files

I've installed many X apps, and have that many of them Imakefiles that have
lines startingwith XCOMM in them. When I do a xmkmf to create the Makefile,
the Makefile also has the XCOMM (comment?) lines in them. I always have
to edit out these lines because the make command barfs on them. I was
wondering what these lines were for, and what I might be doing wrong that
causes the make command to dislike them. Thanks!

Newsgroup: comp.windows.x
Document_id: 67562
From: axel@hpcvlx (Axel Deininger)
Subject: X Meta File, Anyone?

Hi,

I'm working on a project that involves storing an application's rendering
to an X display and then playing it back again.  Rather than 
"reinvent the wheel", it like to find:
	* a file format for saving X protocol.
	* software that saves and replays such a session.

Any ideas out there?  I've heard that there is a version of Xscope
that will save and replay sessions.

I'd be willing to share much of the code I develop back to the X community.


Axel............

axel@cv.hp.com



Newsgroup: comp.windows.x
Document_id: 67564
From: amir@matis.INgr.COM (Amir J. Katz)
Subject: XV 3.0 author is on vacation till May 10 or so

For all those people flaming John Bradley, the author of xv - he's on
vacation till May 10 (or 15, I don't remember). Maybe we all should slow
down and wait to hear his side wrt copyrights, fees, etc.
-- 
/* ----------------------------------------------------------------- */
/*  Amir J. Katz         | amir@matis.ingr.COM  (or ingr!matis!amir) */
/*  System Specialist    | Voice:  +972 52-584684                    */
/*  SEE Technologies Ltd.| Fax:    +972 52-543917                    */
/*  ......... To Boldly Go Where No One Has Hacked Before .......... */

Newsgroup: comp.windows.x
Document_id: 67565
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: XView 3.0 question

Yet another XView question: is there an (easy) way of detecting when a user
has resized a frame _externally_ by way of the window manager (e.g. grabbing
and letting go of the frame resize corners under olwm)? If so, please let me
know!

Derek

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 67566
From: <CHANGJ@QUCDN.QueensU.CA>
Subject: tn3270 support for xterm?

Is there a tn3270 program which support xterm? I don't like x3270 at all. You
can't copy with other windows. Thanks.

Newsgroup: comp.windows.x
Document_id: 67567
From: barr@pop.psu.edu (David Barr)
Subject: Re: tn3270 support for xterm?

In article <93122.142712CHANGJ@QUCDN.QueensU.CA> <CHANGJ@QUCDN.QueensU.CA> writes:
>Is there a tn3270 program which support xterm? I don't like x3270 at all. You
>can't copy with other windows. Thanks.

The x3270 at export.lcs.mit.edu supposedly does.  I use another x3270
that was cleaned up by Brian Ward <ward@math.psu.edu> which adds better
color support, and cleans up _lots_ of bugs, as well as cut&paste.
I just put it on export.lcs.mit.edu, as x3270v2.65beta.tar.Z.

--Dave
-- 
System Administrator, Penn State Population Research Institute
End of article 2565 (of 2565)--what next? [npq]

Newsgroup: comp.windows.x
Document_id: 67568
From: dbrooks@osf.org (David Brooks)
Subject: Re: XV 3.0 author is on vacation till May 10 or so

amir@matis.ingr.com writes:
>For all those people flaming John Bradley, the author of xv - he's on
>vacation till May 10 (or 15, I don't remember). Maybe we all should slow
>down and wait to hear his side wrt copyrights, fees, etc.

While I have respect for John's ability and integrity, I really regret his
leaving just after a major release (or, more accurately, making the release
just before leaving).  Several of us are having problems with xv-3.00, and
in particular I have issues with all the fixes that have so far been made
to the Imakefiles and xv.h.  Without John to adjudicate, and everybody
posting fixes that work for *them*, chaos is inevitable; let's hope it is
temporary.
-- 
John "Guile Skywalker" Brooks using his Dad's account

Newsgroup: comp.windows.x
Document_id: 67571
From: qizeng@acsu.buffalo.edu (Qi Y. Zeng)
Subject: source code of x

Dear Netters:
    Could you mail the source code of the book:
    "Advanced X window application programming"
by Johnson and Reichard 
    TO ME?

    If you need any source code, just ask me.

    Thank you very much!


                                    Sincerely,

                                    Zeng, Qiyong.
-- 
Zeng,Qiyong. SUNY at Buffulo

Newsgroup: comp.windows.x
Document_id: 67572
From: daniels@NeoSoft.com (Brad Daniels)
Subject: Re: XV 3.00 has escaped!

Given that all the source code contains explicit permission to use or
modify the code without fee in addition to the shareware notice, I would
say that the shareware notice is unenforceable.  All you need to do is
make minor changes to create a derivative work which is explicitly allowed
under the first part of the copyright notice.  Of course, this would be
circumventing the author's wishes on the subject, but I'd say if you're
not going to pay him no matter what, you'd be on relatively safe ground
with that approach...  In fact, given the internal contradictions of the
copyright notices, I'd guess none of it could ever be enforced, but not being
a lawyer, I can't be positive.

Regardless, the fees he's asking are not excessive, and I would encourage
anyone who wants to use the program to pay them if at all possible.  Even
though it is unlikely that you have actual legal obligations to pay the
author, it would be reasonable to do so, to support his efforts if nothing
else.

- Brad

-- 
Brad Daniels		`	|  "If money can't buy happiness,
daniels@neosoft.com		|   I guess I'll have to rent it."
I don't work for NeoSoft, and	|		- Weird Al Yenkovic
don't speak for my employer.	|

Newsgroup: comp.windows.x
Document_id: 67573
From: graeme@labtam.labtam.oz.au (Graeme Gill)
Subject: Re: XV 3.00 has escaped!

In article <46464@sophia.inria.fr>, muller@mafalda.inria.fr (Christophe Muller) writes:
> Anyway, at SIMULOG, we will abandon xv. We were using it mostly for slide-
> shows because of its "-loop" feature that display does not have (display
> from the *wonderful* ImageMagick package! :-D), but I think I will implement
> it myself (even a shell-script should do the job) and forget xv.

xli and xloadimage have a -goto flag.

	Graeme Gill.

Newsgroup: comp.windows.x
Document_id: 67882
From: lee@sq.sq.com (Liam R. E. Quin)
Subject: OPEN LOOK GUI frequently asked questions


Frequently-asked questions about the OPEN LOOK Graphical User Interface.

If your question isn't here, please try (at *least*)
	man openwin
	man xnews
	man 7 xview
and looking in the appropriate manuals listed in the Bibliography below
before posting to the comp.windows.open-look, comp.windows.x or
alt.toolkits.xview newsgroups and/or their corresponding mailing lists.

Special Notes:
    * I have not updated this FAQ for the recently-announced OpenWindows 4,
      due to ship later this year.
    * Yes, Sun is moving to Motif, along with all of COSE.  But the Motif to
      which they move will be a new Motif, with some of the OPEN LOOK UI
      features added.
    * Yes, OpenWindows 4 will use DPS instead of NeWS.  NeWS is dead.
      This means TNT is dead, too.
    * XView and OLIT will be supported, but probably not enhanced after the
      next release.  I don't know if there will be a source release of
      XView 3.1 or not.
    * The COSE Environment will include at least some of Sun's DeskSet,
      ported to Motif.  Look for Calendar Manager and Mailtool, at least.
    * Yes, the new Mailtool will be MIME-compliant.

Frequently Asked Questions for X11 are posted to comp.windows.x monthly.

This is version: $Revision: 1.48 $; Last posted version:  1.46

Contents: (in rn and trn you can use control-G to go to the next topic)

    Subject: Terminology: OPEN LOOK, OpenWindows, X11, XView, (MO)OLIT, Motif
    Subject: Window Managers -- olwm, olvwm
    Subject: OpenWindows, Terminals, and Other Displays
    Subject: Configuration Files: Getting started with OpenWindows
    Subject: Key Bindings, Cut and Paste
    Subject: Applications: Finding Out...
    Subject: DeskSet, Calendar Manager, etc.
    Subject: Trouble Shooting: Strange Error Messages
    Subject: Trouble Shooting: It Won't Let Me Type
    Subject: Trouble Shooting: Not authorized to use display
    Subject: Trouble Shooting: other common problems
    Subject: Trouble Shooting: XView problems
    Subject: Fonts
    Subject: Environment Variables
    Subject: Where Can I get It? Ftp, implementations, etc...
    Subject: Bibliography -- books, manuals, journals, papers, beer-mats
    Subject: Getting this File, Revision History, Recent Changes


Subject: Terminology: OPEN LOOK, OpenWindows, X11, XView, OLIT, MOOLIT, Motif

@ What is OPEN LOOK?
    OPEN LOOK is a specification of a Graphical User Interface (GUI).
    A GUI determines the `look and feel' of a system -- the shape of
    windows, buttons and scroll-bars, how you resize things, how you
    edit files, etc.

    The OPEN LOOK GUI is specified, developed and maintained jointly by
    Sun Microsystems and AT&T (or USL?).

    See Also:
	Bibliography

@ What is OpenWindows?
    OpenWindows is a windowing environment that conforms to the OPEN LOOK
    Graphical User Interface Specifications.  It's compatible with the
    X11 window system from MIT as well as (currently) Sun's NeWS and SunView,
    so you can intermix programs written for any of those systems.
    It comes from Sun and also with System V Release 4 from certain vendors.
    OpenWindows is sometimes also called openwin or xnews, after the
    program used to start it and the main executable itself, respectively.
    It should not be called `Windows' or 'OPEN LOOK' or `OpenLook', as
    these terms are either wrong or apply to something else.
    A commerical OpenWindows source licence costs about $5,000 for the server,
    plus about $25,000 for DeskSet, and another $40,000 for ToolTalk.
    The current versions of OpenWindows for various platforms are:
	SunOS 4.1.1 on Sun 3: 2.0
	Solaris 1.x (SunOS 4.1.x) on SPARC: 3.0
	Solaris 2.0 (SunOS 5) on SPARC: 3.0.1

    See Also:
	Mixing X11 and OpenWindows
	Where can I get it?

@ What are OLIT, XView and TNT?
    These are all toolkits for programmers to use in developing programs
    that conform to the OPEN LOOK specifications.  See the Bibliography
    for documentation on the individual toolkits.  Here's a brief summary:

    OLIT was AT&T's OPEN LOOK Intrinsics Toolkit for the X Window system;
    it used a widget set, and was probably the easiest for people who were
    already X11/Xt programmers to learn.  You could buy the source from AT&T,
    although you didn't get the same version tht Sun ship.  Sun includes the
    OLIT library in OpenWindows (q.v.); it is also often included in
    System V Release 4.  It was written in C.  The release of OLIT in
    OpenWindows 3.0 was OLIT 3.0.  OLIT support passed to USL (then a
    division of AT&T, now owned by Novell), who replaced it with MoOLIT (q.v.).
    Note that because of the nature of Xt subclassing, you will probably
    want or need OLIT source in order to develop a large application or
    anything else that uses subclasses.
    [see the proceedings of the 1991 X Technical Conference]

    XView is Sun's toolkit for X11, written in C.  XView is similar in
    programmer interface to SunView.  There's even a shell script to help
    migrate source code from SunView to XView.	 XView is often said to be
    the easiest toolkit to learn if you are not familiar with X Windows.
    The XView toolkit is included in OpenWindows, and full source is
    available by anonymous ftp from export.lcs.mit.edu (and elsewhere).
    The current version of XView from Sun is 3.0.
    Despite rumours to the contrary -- some even from within Sun -- the
    XView toolkit is *NOT* about to be dropped by Sun.  XView *will* be
    included in the next release of OpenWindows, unlike NeWS.
    On the other hand, the XView toolkit is not likely to receive as much
    attention from Sun in the future as OLIT.

    The NeWS Toolkit (TNT) was an object-oriented programming system based
    on the PostScript language and NeWS.  TNT implements many of the
    OPEN LOOK interface components required to build the user interface of
    an application.  It's currently included in OpenWindows.

    The current version of TNT from Sun is 3.1; Release 3 contains some
    incompatibilities with `tNt' 1.0 and TNT 2.0, but Sun are committed to
    supporting the API, at least until they stop NeWS support some time
    later this year and replace it with Display PostScript.  Wail.
    You might ask what `is committed to' means in this context; the
    answer seems to be that it means absolutely nothing.
    Sun currently asserts that it is committed to OLIT, however.

    The C++ User Interface Toolkit (UIT) consists of an object-oriented C++
    class library layered on top of XView and a tool to generate code from
    DevGuide 3 GIL files.  The UIT also includes features that simplify
    event management and the use of PostScript and color.  It is said to be
    compatible with OpenWindows V2 and V3, and presumably V3.0.1, since the
    release mentions that it works on Solaris 2.
    UIT is not an official Sun-supported product but an ongoing project of
    various people within Sun.  It can be found on export.lcs.mit.edu in
    the MIT contrib directory as UITV2.tar.Z (use binary mode!).

@ Where does Motif fit in?
    It doesn't :-).  Motif is an alternative Graphical User Interface that
    is being developed by OSF.	It has a `look and feel' reminiscent of
    Microsoft Windows and the OS/2 Presentation Manager.  There are no non-
    commercial Motif toolkits available, although the Motif source is sold
    reasonably cheaply by OSF.	Although Motif is currently available on
    more platforms than OpenWindows, the OPEN LOOK GUI is almost certainly
    used on many more machines, simply because Sun (and SysVR4) have such a
    large installed base.
    Sun's CD/WARE Volume 2 contains a roadmap for improving Motif
    applications by converting them to OLIT [:-)]; there are also notes in
    the `Periodic Table' OLIT demo, $OPENWINHOME/demo/olittable.

@ What is MoOLIT?
    MoOLIT is a version of OLIT from AT&T/USL that lets users choose between
    a Motif and an OPEN LOOK UI feel at run-time.  It will be part of System V
    Release 4.2.
    Contact: Joanne Newbauer, jo@usl.com, (908) 522-6677

@ What about that Display PostScript thing?
    Sun and Adobe have agreed that Sun will include the DPS extension to X
    in the next release of OpenWindows.  DPS is essentially a badly designed
    hack on top of a slow Level 2 PostScript interpreter intended to give a
    very small subset of the functionality of NeWS whilst simultaneously
    being harder to use, as I understand it.  The only real advantage it
    has over NeWS is that the manual is much smaller, being generally less
    complete; DPS is also available on more kinds of machine.
    Performance on our RS/6000 is not suitable for interactive work;
    what it will be like on the SPARCStation remains to be seen.
    Note that whereas X/NeWS fonts are shared by both subsystems, the DPS
    extension to X does _not_ make Type 1 PostScript fonts available to
    ordinary X11 programs.  It is not like ATM on a PC in this regard.
    (there is at least one third-party version which does make fonts
    available, however)

Subject: Window Managers -- olwm, olvwm

@ What are olwm and olvwm?
    They are window managers.  A window manager is the part of the X Window
    system (e.g. X11) that is responsible for deciding how to lay out windows
    on the screen, and for managing the user's interaction with the windows.

    Olwm is the standard OPEN LOOK window manager.
    It's included with all of the OpenWindows (q.v.) implementations, and
    you can also get the source by ftp, since Sun donated it.

    Olvwm is a version of olwm that manages a `virtual desktop' (hence the
    `v' in its name).  It shows a little map on the screen, with the
    currently displayed area represented by a little rectangle.	 You can
    move around by dragging the rectangle or with the arrow keys.  This
    lets you run several clients (applications) and move the display around
    from one to the other.  Olvwm was derived from the OpenWindows 3.0 olwm
    by Scott Oaks; you need to have XView 3.0 to compile it.
    Get olvwm from an ftp site such as export.lcs.mit.edu (in the contrib
    directory; there are three patches).

@ Can I use my favorite window manager with OpenWindows instead of olwm?
    Yes.  If you use twm, for example, or mwm, you won't be able to use
    the Pin and Unpin feature of olwm, and you (probably) won't see the
    footers some windows use to display certain messages.

    If you use twm, you'll want to use the f.delete function to unpin menus
    and get rid of programs that don't have a `quit' button when not run
    under olwm.
    For twm, put this in your $HOME/.twmrc:
	LeftTitleButton "target" = f.delete
    where "target" is a 16x16 icon from /usr/include/X11/bitmaps.
    Alternatively, try
	# Add a menu to each window managed by twm or tvtwm
	LeftTitleButton ":menu" = f.menu "OL.menu"

	menu "OL.menu" {
	    "Quit"         f.delete
	}

    For mwm, you can double-click on the menu icon on the left of the title
    bar to dismiss a pop-up window (I am told).

    See the manual page for your window manager (twm, etc).

Subject: OpenWindows, Terminals, and Other Displays

@ Can I use olwm and olvwm without OpenWindows or on an X Terminal?
    The OpenWindows xnews server combines SunView, NeWS (PostScript) and X11.
    This means that it can run programs compiled for any of those systems.
    Unfortunately, it means that some OpenWindows programs need either NeWS
    or SunView support, and thus won't run on an X terminal.  This includes
    pageview in particular.

    You can use olwm or olvwm (see above) on an X terminal or a non-Open-
    Windows display, and most OPEN LOOK clients (e.g. OLIT or XView ones)
    will work perfectly well.  You may find that you get complaints about
    fonts not being found.  If so, see the Fonts section below.
    If you are running the window manager built-in to an NCD terminal, you
    may have problems with input focus; setting *Input: True in the terminal's
    XDefault file in /usr/lib/X11/xdm may or may not help.


Subject: Configuration Files: Getting started with OpenWindows
     
@ What configuration files do I need to know about?

    .xinitrc and .xsessionrc

    The first time you run OpenWindows, a .xinitrc file will be created in
    your login directory ($HOME).  If it already exists, you might have to
    edit it somewhat; it's simplest to move it and any other old X11 files
    you have to another directory, and then merge the old and new files.

    If your site uses xdm, you should use .xsession instead of .xinitrc,
    since xdm doesn't look at your .xinitrc file.

    .openwin-init, .openwin-menu and .openwin-sys

    These are optional files you can create in your $HOME directory,
    depending on which version of olwm or olvwm you use.
    Look in $OPENWINHOME/lib (normally /usr/openwin/lib) for these files
    without the leading . and copy any you want to change.  You may need
    to edit your .xinitrc to get them recognized.  If you are not on an
    X terminal, you will want to run a console window (such as cmdtool -C,
    shelltool -C, xterm -C) or Chuck Musciano's "contool" program so that
    system output will be directed there instead of writing over your screen.
    Note that .openwin-sys is not executed unless you edit .xinitrc.

    .Xdefaults

    You can put X Windows resource specifications in here.  In particular,
    it is a good idea to include at least:
	OpenWindows.FocusLenience:	true
	*Input: TRUE
    These allow non-ICCCM-compliant programs to receive input even if they
    forget to ask for it.

    Props, the program that runs when you select `properties' from the default
    root menu under olwm or olvwm, writes your choices into .Xdefaults.
    Don't put comments in .Xdefaults, since `props' deletes them.

    .startup.ps

    This is the NeWS user profile file, read by OpenWindows (actually xnews)
    on startup.	 This is documented in the NeWS programming manual, near the
    back.  The most useful thing to put here is PostScript code to change
    the keyboard repeat rate, although you must be very careful, since a
    syntax error in the PostScript means that xnews will either not start up
    at all or will get broken in strange ways.	The NeWS manual gives code
    that is both incorrect and insufficient.
    WARNING: things in this file rarely work on both OpenWindows 2 and 3.

    Note that the mouse speed is best set in your .xinitrc with xset m; see
    the man page for xset ("man xset", and "xset -help") for more information.

    Here's what $HOME/.startup.ps  should look like if you want a delay of
    about a third of a second (300000 microseconds), and a repeat rate of
    twenty or so keys per second (30000 microseconds between repeats) for
    OpenWindows 3.  You'll have to experiment a bit because the RepeatTime
    is the delay between keys sent, and thus doesn't include the time to
    process each key, which is probably higher on my 4/110 than on your
    SuperSPARC 10/51 GTi injection :-)  Again, this is for OpenWindows 3...

	% don't want the demos - see p. xxxii of NeWS Toolkit Reference Manual
	% /IncludeDemos? false def

	UserProfile begin
	    /KeyRepeatThresh 0 300000 timeval storetimeval def
	    /KeyRepeatTime 0 30000 timeval storetimeval def
	    % Note: 300000 and 30000 differ greatly...
	end

    You must also have a .user.ps file in the same directory, like this:

	/NeWS 3 0 findpackage beginpackage
	/TNTCore 3 0 findpackage beginpackage
	/TNT 3 0 findpackage beginpackage

	ClassRepeatKeys pop	% force repeat.ps to autoload

	endpackage endpackage endpackage

    If you change these parameters, you can test them without restarting the
    OpenWindows server like this:
	$ psh -i .startup.ps
	Welcome to X11/NeWS Version3
	$ psh -i
	Welcome to X11/NeWS Version3
	/classinit ClassRepeatKeys send
	%%% now press control-D

    You can also either of these two files (.startup.ps and .user.ps) to make
    the root window be "retained", so that a PostScript drawing on the
    background won't be erased when you move windows:
	frambuffer /Retained true put
    will do this.  Note that this may increase the amount of memory used
    by the NeWS server (xnews) dramatically.
    
    See also:
	Trouble Shooting: It Won't Let Me Type
	Trouble Shooting: Is there an easy way to edit Xdefaults?
	Environment Variables

@ How can I configure OPEN LOOK for a left-handed mouse and keyboard?
    You can use xmodmap to change the mouse buttons, but be prepared for one
    or two occasional surprises.  See also "man 7 xview" for a list of
    keybindings you can change, at least for XView programs.

    With OpenWindows 2.0, you can use defaultsedit to set the mouse mappings
    and then let SunView handle them.  The status returned by svenv should
    tell you whether your server is running under SunView or not; put this
    in your .xinitrc:

    if eval `svenv -env`
    then
	xmodmap -e "pointer = 1 2 3"
	input_from_defaults
    else
	xmodmap -e "pointer = 3 2 1"
    fi


@ How can I get the screen to go blank when the system is idle?

    Run screenblank from /etc/rc.local if you can; it's a boring but
    effective screen saver.  See `man screenblank'.
    Under Solaris 2 you'll need to copy screenblank from an older system, as
    it's not supplied.  Then add a new file in /etc/rc2.d to make the system
    run screenblank automatically.

Subject: Key Bindings, Cut and Paste

@ How do I cut and paste between XTerm and OpenWindows programs?

    To go from XTerm to textedit (say):
    * Select the text you want to copy by dragging the SELECT mouse button
      in xterm
    * Press COPY in the XTerm (this key is L6, or Meta+c (the O'Reilly
      XView manual gets this wrong)
    * Move to the textedit window, and press PASTE (L8 or Meta+v)

    If this doesn't work, see Trouble Shooting: Cut and Paste

   To go the other way, from textedit to XTerm:
    * Select the text in textedit.  No need to use COPY
    * Move to the XTerm window and press ADJUST (the middle mouse button).
    * You can also use the COPY/CUT and PASTE buttons.

@ COPY/PASTE is boring.	 What short-cuts are available?

    Quick Copy within textedit, mailtool, etc:
    * Click SELECT to get a text caret where you want the copied text to go
    * Press and HOLD DOWN the PASTE (or CUT) button
    * Select the text you want to copy/move.  You'll see that it's underlined
      or crossed out, as appropriate.  (In the jed demo it goes grey)
    * Let go of the PASTE (or CUT) button.
    * The text you underlined or crossed out appears at the insert caret.

    Drag and Drop to Move a Selection
    * Select the text you want to copy or move, by dragging or multiple-
      clicking the SELECT or ADJUST mouse button
    * Put the mouse pointer anywhere within the selection
    * Press and HOLD DOWN down the SELECT mouse button, and move the mouse
      pointer a little to the right; you'll see the cursor changes to be the
      first 3 letters of the text (or some other icon).
    * Still holding SELECT down, move the mouse over the point where you want
      to drop the text
    * You may see the mouse pointer change to a rifle-sight or target, to show
      that it's OK to drop things here
    * Let go of SELECT, and the text is moved.	This works in text fields of
      dialogue boxes as well as in text subwindows.

    Drag and Drop to Copy a Selection
    * This is the same as using Drag and Drop to Move a Selection, except that
      you must hold the CONTROL key down as well as the SELECT mouse button.

@ What are the default key bindings in textedit and elsewhere?

    See the man page for textedit(1) for some of them.
    In general, the editing/moving commands go in the opposite direction when
    shifted - e.g. Ctrl+w deletes a word, and Ctrl+W deletes the word to the
    right of the insert point.

	Meta-i - include file	    Meta-f - find selection (forward/backward)

	Ctrl-a - start of line	    Ctrl-< - back word
	Ctrl-e - end of line	    Ctrl-> - forward word
	Ctrl-w - delete word	    Ctrl-u - delete to start/END of line
	Ctrl-Return - move to end/START of document

    See the O'Reilly XView Reference Manual for a list of some of the default
    keys; see also the olwm or olvwm manual page.

@ What can I put in my .ttysrc?	 Where is it documented?

    See the manual page for shelltool.

Subject: Applications: Finding Out...
    Contact SunSoft (or Sun) and ask for the Catalyst OPEN LOOK guide,
    which lists over 200 pages of applications, and also the _huge_
    Catalyst listing of products for Suns, updated six-monthly.

    Sun's free CDWare CD/ROMs each contain demo versions of several popular
    OPEN LOOK applications.  Often you can simply contact the vendor
    concerned to have the license upgraded from demo, and receive the full
    product documentation.

    SunPICS produces a CD/ROM for NeWSPrint users, Printer's Pallate, which
    contains NeWSprint drivers for a variety of printers and plotters, as
    well as 600 scaleable fonts that you can license.

    There is a separate FAQ posting in comp.windows.open-look that lists
    a number of free and commercial aplications; mail lee@sq.com for a
    copy, including OPEN LOOK UI Application List in the Subject for a
    faster reply.

Subject: DeskSet, Mailtool, Calendar Manager, etc.

@ Is there a tty-based interface to cm (Calendar Manager)?
    Yes, cm_delete, cm_insert and cm_lookup; these all have manual pages.
    If "man cm_delete" doesn't work or gives strange messages, see under
    Trouble Shooting: Strange Error Messages, below.

@ How can I arrange to have my .signature included in my outgoing mail?
    The best way is:
    $ cd
    $ cp /usr/lib/.textswrc .
    $ chmod +w .textswrc
    edit .textswrc (use vi, textedit, or whatever you prefer)
    add the follwing:
	KEY_RIGHT(3)    FILTER
	cat ~/.signature
    (you might need to change ~ to $HOME)

    Now pressing R3 will insert your .signature file.



Subject: Fonts

@ Does OpenWindows support Type 1 PostScript fonts?
    Yes, under either Solaris 2.0 or 2.1 (I'm not sure which).
    Or, Not Yet, in other words.

    If you have FrameMaker there is a utility to import them, I'm told.
    The 57 fonts supplied with OpenWindows are fully hinted, though, and
    comparing them to the Microsoft Windows and Apple TrueType fonts is
    interesting...  The F3 font format is described in a publication from the
    Sun OpenFonts group, listed in the Bibliography below.  Documentation on
    the unbundled version of TypeScaler is also available from Sun OpenFonts.

    You can buy F3 fonts from SunPICS, Monotype, Linotype, URW and probably
    other major foundries.

    SunPICS' NeWSPrint software supports Type 1 fonts.

@ Improving font rendering time
    Although the Sun type renderer (TypeScaler) is pretty fast, it's not as
    fast as loading a bitmap :-).  You can pre-generate bitmap fonts for sizes
    that you use a lot, and you can also alter and access the font cache
    parameters.	 If you have a lot of memory you might want to increase the
    font cache size.
	$ psh -i
	Welcome to X11/NeWS Version3 <--- psh will say this at you
	currentfontmem =	% type this line ...
	300	% and here's whai my server was using -- 300 Kbytes
	1024 setfontmem
	% Just to check:
	currentfontmem =
	1024
    See pp. 328ff of the NeWS 3.0 Programmer's Guide.  You need to say psh -i
    so that the PostScript packages are loaded - see the psh man page.

@ Making bitmap fonts for faster startup:
	$ mkdir $HOME/myfonts
	$ cd $HOME/myfonts
	$ makeafb -20 -M $OPENWINHOME/lib/fonts/Bembo.f3b
	Creating Bembo20.afb
	$ convertfont -b Bembo20.afb
	Bembo20.afb->./Bembo20.fb
	Chars parameter greater than number of characters supplied.
	$ ls
	Bembo20.afb	Bembo20.fb	Synonyms.list
	$ bldfamily
	* Bembo		       ./Bembo.ff (Encoding: latin)
	cat: ./Compat.list: No such file or directory
	$ xset +fp `pwd`
	$ xset fp rehash

    If you want the server to see your new font directory every time,
    add this directory to your FONTPATH environment variable in one
    of your start-up files, e.g. .login or .profile.

@ Converting between font formats (convertfont, etc.)
    You can also use Folio fonts with an X11 server, by converting them to a
    bitmap (X11 bdf format) first.  Your licence forbids you from using the
    fonts on another machine, and unless you have NeWSPrint you shouldn't
    use them for printing.  Having said all that...  you can use makeafb and
    convertfont to generate bdf files that you can compile with bdftosnf or
    bdftopcf.

    Use mftobdf (from the SeeTeX distribution) to convert TeX pk fonts to
    X11 bdf format, which you can then use with either X11 or OenWindows.

    You can also use der Mouse's "getbdf" to get bdf fonts from a running
    X display server -- ftp: larry.mcrcim.mcgill.edu (132.206.1.1) /X/getbdf

@ Xview/OLIT fonts at 100 dpi
    There aren't any.  More precisely, the various text fonts, such as
    Lucida Typewriter Sans, are available at 100 dpi, and in fact are
    scalable under OpenWindows.	 The glyph fonts are bitmaps, and don't
    scale very well.

Subject: Trouble Shooting: Strange Error Messages

@ No manual entry for cm_lookup

    If man doesn't seem to find OpenWindows commands, even though you are
    running OpenWindows, try setting the MANPATH environment variable:
	MANPATH=$OPENWINHOME/share/man:/usr/man; export MANPATH
    or
	setenv MANPATH $OPENWINHOME/share/man:/usr/man
    for csh users.  $OPENWINHOME should be /usr/openwin on most systems.

@ window: Window creation failed to get new fd 
@ window: Base frame not passed parent window in environment 
@ Cannot create base frame.  Process aborted. 

    These messages all come from SunView programs.  SunView was an
    earlier windowing system for Suns, and was not networked.  Some of
    the SunView programs are still around in /usr/bin, and have names
    that are the same as their OpenWindows counterparts.  You almost
    certainly want to run the programs in $OPENWINHOME instead.

    Set your path so that $OPENWINHOME/bin (and $OPENWIN/bin/xview for
    OpenWindows 2) come before /bin (or /usr/bin, they're the same), or
    you'll get the SunView versions of mailtool, cmdtool, shelltool, etc.

@ memory fault - core dumped
    If you get this from the binder, or if binder vanishes suddenly,
    get the following patches:
	100493-02 Binder
	100524-03 Cetables
	100626-03 Tooltalk

@ Trouble compiling Xt, Xmu or OLIT programs: _get_wmShellWidgetClass
 
    If you are using OpenWindows 3.0 (X11R4-based Xt), contact your local
    Sun office and request the following patches:
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

    If you can't install the patch, a workaround is to add 
	-u get_wmShellWidgetClass -u get_applicationShellWidgetClass
    on the link (ld or cc ... -o ...) line.  An alternative is to add
	-assert nodefinitions
    to CFLAGS in your Makefile, or even in Imake.tmpl.


Subject: Trouble Shooting: It Won't Let Me Type

@ When I try to type into some programs, I just get beeps or nothing happens
    It is a good idea to include at least:
	OpenWindows.FocusLenience:	true
	*Input: TRUE
    in your .Xdefaults file, as these allow non-ICCCM-compliant programs to
    receive input even if they forget to ask for it.
    See the next item for editing .Xdefaults

Subject: Trouble Shooting: Cut and Paste not working

@ I can't paste from xterm to XView (including Sun DeskSet) programs
    Under OpenWindows 2, you need to add the following either to your
    $HOME/.Xdefaults file, or to $OPENWINHOME/lib/app-defaults/XTerm instead:

	XTerm*VT100.Translations: #override \
		<Key>L6:select-set(CLIPBOARD)\n\
		<Key>L8:insert-selection(CLIPBOARD)
  
    You must not move the mouse between ending the selection and pressing
    L8 (the Paste key)!

    Under OpenWindows 3, this is already in the app-defaults file, so if it
    isn't working, check that XFILESEARCHPATH is set to
	/usr/openwin/lib/%T/%N%S
    and if it isn't, either set it or copy/merge the above lines from
    $OPENWINHOME/lib/app-defaults/XTerm into /usr/lib/X11/app-defaults/XTerm.
    [See also: Environment Variables]

    This version automatically puts each xterm selection onto the clipboard:
	XTerm*VT100.translations: #override\n\
	    ~Ctrl ~Meta<Btn2Up>: insert-selection(PRIMARY,CUT_BUFFER0)\n\
	    ~Ctrl ~Meta<BtnUp>: select-end(PRIMARY,CUT_BUFFER0,CLIPBOARD)\n\
	    <KeyPress>L8: insert-selection(CLIPBOARD)
    [Note: be sure that the \n\ is at the very end of the line, there must
     be no following spaces, and any + or | signs showing that this FAQ file
     was altered must also be removed!]

    If you are using X11R5, you may find that adding the lines
<Key>L10: start-extend() select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0)\n\
       <KeyRelease>L10: kill-selection() \n
    before the <KeyPress>L8 line will make L10 (CUT) work as a cut key!

    If you alter $HOME/.Xdefaults instead, you must use what X calls a
    `more specific' resource name:
	xterm.vt100.translations
    will do.

@ I can't paste from XView (including Sun DeskSet) programs to xterm

    If you don't have the Sun L keys on the left of your keyboard, you can
    use Meta-x, Meta-c and Meta-v for cut, coy and paste respectively.
    You can change the keys by adding the following two lines to
    your .Xdefaults file, edited as you wish (the values shown here are the
    defaults):

	Openwindows.KeyboardCommand.Copy: c+Meta,L6
	OpenWindows.KeyboardCommand.Paste", "v+Meta,L8
    
    Lists of resources are in the manual page for xview, and also in the
    thinnish blue book `Companion to Volume 7, XView Reference Manual' from
    O'Reilly, and also in the olwm and olvwm manual pages.

@ I always get the same piece of text when I press PASTE (L8, Meta+v)
    Remove the file /tmp/textsw_shelf and see if that helps; see also the
    next item.

@ Cut Copy and Paste don't work at all (OpenWindows only)
    Oh dear.  Use ps -xuaww | grep xv  to check that sv_xv_sel_svc is running
    and that either you or root started it, depending on whether you started
    OpenWindows with "openwin" or by logging in through xdm.
    If not, start it.  If it dies, check that there is no /tmp/.sv_xv_sel_svc
    before restarting it - you may need to be root to remove it, or you can
    reboot your workstation.
    Check that there is space in /tmp (use "df /tmp"), and also see if there
    are a lot of files there with names like /tmp/tty.txt.a01246; if there are
    several hundred of them, cut and paste may take so long that it times out.

    Quit any deskset tools such as mailtool, filemgr and cm (calendar), start
    a terminal emulator and remove and /tmp/tty.txt* and /tmp/Text* files
    that are still there.  It's simplest to quit openwin and start it again
    after doing that, if cut and paste was broken, but if it starts working
    again you can just carry on.  Note that files in /tmp not owned by you
    might be in use by another worker comrade, so don't remove those without
    checking first!

Subject: Trouble Shooting: Not authorized to use display

    If you get error messages that look like
	Xlib:  connection to ":0.0" refused by server
	Xlib:  Internal error during connection authorization check
	Error: Can't Open display
    try, on the machine running OpenWindows or X11,
	xhost +machine
    where "machine" is the computer on which you ran the command that failed.
    If you want to let other users run programs on the same machine as you,
    using your display, you will have to type the bizarre-looking
	xhost +`hostname`
    (or xhost +happyboy, if happyboy is the name of your workstation).
    This lets ANY user on `happyboy' access your display.

    With OpenWindows 3.0 you can also use xauth, and the Programmer's Guide 
    describes how to do this in Chapter 8, p. 101.  This is more secure.
    Also check the man page for fbtab(5) to stop other users accessing the
    framebuffer directly!

    Also note that there is a Sun patch for OpenWindows 3.0 under SunOS 4.1.1
    to fix a serious security problem.  It is available through your local
    Sun Answer Center as well as through anonymous ftp from ftp.uu.net
    [192.48.96.2] system in /sun-dist:
    Fix                     PatchID        Filename            Checksum
    loadmodule              1076118        100448-01.tar.Z     04354  5


    On an X Terminal, there may be a setup menu that lets you change or
    disable the list of hosts that can access the display.

    If you start getting this message after you've been logged in overnight,
    there might be a cron job that's removing the Unix sockets in /tmp
    that are used to communicate with the server when $DISPLAY doesn't have
    a hostname before the :, or is empty.  Have the system administrator
    change the cron script to skip sockets.

Subject: Trouble Shooting: other common problems

@ I get console error messages on my screen and they don't go away (Sun 3 or 4)
    If "refresh" makes the messages vanish, but new ones come along later,
	you need to run "xterm -C" from your .xinitrc, or start one up in
	the background and then  choose Save Workspace from the
	Workspace->Utilities menu.  Better still, pick up "contool" and run
	that.  Get it from export.lcs.mit.edu in the contrib directory.  It
	will monitor the console and open, flash its icon or beep when a
	message appears; it's very easy to configure.

    If "refresh" from the Workspace->Utilities menu doesn't make the messages,
    go away...
	a Sun with a cg4 frame buffer has two screens - you can move the
	mouse off the right-hand (by default) edge of the screen and onto
	a whole new (but monochrome) display, called ":0.1".  See the man.
	page for openwin; I have a shell script that checks for this and,
	if there's a /dev/cgfour0, does
		openwin -dev /dev/cgfour0 -dev /dev/bwtwo0
	If you are running X11 or OpenWindows 2, you might need to add this
	to your .xinitrc or other startup file:
	(
	    eval `svenv -display unix:0.1 -env`
	    olvwm -display unix:0.1
	) &
	Later releases of olwm and olvwm do this automatically.
	You can also run switcher -e 0 to get rid of the messages.  Also, see
	the note about contool, above.

@ Is there an easy way of editing .Xdefaults?
    Use `props', which appears in the default root menu as `properties'.
    This starts `props', a property editor which will re-write your
    .Xdefaults after removing comments.  It then applies any changes.
    Keep comments by using "comment." instead of "!", for example,
	comment.*.font: Palatino-Italic-37

@ How do I get the File manager to use emacs instead of textedit?
    set the default editor to
	sh -c "exec emacs -font lucidasanstypewriter-18 \"$FILE\""
    (you can change the font if you prefer a smaller one)

@ How do I run OpenWindows in inverse video?
    This tends not to work under OpenWindows 2.	 With OpwnWindows 3.0,
    there are various ways, including using -bg and -fg options.  If you're
    using OpenWindows 2 on a Sun 3 , probably the best you can do (short of
    upgrading the workstation to a SPARC!) is to use xterm instead of cmdtool.

@ Why don't flat check-boxes work?
    A known bug may make Guide's output dump core if you use these.
    A workaround is to edit the Guide output, as it's only Guide's output
    that's broken, not the actual check-box code.
    This applies only to versions of DevGuide before Devguide 3.0.  If you're
    still using an ancient DevGuide, you should upgrade as soon as possible;
    the new one is fantastic!

@ When I leave OpenWindows, my screen goes blank or my mouse cursor stays
  on the screen.
    Try running clear_colormap; if this helps, put it as the last line in
    the shell script you use to start OpenWindows (e.g. `openwin').

@ When I use snapshot, the system crashes, or the server hangs, or something.
    This was a bug related to some systems only.  The only work-round was to
    use some other screen dump program, such as xwd, xv 2.21 or xgrabsc.
    
@ Why have some of my function keys stopped working?
    Keys F11 and F12 changed from SunF36 and SunF37 to SunXK_F36 and SunXK_F37
    respectively in OpenWindows 3.  Applications must be recompiled, or you
    might be able to use xmodmap or the public domain xkeycaps program to
    change your keyboard layout back again.

@ When I type shelltool or cmdtool or textedit, I get the Sunview version
    See under "Trouble Shooting: Strange Error Messages" below.

    (see also next item)

@ Mixing X11 and OpenWindows
    (see also next item)

    Note that OpenWindows 3.0 includes the X11R4 core distribution (to patch
    level 18), but not the contrib directory.  These notes apply to
    OpenWindows 2.0, although you could also the do same sort of thing with
    OpenWindows 3.0 and X11R5.

    Install the X11 libraries in /usr/lib/X11.	You can intermix OpenWindows
    and X11R4 or X11R5, they're all compatible in this respect.
    Put the X11 binaries in (for example) /usr/bin/X11.

    Put /usr/bin/X11 last in your PATH, so that you get OpenWindows versions
    of programs instead of X11 ones where appropriate, although this is a
    matter of preference.  In any event, put the OpenWindows bin directory
    first -- see the preceding item for more details on that.  If you have
    /bin (or /usr/bin, they're the same directory on SunOS) earlier in
    your PATH than $OPENWINHOME/bin/xview, you'll get SunView programs instead
    of OpenWindows ones!

    Set LD_LIBRARY_PATH so that /usr/openwin/lib is last, after the X11
    library directory.	This doesn't matter with OpenWindows 3.0, but with
    older versions you'll get error messages from X11 programs if you don't
    do this.  The messages are generally harmless (see next item), although
    xdm core dumps if this isn't right.

    Set OPENWINHOME to the directory containing OpenWindows if it isn't
    /usr/openwin.

    See Also:
	Environment Variables (especially XFILESEARCHPATH).

@ I get error messages on my screen about ld.so: libX11.so.4 not found
    set LD_LIBRARY_PATH to be /usr/openwin.  If you also use X11, use
	     /usr/lib:/usr/5lib:/usr/openwin/lib
    If you put this in a shell script or your .profile, use
    ${OPENWINHOME-/usr/openwin}/lib instead of /usr/openwin; this is for
    /bin/sh; for csh it is different.

@ I launch my filemgr and I get ld.so:map heap error (9) at /dev/zero
    Your system needs to be patched.  Look in $OPENWINHOME/lib/OSpatches
    and install the patch.

@ Why doesn't AnswerBook run for me?
    You must be running OpenWindows to use AnswerBook.	It won't run under
    X11 (on an X terminal or on anything else) because it uses NeWS to draw
    the PostScript text and pictures.
    If you are using OpenWindows 3.0, you need to use the OpenWindows 3.0
    compatible navigator; it's called .navigator.ow3 on the AnswerBook CD/ROM.
    If all AnswerBook users are using OpenWindows 3.0, you can replace
    navigator wih .navigator.ow3 altogether (rename the old one first to
    satisfy your sense of paranoia!)
    The navigator.ow3 binary is also on CD/Ware Vol 2.
    Note that the data files are in PostScript, so you can look at them with
    a PostSript viewer (q.v.).

@ Why aren't there any fish in realxfishdb?
    A fixed version of realxfishdb is available by ftp from
    ftp.eng.auburn.edu [131.204.10.91] as /pub/realxfishdb.Z

@ Why is the Properties choice disabled in the Window menu?
    It isn't implemented yet.  Many programs do respond to the Properties
    Key (L3), though, or have a pop-up menu with Properties on it.

@ File completion in the C-shell is broken in cmdtool
    Sadly true, but use shelltool or xterm instead and it's fine.  It also
    works if you run command tool on a remote machine.
    Fixed in OpenWindows 3.0.1 shipped with Solaris 2.

@ When I run OLIT programs, some of the widgets are red!
    Release 3 of OLIT added mouseless operation; action widgets can be
    selected via the keyboard.  The currently selected item is highlighted
    in red (the `Red Stain') to show that it has the input focus.
    To disable it in most places, add this to your $HOME/.Xdefaults file:
	*traversalOn: off
	*TextEdit.traversalOn: on
	*TextField.traversalOn: on
    You can change the color using (for example)
	*InputFocusColor: grey50
	*input*FocusColor: green
	*List*inputFocusColor: <your background color>
    See the man page resources(3w), at the start of the OLIT 3 Widget Set
    Reference Manual included in the OpenWindows 3 programmer documentation.
    Meanwhile contact your distributor and ask for patch id 100451-30, the
    OLIT/3.0 CTE Jumbo Patch.

@ When I run several programs, the colors on the screen all change when
  I move into a different window! ("colormap flashing")
    
    This is becasue most hardware can only display a few colors at a time.
    However, you can minimise the effect with the following procedure:
    *  Start all the applications with colors that you wish to reserve.
    *  Run
	cmap_compact save
       to create the .owcolors file
    *  Put the line
	cmap_compact init
       near the start of your start-up file (.xinitrc)
    *  Exit and then restart the window system.
    *  cmap_compact init will push those colors .owcolors to the end of
	the colormap and reserves them.

    Also note that control-L2 locks the colors of the current window, and
    Control-L4 unlocks them -- this is described in the olwm manual page.

@ pageiew uses the wrong colors, or makes the colormap flash (see above):
    This problem was reported by people for some reason running the Motif
    window manager (mwm) with OpenWindows.
    Try running pageview like this:
	$OPENWINHOME/bin/reservecolors -svmono
	$OPENWINHOME/bin/pageview
	$OPENWINHOME/bin/reservecolors -discard

@ XDM breaks things
    Command tool doesn't like being run without a Unix `controlling terminal'.
    Use /etc/setsid to start your command tools and all will be well.
    SunView applications may need to be run with svenv, as in
	svenv -exec /usr/bin/traffic
    because xdm won't set the necessary environment variables.
    Note that the MIT xdm starts up the X server as root, which is a security
    hole for OpenWindows; use the OpenWindows 3.0 xdm or be aware that your
    users can access files and start Unix processes ass root...

@ Function keys 11 and 12 stopped working
    In OpenWindows 3.0, the X11 names ("keysyms") for these keys was changed
    to SunXK_F36 and SunXK_F37.	 Code which uses them should be recompiled,
    or you might be able to get away with
	xmodmap -e 'keysym SunXK_F36 = SunF36'

Subject: Trouble Shooting: XView problems
    This section is here only until an XView FAQ appears, which has been
    promised, but hasn't reached here.	Note that there is also a usenet
    newsgroup, alt.toolkits.xview, although it doesn't sem to have very
    wide distribution and has triffic of the order of one or two articles
    per month.	You should also look at the FAQ in comp.windows.x.

@ how do I set the font of individual Scrolling List items?
    PANEL_LIST_FONT takes an int row_number and an Xv_opaque font_handle.
    PANEL_LIST_FONTS take a NULL terminated list of Xv_opaque font_handles.
    There is no easy way to make an entire list fixed width font.
    You have to make sure that you always specify PANEL_LIST_FONT when you
    insert a new row into that list, or write a convenience function
    insert_row(list, row, string) that hides the nasty bits.

@ how do I keep an XView pop-up window displayed after a button is pressed?
    In the button callback, do
        xv_set(button, PANEL_NOTIFY_STATUS, XV_ERROR, NULL);
    This will keep the window visible.
    You might also need to investigate the MENU_NOTIFY_STATUS attribute.

@ how do I make an XView button look pressed?
    call panel_begin_preview() and panel_cancel_preview(); these are
    documented in -- er -- the XView 3 source...

@ OpenWindows 3 imake doesn't work properly
    Here is Greg Earle's patch, to be applied in $OPENWINHOME; note that you
    should edit lib/config/sun.cf afterwards to get OSName and
    OSMinorVersion right (MinorVersion is 1 in SunOS 4.1.2, for example).
    I have edited the patch a little, so any bugs are mine [lee@sq.com] :-)
 
*** bin/xmkmf.orig	Wed Sep 18 07:02:02 1991
--- bin/xmkmf	Tue Aug  6 00:39:20 1991
***************
*** 30,34 ****
  
  elif [ -n "$OPENWINHOME" ]; then
! 	args="-DUseInstalled $OPENWINHOME/lib/config"
  
  else
--- 30,34 ----
  
  elif [ -n "$OPENWINHOME" ]; then
! 	args="-I$OPENWINHOME/lib/config -DUseInstalled -DXCOMM='/**/#'"
  
  else
*** lib/config/site.def.orig	Wed Sep 18 01:26:19 1991
--- lib/config/site.def	Tue Aug  6 00:44:37 1991
***************
*** 0 ****
--- 1,7 ----
+ #define BinDir $(OPENWINHOME)/bin
+ #define LibDir $(OPENWINHOME)/lib
+ #define IncRoot $(OPENWINHOME)/share/include
+ #define InstallNonExecFile(file,dest)					@@\
+ install:: file								@@\
+ 	$(INSTALL) -c $(INSTDATFLAGS) file dest
+ #define NullParameter

[Note: the patch is new, but I have not marked each line with a "+" -- Liam]

Subject: Environment Variables

    Environment variables, and plausible values to use -- this list doesn't
    take into account any local changes that you might have made, of course.
    This list is for OpenWindows 3.0 -- differences for OpenWindows 2.0 are
    marked, and I've added some comments for users of X11R4 and X11R5, too.

    DISPLAY  The name of the X Windows Display to use
	:0.0 (on the local machine, the one actually running X11 or xnews)
	:0.1 (on some machines for a second, monochrome screen)
	machine-running-unix:0.0 (on other machines)
	(You may need to do "xhost +other-machine" to let programs on other
	machines use your display; see also under Trouble Shooting, and see
	the section on xauth in the OpenWindows Version 3 Programmer's Guide,
	pp. 101ff)
	See also: console messages, under Trouble Shooting
    FONTPATH  Where xnews searches for fonts
	/usr/openwin/lib/fonts
	(you can also use "xset fp+ dir" to add a directory to the font path,
	but you may have to do "xset fp rehash" afterwards.  This is fine
	under OpenWindows, but many X11 servers have font problems)
    HELPPATH  Where XView looks when you press the Help key (or F1)
	/usr/openwin/lib/locale:/usr/openwin/lib/help
	(On SunOS 4.0.*, or with OpenWindows 2.0, omit the first entry, which
	is for sites using a local other than "C" or "USA").
    LD_LIBRARY_PATH   Where to look to find shared C libraries
	/usr/lib:/usr/5lib:/usr/openwin/lib:/usr/CC/`arch`
	(the /usr/CC/`arch`/lib entry is only needed if you use C++ programs)
    OPENWINHOME	 Where OpenWindows lives
	/usr/openwin  
    KEYBOARD, MOUSE -- serial devices to use instead of the console
	(don't set these for normal use; /dev/kbd and /dev/mouse)
    PATH  Where the Shell searches for programs to run
	$(OPENWINHOME)/bin:$(OPENWINHOME)/bin/xview:/usr/local/bin:.\
	$HOME/bin.`arch`:/usr/ucb:/usr/bin:/usr/bin/X11:/usr/hosts:\
	(you will certainly want to change this example!  There is no
	$(OPENWINHOME)/bin/xview in OpenWindows 3.0)
    XFILESEARCHPATH  Where programs look for app-defaults files
	/usr/openwin/lib/%T/%N%S
        (This is set automatically by "openwin" in OpenWindows 3.0)
        You might want to use /usr/lib/X11/%T/%N%S, or perhaps both,
        separated with a :, for example (for sh users)
            XFILESEARCHPATH=$OPENWINHOME/lib/%T/%N%S:/usr/lib/X11/%T/%N%S
	    export XFILESEARCHPATH
	If you use X11R5, you might instead want
	    /usr/lib/X11/%L/%T/%N%C%S:
	    /usr/lib/X11/%l/%T/%N%C%S:
	    /usr/lib/X11/%T/%N%C%S:
	    /usr/lib/X11/%L/%T/%N%S:
	    /usr/lib/X11/%l/%T/%N%S:
	    /usr/lib/X11/%T/%N%S:
	    $OPENWINHOME/lib/%T/%N%S
	(put all this on one line, though, with no spaces!)

	Together with the following in lib/Xinitrc
	xrdb -merge <<'END_XRDB'
	   *customization:
	END_XRDB

	xrdb -merge <<'END_XRDB'
	#ifdef COLOR
	   *customization:  -color
	#endif
	END_XRDB

	you automatically get a color oclock, editres, bitmap, xcalc, and
	xlogo since they use the "*customization" resource appearing as %C in
	the XFILESEARCHPATH. (see oclock (n))
	according to Rainer Sinkwitz <sinkwitz@ifi.unizh.ch>.


Subject: Where Can I get It? Ftp, implementations, etc...

    XView 3.0 is available by anonymous ftp from export.lcs.mit.edu and
    elsewhere.

    MoOLIT can be bought from AT&T in source form.

    OpenWindows can be obtained from Sun, or you can get the source from
    Interactive Systems Inc.  It is also included in some vendors' System V
    Release 4 implementations, although that's not always the latest version.
    The current release of OpenWindows from Sun for supported architectures
    is 3.0; for the Sun 3 series it is frozen at OpenWindows 2.0.
    Note that Sun includes OpenWindows with SunOS, and it is also included as
    the windowing system for Solaris.

    There are said (by Sun) to be over 35 ports of OpenWindows either
    available now or in progress.  Unfortunately, none of them seem to
    be available from anywhere.  Contact anthony@ovi.com for more information.


Subject: Bibliography: books, manuals, journals, papers, beer-mats

    The OPEN LOOK (tm) Graphical Interface is documented in two books:
	Sun Microsystems Inc., `OPEN LOOK Graphical User Interface Application
	Style Guidelines', Addison Wesley, 1989
    and
	Sun Microsystems Inc., `OPEN LOOK Graphical User Interface Functional
	Specification', Addison Wesley

    The Main documentation for the X Window system comes from
    O'Reilly & Associates in about nine or ten volumes.
    The most useful for OPEN LOOK users are:
	Volume 1: XLib Programming Manual
	Volume 2: XLib Reference Manual
	Volume 3: X Window System User's Guide
	    (An OPEN LOOK edition of Volume 3 should appear later this year)
	Volume 7: XView Programmer's Manual [Dan Heller]
	    [make sure you get the 3rd edition for XView 3.0]
	Companion to Volume 7: XView Reference Manual [Ed. Thomas Van Raalte]

	The Companion to Volume 7 is an expanded version of the Attribute
	Summary from the previous edition of the XView Programming Manual,
	together with other reference information, so that in practice you
	have to buy both books.

	O'Reilly also have a thinnish orange book on the differences between
	X11R4 and RX115.

	OLIT programmers will also want the Xt books - volumes 4 and 5.
	There is a new big fat green Vol 5 updated for X11R5.

	A journal, The X Resource, may also be of interest.

	O'Reilly & Associates, 103 Morris Street, Suita A, Sebastopol, CA 95472
	+1 707 829-0515, or, in the USA and Canada only, 1-800-998-9938
	Fax: +1 707-829-0104.
	Email nuts@ora.com or uunet!ora!nuts.
	For other distributors: mail, FAX, or call +1 707-829-0515.

    Some of the O'Reilly examples are available fro ftp from
    export.lcs.mit.edu in the contrib/OReilly directory.

    The System V Release 4 Documentation from Prentice Hall may also include
    a section on OpenWindows.

    David Miller describes programming with OLIT in his
	`An OPEN LOOK At Unix' (M&T press).
    
    Nabajyoti Brkakati gives an excellent introduction to X and to OLIT
    programming, as well as setting up and using X and OpenWindows, in:
	`Unix[R] Desktop Guide to OPEN LOOK'
	SAMS, 1992  ISBN 0-672-30023-0
	You can get the examples from this book as
	    export.lcs.mit.edu:contrib/naba-olguide-examples.tar.Z

    Also about using OLIT, and Xt in particular:
	The X Window System: Programming and Applications with Xt,
	OPEN LOOK Edition,
	Doug Young and John Pew, Prentice Hall, 1992,
	ISBN 0-13-982992-X
    There are also HP Widgets and Motif (ugh) versions of this book.
    The example source code in this book can be obtained by ftp from
    export.lcs.mit.edu, file "contrib/young.pew.olit.Z".

    There is an introduction to XView in
	`Writing Applications For Sun Systems', Vol 1, `A Guide for
	Macintosh(R) Programmers' (Sun Microsystems, pub. Addison Wesley)
    
    To learn more about the NeWS and PostScript languages, see

	The NeWS Book, Springer Verlag, 1989 (sadly, a little out of date)

	PostScript Language Reference Manual, Second Edition,
	Adobe Systems Inc., Addison Wesley, 1990 ["the Red Book"]
	    Note that OpenWindows 3 is a level 1 PostScript implementation,
	    with certain Level 2 features (such as Composite Fonts) to some
	    degree.
	
	PostScript Language Tutorial and Cookbook,
	Adobe Systems Inc., Addison Wesley, 1985 ["The blue book"]
    
    There's at least one book on using Solaris (i.e. SunOS).

    Sun also supplies a large amount of documentation with OpenWindows,
    although you may have to order it separately.  Here's what I have; they
    are each a little over 21 cm square (wider than A4 paper), and vary from
    about 1 cm to about 3cm thick.  They say `User's Guide' or `Programmer's
    Guide' on the front.  The User manuals have a red stripe on the bottom,
    and the Programmer ones have a green stripe.

    800-6006-10 OpenWindows Version 3 Release Manual
    800-6029-10 OpenWindows Version 3 Installation and Start-Up Guide
    800-6231-10 OpenWindows Version 3 DeskSet Reference Guide
    800-6618-10 OpenWindows Version 3 User's Guide
    800-6323-10 Desktop Integration Guide [also available in bookstores?]
    800-6027-10 Programmer's Guide
    800-6005-10 OpenWindows Version 3 Reference Manual [the man pages]
    800-6319-10 The NeWS Toolkit 3.0 Reference Manual
    800-6736-10 NeWS 3.0 Programming Guide
    800-6055-10 OLIT 3.0 Widget Set Reference Manual
    800-6198-10 XView 3.0 Reference Manual: Converting SunView Applications

    800-6854-10 F3 Font Format Specification [order separately]

    There are also some other sets of documentation, including the TypeScaler
    documentation from the OpenFonts group, for example.  There doesn't seem
    to be a complete list anywhere.

    ??????????? ToolTalk 1.0 Setup and Administration Guide (SunSoft, 1991)
    800-6093-10 ToolTalk 1.0 Programmer's Guide (SunSoft, 1991)
    There might be documentation about the Link Manager somewhere, too.

    AT&T includes several large thorny bushes' worth of paper with OLIT.

    Sun's AnswerBook CD/ROM contains a lot of the above documentation,
    including some of the O'Reilly books (not the XView 3 Volume 7, though).

    Volume 8 of the O'Reilly series is about X Administration, and mentions
    OpenWindows, although it is primarily aimed at X11R5.

    Several other books are in the works...


Subject: Getting this File, Revision History, Recent Changes

    Mail lee@sq.com to ask for it.  Douglas N. Arnold (dna@math.psu.edu)
    keeps an up-to-date copy on ftp.math.psu.edu (currently 146.186.131.129)
    in the file ~ftp/pub/FAQ/open-look.
    The net.answers archives and servers may or may not know about this file,
    since they've just changed hands and this file was previously in one
    archive but not the other.

    $Id: open-look.faq,v 1.48 93/05/09 18:03:13 lee Exp $


Acknowledgements:
    Andrei Arkhipov <andr@elvis.sovusa.com> (Feb/binder patch)
    Douglas N Arnold <dna@math.psu.edu> (Feb/various changes)
    Ian Darwin <ian@sq.com>
    Christopher Davis <ckd@eff.org>
    Paul Eggert <eggert@bi.twinsun.com> (Feb/screenblank on Solaris 2.1)
    R.Stewart Ellis <elliss@frith.egr.msu.edu> (Feb/-assert nodefinitions)
    Jeff Fleck <jefff@meaddata.com> (Feb/the colormap stuff)
    Rick Heli <Rick.Heli@Eng.Sun.CO> (Feb/including .signature)
    Nicholas Hounsome <nh@cbnewsg.cb.att.com> (Feb/Xt/OLIT cc workaround)
    Larry Matthias <matthias@artos.larc.nasa.gov> (Feb/NeWS colormap flashing)
    John B. Melby <melby%yk.fujitsu.co.jp@fai.com> (Feb/South Paws)
    Christian Sebeke <sebeke@frodo.lfi.uni-hannover.de> (Feb/Xt jumbo patch)
    Kevin W. Thomas <kwthomas@nsslsun.nssl.uoknor.edu> (Mar/olvwm patches)
    Larry W. Virden <lvirden@cas.org> (Mar/various comments)

    And many others...	You get deleted from this list after a while.

-- 
Liam Quin, Manager of Contracting, SoftQuad Inc, +1 416 239 4801 lee@sq.com
OPEN LOOK UI FAQ; Metafont list; HexSweeper NeWS game; lq-text text retrieval

Newsgroup: comp.windows.x
Document_id: 67883
From: lee@sq.sq.com (Liam R. E. Quin)
Subject: List of programs with OPEN LOOK User Interface


$Id: open-look-programs.faq,v 1.17 93/03/21 17:17:55 lee Exp Locker: lee $

Contents:
	Subject: Applications: Application Builders
	Subject: Applications: Graphing Tools
	Subject: Applications: Utilities
	Subject: Applications: Other
	Subject: Tools: Terminal Emulators
	Subject: Other Commercial Applications
	Subject: Applications: toolkit Extensions
	Subject: OpenWindows 3 Ports
	Subject: XView 3 Ports
	Subject: XView 2 Ports
	Subject: Games (free and commercial)


Subject: Applications: Application Builders

Commercial: DevGuide 3.0
Contact: SunPICS
    lets you use Drag and Drop to create an OPEN LOOK application with
    XView, OLIT, UIT or TNT.  Very easy to use.

Free: dirt
    there _might_ be an OLIT port of this UI builder.

Commercial: ExoCode
Contact: Expert Object
    one of the first third-party GUI builders to support OPEN LOOK,
    using the XView toolkit.  It was reviewed in SunExpert magazine
    in 1990.

Commercial: ObjectBuilder
Contact: ParcPlace, Debra Frances debra@ParcPlace.COM, +1 303 440 9991
    uib is a user interface builder which supports building applications
    that support both OPEN LOOK and Motif.	It generates code for
    ParcPlace's OI C++ toolkit and can make use of user created
    subclasses.  Note: `OI' can also display an OSF/Motif GUI at runtime.

Free: wcl
    Uses X resources to specify an Xt widget hierarchy and actions to
    user-defined callbacks.  uses OLIT, Xt or Motif.

Commercial: XVT
Contact: XVT Systems (+1 303-443-4223)
    Lets you write code to a common subset of OPEN LOOK, Motif, Microsoft
    Windows, the Macintosh GUI, and even terminals (using curses).  You buy
    an XVT toolkit for each environment.


Subject: Applications: Graphing Tools

Free: dstool
    XView-based program that plots Lorenz Attractors and other chaotic things
    in real time.  Also includes a mathematical expression interpreter.
    ftp: macomb.tn.cornell.edu

Free: ACE/gr --  graph and analysis program, xvgr
Ftp: ftp.ccalmr.ogi.edu [129.95.72.34]; xvgr-2.09.tar.Z in /CCALMR/pub/acegr
    Handles x-y scatterplots, lineplots, bargraphs, FFT analysis, running
    averages, polynomial fits, etc.

Free: robot - a scientific graph plotting and data analysis tool 
Contact: Robin Corbet <corbet@astro.psu.edu>
Description:
    Graph plotting in various styles & axes; Data manipulation - arithmetic,
    functions, smoothing, folding, sorting; Fitting to data using Gaussians,
    polynomials, Lorentzians, and/or user defined functions; Annotation of
    graphs; log files;  Commands with loops etc.; Colour; PostScript output.
Ftp: astrod.astro.psu.edu (128.118.147.28) in pub/astrod
Ftp: files: robotx0.35.tar.Z - everything
Ftp: files: RobotManual.ps.Z - just the documentation.
Ftp: files: robot.sun4.Z  - binary built on a SPARCstation.
Requirements:
    Robot is XView based. User interface portions of code are written in
    'C'. Data manipulation code is written in FORTRAN. Hence a FORTRAN
    compiler is also required or the public domain f2c package.
    Alternatively, a SPARC binary is available by anonymous ftp.

Subject: Applications: Utilities

Free: boss
Description:
    An OPEN LOOK UI to the Casio BOSS scheduler

Free: props
Ftp: export.lcs.mit.edu /pub/R5untarred/contrib/lib/xview3/clients/props/*
Description:
    This is the OpenWindows properties editor, that appears when you choose
    the Properties... item from the WorkSpace menu.

Free: contool
Ftp: from export.lcs.mit.edu
Description:
    a special-purpose console-window that can filter out or take special
    action on specified console messages; written by Chuck Musciano.
Requirements: XView

Free: faces
Description:
    displays pictures of people who have sent you electronic mail.
    Violates the Data Protection Act in the U.K.

Subject: Applications: Other


Commercial: Bimail 400
Contact: BIM (+32-2-759.59.25) pge@sunbim.be
X.400-address: C=be;A=RTT;P=BIM;O=Horizon;S=Geurts;G=Patrick
Notes:
    Bimail is a complete X.400 electronic mail system.  It consists
    in a user interface which gives access to all X.400 services
    with a consistent look and feel, a message transfer agent (MTA) system
    which can transfer messages over X.25, TP.4 and TCP/IP (using RFC 1006).
    A gateway to SMTP mail is also available.

Free: calentool
Description:
    a day/week/month/year at-a-glance calendar and almanac.
Ftp: export.lcs.mit.edu:/contrib/calentool2.2Xp1.tar.Z
Contact: Bill Randle, Tektronix, Inc. <billr@saab.CNA.TEK.COM>

Free: emacstool
Description:
    a SunView program that was converted to XView, and is included with the
GNU emacs distribution.

Free: Genix
Contact: Ian Darwin <ian@sq.com>
    A genealogy program, written in C using Guide.
    Incomplete as of Jan '93; inquire for details.

Free: WorkMan - Audio CD player for X11 (Sun, Ultrix)
Requirements: XView libraries
Ftp: Ultrix binary: ftp.hyperion.com in /WorkMan
Ftp: ftp.ucsc.edu in "incoming" - database of over 750 CDs
Contact: koreth@hyperion.com (Steven Grimm)

Free: pan - Postit notes

Free: WAIS
Ftp: sunsite.unc.edu
Description:
    Networked, distributed text-retrieval system.  OLIT-based front end.
Notes:
    You might to need to add -lce to the Makefile.

Free: xrolo - Rolodex card index/address book

Free: xv_display
Description:
    An XView program for showing a text file, like more(1).

Commercial:  SearchIt 1.0
Contact: SunSoft or SunExpress 
    US: 1-800-873-7869;  UK: 0800 89 88 88
    Germany: 01 30 81 61 91;  France: 05 90 61 57
Platforms: SPARC, Solaris 1.x
Price: $249
Notes:
    SearchIt is a full text search and retrieval application designed to
    improve individual and group productivity.  It makes an index to files
    and can later retrieve documents by words or phrases, ranking the results
    in relevance order.

Commercial: ShowMe
Contact: SunSoft
Notes:
    Conferencing software that lets multiple connected users share the same
    drawing screen, with bitmap capture and moveable pointer.
Requirements:
    You can only run one ShowMe per computer, so you have to have a CPU per
    conference member.

Free: xvman - Man Pages viewer

Free: xvtdl - ToDo List manager
Ftp: export.lcs.mit.edu /contrib/xvtdl-4.0.tar.Z, /contrib/xvtdl-4.0-README
Requirements: XView libraries
Contact: Mike Jipping jipping@cs.hope.edu  (BITNET: JIPPING@HOPE)
Organisation: Hope College Department of Computer Science
     
Free: name_finder
Contact: richard.elling@eng.auburn.edu     +1 (205) 844-2280
Ftp: ftp.eng.auburn.edu [131.204.10.91] pub/name_finder1.2.tar.Z.
Patches: pub/name_finder1.2.compile.patch1.
Requirements: OpenWindows 3.0, C++ 2.1 or greater to recompile
Description:
    name_finder was orginally designed as a replacement for the name finder
    missing from the OpenWindows Version 3.0 mailtool.  It has since grown
    into a tool for several electronic mail related activities including:
    interaction with local ListServ robots for handling mail lists,
    requesting Full.Name style mail aliases from your local PostMaster, and
    providing mailbox status information ala finger(1).

    name_finder is written in C++ (cfront 2.1) using gxv++ version 1.1.
    If you don't have access to a C++ compiler, a precompiled sparc
    executable is included in the distribution.

Free: bibcard	interface for BiBTeX databases
Requirements: XView
Ftp: iamsun.unibe.ch [130.92.64.10] in /X11/Bibcard-1.11.tar.Z
Ftp: 	includes source and SPARC binary for SunOS 4.1.1.
Version: 1.11
Description:
    GUI for mantaining bibliography databases which can be used with
    LaTeX, TeX and FrameMaker


Free: moxftp -- interface to ftp.
Ftp: ftp.chpc.utexas.edu as file /packages/X/xftp.1.1.tar.Z.
Contact: Bill Jones jones@chpc.utexas.edu
Requirements: X11, OLIT or Motif or Athena widgets
Notes:
    formerly called xftp.
    compiles under (at least) Ultrix, AIX 3.1.5, AIX 3.2, Convex OS, SunOS,
    Unicos 6.1.4, and IRIX.  Uses OLIT.
    BUG: can also use OSF/Motif and Athena widgets.


Free: olvwm -- OPEN LOOK Virtual Window Manager
contact: Scott Oaks
Ftp: export.lcs.mit.edu in the contrib directory
Patches: there are two patches
Requirements: XView 3
Description:
    Olvwm is a version of olwm that manages a `virtual desktop' (hence the
    `v' in its name).  It shows a little map on the screen, with the
    currently displayed area represented by a little rectangle.	 You can
    move around by dragging the rectangle or with the arrow keys.  This
    lets you run several clients (applications) and move the display around
    from one to the other.  Olvwm was derived from the OpenWindows 3.0 olwm.

Free: ftptool -- OPEN LOOK front-end to ftp
Requirements: XView
Ftp: export.lcs.mit.edu in /contrib

Free: Hyperlook
Contact: The Turing Institute
Requirements: OpenWindows 3 (running the xnews server, not X11)
    Hypertext package written entirely in NeWS.  Runtime from turing.com
    in /pub or ftp.uu.net (graphics/NeWS/HyperLook1.5-runtime.tar.Z)

Maestro (ftp from sioux.stanford.edu)
    Multimedia authoring tools, including support for sound, text & video.
xvnews (ftp from export.lcs.mit.edu)
    An xview-based newsreader for netnews.

Free: xvttool
Ftp: cs.dal.ca:/pub/comp.archives
Ftp: nuri.inria.fr:/X/contrib/clients
Ftp: lth.se:/pub/netnews/alt.sources/volume92/dec/xvttool*.Z
Ftp: src.doc.ic.ac.uk:/usenet/comp.archives/x11/terminal/xvttool
Description:
    A vt100/102 emulator, in both XView and SunView versions.  Includes
    buttons for the PF keys, etc.

Subject: PostScript and Graphics Viewers

Commercial: pageview - PostScript previewer
Contact: Included in OpenWindows as part of DeskSet.
Notes:
    Type 1 support only in OpenWindows 3.0.1 under Solaris 2.1.
    Antialiasing support - with colour OpenWindows 3 try pageview -aa -dpi 150
    Note that pageview uses the X11/NeWS server to interpret the PostScript,
    and thus won't run on an X terminal or other non-OpenWindows server.
    It's *not* enough to be runing an OPEN LOOK UI [tm] window manager such
    as olwm.

Commercial: xps - PostScript program editor and previewer
Contact: included with OpenWindows 2.0 under demo and share/src
Notes:
    Only runs under OpenWindows 2.

Commercial: psh
Contact: included with OpenWindows
	simple interface to NeWS and the OpenWindows server

Free: ralpage
Ftp: export.lcs.mit.edu in contrib/clients
Notes:
    Crispin Goswell's PostScript interpreter, much hacked.
    Not OPEN LOOK compliant.  No Type 1 font support.
    There are other versions of this called `xps', `postscript', etc.;
    don't confuse this `xps' with the one mentioned above.

Free: ghostscript
(from the Free Software Foundation)
    Supports Type 1 fonts.  Not OPEN LOOK based.


Subject: Tools: Terminal Emulators

Free: cmdtool, shelltool
Requirements: XView 3 toolkit
Notes:
    These are included in the XView source distribution from
    export.lcs.mit.edu in /contrib; they're also included with Sun's
    OpenWindows.

Commercial: SwitchTerm
Contact: Micro Resources Inc., Columnbus, Ohio, USA, +1 614 766-2335
Notes:
    A version of Xterm with an OPEN LOOK UI, print interface,
    ANSI X3.64 colour escape sequences, etc.

Commercial: IsoTerm
Contact: The Bristol Group Ltd., +1 415 925-9250 and (49) 6105-2945 (Germany)
Requirements: OpenWindows 3 (??)
Other Products: IsoTeX, IsoFax, Power Base
Notes:
    An OLIT-based terminal emulator.  I couldn't get the demo version to
    give me a shell prompt, although it did look like it was a pretty fll
    vt340 emulation, with double-height characters, colour, fonts, grahics
    and so forth.
    With the Union Flag (the British flag) as their logo I somehow expected
    an English address, perhaps in Bristol...

Subject: Other Commercial Applications

    Contact SunSoft (or Sun) and ask for the Catalyst OPEN LOOK guide,
    which lists over 200 pages of applications.

    You can also get the free CDWare CD/ROM, which contains demo versions
    of several popular OPEN LOOK UI applications.  Once you've done this,
    you can often simply contact the vendor concerned to have the license
    upgraded from demo, and receive the full product documentation.


Product Name: Author/Editor - SGML-based text editor/word processor
Company Name: SoftQuad Inc., +1 416 239 4801, mail@sq.com
Description:
    Word processor or text editor that manipulates ISO 8879 SGML documents.
Interfaces: OPEN LOOK UI (XView), OSF/Motif, Mac, MS/Windows
 

Subject: Applications: toolkit Extensions


Product Name:     Xtra XWidgets
Company Name:     Graphical Software Technology
E-Mail:           info@gst.com
Phone:            310-328-9338;    Fax: 310-376-6224
Keywords:         graphics, library, widgets, spreadsheet, help
Interfaces:       OPEN LOOK, Motif
Platforms:        SPARC, HP9000s300/400/700, IBM RS6000, Interactive 386
Requirements:     X11, Xt, Xol (or Xm) libraries and headers; X11
Price:            $795/single user, $3000/network, $5000/source
Support-Price:    $400/30 calls
Source-Available: yes
Description:
    The Xtra XWidget library contains a set of widgets that are subclassed
    from and compatible with either OLIT or Motif widgets.  The library
    includes widgets that implement the following: Spreadsheet, Bar Graph,
    Stacked Bar Graph, Line Graph, Pie Chart, XY Plot, Hypertext, Hypertext
    based Help System, and Data Entry Form.  Widgets have been successfully
    integrated with both TeleUSE from Telesoft and Builder Xcessory from
    ICS.  A free demo is available for any of the supported platforms.

Product Name:     XRT/Graph
Company Name:     KL Group
E-mail: sun.com!suncan!klg!info, info@klg.com
Phone: +1 416 594-1026
Description:
    XRT/graph is a graph object that extends the XView toolkit;  There are
    also Xt versions for OLIT and Motif.  XRT/graph supports line plots,
    scatter-plots, strip-charts, bar charts, stacking bar charts, pie charts
    and filled-area charts, singly and in combination.  It supports real-time
    updates, true Postscript output, and intelligent user feedback.  It comes
    with Builder, a graph prototyping tool, which supports code & resource
    file generation.  A free demo (vmgraph) is available.
    There are free integration kits for UIM/X, TeleUSE, and Builder Xcessory
    (others in progress).
Availability:
    XRT/graph for XView and OLIT are only available on SPARC.
    XRT/graph for Motif is available on a dozen or so platforms.


Free: Slingshot XView extension

    Slingshot provides rectangles (like the Xt Intrinsics' RectObj gadget),
    drag-and-drop support, images, icons and text, trees, lines, arrows...

    Get it by ftp from export.lcs.mit.edu, in /contrib/SlingShot2.0.tar.Z
    (remember to use binary mode in ftp!).
    You can also get it by sending mail to archive-server@gazooch.eng.sun.com
    with the body of each message containing a line like
	send sspkg2.0 Part01 Part02
    going up to
	send sspkg2.0 Part17 Part18
	send sspkg2.0 DocPart01 DocPart02 DocPart03
	send sspkg2.0 DocPart04 DocPart05 DocPart06
    You can ask for one file at a time to reduce the impact on intermediate
    mail sites.	 Ask the mail server for help with the Subject line: "help".
    A human can be reached at archive-manager@gazooch.eng.sun.com.
    Add a line in the message
	path <your-mail-address>
    if you think the normal automatic reply address might not work.


Ada bindings for XView
    Sun Ada 1.1 includes among other things an Ada Source Code Generator
    for Devguide.  It uses the Verdix XView Ada bindings.
    It does not yet [July 1992] support gfm (the guide file manager).

C++ Bindings for XView

Qualix's XV++.

UIT


Subject: OpenWindows 3 Ports

    Sun: SPARC, SunOS 4.1
    Sun: SPARC, Solaris 2 (actually 3.0.1?)
    others: none so far...

There are said (by Sun) to be two or three ports of OpenWindows either
available now or in progress.  Contact Anthony Flynn at Open Vistas
International (anthony@ovi.com) for more information.  (originally they
said 35, but perhaps they meant 3.5)

OpenWindows source is available - commercially, it costs about $5,000 for
the server, including TypeScaler and the toolkits; deskset (filemgr etc) is
another $25,000; ToolTalk is $40,000 or so.


Subject: XView 3 Ports

What: XView 3
System: Apple A/UX
Porter: lmj@uncompaghre.jax.org (Lou Jones)
Ftp: encyclo.jax.org
Notes:
    The libraries and utilities (olwm, cmdtool, etc) are available for
    anonymous ftp from encyclo.jax.org. I used gcc 2.1 to compile the
    sources. If there is enough interest, I can make the diffs
    available.

System: Concurrent 7000 (68040 based)
Porter: sinan@Mtesol.boeing.com (Sinan Karasu)

System: DECStation/Ultrix
Porter: dscott@ittc.wec.com (Dave Scott)
Ftp: media-lab.media.mit.edu:~ftp/xview3-ultrix.4.2-mips.tar.Z
Notes:
    Let me stress that this is *not* fully tested, but seems to work
    pretty well.  Please let me know about any problems you find.
    Problems I already know about:
	Large buttons under *any* non-Sun X server (non-xnews; i.e. any
	standard MIT X11R[45] server) have the bottom of the button
	chopped off.  We're working on this one. :-)
    XView 3 is also available on the DEC Freeware CD, from DECUS.
[actually this seems *not* to be Dave Scott's port; please accept my apologies
 for listing this incorrectly.  A correct entry will appear as soon as I get
 the necessary information.  -- Lee]

System: HP 720
Porter: (?)
Ftp: tesla.ucd.ie [137.43.24.44], /pub
Notes:
    Includes HP 720 build, HP XView patch file, Xvgr.

System: HP9000/300 series
Porter: tjc@ecs.soton.ac.uk (Tim Chown)

System: HP9000/7XX series
Ftp: ftp.csc.liv.ac.uk (138.253.42.172) hpux/X11/xview-3.part[123].tar.Z

System: Intel (SysVR4/i386)
Porter: dawes@physics.su.OZ.AU (David Dawes)
Ftp: ftp.physics.su.oz.au, suphys.physics.su.oz.au  /Esix_4/x11r5 hierarchy
Notes:
    His patches were for Esix 4.0.3 but should work on DELL, ISC and Intel
    SVR4 with no worries. The files are README.xview3 and xview3.diff.Z.
See Also: linux

System: IBM RS/6000
Porter: tmcconne@sedona.intel.com (Tom McConnell)
Compiler: bsdcc
Ftp: export.lcs.mit.edu:contrib/xview3/Fixes/xview3_rs6k_unofficial.patch.Z
Notes:
    There is still a problem with tty support for the RS/6000. For
    instance, the cmdtool will not work. Still, most everything else works.
    For those of you who have already installed my previous patch, I have
    put a separate patch for just the shared library problem. This file is
    contrib/xview3/Fixes/xview3_rs6k_XView_lib.patch.Z.

System: linux
Porter: Kenneth Osterberg <lmfken@lmf.ericsson.se>
ICompiler: gcc 2.3.3, libc4.2
Ftp: tsx-11.mit.edu /pub/linux/binaries/usr.bin.X11/xview3L2
Ftp: sunsite.unc.edu
Notes:
    Inlcudes olvwm, UIT

System: SGI
Porter: Rainer Sinkwitz <sinkwitz@ifi.unizh.ch>
Ftp: export.lcs.mit.edu:/contrib/xview3/Fixes/xview3_sgi_unofficial.patch.tar.Z
Notes:

System: Solbourne Series 5
Porter: tmcconne@sedona.intel.com (Tom McConnell)


Subject: XView 2 Ports

In general, there is no point in using XView 2 if you have XView 3 available;
it's a good idea to look for an XView 3 port first.  Moving from XView 2 to
XView 3 is usually simply a matter of recompiling, unless you've done
"dirty tricks" or used undocumented calls.


System: Stellar GS100 (Stardent 1000) and Stardent 1500 & 3000
Porter: arvai@scripps.edu (Andy Arvai)
Ftp: perutz.scripps.edu (137.131.152.27) in the pub/xview directory
Notes:
    Stardent is now Kubota Pacific (KPC)

System: Harris Nighthawk 4000 system (CX/UX Unix)
Porter: andy@harris.nl (Andy Warner)
Status: Commercial

System: SGI/Iris
Porter: (?)
Ftp: wuarchive.wustl.edu:graphics/graphics/sgi-stuff/XView/xview2

System: VAX/VMS
Porter: TGV Inc (?)
Notes:
    Steven Fenger <svfenge@afterlife.ncsc.mil> wrote:
    A company called TGV makes a product called "XView for VMS".
    They made XView 2.0 libraries.  I haven't seen them advertising
    XView 3.0 libraries yet.

Subject: Games (free and commercial)

Commercial: Aviator - flight simulator for GX-equipped SPARCStations
Contact: Artificial Horizons Inc, aviator-interest@ahi.com;  +1 415 367 5029
Requirements: OpenWindows (2 or 3), SunOS 4.1 or later, SPARC GX or GXplus

Free: hexsweeper - minesweeper game based on hexagons
Contact: lee@sq.com, include HexSweeper in Subject
Requirements: OpenWindows 3.0 or later
Toolkit: TNT 3

Free: 

Free: sidtool - PacMan game
Ftp: ftp.uu.net /usenet/comp.sources.games/volume1/sidtool/*
 

    an OPEN LOOK PacMan(tm) surrogate that
    appears as a debugger - the bad guys are code bugs that
    move around your screen; you (the good guy) chase them
    with a 19" monitor that eats bugs.


Commercial: SimCity
Contact: Dux Software, Los Altos, CA
Price: US$89
Requirements: OpenWindows 3 (uses NeWS).  Doesn't run on a 4/110 with cg4 :-(

Free: Spider (Included in OpenWindows under `demo' and `share/src')
    A patience-style card game with two packs of cards and
    excellent bitmap cards.
    I suggest recompiling to allow the cards to have rounded edges.

Free: Xblackjack (ftp from export.lcs.mi.edu as contrib/xblackjack-2.1.tar.Z)
    A MOTIF/OLIT based tool constructed to get you ready for the casino.

-- 
Liam Quin, Manager of Contracting, SoftQuad Inc, +1 416 239 4801 lee@sq.com
OPEN LOOK UI FAQ; Metafont list; HexSweeper NeWS game; lq-text text retrieval

Newsgroup: comp.windows.x
Document_id: 67961
From: art@cs.UAlberta.CA (Art Mulder)
Subject: comp.windows.x: Getting more performance out of X.  FAQ

Archive-name: x-faq/speedups
Last-modified: 1993/4/20

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	HOW TO MAXIMIZE THE PERFORMANCE OF X -- monthly posting
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	    Compiled by Art Mulder (art@cs.ualberta.ca)

  More RAM, Faster CPU's, More disk space, Faster Ethernet...  These
  are the standard responses you hear when you ask how to improve the
  performance of your workstation.

  Well, more hardware isn't always an option, and I wonder if more
  hardware is always even a necessity.

  This "FAQ" list is a collection of suggestions and ideas from different
  people on the net on how you can the best possible performance from X
  Windows on your workstation, WITHOUT PURCHASING MORE HARDWARE.

  Performance is a highly subjective issue.  The individual user must
  balance `speed' versus `features' in order to come to a personal
  decision.  Therefore this document can be be expected to contain many
  subjective opinions in and amongst the objective facts.

  This document is specifically concerned with X.  There are of course
  many other factors that can affect the performance of a workstation.
  However, they are outside the scope of this document.

    [ People seriously interested in the whole area of system
    performance, might want to look at the O'Reilly Nutshell Handbook
    "System Performance Tuning" by Mike Loukides.  IMHO, it contains a
    well-written, comprehensive treatment of system performance.  I'm
    unaware of any other similar books.  --ed.]

-----------------
Table of Contents
-----------------
  0. Introduction & Administrivia
  1. What about the "Other X FAQ"?
  2. Window Managers
  3. The X Server
       Which Server?
       Locking the Server into RAM?
       Starting your Server
       Fonts
       About the Resources File
       Define Your Display Properly
  4. Clients
       A Better Clock for X
       A Better Terminal Emulator for X
       Tuning your client
  5. Miscellaneous Suggestions
       Pretty Pictures
       A Quicker Mouse
       Programming Thoughts
       Say What!?
  6. Other Sources of Information
  7. Author & Notes
  
! = changed since last issue.
* = new since last issue.

-----------------------------
Introduction & Administrivia
-----------------------------

  This document is posted each month, on or around the 15th, to the
  Usenet news groups comp.windows.x, news.answers, and comp.answers.
  If you are reading a copy of this FAQ which is more than a few
  months old (see the "Last-modified" date above) you should probably
  locate the latest edition, since the information may be outdated.

  If you do not know how to get those newsgroups and/or your site does
  not receive them and/or this article has already expired, you can
  retrieve this FAQ from an archive site.

  There exist several usenet FAQ archive sites.  To find out more about
  them and how to access them, please see the "Introduction to the
  news.answers newsgroup" posting in news.answers.

  The main FAQ archive is at rtfm.mit.edu [18.172.1.27].  This document
  can be found there in /pub/usenet/news.answers/x-faq/speedups.  If
  you do not have access to anonymous ftp, you can retrieve it by
  sending a mail message to mail-server@rtfm.mit.edu with the
  command "send usenet/news.answers/x-faq/speedups" in the message body.

-----------------------------
What about the "Other X FAQ"?
-----------------------------

  David B. Lewis (faq%craft@uunet.uu.net) maintains the informative and
  well written "comp.windows.x Frequently Asked Questions" document.
  Its focus is on general X information, while this FAQ concentrates
  on performance.

  The comp.windows.x FAQ does address the issue of speed, but only with
  regards to the X server.  The gist of that topic seems to be:
	"Use X11R5, it is faster than R4".
  (Please see the X FAQ for complete details).

---------------
Window Managers
---------------

  There are a lot of window managers out there, with lots of different
  features and abilities.  The choice of which to use is by necessity a
  balancing act between performance and useful features.  At this
  point, most respondents have agreed upon "twm" as the best candidate
  for a speedy window manager. 

  A couple of generic tricks you can try to soup up your window manger,
  is turning off unnecessary things like "zooming" and "opaque move".
  Also, if you lay out your windows in a tiled manner, you reduce the
  amount of cpu power spent in raising and lowering overlapping
  windows.                           Joe English (joe@trystero.art.com)

  I've found that a good font for tiling is 7x13 (aka:
  -misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1 ). It is
  the biggest font I know of that I can use on my Sun (1152x900 screen)
  and still get two 80 column terminal windows side-by-side on the
  display with no overlap.  Other font suggestions will be accepted.

------------
The X Server
------------

Which Server?
- - - - - - -
  Make sure that your server is a proper match for your hardware.
  If you have a monochrome monitor, use a monochrome X11 server.

  On my Monochrome Sun, I haven't noticed much difference between
  the Xsun (colour) server and XsunMono, however it was pointed out to
  me that XsunMono is about 800k smaller and therefore should contribute
  to less paging.  
         [ thanks to: Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk),
                        Michael Salmon (Michael.Salmon@eos.ericsson.se) ]

  How your server was compiled can also make a difference.  Jeff Law
  (law@schirf.cs.utah.edu) advises us that on a Sun system, X should be
  compiled with gcc (version 2.*) or with the unbundled Sun compiler.
  You can expect to get "*very* large speedups in the server" by not
  using the bundled SunOS compiler.  I assume that similar results
  would occur if you used one of the other high-quality commercial
  compilers on the market.

Locking the Server into RAM?
- - - - - - - - - - - - - - -
  Has anyone tried hacking the X server so that it is locked into RAM and
  does not get paged?  eg: via a call to plock().  Does this help
  performance at all?  I've had one inquiry on this topic, and a few
  pointers to the plock() function call, but no hard evidence from someone
  who's tried it.  I am not in a position to give it a try.  
			  [thanks to: Eric C Claeys (ecc@eperm.att.com),
				      Danny Backx (db@sunbim.be),
				      Juan D. Martin (juando@cnm.us.es) ]
Starting your Server
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    If you start up a lot of clients in your .xsession or whatever, sleep
    for a second or two after launching each one.  After I changed my
    .xclients script to do this, logging in actually took *less* time...
    we have a heavily loaded system without much core, though.

  This sounds crazy, but I have confirmed that it works!  

  Warner Losh (imp@Solbourne.COM) provided me with a good explanation of
  why this works, which I have summarized here:

    When you start up an X server it takes a huge amount of time to
    start accepting connections.  A lot of initialization is done by
    the server when it starts.  This process touches a large number of
    pages.  Any other process running at the same time would fight the
    server for use of the CPU, and more importantly, memory.  If you
    put a sleep in there, you give the Server a chance to get itself
    sorted out before the clients start up.

    Similarly, there is also a lot of initialization whenever an X
    client program starts: toolkits registering widgets, resources
    being fetched, programs initializing state and "databases" and so
    forth.  All this activity is typically memory intensive.  Once this
    initialization is done ("The process has reached a steady state"),
    the memory usage typically settles down to using only a few pages.
    By using sleeps to stagger the launching of your clients in your
    .Xinitrc , you avoid them fighting each other for your
    workstation's limited resources

  This is most definitely a "Your Mileage May Vary" situation, as there
  are so many variables to be considered: available RAM, local swap
  space, load average, number of users on your system, which clients
  you are starting, etc.

  Currently in my .xinitrc I have a situation like:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

  I've experimented with:
	(sleep 1; exec xclock ) &
	(sleep 2; exec xbiff ) &
	(sleep 3; exec xterm ) &
	(sleep 4; exec xterm ) &

  I've even tried:
	(sleep 2; exec start_X_clients_script ) &
  and then in start_X_clients_script I had:
	(sleep 1; exec xclock ) &
	(sleep 1; exec xbiff ) &
	(sleep 1; exec xterm ) &
	(sleep 1; exec xterm ) &

    [ The idea with this last one was to make sure that xinit had
    completely finished processing my .xinitrc, and had settled down
    into a "steady state" before the sleep expired and all my clients
    were launched. ]

  All of these yielded fairly comparable results, and so I just stuck with
  my current setup, for its simplicity.  You will probably have to
  experiment a bit to find a setup which suits you.

Fonts
- - -
  Loading fonts takes time and RAM.  If you minimize the number of fonts
  your applications use, you'll get speed increases in load-up time.

  One simple strategy is to choose a small number of fonts (one small, one
  large, one roman, whatever suits you) and configure all your clients -- or
  at least all your heavily used clients -- to use only those few fonts.
  Client programs should start up quicker if their font is already loaded
  into the server.  This will also conserve server resources, since fewer
  fonts will be loaded by the server.
			      [ Farrell McKay (fbm@ptcburp.ptcbu.oz.au),
			        Joe English (joe@trystero.art.com) ]

  eg: My main xterm font is 7x13, so I also have twm set up to use 7x13
  in all it's menus and icons etc.  Twm's default font is 8x13.  Since
  I don't normally use 8x13, I've eliminated one font from my server.

  Oliver Jones (oj@roadrunner.pictel.com):
    Keep fonts local to the workstation, rather than loading them over nfs.
    If you will make extensive use of R5 scalable fonts, use a font server.

About the Resources File
- - - - - - - - - - - - -

    Keep your .Xresources / .Xdefaults file small.  Saves RAM and saves
    on server startup time.          Joe English (joe@trystero.art.com)

  One suggestion:

    In your .Xdefaults (.Xresources) file, try putting only the minimum
    number of resources that you want to have available to all of your
    applications.  For example:  *reverseVideo: true

    Then, separate your resources into individual client-specific
    resource files.  For example: $HOME/lib/app-defaults.  In your
    .login file set the environment variable XUSERFILESEARCHPATH:

	setenv XUSERFILESEARCHPATH $HOME/lib/app-defaults/%N

    [ The "comp.windows.x Frequently Asked Questions" FAQ contains
    an excellent explanation of how these environment variables work.
    --ed.]

    So, when xterm launches, it loads its resources from
    .../app-defaults/XTerm.  Xdvi finds them in .../app-defaults/XDvi,
    and so on and so forth.  Note that not all clients follow the same
    XXxxx resource-file naming pattern.  You can check in your system
    app-defaults directory (often: /usr/X11R5/lib/X11/app-defaults/) to
    find the proper name, and then name your personal resource files
    with the same name.

    This is all documented in the Xt Specification (pg 125 & 666).
		    [Thanks to: Kevin Samborn (samborn@mtkgc.com),
		         Michael Urban (urban@cobra.jpl.nasa.gov),
		             and Mike Long (mikel@ee.cornell.edu).
	     Kevin is willing mail his setup files to inquirers.]

  This method of organizing your personal resources has the following
  benefits:

    - Easier to maintain / more usable.

    - Fewer resources are stored in the X server in the RESOURCE_MANAGER
      property.  As a side benefit your server may start fractionally
      quicker, since it doesn`t have to load all your resources.

    - Applications only process their own resources, never have to sort 
      through all of your resources to find the ones that affect them.

  It also has drawbacks:

    - the application that you are interested in has to load an
      additional file every time it starts up.  This doesn't seem to
      make that much of a performance difference, and you might
      consider this a huge boon to usability.  If you are modifying an
      application's resource database, you just need to re-run the
      application without having to "xrdb" again.

    - xrdb will by default run your .Xdefaults file through cpp.  When
      your resources are split out into multiple resource files and
      then loaded by the individual client programs, they will not.
      WATCH OUT FOR THIS!!

      I had C style comments in my .Xdefaults file, which cpp stripped
      out.  When I switched to this method of distributed resource
      files I spent several frustrating days trying to figure out why
      my clients were not finding their resources.  Xt did *NOT*
      provide any error message when it encountered the C style
      comments in the resource files, it simply, silently, aborted
      processing the resource file.

      The loss of preprocessing (which can be very handy, e.g. ``#ifdef
      COLOR'' ...) is enough to cause some people to dismiss this
      method of resource management.

    - You may also run into some clients which break the rules.  For
      example, neither Emacs (18.58.3) nor Xvt (1.0) will find their
      resources if they are anywhere other than in .Xdefaults.

    - when starting up a client on a machine that does not share files
      with the machine where your resources are stored, your client
      will not find its resources.  Loading all your resources into the
      server will guarantee that all of your clients will always find
      their resources.            Casey Leedom (casey@gauss.llnl.gov)

  A possible compromise suggestion that I have (and am planning on trying)
  is to put resources for all my heavily used clients (eg: xterm) into my
  .Xdefaults file, and to use the "separate resources files" method for
  clients that I seldom use.

Define Your Display Properly
- - - - - - - - - - - - - - -

  Client programs are often executed on the same machine as the server.  In
  that situation, rather than setting your DISPLAY environment variable to 
  "<hostname>:0.0", where <hostname> is the name of your workstation, you
  should set your DISPLAY variable to "unix:0.0" or ":0.0".  By doing this
  you access optimized routines that know that the server is on the same
  machine and use a shared memory method of transferring requests.
			[thanks to Patrick J Horgan (pjh70@ras.amdahl.com)]

  See the _DISPLAY NAMES_ section of the X(1) man page for further
  explanation of how to properly set your display name.

  "I don't think it's stock MIT, but (at least) Data General and HP have
  libraries that are smart enough to use local communication even when
  the DISPLAY isn't set specially."
			      Rob Sartin (88opensi!sartin@uunet.UU.NET)

  [Jody Goldberg (jody@algorithmics.com) sent me an Xlib patch to change
  stock R5 to use local communication even if DISPLAY is not properly set.
  I don't want to get in the business of distributing or trying to juggle
  non-MIT patches and so have elected not to include it here.  Hopefully MIT
  will apply this minor (~8 lines) patch themselves.  In the meantime, if
  you want to try it yourself, email Jody.  --ed.]

-------
Clients
-------

  If you only have a few megabytes of Ram then you should think
  carefully about the number of programs you are running.  Think also
  about the _kind_ of programs you are running.  For example:  Is there
  a smaller clock program than xclock?

  Unfortunately, I haven't really noticed that programs advertise how large
  they are, so the onus is on us to do the research and spread the word.

  [ Suggestions on better alternatives to the some of the standard clients
  (eg: Xclock, Xterm, Xbiff) are welcome.  --ed.]

  I've received some contradictory advice from people, on the subject
  of X client programs.  Some advocate the use of programs that are
  strictly Xlib based, since Xt, Xaw and other toolkits are rather
  large.  Others warn us that other applications which you are using
  may have already loaded up one or more of these shared libraries.  In
  this case, using a non-Xt (for example) client program may actually
  _increase_ the amount of RAM consumed.

  The upshot of all this seems to be: Don't mix toolkits.  That is, try
  and use just Athena clients, or just Xview clients (or just Motif
  clients, etc).  If you use more than one, then you're dragging in
  more than one toolkit library.

  Know your environment, and think carefully about which client
  programs would work best together in that environment.

		  [Thanks to: Rob Sartin (88opensi!sartin@uunet.UU.NET),
      Duncan Sinclair (sinclair@dcs.gla.ac.uk | sinclair@uk.ac.gla.dcs) ]

A Better Clock for X
- - - - - - - - - - -

1) xcuckoo
   suggested by: Duncan Sinclair (sinclair@dcs.gla.ac.uk)
   available: on export.lcs.mit.edu

   Xcuckoo displays a clock in the title bar of *another* program.
   Saves screen real estate.

2) mclock
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in /X/mclock.shar

   Non Xt-based.  Extensively configurable.  it can be made to look
   very much like MIT oclock, or mostly like xclock purely by changing
   resources.

  Of course, the ultimate clock --- one that consumes no resources, and 
  takes up no screen real estate --- is the one that hangs on your wall.
  :-) 

A Better Terminal Emulator for X
- - - - - - - - - - - - - - - - -

  From the README file distributed with xterm:

  +-----
  |		 Abandon All Hope, Ye Who Enter Here
  |
  | This is undoubtedly the most ugly program in the distribution.
  | ...
  +-----

  Ugly maybe, but at my site it's still the most used.  I suspect that
  xterm is one of the most used clients at many, if not most sites.
  Laziness?  Isn't there a better terminal emulator available?  See below.

  If you must use xterm, you can try reducing the number of saveLines
  to reduce memory usage.  [ Oliver Jones (oj@roadrunner.pictel.com),
		   Jonny Farringdon (j.farringdon@psychol.ucl.ac.uk) ]

1) Xvt
   suggested by: Richard Hesketh (rlh2@ukc.ac.uk) :
   available: export.lcs.mit.edu in /contrib/xvt-1.0.tar.Z

   "...if you don't need all the esoteric features of xterm, then get
   hold of xvt ...  it was written here just to save swap space as
   xterm is rather a hog! "

   This was written as a partial 'clone' of xterm.  You don't have to
   rename your resources, as xvt pretends to be XTerm.  In it's current
   version, you cannot bind keys as you can in xterm.  I've heard that
   there are versions of xvt with this feature, but I've not found any
   yet.

   UPDATE (March 1993):  I recently had a few email conversations with
   Brian Warkentin (brian.warkentine@eng.sun.com) regarding xvt.  He
   questions whether xvt really is at all faster than xterm.  For
   instance, xvt may initialize slightly faster, but compare scrolling
   speed (try this quickie benchmark: /bin/time dd if=/etc/termcap
   bs=40) and see which program can scroll faster.  Also, while xterm
   may be slightly larger in RAM requirements (We don't have any hard
   numbers here, does anyone else?) shared libraries and shared text
   segments mean that xterm's paging requirements are not that major.

   As an experiment, he ripped out all the tek stuff from xterm, but it
   made little difference, since if you never use it, it never gets
   brought into memory.

   So here we stand with some conflicting reports on the validity of
   xvt over xterm.  In summary?  Caveat Emptor, your mileage may vary.
   If you can provide some hard data, I'd like to see it.
   Specifically: How much RAM each occupies, how much swap each needs,
   relative speed of each

2) mterm
   suggested by: der Mouse (mouse@Lightning.McRCIM.McGill.EDU)
   available: larry.mcrcim.mcgill.edu (132.206.1.1) in
     /X/mterm.src/mterm.ball-o-wax.

   "I also have my own terminal emulator.  Its major lack is
   scrollback, but some people like it anyway."


Tuning your client
- - - - - - - - - -

  Suggestions on how you can tune your client programs to work faster.

  From Scott Barman (scott@asd.com) comes a suggestion regarding Motif
  Text Field Widgets:

    I noticed that during data entry into Motif text field widgets, I
    was getting a slight lag in response to some keystrokes,
    particularly the initial one in the field.  Examining the what was
    going on with xscope I found it.  It seems that when the resource
    XmNblinkRate is non-zero and the focus is on a text field widget
    (or even just a text widget) the I-beam cursor will blink.
    Every time the cursor appears or disappears in those widgets, the
    widget code is making a request to the server (CopyArea).  The user
    can stop this by setting the resource XmNblinkRate to 0.  It is not
    noticeable on a 40MHz SPARC, but it does make a little difference
    on a [slower system].

  This specific suggestion can probably be applied in general to lots
  of areas.  Consider your heavily used clients, are there any minor
  embellishments that can be turned off and thereby save on Server
  requests?

-------------------------
Miscellaneous Suggestions
-------------------------

Pretty Pictures
- - - - - - - -
  Don't use large bitmaps (GIF's, etc) as root window backgrounds.

  - The more complicated your root window bitmap, the slower the server
    is at redrawing your screen when you reposition windows (or redraw, etc)

  - These take up RAM, and CPU power.  I work on a Sun SPARC and I'm
    conscious of performance issues, I can't comprehend it when I see
    people with a 4mb Sun 3/60 running xphoon as their root window.

    I'll let someone else figure out how much RAM would be occupied by
    having a full screen root image on a colour workstation.

  - If you're anything like me, you need all the screen real estate
    that you can get for clients, and so rarely see the root window anyway.

		      [ Thanks to Qiang Alex Zhao (azhao@cs.arizona.edu) 
			for reminding me of this one. --ed.]

A Quicker Mouse
- - - - - - - -
  Using xset, you can adjust how fast your pointer moves on the screen
  when you move your mouse.  I use "xset m 3 10" in my .xinitrc file,
  which lets me send my pointer across the screen with just a flick of
  the wrist.  See the xset man page for further ideas and information.

  Hint: sometimes you may want to *slow down* your mouse tracking for
  fine work.  To cover my options, I have placed a number of different
  mouse setting commands into a menu in my window manager.  

  e.g. (for twm) :
      menu "mouse settings" {
        "Mouse Settings:"			f.title
	"  Very Fast"				! "xset m 7 10 &"
	"  Normal (Fast)"			! "xset m 3 10 &"
	"  System Default (Un-Accelerated)"	! "xset m default &"
	"  Glacial"				! "xset m 0 10 &"
      }

Programming Thoughts
- - - - - - - - - - -
  Joe English (joe@trystero.art.com) :
    To speed up applications that you're developing, there are tons of
    things you can do.  Some that stick out:

    - For Motif programs, don't set XmFontList resources for individual
      buttons, labels, lists, et. al.; use the defaultFontList or
      labelFontList or whatever resource of the highest-level manager
      widget.  Again, stick to as few fonts as possible.

    - Better yet, don't use Motif at all.  It's an absolute pig.

    - Don't create and destroy widgets on the fly.  Try to reuse them.
      (This will avoid many problems with buggy toolkits, too.)

    - Use a line width of 0 in GCs.  On some servers this makes a HUGE
      difference.

    - Compress and collapse multiple Expose events.  This can make the
      difference between a fast application and a completely unusable
      one.

  Francois Staes (frans@kiwi.uia.ac.be) :
    Just a small remark: I once heard that using a better malloc
    function would greatly increase performance of Xt based
    applications since they use malloc heavily. They suggested trying
    out the GNUY malloc, but I didn't find the time yet. I did some
    tests on small programs just doing malloc and free, and the
    differences were indeed very noticeable ( somewhat 5 times faster)

  [ Any confirmation on this from anyone?  --ed.]

  Andre' Beck (Andre_Beck@IRS.Inf.TU-Dresden.de) :

  - Unnecessary NoExpose Events.

    Most people use XCopyArea/XCopyPlane as fastest blit routines, but
    they forget to reset graphics_exposures in the GC used for the
    blits. This will cause a NoExpose Event every blit, that, in most
    cases, only puts load onto the connection and forces the client to
    run through it's event-loop again and again.

  - Thousands of XChangeGC requests.

    This "Gfx Context Switching" is also seen in most handcoded X-Apps,
    where only one or few GCs are created and then heavily changed
    again and again.  Xt uses a definitely better mechanism, by caching
    and sharing a lot of GCs with all needed parameters. This will
    remove the load of subsequent XChangeGC requests from the
    connection (by moving it toward the client startup phase).

Say What!?
- - - - - - 
  Some contributors proposed ideas that seem right off the wall at first:

  David B. Lewis (by day: dbl@osf.org, by night: david%craft@uunet.uu.net) :
    How about this: swap displays with someone else. Run all your programs
    on the other machine and display locally; the other user runs off your
    machine onto the other display. Goal: reduce context switches in the
    same operation between client and server.

  I'm not in a situation where I can easily try this, but I have received
  the following confirmation...

  Michael Salmon (Michael.Salmon@eos.ericsson.se):
    I regularly run programs on other machines and I notice a big
    difference. I try to run on a machine where I will reduce net usage
    and usually with nice to reduce the impact of my intrusion. This
    helps a lot on my poor little SS1+ with only 16 MB, it was
    essential when I only had 8 MB.

  Casey Leedom (casey@gauss.llnl.gov) :
    [The X11 Server and the client are] competing for the same CPU as
    your server when you run it on the same machine.  Not really a
    major problem, except that the X11 client and the server are in
    absolute synchronicity and are context thrashing.

  Timothy H Panton (thp@westhawk.uucp) :
    Firstly it relies on the fact that most CPU's are mostly idle, X's
    cpu usage is bursty.  so the chances of you and your teammate
    doing something cpu-intensive at the same time is small. If they
    are not then you get twice the cpu+memory available for your
    action.

    The second factor is that context switches are expensive, using 2
    cpu's halves them, you pay a price due to the overhead of going
    over the network, but this is offset in most cases by the improved
    buffering of a network (typically 20k vs 4k for a pipe), allowing
    even fewer context switches.

----------------------------
Other Sources of Information
----------------------------

  Volume 8 in O'Reilly's X Window System Series, ``X Window System
  Administrator's Guide'' is a book all X administrator's should read.

  Adrian Nye (adrian@ora.com):
    A lot more tips on performance are in the paper "Improving X
    Application Performance" by Chris D. Peterson and Sharon Chang, in
    Issue 3 of The X Resource.

    An earlier version of this paper appeared in the Xhibition 1992
    conference proceedings.

    This paper is absolutely essential reading for X programmers.

--------------
Author & Notes
--------------
  This list is currently maintained by Art Mulder (art@cs.ualberta.ca)

  Suggestions, corrections, or submission for inclusion in this list
  are gladly accepted.  Layout suggestions and comments (spelling
  mistak's too! :-) are also welcome.

  Currently I have listed all contributors of the various comments and
  suggestions.  If you do not want to be credited, please tell me.

  speedup-x-faq is copyright (c) 1993 by Arthur E. Mulder

  You may copy this document in whole or in part as long as you don't
  try to make money off it, or pretend that you wrote it.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
 ...art mulder ( art@cs.ualberta.ca )    | "Do not be conformed to this world,
 Department of Computing Science         |  but be transformed by the renewal
 University of Alberta, Edmonton, Canada |  of your mind, ..."  Romans 12:2

Newsgroup: comp.windows.x
Document_id: 67972
Subject: Re: Resource/Widget toolkit required for X-Windows applications
From: cvadrmes@vmsb.is.csupomona.edu

In article <1sijn0$mi2@werple.apana.org.au>, jamie@zikzak (Jamie Scuglia) writes:
> 
> Does anyone know of any public domain toolkits for creating X-Windows
> applications?  I have used the "Xt toolkit", but I would like to
> create pop-up windows/dialog boxes, etc, using some sort of drawing editor
> instead of trying to specify what I want, sizes, positions, etc,
> within actual source code.  Basically, I am looking for something
> similar to Borland's "WHITEWATER RESOURCE TOOLKIT" for MS-WINDOWS,
> expect I need one for X-Windows instead.
> 
> Any help would be much appreciated.

   
     I recently found an excellent source for X-windows programs. I've seen
quite a few x-windows toolkits up there. The place is:  

                     export.lcs.mit.edu

go to the contrib directory. Its full of x-windows programs.

                                           Hope this Helps!



Newsgroup: comp.windows.x
Document_id: 67973
From: perrot@grbb.polymtl.ca (Gildas PERROT)
Subject: Installing xdbx v2.1.2 on SGI 


Did anyone install xdbx v2.1.2 on SGI workstation ?


Thanks for your answer.		Gildas PERROT.
-- 
# Gildas PERROT, Associe de recherche # Ecole Polytechnique	#      
# Institut de Genie Biomedical        # C.P. 6079, Succ. A      # 
# e-mail: perrot@grbb.polymtl.ca      #	Montreal H3C3A7, Canada #
# Tel: (514) 340-4183                 # Fax: (514) 340-4611     #           

Newsgroup: comp.windows.x
Document_id: 67974
From: gordons@mon.sps.mot.com (Gordon Sasamori)
Subject: Re: viewing postscript files under X windows

In <C6tGoJ.20J@inmet.camb.inmet.com> gjs@corsica.camb.inmet.com (George Snyder) writes:

>In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:

>> I wonder if anybody know of a X-window-based postscript file
>> viewer that runs under SunOS (prefered), HPUX, or IBM AIX.

>If you are running Sun OpenWindows, you can use "pageview".  This is an
>X Window PostScript previewer like "ghostview", but displays much nicer

Yes, but it's broken on OW 2.0.  It does not handle multiple pages
well.  If you don't have the proper PostScript commands it will
draw the entire document on the same page instead of pausing after
each page.  I haven't tried OW 3.0 yet, though.
-- 
...v....1....v....2....v....3....v....4....v....5....v....6....v....7..
Gordon T. Sasamori
HC05 CSIC MCU Design       (email: gordons@ai.sps.mot.com,
Nippon Motorola Ltd.        voice: 81(3)3280-8339, FAX: 81(3)3440-0033)

Newsgroup: comp.windows.x
Document_id: 67975
From: envbvs@epb11.lbl.gov (Brian V. Smith)
Subject: Re: Xfig 2.1pl7 on HP-UX 9.01?

In article <1sp51c$8t3@elroy.jpl.nasa.gov>, urban@sideshow (Michael P Urban) writes:
|> I have compiled xfig 2.1 patchlevel 7 with HP's X11R5 from HP-UX 9.01,
|> augmented by the Athena and Mu libraries from an X11R5 distribution
|> from iworks.ecn.uiowa.edu.  It compiles nicely (although for one file
|> the preprocessor macro definition table size needed to be increased).
|> But when executed, nothing happens at all except for ever-growing
|> memory requirements (eventually climaxing in a core dump).  The binary
|> of the identical program, compiled on 8.07 with X11R4, has no
|> problems.  Other programs like xtpanel compile, link, and run just
|> fine with the same libraries.
|> 
|> Does this sound familiar, or am I going to have to figure this one out
|> on my own...?

Please see the post I made yesterday (May 10) which fixes the problem.
This was posted to comp.windows.x.apps.

-- 
Brian V. Smith    (bvsmith@lbl.gov)
Lawrence Berkeley Laboratory
I don't speak for LBL; they don't pay me enough for that.

Newsgroup: comp.windows.x
Document_id: 67976
From: chucks@iplmail.orl.mmc.com (Chuck Strickland)
Subject: X11R5 on aix 3.2.2 using cc.

 I have gotten X11R5 pl 23 to compile on AIX 3.2.2 using cc.
 but the server will not run. it simplys starts and a couple seconds
 later exits. no error are displayed. 
 my defines for compile are
 -DSYSV -DAIXV3 -DSYSV_WAIT   -DMALLOC_0_RETURNS_NULL 

 
   could somewhere share some light, or maybe the ibm.cf file. 

 thanks.
-- 
*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*
Malcolm C. Strickland                 Martin Marietta Missile Systems
chuck-strickland@orl.mmc.com          mail point 170    
Phone: 407-356-7437                   pobox 555837
Fax:   407-356-5482                   orlando florida 32855-5837
*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*

Newsgroup: comp.windows.x
Document_id: 67977
From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
Subject: UIMX - A Motif Application Generator

I am looking of information regarding UIMX. I believe this is an application
front end generator tool for Motif (among others). Whould someone given me a
contact? I need to get hold of the programmers' guide, or something like it.
-- 
Paul Mahoney, X-Act Solutions Limited
smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
phone: +44 424 846368

Newsgroup: comp.windows.x
Document_id: 67978
From: car@access.digex.net (Mr. Blue)
Subject: Some rookie questions

Im new to Xlib programming. Im having a problem I hope someone here can
help me with. I create a window, and I want it to have some background color,
say red, and draw an oval in it. Further, when I resize the window, I want
to be able to redraw the image so that is fills the new window (whether it
is larger or smaller.) Im using AIXwindows on an RS6000.

My problem is this: when I resize the window, only the "original" part of the
window that was part of the window creation gets drawn into. Everything else
is a grey..the oval "tries" to redraw itself but gets clipped. I can see that
it WOULD be the right size if I could see all of it, but it only shows up in
the region that was the original size of the window when created.

For example, I start out the window at 200x200 in width and height. If I
resize it to 400x400, the only part that has any color drawn into it is
is from the origin out to 200x200..the rest is grey. Further the oval
only shows up in that 200x200 area.

What am I doing wrong?? How can I get a window to resize and redraw a 
re-scaled image in it to take up the full size of the window?

Second question:
Could someone tell me what Xaw and Xmu are???

Thanks,
Chris



Newsgroup: comp.windows.x
Document_id: 67979
From: cornhead@netcom.com (Jeff Miller)
Subject: O'Reilly X, Adobe P'Script, Sun OpenLook books cheap

I have some brand new copies of the following books for sale. Some are 
down-rev, don't know which or by how much: look to # of pages, copyright 
date, etc. for clues.

  "PostScript Language Reference Manual", Adobe Sys. Inc., Addison-Wesley,
        copyr. 1986, printed 1990. 299 pages. $22.95.

  "PostScript Language Tutorial and Cookbook", as above, 243 pages, $16.95

I'll sell the above two books as a set for $15 postage paid w/in US.

  "OpenLook GUI Functional Specification", Sun Micro, Addison-W, copyr. 1989,
        564 pages, $34.95.

  "OpenLook GUI Application Style Guidelines", 388 pages, $24.95.

I'll sell the above two books as a set for $15 ppd. w/in US. 

  O'Reilly & Associates Definitive Guides to the X Window System, copyr. 
  1990, "for version 11", "revised and updated for Release 4":

  Vol. 0: "X Protocol Reference Manual," 498 pages $30
  Vol. 1: "Xlib Programming Manual," 672 pages $34.95
  Vol. 2: "Xlib Reference Manual," 792 pages $34.95
  Vol. 7: "XView Programming Manual," 640 pages $30

I'll sell the above four books as a set for $35 ppd. w/in US

Due to the high hassle/$ ratio I am asking for pre-payment by check. I'll 
be queing cashing, packing, and shipping so be prepared to wait 3 weeks 
for your books to show up. 

If you'd like to pick them up, I live in San Francisco. Same prices though. 

E-mail me if you are interested. Thanks!

-cornhead

Newsgroup: comp.windows.x
Document_id: 67980
From: rsmith@proteus.ARc.nasa.GOV
Subject: Printing xbm files

Hi

Does anyone know of a direct way to print an image of an .xbm file.

Please reply directly and I'll post a summary.

---------------------------------------------------------------------
Any opinion presented here is my own, and does not reflect the policy
of my employer, NASA, or the Ames Research Center.

Roger Smith
Sterling Software at
NASA-Ames Research Center
rsmith@proteus.arc.nasa.gov
- 
If change is -- inevitable -- predictable -- beneficial -- 
doesn't logic demand that you be a part of it?
One man cannot summon the future. But one man can change the present!
    -- Kirk and the Alternate Spock, "Mirror, Mirror," stardate unknown
+

Newsgroup: comp.windows.x
Document_id: 67981
From: dls@Autodesk.COM (Daniel Louis Smith)
Subject: Windows/MFC 2.0 -> Motif tools sought


        I am looking for info on products that can take
Windows source on a Unix box (such as Sparc), and produce a
Motif executable.  Another requirement is that MFC 2.0 should
be supported.  I already know of:

        Wind/U  by Bristol Technologies
        Hunter SDK
        MainWin by MainSoft

        Are there any others?

	I will post a summary if it's wanted.

				Daniel
-- 
		 dls@autodesk.com           dls@netcom.com
     Daniel L Smith, Autodesk, Sausalito, California, (415) 332-2344 x 2580
disclaimer:  accuracy of statements corrrelates somehow to caffeine intake

Newsgroup: comp.windows.x
Document_id: 67982
From: dan@igate.c-mols.siu.edu (Dan Ellison)
Subject: Re: Scientific graphing - looking for run-time library

In <1993May10.212110.3980@serval.net.wsu.edu> d3e758@bucky.pnl.gov (JE Pelkey) writes:


>In article <C6IEM6.16xI@hawnews.watson.ibm.com> artg@watson.ibm.com (Art Goldberg) writes:
>>X gurus:
>>I am looking for a scientific graphing run-time X library.  I want my code
>>to open a window, and plot a graph in the window.  The library should
>>manage plotting, scaling of axes, labeling, etc.
>>
>>Can someone recommend a library to do this?  Please respond via e-mail.

>I would also be interested in this information.

Check into the vopl and vogle libraries.  I beleive that I still have
them available on ftp.c-mols.siu.edu but I'm not sure.  I haven't seen
any new announcements for the software but I'm sure it's still around.

I have used it to do real-time data display and analysis as well as
just for producing graphs after the fact.  It works well and supports
numerous graphics output formats (including X.)  I tried it and liked
it.  YOu may as well.

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Dan Ellison, Network Spec 	  -    	Computing Affairs, SIU-C 	| 
| Southern Illinois University 	  - 	Carbondale, IL 62901            |   
| FAX:      (618) 453-3459        -   	PHONE:    (618) 453-6149 	|     

Newsgroup: comp.windows.x
Document_id: 67983
From: yonglong@ipi.uni-hannover.de (Yonglong Xu 5556)
Subject: help wanted: display stereo images with a GT-accelerator



Hi, friends,

Our SPARC workstation is now equippied with a GT-accelerator. we want to use
it to display stereo images. The accelerator has double buffers. How can we
access the buffers and switch between them ? With which functions can we do 
that ? with functions from XGL, Phigs, Xlib or Xlib-extension ?

Your help will be highly appreciated.


Yonglong Xu

Uni. of Hannover

10.5.93


Newsgroup: comp.windows.x
Document_id: 67984
From: smn@netcom.com (Subodh Nijsure)
Subject: Scaling fonts in X


X/Motif Gurus,

	How do you handling scaling of X text while performing zooming 
operations  on figures? Is restricting user to select scalable fonts too 
restrictive and  a absolute NO NO?
Any books that have discussion on this topic?  Should have really taken more 
of those Computer Graphics courses but, now its too late -:( )

	I will summarize response.
Thanks in advance.

-Subodh ( smn@netcom.com )

Newsgroup: comp.windows.x
Document_id: 67985
From: mahan@TGV.COM (Patrick L. Mahan)
Subject: Re: Remote X across TCPIP & Decnet

#
# Does anyone know if the following is possible, and if so how do I go about
# doing it.
# 
# I want to be able to display remote X11 applications on a VAXstation 2000 off
# of an Internet node. Here is where the problem comes up, the VAXstation isn't
# connected directly to the Internet but is connected via Decnet to a node that
# does have a connection to the Internet. Does anyone know if it is possible to
# get the display to use TCPIP from the remote Internet node down to my local
# Internet node and then send it via Decnet down to the VAXstation 2000?
#

For the machine that is connected to the InterNet, what is it running?  If it
is running VMS, then if you obtain MultiNet for it, MultiNet comes with a
TCP/IP to DECnet gateway for X11.

Patrick L. Mahan

--- TGV Window Washer ------------------------------- Mahan@TGV.COM ---------

Waking a person unnecessarily should not be considered  - Lazarus Long
a capital crime.  For a first offense, that is            From the Notebooks of
							  Lazarus Long

Newsgroup: comp.windows.x
Document_id: 67986
From: markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443)
Subject: Looking for X windows on a PC

Hi All,
       This is the first time I've posted to the net, so I hope this is
going to the right people.
  I'm looking for software packages that run on an IBM PC clone that
allows me to display Openlook and motif windows on the PC. 
  The idea is to use the PC as a cheap X windows terminal for use by
process Engineers at work. 

  If anyone can E-Mail me any recommended packages/horror stories/etc
I would be greatful.

		Thanks in advance

			Mark Wilkinson


-- 
 _____________________________________________________________________________
/                               |                                             \
| Mark Wilkinson                |   E-Mail : wilkinson_m@roborough.gpsemi.com |
| Senior Software Engineer      |            markwilk@lincoln.gpsemi.com      |
| GEC Plessey Semiconductors    |                                             |
| Roborough, Plymouth, England  |                                             |
\_______________________________|_____________________________________________/

Newsgroup: comp.windows.x
Document_id: 67987
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: xrastool 1.0 part 1/2

Well, thanks largely to subscribers of this group, here's xrastool 1.0,
the animation package I started just over 3 weeks ago. A number of the
solutions provided through discussions here have been incorporated in
the code, so have a look! The full blurb has been posted to
comp.windows.x.announce.

This post is in two parts. To unpack the source code, extract the
articles into file1 and file2 (for example). Use a text editor to
remove leading and trailing text at the "---cut here---" markers
(including the markers themselves). Next type "cat file1 file2 >
file", then "uudecode file" and "zcat xrastool1.0.tar.Z | tar xvf -".
Read the README file for instructions on how to proceed from there.
Enjoy!

Derek

P.S. The source is also available for anon ftp from export.lcs.mit.edu
in the contrib/ directory. If there is enough demand, a static binary
will be provided for those without the XView libraries or include
files.

-----------------------------------------------------------
| Derek C. Richardson    | Tel: (0223) 337548 x 37501     |
| Institute of Astronomy | Fax: (0223) 337523             |
| Cambridge, U.K.        |                                |
| CB3 0HA                | E-mail: dcr@mail.ast.cam.ac.uk |
-----------------------------------------------------------

---cut here---
begin 644 xrastool1.0.tar.Z
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
---cut here---



Newsgroup: comp.windows.x
Document_id: 67988
From: dcr@mail.ast.cam.ac.uk (Derek C. Richardson)
Subject: xrastool 1.0 part 2/2

part 2/2 of xrastool 1.0
---cut here---
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
MB,L#,@$> 1>'%WU. T.*'H0=&N:)Z(E+BGP!02)#.)B%3R)#.+N)JC!#.+^)
MHH4M@Z2%-H/@A.R(>8'1@@""7X5BA4^)CXG!B6**DHE"@U> QH4OBD.&RX5,
M@<^':(<:B$6(U(?QB#T; 8(WBB*(.8JUA@J(XH4]BNIKW8E8@LT#' %N 42*
M88(\7&""DB!$A4R*B8J' T$B/SB4%TJ%PX2B(8V*)313BI(;DHHLAU6%1XED
MBCN)F8ICBE2!MX(*@S^)R8.W@I:#3H3K@5V K87*AP>"X88 AUF([HBBBG6 
MI(I2@9^*&XB:BD6)M(54B72*/H$MB8J*O(J]BKZ*OXK BJ @]XCZB-:(U(C%
MBDR'!HG$BL.*UXC&BMN(R8K,BMR(=X9,B>>(ZHC=AN^(KHI6@>V(88K4BAJ!
MY8AQBMR*)H'IB$.#0HG)B &)/X?'BOF( (E)AP6)+H?KBON(PXH(B>B*^(A'
MA\^*18?GBO"*-H=,B2>)((D6B1.)*XG^BOZ*^XH5B9=#;(  BQJ)*HD"BQZ)
M_8H'B_^*L(>^@ F+'XD0B0:+$HEC $R)Q(EFBMJ&&(NVBK2*G8IY@A:+&XNU
MBJ&*&HN0B2&+AH$?BTZ)%XL1A1V+*8M<BBN+AX$GBR6+Q8F<BB.+4HDNBUB!
H58D* #:+-8O,B9V)FHDPBCV+G8DTBD"+7HE"BSR+1HN]@#6*28L&AHDN
 
end
---cut here---


Newsgroup: comp.windows.x
Document_id: 67989
From: raistlin@uni-paderborn.de (Markus Koch)
Subject: X and Motif config-file for HP-UX 8.0 ??


Hello everybody out there !

I'm trying to compile X11R5pl23 and Motif 1.2.1 on a HP running
HP-UX 8.05. But it' seems to be not very succesful, because 
I have only hp.cf config-files for HP-UX 7.0. 

I tried standard cc and X was compiled with a lot of warnings.
The motif applications are compiled quite well, but they won't run.
I receive the XKeysymDB error which is reported in FAQ, but
I cannot fix it. The XKeysymDB-file is at the right location and it
works fine under SunOS.
Probably I have started the compilation Prozess only with a wrong
config-file.

Please help me !
  
Thanx in advance 
  Markus

-----------------------------------------------------------------
 Markus Koch                           Universitaet-GH Paderborn 
 Email : raistlin@uni-paderborn.de     Rechnerbetreuung
 Phone : +49 5251 60 3322              Warburger Str. 100
         +49 5251 60 3318              W4790 Paderborn, Germany
----------------------------------------------------------------- 
--

-----------------------------------------------------------------
 Markus Koch                           Universitaet-GH Paderborn 
 Email : raistlin@uni-paderborn.de     Warburger Str. 100
 Phone : +49 5251 60 3322              W4790 Paderborn, Germany
-----------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 67990
From: osvaldo@ipgaix.unipg.it (Osvaldo Gervasi)
Subject: public domain or low price CASE for RS6000

We are looking for a public domain or low price CASE , running on
AIX/6000 3.2 and/or SOLARIS 1.1 and/or SUN/OS 3.1, for X/Motif and/or
X/OpenLook.

I'm not a regular follower of these groups, so I would prefer an
answer to this e-mail. Thanks in advance, Regards, --Osvaldo

-- 
+---------------------------------------------------------------------+
| Osvaldo Gervasi                                                     |
| Centro di Calcolo - Universita' degli Studi di Perugia              |
| Piazza Universita', 2  - I06100  PERUGIA                            |

Newsgroup: comp.windows.x
Document_id: 67991
From: jc@minya.UUCP (John Chambers)
Subject: painting with increasing resolution

Some  people working a few cubes over have come up with this need, and
it seems that someone out there just might have done it  already,  and
can point me to some tools that would help. What they'd like to do is:
Given a window that is taking a long time to draw (because either  the
data  is  arriving  over a slow link, or the $DISPLAY is across a slow
link), they would like to first paint a low-resolution version of  the
picture,  and then repaint it in higher resolution.  Thus, the picture
might first be generated in 1/4 resolution, with each  4x4  square  of
pixels  being  filled  in  with a single color.  Next, each 4x4 square
would be replaced by 4 2x2 squares; finally the 1x1 version  would  be
painted.

Since  one of the scenarios is with the window being on the other side
of a slow link, the low-res version obviously wouldn't be  transmitted
as  a bitmap; that wouldn't help at all.  Instead, there would have to
be a process on the far end that receives the  low-res  picture  as  a
small  bitmap,  and  blows up each pixel into a square (sorta like the
magnifier programs do).  This brings up the question of whether the  X
server  can help.  That is, when a window is opened, is there a way to
ask that a "filter" program be run to process the pixels?  Or  is  the
only  way  to  use  something  like  rsh  to start up a remote process
("Permission denied" ;-), and have it open a local window?

It seems the most likely scenario is a library routine that starts  up
such  a  program  remotely, and then accepts bitmaps, compressing each
one by some amount, and sending them to the remote program to  expand.
But  if  there is something that X itself can do to help, it's be nice
to hear about it.  (I looked in several FMs,  but  if  it's  there,  I
obviously  don't  know  the keywords ;-).  If someone has a nifty tool
available that packages it all, we might want to get a copy.

Oh, yes; this is to run on some Suns.  Part of the idea  is  to  build
demos  that  can  show such things as "If this were run across, say, a
4800-bps link, this is how fast the pictures would appear."  Then  the
customer would get a feel for the speed that they need to pay for.

-- 
If the auto industry were like the computer industry, a car would  now
cost $5, would get 5000 miles to the gallon, and at random times would
explode, killing all its passengers.

Newsgroup: comp.windows.x
Document_id: 67992
From: guy@x.co.uk (Guy Singh)
Subject: Re: X and Motif config-file for HP-UX 8.0 ??

>>>>> On 12 May 93 12:46:17, raistlin@uni-paderborn.de (Markus Koch) said:
Markus> NNTP-Posting-Host: samos.uni-paderborn.de


Markus> Hello everybody out there !

Markus> I'm trying to compile X11R5pl23 and Motif 1.2.1 on a HP running
Markus> HP-UX 8.05. But it' seems to be not very succesful, because 
Markus> I have only hp.cf config-files for HP-UX 7.0. 

Markus> I tried standard cc and X was compiled with a lot of warnings.
Markus> The motif applications are compiled quite well, but they won't run.
Markus> I receive the XKeysymDB error which is reported in FAQ, but
Markus> I cannot fix it. The XKeysymDB-file is at the right location and it
Markus> works fine under SunOS.
Markus> Probably I have started the compilation Prozess only with a wrong
Markus> config-file.

Markus> Please help me !
Markus>   
Markus> Thanx in advance 
Markus>   Markus

If you installed X lib Xt by redefining ProjectRoot, you will find that
 during the install it recompiles one of the files in X lib that does the
search for XKeysmDB and embeds the search path for the file based on whatever
ProjectRoot was defined. TO confirm this what happened, because I'm 
guessing, go to mit/lib/X and do
strings XStrKeySym.o | egrep XKeysymDB
--
-Guy Singh,                 IXI            Internet: guy@x.co.uk
                            Vision Park    UUCP:     guy@ixi.uucp
                            Cambridge      Bang:     ...!uunet!ixi!guy
                            CB4 4ZR, UK    Tel:      +44 223 236 555

Newsgroup: comp.windows.x
Document_id: 67993
From: mainzer@garte.darmstadt.gmd.de (Joerg Mainzer)
Subject: wordwrap


Hello everybody!

Does anybody know how to implement wordwrap with use of XDrawImageString?
The problem is that I don't know how many characters can be drawn in 
a region. Have I to calculate character for character the width of the drawn
text?

Thank you in advance.

                                ,,,
                               (o o)
 --------------------------oOO--(_)--OOo--------------------------------
Joerg Mainzer                  Internet: mainzer@darmstadt.gmd.de
German Nat. Research Center    X.400net: mainzer@ipsi.darmstadt.gmd.dbp.de
for Information Technology     Voice   : ++49-6151-869923
Dolivostrasse 15	       Fax     : ++49-6151-869818
W-6100 Darmstadt, Germany
-----------------------------------------------------------------------

Symptom  : Bar moving.
Fault    : You are being carried out.
Solution : Find out if you are being taken to another bar - if not complain
           loudly that you are being hi-jacked.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Newsgroup: comp.windows.x
Document_id: 67994
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: GC Plane mask

Hi Xperts!

Where can I get a good example in which XGCValues.plane_mask is used, or
who can explain how is it for and how to use it.

Any hints welcome.

Thanks.

-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 67995
From: williams@snoopy (Timothy Williams)
Subject: Re: viewing postscript files under X windows

In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
>
>I wonder if anybody know of a X-window-based postscript file
>viewer that runs under SunOS (prefered), HPUX, or IBM AIX.
>Reason I'm looking for this utility is that I've downloaded these
>large postscript documents and I'd like to know how useful (and how
>long) they are before commiting them to the printer and potentially
>wasting 200 pages of paper and hogging the printer for 1/2 hour.
>

Get ghostscript and ghostview.  Ghostview is a postscript previewer
that uses ghostscript.

From the ghostview README:



    Ghostview -- An X11 user interface for ghostscript.

Ghostview is full function user interface for ghostscript 2.4.

Brief list of features:
  - Ghostview parses any known version of Adobe's Document Structuring
    Conventions.
  - Page size is automatically determined from the Document Structuring
    Comments.  The user is able to override the values from the comments.
  - Window size is set to the bounding box for Encapsulated PostScript figures.
  - Default page size is Letter and can be changed via Xresources or
    application defaults file to A4 (or any other valid size) for our
    European friends.
  - Scrollbars appear when necessary.
  - Page orientation is automatically determined from the Document Structuring
    Comments.  The user is able to override the values from the comments.
  - Ability to view at 4 orientations: Portrait, Landscape, Upside-down,
    and Seascape (for those who rotate landscape the other direction).
  - Ability to preview in any supported visual.  (Can preview in gray-scale 
    or color on a Color monitor.)
  - Ability to mark pages for printing, or saving.  (Good for people that
    printed a 100 page document and lost page 59 due to a printer jam.)
  - Can popup zoom windows at printer resolution
    (1 display dot = 1 printer dot).

    The Ghostview distribution includes a Ghostview Widget that people
    are encouraged to use in other programs.

    Ghostview-1.3 is available via anonymous ftp from:
        prep.ai.mit.edu:/pub/gnu/ghostview-1.3.tar.Z
        appenzell.cs.wisc.edu:/pub/ghostview-1.3.tar.Z


From the ghostscript README:

*****************************************************
* This file describes version 2.4.1 of Ghostscript. *
*****************************************************

********
******** An overview of Ghostscript ********
********

Ghostscript is the name of a set of software that provides:

        - An interpreter for the Ghostscript language, which very
closely resembles the PostScript (TM) language; and

        - A set of C procedures (the Ghostscript library) that
implement the graphics capabilities that appear as primitive
operations in the Ghostscript language.

The Ghostscript language interpreter and library are written entirely
in C, with some assembly-language accelerators for MS-DOS platforms.
Currently, Ghostscript is known to run on the following platform
families:

        - IBM PC and compatibles with EGA, VGA, SuperVGA, or compatible
          graphics under MS-DOS 3.1, 3.3, or 5.0;

        - A wide variety of Unix systems using X Windows version 11,
          release 3, 4, and 5, including Sun-3, Sun-4, Sun-386i,
          Sun SPARCStation 1; generic 80386 machines running 386/ix;
          H-P 9000/300 and 9000/800; DECStation 2100 and 3100; VAX
          running Ultrix; Sequent Symmetry; Convex C1 and C2;
          Tektronix 4300; SGI Iris Indigo;

        - Sun workstations (Sun-3, SPARC, Sun-386i) running SunView;

        - VAX, VMS with X11R3/4/5, gcc and DEC C compiler (DEC C compiler
          version 3.1 or later is required).


(Get ghostscript from the same ftp site you get ghostview.)

-- 
Tim Williams                                   COM: (703) 704-1685
Night Vision & Electronic Sensors Directorate  DSN: 654-1685
AMSEL-RD-NV-VISPD (Williams)                   FAX: (703) 704-1705
Ft. Belvoir, VA 22060-5677                  E-MAIL: williams@nvl.army.mil

Newsgroup: comp.windows.x
Document_id: 67996
From: doug@happy.vf.ge.com (Doug Hughes)
Subject: Re: FAX software?

In article <1snoqoINNdh@darkstar.UCSC.EDU>, philb@cats.ucsc.edu (Philip Brown) writes:
> 
> 
> I'd like to know if there is any ***_FREE_*** fax software for Xwindows
> that I can use.
> I have a sun 4/110 running mit X11R5.
> I checked the export.lcs.mit.edu list, and there didn't seem to be
> anything there.
> 
> -- 
>   --------------------------------------------------------------------
> "Tea: a Noxious brew of various oriental leaves, containing toxic acids.
> Personally, I rather like it." (paraprhased from Dr. Who: Peter Davidson)
> philb@cats.ucsc.edu   philb@soda.berkeley.edu

check prep.ai.mit.edu.  It's called fax-3.2.1.tar.Z or something to
that effect and is the software for netfax. Be forewarned that it
requires (at the moment) a fairly costly $450 fax modem with certain
capabilities to use it.
	
-- 
_____________________________________________________________
Doug Hughes
System/Net Admin - Martin Marietta Aerospace, Valley Forge, PA
doug@happy.vf.ge.com	or	doug@land.vf.ge.com

Newsgroup: comp.windows.x
Document_id: 67997
From: pramod@stein.u.washington.edu (Pramod Mahadev)
Subject: Problem with R4 release

ld: Unidentified external symbol
   _get_wmShellWidgetclass
   _get_applicationshellwidgetclass

  I use -lXaw -lXmu -lXext -lX11 -lXt not in this order but in a proper order

I am wondering if there has to be some changes in my link libraries or should
i include some more libraries.

ANy help in this matter will be very useful and highly appreciated

Thanks
Pramod
.

Newsgroup: comp.windows.x
Document_id: 67998
From: dujardin@naima.inria.fr (Eric Dujardin)
Subject: Re: Accented Characters..... How


I've been able to configure xterm so that I can type in accented characters.
I'm using X11R5, with iso8859 fonts, my shell is tcsh with the following 
definitions : 
setenv LC_CTYPE iso_8859_1
stty pass8

Then, I add the following in my .Xdefaults file:

XTerm*eightBitInput: True
XTerm*eightBitOutput: True

XTerm*VT100.Translations: #override \
Meta<Key>': keymap(aigu) \n\
Meta<Key>`: keymap(grave) \n\
Meta<Key>^: keymap(circ) \n\
Meta<Key>\\,: keymap(ced)
XTerm*VT100.aiguKeymap.translations:  \
~Shift <Key>e: string(0xe9) keymap(None)\n\
<Key>E: string(0xc9) keymap(None) \n\
~Shift <Key>c:  string(0xe7) \n\
<Key> C:  string(0xc7)
XTerm*VT100.graveKeymap.translations: \
~Shift <Key>e: string(0xe8) keymap(None)\n\
<Key>E: string(0xc8) keymap(None)\n\
~Shift <Key>u: string(0xf9) keymap(None)\n\
<Key>U: string(0xd9) keymap(None)\n\
~Shift <Key>a: string(0xe0) keymap(None)\n\
<Key>A: string(0xc0) keymap(None)
XTerm*VT100.circKeymap.translations:  \
~Shift <Key>e: string(0xea) keymap(None)\n\
<Key>E: string(0xca) keymap(None)\n\
~Shift <Key>u: string(0xfb) keymap(None)\n\
<Key>U: string(0xdb) keymap(None)\n\
~Shift <Key>i: string(0xee) keymap(None)\n\
<Key>I: string(0xce) keymap(None)\n\
~Shift <Key>o:  string(0xf4) keymap(None)\n\
<Key>O: string(0xd4) keymap(None)
XTerm*VT100.cedKeymap.translations: \
~Shift <Key>c:  string(0xe7) keymap(None)\n\
<Key> C:  string(0xc7) keymap(None)

This makes the Meta-{',`,^} keys behave as dead keys.

Of course, this only works for xterm. For emacs, my solution is to install the
Lucid version of GnuEmacs 19, and to load the x-compose library.


Hope this helps,


	Eric
-- 
 Eric Dujardin  -  Eric.Dujardin@inria.fr
 INRIA Rocquencourt, projet RODIN                           "Les bons gongs font
 BP 105, 78153 Le Chesnay Cedex                                 les bonzes amis"
 Tel : (33 1) 39 63 56 19                                               (Gotlib)

Newsgroup: comp.windows.x
Document_id: 67999
From: marlow@sys.uea.ac.uk (Keith Marlow PG)
Subject: PD apps for displaying 3D data sets


  The subject line says it all really, I'm looking for a PD application
which will just handle the displaying of 3D data sets (images) in
cross section, or any pointers to code which will aid in the development
of such a system.

  Thanks in advance

	Keith Marlow


--
Keith Marlow,SYS P/G,UEA,Norwich *  Phone Cyclone BBS on 0603 260973; Arc,Beeb
Norwich. Norfolk NR4 7TJ         * PC files + fidonet echoes + charts + Acorn
Archiboard Central 2:254/405.3   * Support Area + radio info : Archiboard s/w
 Voice - 0603 745077             ### Tried MS-DOS once.. but didn't inhale ##

Newsgroup: comp.windows.x
Document_id: 68000
From: support@qdeck.com (Technical Support)
Subject: Re: Looking for X windows on a PC

In article <C6wLIJ.L5K@bailgate.gpsemi.com> wilkinson_m@roborough.gpsemi.com writes:
>Hi All,
>       This is the first time I've posted to the net, so I hope this is
>going to the right people.
>  I'm looking for software packages that run on an IBM PC clone that
>allows me to display Openlook and motif windows on the PC. 
>  The idea is to use the PC as a cheap X windows terminal for use by
>process Engineers at work. 

May I humbly suggest DESQview/X? (Of course, I'm biased...)

DESQview/X is a multitasker for DOS computers, that uses a standard
X11R4 server as it's display mechanism. DOS applications and Microsoft
Windows standard mode are converted on-the-fly to X-protocol, allowing
you to display them, or any R4 compatable X-program from any machine
on the net to display to the PC's local display (or to any other display
on the net).

Free tools are available for devloping X-applications for the DVX platform;
many X-programs have been ported between DVX and UNIX with little or
no modifications. (Often, you only need to create a new makefile!)

If you're interested in more details, you can check out the usenet group
comp.os.msdos.desqview, or just email me directly at support@qdeck.com,
and I'd be happy to fill you in.
-- 
       Quarterdeck Office Systems - Internet Support - Tom Bortels
 Pricing/Ordering : info@qdeck.com  |  Tech Questions : support@qdeck.com
  BBS: (310) 314-3227 * FAX: (310) 314-3217 * Compuserve: GO QUARTERDECK
anonymous ftp: qdeck.com (149.17.8.10), leave your email address as password

Newsgroup: comp.windows.x
Document_id: 68001
From: Thomas.Tornblom@Nexus.Comm.SE (Thomas Tornblom)
Subject: Re: Type1 rasterizer where?

In article <1sofac$68m@zebedee.ingres.co.uk> supp60@ingres.com (Support account) writes:

   In article <THOMAS.TORNBLOM.93May11115505@beck.Nexus.Comm.SE> Thomas.Tornblom@Nexus.Comm.SE (Thomas Tornblom) writes:
   >I'm trying to locate the Type1 rasterizer that IBM donated to The X
   >consortium. I've found patches to it but not the original source.

   It's on the R5 "contrib" tape.

   -Mike Glendinning, Ingres UK (mikeg@ingres.co.uk).

Yes I found it there. Thanks everyone.

Thomas
--
Real life:      Thomas Trnblom           Email:  Thomas.Tornblom@Nexus.Comm.SE
Snail mail:     Communicator Nexus AB     Phone:  +46 18 171814
                Box 857                   Fax:    +46 18 696516
                S - 751 08 Uppsala, Sweden

Newsgroup: comp.windows.x
Document_id: 68002
From: schwarte@beethoven.cs.colostate.edu (eric schwartz)
Subject: Re: Looking for X windows on a PC

Check out a program called PC-Xview. I've used it before, and from
what I can tell, it's exactly what you're looking for. Last I checked,
you should be able to find it for about $160 a copy.

-Eric
--
******************************************************************************
* schwarte@cs.colostate.edu    * "Of /course/ I'm certain!" - Heisenberg     *
* schwarte@lamar.colostate.edu * "He hadn't a single redeeming vice"         *
* where does bob barker go when*    -Oscar Wilde			     *
* i watch vanna white?         *Wasting time is an important part of living. *
******************************************************************************

Newsgroup: comp.windows.x
Document_id: 68003
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Looking for X windows on a PC

markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:

>Hi All,
>       This is the first time I've posted to the net, so I hope this is
>going to the right people.
>  I'm looking for software packages that run on an IBM PC clone that
>allows me to display Openlook and motif windows on the PC. 
>  The idea is to use the PC as a cheap X windows terminal for use by
>process Engineers at work. 

If you already own all the "clone" equipment then there are lots of such
programs (see a current copy of Unix World Magazine).

*BUT*  your performance WILL suck lemons running an Xserver on a clone.
(From experience).  You would be much better off with an Xterminal if this
is a new install.  The performance will be at least four times better.
In addition it would be MUCH easier to install and use.  On top of that
they will cost about the same (price a clone with 4MB RAM, ethernet card,
very high performance graphics card, GOOD monitor, server software, TCP/IP
for clone software, mouse, keyboard, etc, etc, etc.... you spend a whole
lot of $$$$).

I can get 15" Tektronix XP11 terminals for under $900, and the performance
is over 80000 Xstones.....
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68004
From: gdmr@dcs.ed.ac.uk (George Ross)
Subject: twm & greyscale

As distributed, twm thinks everything with three or more colormap cells must
be a colour screen.  Here's a patch to have it use the screen's visual class.

*** twm.c.DIST	Wed May 12 14:56:55 1993
--- twm.c	Wed May 12 15:47:53 1993
***************
*** 343,352 ****
--- 343,384 ----
  
  	Scr->XORvalue = (((unsigned long) 1) << Scr->d_depth) - 1;
  
+ #ifdef oldCode
  	if (DisplayCells(dpy, scrnum) < 3)
  	    Scr->Monochrome = MONOCHROME;
  	else
  	    Scr->Monochrome = COLOR;
+ #else
+ 	{	XVisualInfo template;
+ 		XVisualInfo *visualInfo;
+ 		int nitems;
+ 
+ 		template.visual = DefaultVisual(dpy, scrnum);
+ 		template.visualid = XVisualIDFromVisual(template.visual);
+ 		template.screen = scrnum;
+ 		visualInfo = XGetVisualInfo(dpy, VisualIDMask|VisualScreenMask,
+ 				&template, &nitems);
+ 		if (nitems == 1) {
+ 			switch (visualInfo->class) {
+ 		case StaticColor:
+ 		case PseudoColor:
+ 		case TrueColor:
+ 		case DirectColor:
+ 				Scr->Monochrome = COLOR;
+ 				break;
+ 
+ 		default:	Scr->Monochrome = MONOCHROME;
+ 				break;
+ 			}
+ 		}
+ 		else {
+ 			(void) fprintf(stderr,
+ 					"%d Visual match(es), assuming mono\n",
+ 					nitems);
+ 			Scr->Monochrome = MONOCHROME;  /* assume */
+ 		}
+ 	}
+ #endif
  
  	/* setup default colors */
  	Scr->FirstTime = TRUE;

-- 
George D M Ross, Department of Computer Science, University of Edinburgh
     Kings Buildings, Mayfield Road, Edinburgh, Scotland, EH9 3JZ
Mail: gdmr@dcs.ed.ac.uk      Voice: 031-650 5147      Fax: 031-667 7209

Newsgroup: comp.windows.x
Document_id: 68005
From: greg@duke.quotron.com (greg)
Subject: Piping "tail -f" to a widget: How, oh Lord, how?

I've spent the past week tearing my hair out, trying to get the output of
a piped "tail -f" to end up in a widget.  I've managed to make it work in
some ugly ways, but either a) X blocks on the tail and won't allow user
input, b) the "tail -f" functions like just "tail" and doesn't follow the
expansion of the file, c) the "tail -f" doesn't die after I've closed
the pipe and destoryed the widget, or d) pclose() blocks forever waiting
for tail to die.
	I _know_ this code has to exist.  Anybody have it?  A general
popen() case would be perfered but at this point I'll take anything...
Thanks.
-- 
Greg Knauss (greg@quotron.com)                    "Llamas, dammit!  Llamas!"

Newsgroup: comp.windows.x
Document_id: 68006
From: ls116@cunixa.cc.columbia.edu (Lei  Shao)
Subject: Error building X11R5 xdm


Hi, there,
    I'm trying to build X11R5 mit core distribution on a SparcStation running
SunOS 4.1.1. The only thing I change is the ProjectRoot in site.def. When the
"make World" process goes to "cc -o xdm ...", I get the following error:

ld: Undefined symbol
   __C0095A2A
*** Error code 2

And the process continues to finish. Does anybody know what's wrong? Thanx for
any info.

Lei Shao
ls116@cunixa.cc.columbia.edu

Newsgroup: comp.windows.x
Document_id: 68007
From: naoumov@physics.unc.edu (Sergei Naoumov)
Subject: TWM

Hey guys!
I run twm and would like to execute some program before leaving twm. In other
words I would like to run some program before I do f.quit. Is it possible
to make a menu section which would contain these two parts?

Thanks in advance,
	Serge
	serge@gluttony.astro.unc.edu


Newsgroup: comp.windows.x
Document_id: 68008
From: acaird@mlb.engin.umich.edu (Andrew Justin Caird)
Subject: Re: Looking for X windows on a PC


In article <C6wLIJ.L5K@bailgate.gpsemi.com>, markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
> Hi All,
>        This is the first time I've posted to the net, so I hope this is
> going to the right people.
>   I'm looking for software packages that run on an IBM PC clone that
> allows me to display Openlook and motif windows on the PC. 
>   The idea is to use the PC as a cheap X windows terminal for use by
> process Engineers at work. 
> 
>   If anyone can E-Mail me any recommended packages/horror stories/etc
> I would be greatful.
> 
> 		Thanks in advance
> 
> 			Mark Wilkinson
> 
> 
> -- 
>  _____________________________________________________________________________
> /                               |                                             \
> | Mark Wilkinson                |   E-Mail : wilkinson_m@roborough.gpsemi.com |
> | Senior Software Engineer      |            markwilk@lincoln.gpsemi.com      |
> | GEC Plessey Semiconductors    |                                             |
> | Roborough, Plymouth, England  |                                             |
> \_______________________________|_____________________________________________/

Xoftware from Age Software has proven good by me.  Runs under MS Windows and is relatively stable.
	techsup@age.com
could probably help you out more.
--Andy

-------------------------------------------------------------------------------
  Andrew Justin Caird                    JOBS: 1) Nuclear Engineering Student
  University of Michigan                       2) Ring Compton Camera Project
  Dept. of  Nuclear Engineering                3) Parallel Computing Code Work
  Andrew.Caird@umich.edu     acaird@umich.edu     Andrew.Caird@um.cc.umich.edu
  ----------------------> acaird@engin.umich.edu <-----------------------------

Newsgroup: comp.windows.x
Document_id: 68009
From: dbld@oz.plymouth.edu (d^2)
Subject: xwd and color

Anyone able to get xwd to dump anything that is not black & white?

My text is not black....all I get is window borders.  I tried the -xy
option only because I didn't know what it did.....still no effect.

Any help on this matter would be greatly appreciated.

Newsgroup: comp.windows.x
Document_id: 68010
From: mvalente@draco.lnec.pt (mvalente)
Subject: None (mail relay)





  Hi people!:


  I'm looking for X Servers for DOS or Windows.

  I've already seen Desqview/X and XVision but I'd like to be
 aware of other choices.

  Is there anything on the public domain or shareware ?

  And in the commercial area is there anything with aggressive
 pricing ?

  What about incompatibilities ? Window managers ?

  Any info is welcome.



  Thanx in advance.


  C U!
 
  By(e)
 
    Mario Valente



Newsgroup: comp.windows.x
Document_id: 68011
From: beck@irzr17.inf.tu-dresden.de (Andre Beck)
Subject: Re: POSTSCRIPT VIEWER, ICONS & XBACKGROUND


In article <C6rsJF.EM0@ccu.umanitoba.ca>, roholdr@ccu.umanitoba.ca (R Ross Holder Jr) writes:
|> 
|> Ever since I started to use Xwindows (which is to say recently) I've
|> accumulated a few questions about X-applications.  Three examples follow:
|> 
|> 1) It was recently mentioned on comp.os.linux that there exists a post-
|>    script viewer.  I am interested in this and any X-editor that is an
|>    improvement on Xedit (which I find annoying).

Try to get axe - It's a wonderful X based editor and much simpler to use than
emacs what is a overkill. Of course, emacs is no editor but a religion.

|> 2) At one point I was the proud owner of an Amiga (and have since upgraded
|>    to a '386-33).  Workbench (the point-and click interface) used ".info"
|>    files to store the data for icons associated with applications on a given
|>    volume.  I have noticed no such architecture anywhere under linux; how
|>    does Xwindows associate icons with applications?  Can one edit icons or
|>    generate new ones for applications somehow?  (If it makes a difference
|>    I'm running 'twm'.)

1) Don't call going from an Amiga to a IBM 'upgrade'
2) The Amiga Workbench did the job of a Desktop manager, and there is no
   really amazing good X Desktop manager in the Public Domain.
   (I'm currently writing one... but it's in very early stage)
3) xdtm may be a medium good replacement.
4) X associates icons with nothing. A number of X Window Managers associate
   icons with windows, in a way to ease window management.
   But this has nothing to do with icons of a Desktop Manager application.
5) The tool bitmap is there for simple icon drawing.

|> 3) I've noticed some people have somehow discovered a way to display .GIF
|>    (or some kind of picture files) in the background, either replacing or
|>    overlapping some the usual grey background employed by Xwindows.  I heard
|>    this was done using some application, but I don't recall what it was.

xv -root -max -quit whatever-image-file


--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre.Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 68012
From: pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney)
Subject: Re: Looking for X windows on a PC (long list of known servers)

>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
>
>>Hi All,
>>       This is the first time I've posted to the net, so I hope this is
>>going to the right people.
>>  I'm looking for software packages that run on an IBM PC clone that
>>allows me to display Openlook and motif windows on the PC. 
>>  The idea is to use the PC as a cheap X windows terminal for use by
>>process Engineers at work. 

   Here's a listing that I came accross a while ago.  This question seems to 
come up often enough that I figured this would be of interest.  Note that 
the server "X Appeal" for DOS is available in demo form on the internet via 
anonymous ftp.  This is one way of quickly checking out the feasability of 
using your system as an X server.  Enjoy!

- Pete

------------------------------- Begin Enclosure ----------------------------
From: mccoy@gothamcity.jsc.nasa.gov (Daniel J. McCoy)
Newsgroups: comp.windows.x,news.answers
Subject: X Servers for DOS, Microsoft Windows, OS/2, Macs, Amigas, Atari
Followup-To: comp.windows.x
Reply-To: mccoy@gothamcity.jsc.nasa.gov (Daniel J. McCoy)
Organization: I-NET Inc.
Summary: This is a guide or list of X servers that can be used on nonUNIX [sic] networked machines to display X clients running on UNIX machines.

Archive-name: XServers-NonUNIX
Last-modified: 1993/04/01
Version: 12.0

================================================================================
     X Servers for DOS, Microsoft Windows, OS/2, Macs, Amigas, Atari
================================================================================
                      April 1, 1993 - Volume 12.0
================================================================================
AUTHOR:         Daniel J. McCoy
                I-NET Inc.
                Software Technology Branch
                Information Systems Directorate
                NASA/Johnson Space Center

POST MAIL:      NASA Mail Code PT4
                NASA/Johnson Space Center
                Houston, Texas 77058

E-MAIL:         mccoy@gothamcity.jsc.nasa.gov
================================================================================
This is a monthly guide of X servers that can be used on non-UNIX
networked machines to display X clients running on UNIX machines.  I
use the name UNIX loosely here.  I know others can run X.

The sources for this information come from many places:  the FAQ for
comp.windows.x, blurbs and info packets from the vendors, user manuals
for the products themselves, conversations with sales representatives,
personal experience, comp.windows.x articles, etc.

Please forward any corrections or updates to the above address.

This file is also available by anonymous ftp at:
        export.lcs.mit.edu[18.24.0.12] in /contrib/XServers-NonUNIX.txt.Z
        ftp.uwp.edu[131.210.1.4] in /pub/misc/XServers-NonUNIX.txt
        msdos.archive.umich.edu[141.211.164.153] in
                msdos/info/XServers-NonUNIX.txt and msdos/info/xnonunix.zip


X Servers for DOS:
        DESQview/X
        IBM X/Windows
        Micro X-DOS
        Micro X-lite
        PC DECWindows Motif V3.0
        PC X-Windows
        PC Xsight
        PC-XView
        SAGE 1280 Adapter and X Windows Display Server
        TeemTalk-X
        Vista-eXceed
        X Appeal
        Xinet X-Station
        Xnth
        XoftWare for DOS
        XoftWare for TIGA/DOS

X Servers Microsoft Windows:
        DESQview/X
        eXcursion for Windows
        eXodus for MS Windows
        HCL-eXceed/W
        MicroX
        MultiView/X
        PC-XView
        Vista-eXceed
        X-One
        X11/AT
        XoftWare
        XVision

X Servers OS/2:
        IBM X-Windows for OS/2

X Servers Macintosh:
        eXodus
        MacX

X Servers Amiga:
        UNKNOWN
        X Window System Version 11 Release for the Amiga Computer

X Servers Atari:
        X/TOS/window/server and X/TOS/window/server/color
==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers==X-Servers===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
DESQview/X
==========
Vendor:
        Melinda
        Quarterdeck Office Systems, Inc.
        150 Pico Boulevard
        Santa Monica, CA 90405
        TEL: (310)392-9851
        FAX: (310)399-3802
Price:
        $275
Latest Version:
        1.0
CPU:
        386SX or higher (286 version available)
Memory:
        4 Mbytes
Operating System:
        DOS 3.0 or higher
        DR DOS 6 or higher
Mouse:
        optional - MS compatible pointing device
Graphics:
        EGA, VGA, Super VGA, 8514/A, or 256 color DGIS
Ethernet Card:

Network Software:

Disk Space:
        40 Mbyte hard drive
Features:
        incorporates X into the DESQview multi-tasking DOS environment
        adds a graphical 3D look and feel to DESQview
        gives users a choice of window managers (look and feels)
        provides a growth path from character mode DOS to industry standard
                graphical user interfaces
        runs most regular DOS applications
        runs DOS Extended applications up to 4Gbytes
        can display DOS applications within graphical windows
        multitasks DOS applications and X Clients either locally or remotely
        provides a simple port of applications from other X systems to
                DESQview/X and vice versa
        gives developers a choice of application appearances, based on toolkit
                chosen
        supports toolkits that provide features required by developers such as
                push buttons, scrollbars, pop up dialogue boxes, etc.
        Adobe Type Manager for scalable fonts and scalable DOS windows
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
IBM X/Windows
=============
Vendor:
        IBM
        part #5765-025
Price:

Latest Version:
        2.1
CPU:

Memory:

Operating System:
        DOS
Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Micro X-DOS
===========
Vendor:
        StarNet Communications Corporation
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        $345.00 1 unit
        $225.00 ea. 5 pack (greater discount for larger quantities)
        upgrades at 25% of original price
        educational discount of 10%
Latest Version:
        1.6.1
CPU:
        386, 486
Memory:
        2 Mbytes
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Ahead(V5000)
        ATI(18800)
        Everex(VP VGA)
        Genoa(6400)
        Paradise(900C00/11/30)
        STB(EM-16)
        Trident(8800CS)
        Tseng Labs(ET-3000-4000)
        Video7(HT208 V7VGA)
        Western Digital(900C00/11/30)
        ZyMOS(Poach51)
        VESA
        and others
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        StarNet TCP/IP (integrated)
        NCSA Telnet, ftp, lpr, etc.
        Packet Drivers (Clarkson/Crynwr)
Network Software Supported:
        Beame & Whiteside - BW-TCP
        FTP Software - PC/TCP
        Sun - PC-NFS
Disk Space:
        3 Mbytes (9 Mbytes for all fonts)
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R4
        Intelligent installation program
        TCP/IP built-in
        Support Motif, OPEN LOOK, and DEC
        Supports Clarkson (Crynwr) packet drivers
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Micro X-lite
============
Vendor:
        StarNet Communications Corporation
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        $75.00
Latest Version:
        1.5.3
CPU:
        286, 386, 486
Memory:
        640 Kbytes
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Ahead(V5000)
        ATI(18800)
        Everex(VP VGA)
        Genoa(6400)
        Paradise(900C00/11/30)
        STB(EM-16)
        Trident(8800CS)
        Tseng Labs(ET-3000-4000)
        Video7(HT208 V7VGA)
        Western Digital(900C00/11/30)
        ZyMOS(Poach51)
        VESA 
        and others
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        StarNet TCP/IP (integrated)
        NCSA Telnet, ftp, lpr, ...
        Packet Drivers (Clarkson/Crynwr)
Network Software Supported:
        Beame & Whiteside - BW-TCP
        FTP Software - PC/TCP
        Sun - PC-NFS
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R4
        Intelligent installation program
        TCP/IP built-in
        8 clients on screen at time
	Fixed font oriented (variable fonts available)
        Support Motif, OPEN LOOK, and DEC
        Supports Clarkson (Crynwr) packet drivers
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC DECWindows Motif V3.0
========================
Vendor:
        Dennis Giokas
        PC DECWindows Development
        Digital Equipment Corporation
        30 Porter Rd.
        Littleton, MA 01460
Price:

Latest Version:
        V3.0
CPU:
        286, 386
Memory:
        up to 15 Mbytes
Operating System:
        MS-DOS
Mouse:
        any pointing device with MS Mouse V6.0 or later interface
Graphics:
        EGA (16 color and mono)
        MCGA
        VGA (16 color and mono)
        enhanced VGA (800x600 16 color and mono)
        8514/A (1024x768 16/256 color)
        pseudo color visual
Ethernet Card:

Network Software:
        TCP/IP and DECnet
Disk Space:

Features:
        X11 Release 4 server
        integrated virtual memory manager
        standard IBM-compatible keyboards and Digital's LK250
        Session manager client integrated into the server
        suspend session feature to run DOS commands
        Font Compiler for Adobe Bitmap Distribution files
        KEYSYM compiler to customize the keyboard for default KEYCODE to KEYSYM
                mappings; over 70 pre-defined keyboard mapping files
        Configuration utility to define hardware environment and user
                preferences
        supports DECnet and TCP/IP.  Available from DEC.
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC-XView
========
Vendor:
        Network Computing Devices Inc.
        PC-Xdivision
        9590 SW Gemini Drive
        Beaverton, OR  97005
        TEL: (800)800-9599, (503)641-2200
        FAX: (503)643-8642

        There are also 15 NCD technical and sales offices around the United
                States and other international offices
Price:
        PC-Xview for DOS      $445.00 for 1  $1780.00 for 5
        Annual Maintenance    $150.00 for 1   $450.00 for 5
        Update                $125.00 for 1   $375.00 for 5
Latest Version:
        PC-Xview for DOS     Version 4.0
CPU:
        286, 386 (386 recommended)
Memory:
        1 Mbyte (2 Mbytes recommended)
Operating System:
        DOS 3.2 or higher
Mouse:

Graphics:
        CGA, EGA, VGA, SVGA, XGA, TIGA
        8514/A Video Standard supported with extended memory
        Japanese Graphics Mode
        high resolution graphics boards:  Compac, Dell, HP, NEC,
                Spectragraphics Squeegee, and over 50 other DGIS-based
Ethernet Card:
        over 35 Ethernet communications boards supported
Network Software Needed:
        TCP/IP
        DECnet
Disk Space:
        5 Mbytes (7 Mbytes recommended)
Features:
        UNIX application support for traditional applications and
                window managers such as Motif and OPEN LOOK
        off-loads the graphics processing of UNIX hosts
        hot-key to DOS
        access to local peripherals and DOS utilities
        easy and well-documented installation procedures
        pop-up control panel
        Motif compliant Local Window Manager
        ability to run in Windows PIF window
        hot-key between X and DOS (no longer have to exit) a TSR
        DPMI compatibility
        enhanced protocol tracing
        Support XRemote protocol
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC X-Windows
============
Vendor:
        Intelligent Decisions Inc.
        536 Weddell Dr. Suite 2C
        Sunnyvale, CA 94089
        TEL: (408)734-3730
        FAX: (408)734-3634
Price:
        $295
Latest Version:

CPU:
        286, 386, 486
Memory:
        1 Mbyte (more recommended for hi-res or lots of pixmaps)
Operating System:
        DOS 3.1 of higher
Mouse:
        MS compatible mouse
Graphics:
        VGA, some SVGA
Ethernet Card:

Network Software:
        FTP Software's PC/TCP
        Wollongong's WIN/TCP
Disk Space:
        4 Mbytes on hard disk
Features:
        Port of MIT X11R4 server
        Shape extension
        MIT-MAGIC-COOKIE
        XDMCP
        font compiler
        fonts supplied
        Motif, Open Look, DECWindows (VMS and Ultrix) demonstrated to work with
                this server at InterOp last year.
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
PC Xsight
=========
Vendor:
        PC XSight
        Locus Computing Corporation
        9800 La Cienega Blvd.
        Inglewood, CA 90301
        TEL: (800)955-6287
        CA: (213)670-6500
        UK: +44 296 89911
Price:

Latest Version:

CPU:
        8088, 8086, 286, 386
Memory:
        640 Kbytes base memory with 512 Kbytes available
        896 Kbytes extended memory
Operating System:
        MS/PC DOS 3.1 or later
Mouse:
        2 or 3 button mouse and driver (3 button mouse recommend)
Graphics:
        EGA, VGA, Hercules, or AT&T 6300
Ethernet Card:
        Excelan EXOS 205 or 205T
        3COM 3C501
        Western Digital WD8003E
        Micom NI5210
        Acer Multitech 5220
Network Software:

Disk Space:
        5-1/4-inch high-density or 3-1/2-inch diskette drive
        1 Mbyte
Features:

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
SAGE 1280 Adapter and X Windows Display Server
==============================================
Vendor:
        Sigma Designs, Inc.
        46501 Landing Parkway
        Fremont, CA 94538
        TEL: (415)770-0100
        FAX: (415)770-0110
        TELEX: 17124
Price:

Latest Version:

CPU:
        286, 386, 486
Memory:

Operating System:
        DOS 3.0 or higher or UNIX System V/386
Mouse:

Graphics:
        high end multiscanning or fixed frequency 64 kHz monitors
Ethernet Card:

Network Software:

Disk Space:

Features:
        menu-driven installation and configuration program
        1280x1024 resolution
        TIGA-340, 8514/A AI Emulation
        CGA, MDA, Hercules, VGA pass-through emulation modes
        256 colors displayable simultaneously from a palette of 16.7 million
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
TeemTalk-X
==========
Vendor:
        Pericom
        TEL: +44 (0908) 560022
Price:

Latest Version:

CPU:

Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        for IBM clones allows toggling between X and DOS
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Vista-eXceed
============
Vendor:
        Control Data Corporation
        Vista Distributing Computing
        9315 Largo Drive West
        Suite 250
        Landover, MD 20785
        TEL: (301)808-4270
Price:
        Vista-eXceed
        Vista-eXceed Plus
        Vista-eXceed Plus/8514A
Latest Version:

CPU:
        286, 386, 486
Memory:
        640 Kbytes to 1 Mbyte for DOS server
        1.64 Mbytes for Vista-eXceed Plus and Vista-eXceed Plus/8514A
Operating System:
        MS-DOS or PC-DOS 3.0 or higher
Mouse:
        2 or 3 button MS compatible mouse
Graphics:
        EGA, VGA, or SVGA
        color or analog monochrome monitor
Ethernet Card:
        any supported by TCP/IP transports listed below
Network Software:
        PC/TCP Network Software for DOS by FTP Software Inc.
        PC-NFS by Sun Microsystems, Inc.
        WIN/TCP for DOS by The Wallongong Group, Inc.
        Pathway Access for DOS by The Wallongong Group, Inc.
        LAN WorkPlace TCP/IP Transport System by Novell/Excelan
        3+Open TCP by 3COM Corporation
        HP ARPA Services by Hewlett Packard Corporation
        Net-One TCP BNS/PC by Ungermann-Bass, Inc.
        BWNFS or Telnet Package by Beame & Whiteside Software Ltd.
Disk Space:
        hard disk
Features:
        can may up to 16 Mbytes available for client processing
        emulates a 3-button mouse with a 2-button mouse
        full interactive support for X font names and alias' schemes
        locally modify keyboard mapping
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
X Appeal
========
Vendor:
        Giovanni Novelli
        Xtreme s.a.s. - Livorno, Italy
        FAX: +39-586-502310
        xappeal@xtreme.sublink.org (before 1-1-93)
        xappeal@xtreme.it          (after  1-1-93)
Price:
        $350    with quantity discounts:
                23% off for 20 copies
                39% off for 50 copies
                51% off for 100 copies
        additional 30% discount for educational institutions
        demo copies available through anonymous ftp at garbo.uwasa.fi:
                pc/demo/xap13exe.zip    (README and executables)
                pc/demo/xap10fon.zip    (local server fonts)
                pc/connect/drivers.zip  (packet drivers)
Latest Version:
        1.3
CPU:
        386SX or higher
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        MS-DOS 3.30 or later
Mouse:
        any pointing device with MS Mouse compatible driver
Graphics:
        most SVGA boards in 256 color mode
        Ahead (V5000B)
        ATI (18800)
        Chips & Technologies (82C452)
        Genoa (6400)
        NCR (77C22E)
        Oak Technologies (OTI-067)
        Paradise (WD90C00)
        Trident (8900, 8900C)
        Tseng Labs (ET3000, ET4000)
        Western Digital (WD90C00)
Ethernet Card:
        any model compatible with packet drivers
Network Software:
        TCP/IP included
Disk Space:
        at least 2 Mbytes
Features:
        full X11R5 Server implementation, including PEX and font server support
        screen painting exceeds 6000 Xstones in 1024x768 resolution (256 colors)
                on a 386/33 without 387
        support for all color classes (StaticGray, GrayScale, StaticColor,
                PseudoColor, TrueColor and DirectColor)
        run-time resolution switch and panning on a virtual screen
        emulates a 3-button mouse with a 2-button mouse
        fast cursor tracking
        full support for European keyboard layouts
        no memory limitation through use of virtual memory
        32 bit protected mode DOS-extended application
        built-in TCP/IP support, using the packet driver for the Ethernet
                board (free packet driver collection included)
        interactive configuration utility
        X Display Manager Control Protocol support (for hosts running xdm)
        X-Authorization (MIT-MAGIC-COOKIE-1)
        shape Extension for non-rectangular windows
        font compiler and RGB database utilities
        X11 fonts provided, including fonts for Sun Open Windows and DECWindows
        UNIX application support for traditional applications and
                window managers such as Motif and OPEN LOOK
        built-in rcp/rsh server, to allow file transfers and the execution
                of useful DOS functions without leaving the X environment
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Xinet X-Station
===============
Vendor:
        Xinetron
        CA
        TEL: (408)727-5509
Price:

Latest Version:

CPU:
        286, 386
Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        up to 8 clients
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
Xnth
====
Vendor:
        Jerry Norman
        Nth Graphics, Ltd.
        TEL: (800)624-7552
        this X server project has been abandoned
Price:

CPU:
        286, 386
Memory:

Operating System:
        DOS 3.3 or higher
Mouse:

Graphics:

Ethernet Card:

Network Software:
        TCP/IP
Disk Space:

Features:
        supports 1280X1024 or 1024X768 resolution monitors at 256 colors (out
        of 16M) with hardware acceleration for graphics and text
        operations
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
XoftWare for DOS
================
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $395.00
        with TCP/IP $495.00
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes extended
Operating System:
        DOS 3.1 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        EGA, VGA, SVGA or 8514
Ethernet Card:
        compatible with network software
Network Software:
        3Com 3+ Open TCP(1.2 of higher)
        DEC Pathworks TCP/IP (1.1 of higher)
        ftp PC/TCP (2.05 of higher)
        Novell LAN WorkPlace (4.01 of higher)
        Sun PC/NFS (3.5 or higher)
        Wollongong Pathway Access (2.05 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Hotkeys to DOS and MS Windows
        Passive, telnet, rsh, rexec, or XDMCP startup modes
        Motif, OpenLook, and DECWindows support
        Virtual screen Support
        International keyboard support
        Full font library in SNF format
        BDF to SNF font compiler
        Complete documentation
        Support and update service
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===
XoftWare for TIGA/DOS
=====================
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $495.00
        with TCP/IP $595.00
Latest Version:

CPU:
        286, 386, 486
Memory:
        512 Kbytes
Operating System:
        DOS 3.0 or higher
Mouse:
        2 or 3 button mouse with MS compatible driver
Graphics:
        Texas Instruments TMS340-based graphics accelerator with TIGA 2.0 or
                higher whith 1Mbyte DRAM
Ethernet Card:
        compatible with network software
Network Software:
        3Com 3+ Open TCP(1.2 of higher)
        DEC Pathworks TCP/IP (1.1 of higher)
        ftp PC/TCP (2.05 of higher)
        Novell LAN WorkPlace (4.01 of higher)
        Sun PC/NFS (3.5 or higher)
        Wollongong Pathway Access (2.05 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Hotkeys to DOS and MS Windows
        Passive, telnet, rsh, rexec, or XDMCP startup modes
        Motif, OpenLook, and DECWindows support
        Virtual screen Support
        International keyboard support
        Full font library in SNF format
        BDF to SNF font compiler
        Complete documentation
        Support and update service
        Optimized for TIGA graphics accelerators
===DOS===DOS===DOS===DOS===DOS===DOS==DOS===DOS===DOS===DOS===DOS===DOS===DOS===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
DESQview/X
==========
Vendor:
        Melinda
        Quarterdeck Office Systems, Inc.
        150 Pico Boulevard
        Santa Monica, CA 90405
        TEL: (310)392-9851
        FAX: (310)399-3802
Price:
        $275
Latest Version:
        1.0
CPU:
        386SX or higher (286 version available)
Memory:
        4 Mbytes recommended
Operating System:
        PC or MS DOS 3.0 or higher
        DR DOS 6 or higher
Mouse:
        MS compatible pointing device
Graphics:
        EGA
        VGA
        Super VGA
        8514/A
        256-color DGIS
        ATI 18800/28800(800x600)
        C&T 82c452(720x540)
        C&T 82c453(1024x768)
        Tseng ET3000(800x600)
        Tseng ET4000(1024x768)
        Genoa 6400(800x600)
        WD PVGA1a(640x480)
        WD90C00(640x480)
        WD90C11(800x600)
        some revisions of Headland VEGA(800x800) and Headland V7VGA(1024x768)
Ethernet Card:

Network Software:

Disk Space:
        40 Mbyte hard drive
Features:
        incorporates X into the DESQview multi-tasking DOS environment
        adds a graphical 3D look and feel to DESQview
        gives users a choice of window managers (look and feels)
        provides a growth path from character mode DOS to industry standard
                graphical user interfaces
        runs most regular DOS applications
        runs DOS Extended applications up to 4Gbytes
        can display DOS applications within graphical windows
        multitasks DOS applications and X Clients either locally or remotely
        provides a simple port of applications from other X systems to
                DESQview/X and vice versa
        gives developers a choice of application appearances, based on toolkit
                chosen
        supports toolkits that provide features required by developers such as
                push buttons, scrollbars, pop up dialogue boxes, etc.
        can run DOS text and MS Windows graphics programs locally and remotely
        Adobe Type Manager for scalable fonts and scalable DOS windows
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
eXcursion for Windows
=====================
Vendor:
        Digital Equipment Corporation
        Maynard, Massachusetts
Price:

Latest Version:
        1.0
CPU:
        286, 386, 486
Memory:
        2 Mbytes
Operating System:
        DOS
        MS Windows 3.0 or later
Mouse:
        MS Windows supported mouse
Graphics:
        MS Windows supported card
Ethernet Card:
        
Network Software:
        Decnet with PATHWORKS for DOS
        TCP/IP with PATHWORKS for DOS (TCP/IP)
        TCP/IP with PC/TCP from FTP Software, Inc.
        TCP/IP with 3Com TCP with Demand Protocol Architecture
Disk Space:
        7-15 Mbytes hard desk
        3.5-720 Kbyte or 5.25-1.2 Mbyte floppy drive
Features:
        Seperate application windows for each X applicatioon displayed by the X
                server 
        EXcursion Setup utility for installing eXcursion under MS Windows
        Control Panes provides an easy way to start X applications and
                customize environment
        Online Help
        Ability to cut and paste text or graphics between X and MS Windows
        Ability to compile new fonts
        Ability to redefine keys on the keyboard
        Personal password security access to eXcursion
        Three button mouse emulation
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
eXodus for MS Windows
=====================
Vendor:
        White Pine Software, Inc.
        40 Simon Street, Suite 201
        Nashua, HN 03060-3043
        TEL: (603)886-9050
        FAX: (603)886-9051
        email: sdarling@wpine.com
        AppleLink: WHITEPINE
Price:
        $449
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        DOS
        MS Windows 3.0 or higher
Mouse:
        recommended
Graphics:
        EGA, VGA, SVGA, DGIS
Ethernet Card:
        most cards
Network Software:

Disk Space:

Features:
        X11R4
        color and monochrome X screen support including 24bit TrueColor
        backing store and save under options
        full XDMCP support
        access control support
        online help
        3 button mouse emulation
        text and graphics transfers between MS Windows and Macintosh clipboards
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
HCL-eXceed/W
============
Vendor:
        Hummingbird Communications Ltd.
        2900 John Street, Unit 4
        Markham, Ontario, Canada L3R 5G3
        TEL: (416)470-1203
        FAX: (416)470-1207
Price:
        $595    1 copy
        $536    2-4 copies
        $476    5-9 copies
        $417    10 or more copies
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes or more recommended
Operating System:
        DOS
        MS Windows version 3 (Standard and 386 Enhanced Modes)
Mouse:
        MS compatible pointing device
Graphics:
        EGA, VGA, or VGA+
Ethernet Card:
        any compatible with the networking product you choose
Network Software:

Disk Space:

Features:
        makes full use of 8514 and other high resolution graphics cards
        redesigned for MS Windows (not an implementation of MIT X)
        copy & paste between X-Windows and MS Windows
        interactive configuration utility
        full interactive support for font naming & alias schemes
        font compiler
        log file of host-generated messages
        Backing Store and Save Unders
        virtual screen support
        seven start-up methods
        full support for European keyboards
        font, host access & RGB databases loading
        X protocol trace & dissassembly functionality
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
Micro X-WIN
===========
Vendor:
        StarNet Communications
        3073 Lawrence Expressway
        Santa Clara, CA 95051
        TEL: (408)739-0881
        FAX: (408)739-0936
        micro-x@starnet.com
Prices:
        Micro X-WIN $425.00 1 unit
                    $300.00 ea. 5-pack (greater discount for larger quantities)
        upgrades at 25% of original price
        educational discount of 10%
Latest Version:
        2.2.1 for X11 Release 5
CPU:
        386, 486
Memory:
        4 Mbytes
Operating System:
        MS-DOS 3.1 or higher
        MS Windows 3.1 or higher
Mouse:
        2 or 3 button with MS compatible driver
Graphics:
        MS Windows supported cards
Ethernet Card:
        3Com/3C501/503/505/523
        3Com EtherLink/MC
        Cabletron 1-2-3000
        Micom-Interlan NI5010-5210
        Western Digital WD80003E
        Novell NE-1000/2000
        National Semiconductor
        boards that have their own packet driver from manufacturer
Network Software Included:
        Lanera TCPOpen (WinSock compatible)
Network Software Supported:
        FTP Software - PC/TCP
        Lanera - TCPOpen
        Sun - PC-NFS
        WinSock compatible TCP/IP stacks
Disk Space:
        5 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte needed
Features:
        X11R5
        Integrated rsh/rexec with displayed results
        Auto start-up with XDMCP or rsh/rexec
        Easy additional session start-up
        Panning
        Supports Motif, OPEN LOOK, and DECWindows
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
MultiView/X
===========
Vendor:
        JSB Computer Systems Ltd.
        Cheshire House, Castle Street, Macclesfield
        Cheshire, England, SK11 6AF
        TEL: 0625 433618

        JSB Corporation
        108 Whispering Pines Drive, Suite 115
        Scotts Valley, California 95066
        TEL: (408)438-8300, (800)359-3408
        FAX: (408)438-8360
Price:

Latest Version:

CPU:

Memory:

Operating System:
        DOS
        MS Windows
Mouse:

Graphics:

Ethernet Card:

Network Software:
        RS 232 direct connections, RS 232 modem connections, Atlantix Axcess,
        Beame & Whiteside TCP/IP, D-Link TCP/IP for DOS, FTP PC/TCP,
        HP ARPA Services for DOS, IBM AIX Access for DOS users,
        ICL Oslan (int 5b), Locus PCI, Locus TCP/IP for DOS,
        MS LAN Manager for UNIX, MS LAN Manager for UNIX V2.1, NCR Token Ring,
        Novell LAN WorkPlace for DOS, SCO Xenix-Net, Sun PC-NFS,
        Ungermann-Bass Net/One, Ungermann-BassNet/One NETCI (int6b),
        Wollongong PathWay Access DOS, Wollongong WIN/TCP for DOS,
        3 Com 3+Open TCP
Disk Space:

Features:
        provides a Character Server for character applications
        emulation for DEC VT100, DEC VT220, DEC VT241, SCO UNIX/Xenix Console,
                X/Open ANSI, INTERACTIVE UNIX Console, AT&T UNIX Console
        automatically invokes the X server when an X client is selected
        passive, telnet, rsh, rexec, and XDMCP startup modes supported
        full X11R4 font library provided in standard Windows format
        BDF to Windows compiler
        copy and paste of text available
        single iconic desktop
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
PC-XView
========
Vendor:
        Network Computing Devices Inc.
        PC-Xdivision
        9590 SW Gemini Drive
        Beaverton, OR  97005
        TEL: (800)800-9599, (503)641-2200
        FAX: (503)643-8642

        There are also 15 NCD technical and sales offices around the United
                States and other international offices
Price:
        PC-Xview for Windows  $445.00 for 1  $1780.00 for 5
        Annual Maintenance    $150.00 for 1   $450.00 for 5
        Update                $125.00 for 1   $375.00 for 5
Latest Version:
        3.1
CPU:
        286, 386 (386 recommended)
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        MS-DOS or PC-DOS 3.0 or higher
        MS Windows 3.0/3.1 or Windows NT
Mouse:
        recommended but not needed
Graphics:
        any compatible with MS Windows
Ethernet Card:

Network Software Needed:
        TCP/IP
        DECnet
Disk Space:
        7 Mbytes (10 Mbytes recommended)
Features:
        runs MS Windows applications alongside X clients
        cut and paste between X clients and MS Windows
                applications using the Windows clipboard
        full support of X11R4 features, including the Shape extension
        off-loads graphics processing from host computers
        runs in both standard and enhanced modes of MS Windows
        manages X clients with a standard remote window manager or
                with MS Windows
        full X11 fonts provided, including fonts for Sun Open Windows
                and DECWindows
        Windows-based compiler that converts Bitmap Description Format
                BDF fonts to MS Windows format(FON) fonts
        Windows-based file transfer program
        prints files from a remote host on your local printer
        built-in client starter
        Windows-based installation and configuration
        DDL support for network interfaces
        easy installation procedures
        X Display Manager Control Protocol(XDMCP) support
        support for multiple TCP/IP network packages
        comprehensive and well organized User's guide
        Graphics Cut & Paste
        Virtual Screen support
        support the XRemote protocol (developed by NCD)
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
Vista-eXceed
============
Vendor:
        Control Data Corporation
        Vista Distributing Computing
        9315 Largo Drive West
        Suite 250
        Landover, MD 20785
        TEL: (301)808-4270
Price:
        Vista-eXceed/W
Latest Version:

CPU:
        286, 386, 486
Memory:
        2 Mbytes for MS Windows server
Operating System:
        DOS 3.0 or higher
        MS Windows 3.0
Mouse:
        2 or 3 button MS compatible mouse
        MS Windows supported mouse
Graphics:
        EGA, VGA, or SVGA
        any supported by MS Windows
Ethernet Card:
        any supported by TCP/IP transports listed below
Network Software:
        PC/TCP Network Software for DOS by FTP Software Inc.
        PC-NFS by Sun Microsystems, Inc.
        WIN/TCP for DOS by The Wallongong Group, Inc.
        Pathway Access for DOS by The Wallongong Group, Inc.
        LAN WorkPlace TCP/IP Transport System by Novell/Excelan
        3+Open TCP by 3COM Corporation
        HP ARPA Services by Hewlett Packard Corporation
        Net-One TCP BNS/PC by Ungermann-Bass, Inc.
        BWNFS or Telnet Package by Beame & Whiteside Software Ltd.
Disk Space:
        hard disk
Features:
        can may up to 16 Mbytes available for client processing
        emulates a 3-button mouse with a 2-button mouse
        full interactive support for X font names and alias' schemes
        locally modify keyboard mapping
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
X11/AT
======
Vendor:
        Intergrated Inference Machines, Inc.
        Computer Products Division
        1468 East Katella Avenue
        Anaheim, CA 92805-9806
        TEL: (714)978-6201 and (714)978-6776
        FAX: (714)939-0746
Price:

Latest Version:

CPU:
        286, 386, 486
Memory:
        640 Kbytes base memory
        2 Mbytes extended memory
Operating System:
        MS-DOS 3.1 or later
        MS Windows 3.0 or later
Mouse:

Graphics:
        any graphics card and that supports MS Windows - EGA or VGA resolution,
                or better, are recommended
        CGA (Color Graphics Adapter)
        COMPAQ Portable III or Portable 386 plasma display
        EGA with high-resolution color display
        EGA whith low-resolution color display
        Hercules with high-resolution monochrome display
        IBM 8514/A display
        Olivetti monochrome or PVC display
        Olivetti OEC display
        WYSE high resolution monochrome
        Moniterm Viking monochrome
        VGA (Video Graphics Array)
Ethernet Card:
        also compatible with Excelan, 3COM, Ungermann Bass, Western Digital,
        Tiara, IIM's X/PAC, and others
Network Software:
           Either Excelan's TCP/IP Driver Set or FTP Inc. PC/TCP Driver Set
                   (not included with X11/AT)
Disk Space:
        at least 2.5 Mbytes of storage capacity available for X11/AT software,
        excluding optional X fonts; to use all X fonts supplied with X11/AT,
        a total of 5.5 Mbytes is required
Features:
        Concurrent MS-DOS & X Windows operation
        Concurrent X Windows & Telnet operation
        Cut & Paste utility, FTP utility
        Font compiler for user-developed fonts
        Telnet and FTP utilities included
        compatible with the following FTP software programs, when not operated
                under MS Windows:
                ftp, the file transfer protocol client
                ftpsev, the file transfer protocol server
                interdrive, the network file system (NFS)
                ping, a network test
                tnvt, the telnet virtual terminal client
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
X-One
=====
Vendor:
        Grafpoint
        1485 Saratoga Avenue
        San Jose, CA 95129
        TEL: (800)426-2230 7:30-5:00 PST, (408)466-1919
        FAX: (408)446-0666
        uunet!grafpnt!sales
Price:
        (free demo copies)
Latest Version:

CPU:
        386, 486
Memory:
        2 Mbytes
Operating System:
        DOS 3.1 or higher
        MS Windows
Mouse:
        2 or 3 button mouse
Graphics:
        VGA
        Super VGA
        8514A
        TIGA
        VGA boards with S3 chip set
Ethernet Card:

Network Software:
        Grafpoint's TCP/IP included
Disk Space:

Features:
        X11R4
        on-screen setup
        builtin TCP/IP
        supports local clients such as telnet/vt100 window, a setup window,
                an rsh window, a local window manager
        DOS and Windows versions in one product
        hot key to DOS
        90 days of telephone technical support
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
XVision
=======
Vendor:
        VisionWare Limited            White Pine is re-badging XVision as
        57 Cardigan Lane                      eXodus for Windows
        Leeds LS4 2LE                         40 Simon Street, Suite 201
        United Kingdom                        Nashua, HN 03060-3043
        TEL: (0532) 788858                    TEL: (603)886-9050
                +44 532 788858                FAX: (603)886-9051
        FAX: (0532) 304676                    sdarling@wpine.com
                +44 532 304676                AppleLink: WHITEPINE
        vware@visionware.co.uk        
Price:
          $449.00  1 users         $9100.00 30 users
         $1800.00  5 users        $11850.00 40 users
         $3600.00 10 users        $14600.00 50 users
         $6350.00 20 users        educational discounts available
        adding a user where at least 10 are installed - $275.00
        XRemote support per PC:  bundled - $95.00        upgrade - $150.00
        full documentation - $60.00        evaluation copy - $60.00
Latest Version:
        4.1
CPU:
        286, 386, 486
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        DOS 3.0 or later
        MS Windows 3.0 or later
Mouse:
        recommended but not required
Graphics:
        MS Windows compatible graphics
Ethernet Card:

Network Software:
        FTP PC/TCP
        Excelan LAN Workplace for DOS
        Locus TCP/IP for DOS
        Ungermann Bass NET/ONE TCP-PC
        Wollongong WIN/TCP for DOS
        Beame & Whiteside TCP/IP
        Sun PC-NFS
        HP LAN Manager (ARPA Services for DOS)
        3Com 3+ Open
Disk Space:
        5-1/4-inch high-density or 3-1/2-inch high-density
Features:
        copy and paste between X and MS Windows
        use a host window manager or allow MS Windows to control X clients
        support for all color classes (StaticGray, GrayScale, StaticColor,
                PseudoColor, TrueColor and DirectColor)
        several user options for performance enhancement
        X11 Release 5 server
        fonts and server extensions including XDMCP
        ICCCM compliant
        X clients may also use MS Windows fonts
        easy configuration of the system via dialog boxes
        provides the functionality of a three-button mouse
        support for all international keyboards supported by Windows
        host access control
        network-aware setup and on-line help
        iconic control panel for configuring XVision
        Dynamic Server Optimizations (XVision runs tests on the PC at install
                time to see how best to draw to the display)
        support for:  NCD XRemote, DECnet, SHAPE extension, 24-bit color,
                MS Windows font managers, all color classes, rsh, rexec
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===
XoftWare
========
Vendor:
        AGE Logic, Inc.
        9985 Pacific Heights Blvd.
        San Diego, CA 92121
        TEL: (619)455-8600, (619)565-7373
        FAX: (619)597-6030
        email: sales@age.com

        Bert Shure
        TEL: (619)455-8600(ext.104)
        email: bert@age.com, age!bert@ucsd.edu
Price:
        $495.00
        with TCP/IP  $595.00
Latest Version:

CPU:
        386, 486
Memory:
        2 Mbytes extended
Operating System:
        DOS 3.1 or higher
        Windows 3.0 or higher
Mouse:
        MS Windows compatible mouse
Graphics:
        card with MS Windows driver
Ethernet Card:

Network Software:
        Beame & Whiteside TCP/IP (2.2 or higher)
        ftp PC/TCP (2.05 of higher)
        DEC Pathworks (4.0 or higher)
        HP ARPA Services (2.1 or higher)
        Novell LAN WorkPlace (4.01 or higher)
        Sun PC/NFS (3.5 or higher)
        Ungermann-Bass Net/One TCP (16.5 or higher)
        Wollongong Pathway Access (4.1.1 or higher)
        Wollongong WIN/TCP (1.1 or higher)
        3Com 3+ Open TCP (1.2 or higher)
Disk Space:
        2 Mbytes
        5-1/4 1.2 Mbyte or 3-1/2 1.44 Mbyte floppy needed
Features:
        MIT compliant with AGE extensions
        Context Sensitive on-line help system
        Cut and paste between X and MS Windows
        Start X applications with MS Windows icons
        Single and multiple window modes
        MS Window manager used with X applications
        Virtual screen up to 32,767 by 32,767
        Passive, telnet, rsh, rexec, and XDMCP startup modes
        Backing store and save unders
        Motif, OpenLook, and DECWindows support
        Full font library in FON format
        BDF to MS Windows FON font compiler
        Log file optionally saves system messages
        Tutorial on the X Window System
===Microsoft-Windows==Microsoft-Windows==Microsoft-Windows==Microsoft-Windows===

==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==
IBM X-Windows for OS/2
======================
Vendor:
        IBM Solutions Center
        Voice: 1-800-IBM-CALL
        FAX:   1-303-440-1639
Price:
        $150 plus $200 for IBM TCP/IP for OS/2 (required)
Latest Version:
        Version 1.2.1
        Part Number 02G6980 (X-Windows)
                    02G6968 (TCP/IP)
CPU:
        386SX or higher
Memory:
        6 Mbytes recommended (4 minimum)
Operating System:
        IBM OS/2 2.0 or higher
Mouse:
        OS/2 compatible pointing device
Graphics:
        EGA, VGA, Super VGA, 8514/A, XGA, or other OS/2 supported card
Ethernet Card:
        compatible with OS/2 (NDIS)
Network Software:
        IBM TCP/IP (required)
Disk Space:
        80 Mbyte hard drive
Features:
        incorporates X into the OS/2 advanced PC operating system
        provides full X11R4 server, X font library, X font compiler,
                X client utilities
        runs as another object on the WorkPlace Shell (WPS) desktop
        cut and paste between OS/2, DOS, and Windows applications running under
                OS/2 full TCP/IP implementation including ftp, telnet, lamail,
                ping, finger, SLIP, rsh, remote printing, BOOTP, VT100/220, and
                many more
        other modules available, including NFS, Programmer's Toolkit (includes
              Kerberos, RPC, DPI, NCS, ftp API, sockets API, Resolver API),
              and more
==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==OS/2==

=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh
eXodus
======
Vendor:
        White Pine Software, Inc.
        40 Simon Street, Suite 201
        Nashua, HN 03060-3043
        TEL: (603)886-9050
        FAX: (603)886-9051
        email: sdarling@wpine.com
        AppleLink: WHITEPINE
Price:
        $295
Latest Version:
        3.0
CPU:
        all Macintosh computers
        eXodus II runs on Macintosh computers with a 68020 or 68030 processor
                and a floating point co-processor
Memory:
        2 Mbytes
Operating System:
        version 6.0 or later
        version 6.0.3 or later if you plan to use Communications Toolbox for
                network connections
Mouse:

Graphics:

Ethernet Card:

Network Software:
        TCP/IP - MacTCP by Apple Computer, Inc. (part of CommSolutions)
        TCP/IP - TCPort/LAN Workplace by Novell, Inc. (formerly TCPort/Host
                Access)
        DECnet - TSSnet by Thursby Software Systems, Inc. (a special version
                is distributed as part of CommSolutions)
        DECnet - CommUnity-Mac distributed by Everex, Inc.
        DECnet - DECnet for Macintosh (part of PATHWORKS by Digital Equipment
                Corporation)
        ADSP - PATHWORKS distributed by Digital Equipment Corporation
        AppleTalk
Disk Space:

Features:
        supports MultiFinder
        under A/UX, clients and server run on the Macintosh
        under Macintosh Operating System, clients run on another computer
        conforms to the Macintosh Human Interface Guidelines
        user standard Macintosh pull-down menus
        functions as a Macintosh program under the Macintosh Operating System
        handles Macintosh events
        can use normal Macintosh environment
=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh

=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh
MacX
====
Vendor:
        Apple Computer, Inc.
        Cupertino, CA 95014
        TEL: (408)996-1010
        TLX: 171-576
        or any Apple dealer (BusinessLand,MicroAGE, etc.)
Price:
        MacX                        Order No. M0108LL/C   ??
        MacX Manual Set             Order No. M0602LL/B   ??
        MacX 1.1.7 Update Product   Order No. M1197LL/A   ??
        Mac X and X11 Site License  Order No. M0749LL/C   ??
Latest Version:
        1.2
CPU:
        any Macintosh
Memory:
        2 Mbytes
Operating System:
        system software 6.0.5 or later
Mouse:

Graphics:
        1-bit and 8-bit graphics
Ethernet Card:

Network Software:
        LocalTalk, Ethernet
Disk Space:
        at least two floppy disks for 6.0.5 or later
        3.5 Mbytes hard disk tor 7.0
Features:
        X11 release 4 server
        ICCCM-compatible cut and paste of text AND graphics between the
                Macintosh and X11
        SHAPE extension (including SHAPED windows on the Macintosh desktop)
        optional built-in ICCCM-compliant window manager
        built-in BDF font compiler
        built-in standard colormaps
        built-in window managers
        support for system software version 7.0
        support for multiple monitors
        copy and paste text and graphics
=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh=Macintosh

=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==
UNKNOWN
========
Vendor:

Price:

Latest Version:

CPU:

Memory:

Operating System:

Mouse:

Graphics:

Ethernet Card:

Network Software:

Disk Space:

Features:
        Amiga 3000 machines offer an X server and OPEN LOOK tools and libraries
                on a full SVR4 implementation
=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==

=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==
X Window System Version 11 Release for the Amiga Computer
=========================================================
Vendor:
        GfxBase, Inc.
        Dale Luck
        1881 Ellwell Drive
        Milpitas, CA 95035
        TEL: (408)262-1469
        FAX: (408)262-8276
        Usenet: boing!dale
        Bix: duck
        amiga!boing!dale@bloom-beacon.mit.edu
Price:
     $395.00 ($90.00 yearly maintenance fee)
Latest Version:
        4.1
CPU:
        AmigaDos computer:
                A1000
                A2000
                A2500
                A3000
                A3000T
                A4000
                A500
                A600
Memory:
        1 Mbyte for Server and 640x400 2-color display
        more RAM required for local clients
Operating System:
        AmigaDOS Operating System V1.3 or later
Mouse:
        Amiga 2 button mouse, or optical 3 button mouse, tablet, trackball,
                or International keyboard
Graphics:
        NTSC to 1440x482(60hz), PAL(1440x568 50 hz)
        Overscan, genlock and interlace supported
        A2024/Viking 1 1024x8000(60hz), 1024x1024(50hz)
        Super Screens to 2560x2560 scrollable on smaller display
        Productivity screen - 640x480 60hz noninterlaced (640x960 interlaces)
        Two colors out of a palette of 4096 can be selected.  Cursor has two
                separately controlled colors
        Color server: 2,4,8,16,32 colors from 4096.  A2024/Viking 1 - 4 gray
                scales.  Some resolutions restricted
        GDA1 640x480, 800x600, 1024x800 noninterlaced 256/16M
        Ameristar 1600GX 1280x1024, 1600x1280 noninterlaced 256/16M
Ethernet Card:
        Commodore A2065
Network Software:
        Commodore TCP/IP or Syndesis DECnet for ethernet and serial
                connections, SANA for local
Disk Space:
        7-14 Mbytes
Features:
        contains X11R4 clients, fonts, etc.
        Amiga Xpr uses the standard Amiga printer device technology which
                supports more that 50 different types of printers.  Black and
                White of Color
        Xamiga R4 monochrome and color servers
        optional programmer's toolkit includes the header files, libraries,
                and sample programs
        Optional mwm window manager
        Optional toolkits/widgets Motif, XView, HP
=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga=Amiga==

=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari=Atari==
X/TOS/window/server and X/TOS/window/server/color
=================================================
Vendor:
        X/software Michael Gehret
        X/TOS division
        Marktstrasse 8
        W-8944 Groenenbach
        Germany
        TEL: +49 8334 1411
        FAX: +49 8334 6245
        email: xtosinfo@xsoft.uucp
Price:
        X/TOS/window/server (for all TOS computers)         DM 1,098.00
        X/TOS/window/server/color (for all TOS computers)   DM 1,498.00
        option 030 (for 68030 or 68040 processors only)     DM    98.00
        X/TOS/window/server/color option 030 and option PEX T.B.A.
        overseas order handling                             DM   100.00
        none-EC European order handling                     DM    50.00
Latest Version:
        502.*
CPU:
        Atari Mega ST, STE, TT
        68000 to 68040
Memory:
        2 Mbytes (4 Mbytes recommended)
Operating System:
        TOS 1.4 or higher
Mouse:
        Atari mouse
Graphics:
        X/TOS/window/server:
                monochrome 640x400x1,
                monochrome 1280x960x1 (TT, SM194)
        X/TOS/window/server/color:
                monochrome 640x400x1,
                monochrome 1280x960x1 (TT, SM194)
                color 320x200x4
                color 640x200x2
                color 640x480x4
                color 320x480x8
Ethernet Card:
        Atari Card (Mega or VME bus)
        Riebl/Wacker (Mega or VME bus)
--------------------------------- End Enclosure -----------------------------
____________________________________________________________________________
| Peter J. McKinney                     pm860605@longs.LANCE.ColoState.Edu |
| Electrohydrodynamic Laboratory                                           |
| Fluid Mechanics and Wind Engineering Program                             |
| Civil Engineering Department                                             |
| Colorado State University                                                |
----------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68013
From: jsw@icf.hrb.com (Jeffrey S. Weber)
Subject: XView, SUN XGL, performance problem


I've written an application for SparcStation 2 GX+, under OpenWindows 3.0.

The application uses XView stuff to create my window, and the SUN XGL
graphics library for rendering into the Canvas.

The application does real-time 2-D animation, but it does not update the
the display fast enough.
I'm using notify_set_itimer (XView call) to periodically kick off my
update routine, and it's not happening fast enough. I want it to
update 25 times / second. It's only doing about 11. Also, it appears to
be compute bound, because if I run anything else while my appplication is
up, the update rate slows down even more.

Any ideas ?
Thanks.

Newsgroup: comp.windows.x
Document_id: 68014
From: morgaine@siap.sublink.org (Nadia Pitacco (Morgaine))
Subject: Dump of login screen


  I'm running HP-UX 8.07 with HP VUE 2.01 and I need a hardcopy of
  the login window (the one asking  for login and password) to 
  include in a manual. 
  I have tried:
   xwd -display hostname:0 -root -out login.xwd 

  from a login on a remote terminal, but it doesn't work. 
  Xwd seems to wait for the window server, but the window
  server doesn't answer. 

  Any suggestions? I must use xwd because I don't have access to
  ftp and I can't obtain another program to grab the screen.

  Thanks in advance
                                           Nadia Pitacco

-- 
	-------------------------------------------------------
	-  Nadia Pitacco                 SIAP Sistemi S.p.A.  -
	-  via G.B. Grassi, 93 - 20157 Milano ITALY           -
	-  E-Mail: morgaine@siap.sublink.org                  -

Newsgroup: comp.windows.x
Document_id: 68015
From: farrow@ucsu.Colorado.EDU (J. Scott Farrow)
Subject: Re: Looking for X windows on a PC

mark@taylor.uucp (Mark A. Davis) writes:

>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:

[...]

>*BUT*  your performance WILL suck lemons running an Xserver on a clone.
>(From experience).  You would be much better off with an Xterminal if this
>is a new install.  The performance will be at least four times better.
>In addition it would be MUCH easier to install and use.  On top of that
>they will cost about the same (price a clone with 4MB RAM, ethernet card,
>very high performance graphics card, GOOD monitor, server software, TCP/IP
>for clone software, mouse, keyboard, etc, etc, etc.... you spend a whole
>lot of $$$$).

>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>is over 80000 Xstones.....
>-- 
>  /--------------------------------------------------------------------------\
>  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
>  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
>  \--------------------------------------------------------------------------/

I think your performance will depend upon the X server. 

I'm running Linux and XFree86 on a 33Mhz 486DX with 4MB of RAM (8MB swap) and
it runs just fine.  Its a lot better than some of the crappy old Xterminals
in the labs at school anyway.

You could probably outfit a 386SX with a minimal Linux/X setup for $900
and be better off than with an Xterminal. IMHO.


Scott
--
-------------------------------------------------------------------------
J. Scott Farrow	- Student SysAdmin/Programmer, University of Colorado
Computing & Network Services, Boulder, Colorado, USA, phone:(303)492-4428
Internet: farrow@spot.colorado.edu           "Linux Users Do It For Free"

Newsgroup: comp.windows.x
Document_id: 68016
From: root@grok3.ColumbiaSC.NCR.COM (Ernie Coskrey)
Subject: Re: xterm fonts

In article <1993May11.133626.7425@taylor.uucp>, mark@taylor.uucp (Mark A. Davis) writes:
|> I have a problem which many of you might have run into.  We use LOTS of
|> ASCII terminals and use them to the max.  Meaning lots of attributes, line
|> draw, etc.   Now what I need to do is come up with a working xterm which
|> will emulate our advanced ASCII terminals as closely as possible.
|> 
|> This means needing all attributes to work, including bold and line drawing.
|> The only fonts which seem to meet these criteria are a pairs of fonts in
|> which one is bold and the other normal, while both have linedraw, fixed
|> spacing, and several sizes.
|> 
|> The only standard fonts which work are the fonts like 9x15 and 9x15B under
|> "misc".  They work great, except I need a font one size larger, 10x20.  Now
|> 10x20 works well, but there is no bold counterpart!
|> 
|> To make matters worse, I need the fonts in some form I can use for Tektronix
|> Xterminals.  It seems they like .pcf format, although I should be able to
|> convert a .bdf format.
|> 
|> Anyone have any suggestions?
|> -- 
|>   /--------------------------------------------------------------------------\
|>   | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
|>   | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
|>   \--------------------------------------------------------------------------/

This would be tedious, but if you have the time you could get the .bdf
file (I can email it to you if you don't have it or don't have easy access 
to the X source), and could make your own bold font from this.  Since each
glyph is just a bitmap, you could write a program to convert each
glyph to a bitmap-readable file, use bitmap to make each glyph "bold", and
convert the results back to .bdf format.  Then, use "bdftopcf" to create
the .pcf file.  Then, stick the .pcf in /usr/lib/X11/fonts/misc (or wherever)
and include it in fonts.dir and, voila, you'll have what you need!

-- 
Ernie Coskrey            (803) 926-2071    NCR Corporation - MCPD Columbia
Ernie.Coskrey@ColumbiaSC.NCR.COM           3325 Platt Springs Road
                                           West Columbia, SC 29170
"I'm out there busting my buns every night.  Tell your old man to drag Walton
and Lanier up and down the court for 48 minutes." - Roger Murdoch, co-pilot

Newsgroup: comp.windows.x
Document_id: 68017
From: barmar@think.com (Barry Margolin)
Subject: Re: TWM

In article <1993May12.161857.29950@samba.oit.unc.edu> naoumov@physics.unc.edu (Sergei Naoumov) writes:
>I run twm and would like to execute some program before leaving twm. In other
>words I would like to run some program before I do f.quit. Is it possible
>to make a menu section which would contain these two parts?

In your menu definition, put:

    "Quit TWM" f.function "Execute and Quit"

Then define:

Function "Execute and Quit" {
    !"some_program"
    f.quit
}

-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

Newsgroup: comp.windows.x
Document_id: 68018
From: scott.frost@cas.org (Scott Frost)
Subject: How to draw in Invert mode with Color

  How can I draw an object of a specified color over objects of varying colors
  and then erase it without having to redraw everything else?

  What's happening is this,

      If I draw it using GXcopy, it is drawn in the specified color.  If I erase
      it using GXcopy with foreground and background reversed, it erases 
      whatever it overlayed.  I then need to redraw
      all of the items it crossed.  Yuch.

      If I draw it using GXinvert it is drawn in a random color - nothing 
      resembling what I requested.  It properly restores the color of 
      underlying objects in erase mode.

  What's the solution?
     

-- 
Scott K. Frost                  UUCP: osu-cis!chemabs!scott.frost
Same Mbox: BITNET: skf26@cas    INET: scott.frost@cas.org
Personal: 2753 Shrewsbury Rd, Upper Arlington Oh 43221 

Newsgroup: comp.windows.x
Document_id: 68019
From: LIST@AppleLink.Apple.COM (LIST 9PisPITOSTY,IDV)
Subject: Syncronous Modal Dialog

Hi,
I have a lots of problems using XView (libraries Release 3.2) in order to
do the following:
+ I want to create a MODAL Dialog which block the program flow
  (a syncronous dialog, ala Macintosh) , as the Notice Panel
  does, but with Text Item, List Item, and other XView objects.
+ The MODAL Dialog also must allows the Timer to be called (why
  Notice doesn't do that?).
 
The problems are:
- Using the "xv_window_loop" functions most XView objects dont work
  (as the List Item), and the timers aren't called.
 
- With the "notify_dispatch" explicit I have problem because:
  "...never attempt to do direct dispaching from within a callback
  routine..." as say the "XView Programming Manual (Third Edition)"
  on page 486 (uhm... I know this number!!! :->).
  But I need to do dispatching just inside a callback routine!
 
Help me, please!!!
 
Thanks in advance,
--- Giovanni
 
P.S. Please, send replay directly to my address belove (I haven't
direct access to Internet).
 
Giovanni Beani
LIST S.p.A. P.za Dei Facchini, 10 - 56125 PISA
FAX  (050) 500697
_______________________________________________
My email address is: LIST@AppleLink.apple.com
BEWARE: This address is shared by many users,
so put the word "GBeani:" at the start of SUBJECT
field and follow it by the real subject. Thanks.
 


Newsgroup: comp.windows.x
Document_id: 68020
From: pngai@adobe.com (Phil Ngai)
Subject: Re: Looking for X windows on a PC

In article <1993May12.170631.18675@qdeck.com> support@qdeck.com (Technical Support) writes:
>May I humbly suggest DESQview/X? (Of course, I'm biased...)

I have a weird, oddball, one of a kind video card. It's an
Orchid Fahrenheit. I get to run it in 640x480 with DVX. At
least I don't have to worry about straining my eyes with that
Super VGA stuff.


Newsgroup: comp.windows.x
Document_id: 68046
From: gowen@forte.cs.tufts.edu (Gregory Owen)
Subject: Re: Sun 4 as X terminal


>> Xkernel is available for Sun 3/50s.  Is there a similar package available
>  ^^^^^^^
> 
> Is this public domain? If yes, where can one obtain a copy from?
	Yes, it is.  It is available at ftp.ctr.columbia.edu, probably
in pub/xkernel.  

	In response to the earlier gentlemans question, you could
theoretically recompile xkernel on a sun4.  The binaries available are
for the sun3/50, but the author says it could be used on most
architectures, and he does have a 'do-it-yourself' type distribution.

	We use Xkernel for about 7 machines here.  email me if you
have any questions I can help you with...

  Greg Owen  { gowen@forte.cs.tufts.edu, gowen@jade.tufts.edu }
Systems Programmer and TA, Tufts University Computer Science Dept.
  Personal info: GCS/GO d-- -p+ c+++ l++ m*/m- s++/- g+ w+/w-- t+ r-- x+

Newsgroup: comp.windows.x
Document_id: 68047
From: bills@feenix.metronet.com (Bill Scott)
Subject: Re: Online Help Motif Widget?

In article <1993May12.195300.14016@serval.net.wsu.edu> d3e758@bucky.pnl.gov (JE Pelkey) writes:
>
>I am looking for online help Motif widgets (public domain or otherwise) to
>run on a Sun Sparc.
>
>I'd be especially interested in help widgets that can integrate hypertext 
>help, graphics, etc.
>
>Anybody know of any widgets like this?
>
	Text & Graphics:
	Bristol Technologies has help clone of MSWindows help
	Frame (makers of FrameMaker) has FrameView

	Text only:
	Graphical Software Technology has Xtra Widgets (includes help)

	There are probably others (check out ICS widget data book)

I actually wrote one for the last company I worked for-- however it is
locked in their internal reuse library.  :-(  
It was a good one too! (IMHO and totally unbiased view of things) ;-)

-- 
..........................................................
Bill Scott                 |  bills@feeninx.metronet.com
HI/Graphics Consultant     |    Wk 817 967 3877
American Airlines          |

Newsgroup: comp.windows.x
Document_id: 68048
From: olav@nordic-offshore.no (Jan-Olav Eide)
Subject:  ICS Widget data book

Does anyone know how I can obtain information about the ICS widget data book?
I only have their email address, and they don't seem to be reading (or 
replying) to their mail.


 -------------------------------------------------------------------------- 
! Jan-Olav Eide, Software Engineer / Systems Administrator                 !
! snail mail :                      ! email :                              !
! Nordic Offshore Systems           ! olav@nordic-offshore.no              !  
! Drilling Information Services     ! voice :                              !
! Ringsveien 3, Box 185             ! (+47) 67125580 ext. 211              !
! 1321 Stabekk                      ! fax   :                              ! 
! Norway                            ! (+47) 67125401                       !
! "I don't believe in astrology.  But then I'm a Capricorn, and            !
! Capricorns don't believe in astrology"                                   !
 --------------------------------------------------------------------------


-- 
 -------------------------------------------------------------------------- 
! Jan-Olav Eide, Software Engineer / Systems Administrator                 !
! snail mail :                      ! email :                              !
! Nordic Offshore Systems           ! olav@nordic-offshore.no              !  

Newsgroup: comp.windows.x
Document_id: 68056
From: pannon@bcsfse.ca.boeing.com (Joe Pannon)
Subject: Geometry in font units in place of pixels

I am planning to convert my Motif 1.2 app from pixel to font units
which would all be set in the app's resource file instead of hard coded
in the program.

However, the word here is from people who tried this already that for
some unknown reason XmForm offsets placed in the resource file are still
interpreted in pixel units forcing people to code those offset font units into the program.

Can somebody confirm this?

Thanks,
Joe Pannon
pannon@bcsfse.ca.boeing.com

Newsgroup: comp.windows.x
Document_id: 68057
From: koblas@netcom.com (David Koblas)
Subject: Button 3 popup menus with Athena widgets

Ok, I'm being driven batty.


Trying to create popup-menus (ie. button3 press, and a menu
appears).  I would really like to use the standard Athena
classes to achieve this goal, but for my best attempts
I cannot get the menus to come up without using a MenuButton
as the parent of the widget tree.  I know this should be
possible to to with an XtPopupSpringLoaded() and a
little twiddling, but something is escaping me.

-- 
name       : David Koblas                 domain: koblas@netcom.com
affiliation: Extra Mile Consulting	   phone: +47 (83) 38663
quote: "Time has little to do with infinity and jelly donuts."

Newsgroup: comp.windows.x
Document_id: 68068
From: mufti@plsparc.UUCP (Saad Mufti)
Subject: Tool to convert a gif file to xpm pixmap format


I need the tool described in the subject line. Is there such a 
tool available via ftp? If so, I'd appreciate it if someone could
e-mail me the location and pathname.

Thanks.

-------------
Saad Mufti
Personal Library Software

e-mail : mufti@pls.com

Newsgroup: comp.windows.x
Document_id: 68069
From: tan@lynx.msc.cornell.edu.UUCP (David Tan,Box 219 Baker Lab,54810,2720402)
Subject: Ignorant Imake/xfig question

Hi folks,

I'm trying to compile xfig 2.1.7 on a SS1+ running SunOS 4.1.1 and OW 2.0,
and I'm having a little trouble with make/imake.  Specifically, make bombs
when it needs to use any Xaw file.  This isn't surprising since X11 files
on Suns with the standard OW 2.0 distribution are in various places under
/usr/openwin (Xaw files are in /usr/openwin/share/include/X11/Xaw !!)
Actually, the real problem is that I know squat about imake, and I don't
know how to tell imake where the X11 files are.  I can see from the 
Makefile that it's looking in the wrong places, but the first line of the 
Makefile reads 

   # Makefile generated by imake - do not edit!

Help!  Is there some way I can edit the Imakefile to tell it where to
look?  (I have set DEFINES = -DOPENWIN_BUG, as it said to in the README
file.)

Email and post are both fine.

Thanks in advance,

Dave

Newsgroup: comp.windows.x
Document_id: 68070
From: anigbogu@poinsignon.loria.fr (Julian Anigbogu)
Subject: X11R5 on Solbourne

Hi Netters,
	Having inherited a Solbourne (S-4000 : Sun 4 Compatible), I was wondering
if somebody has ported X11R5 to this beast. Since Solbournce Computer Inc. folded
up I don't know where I can get the kernel to move from R4. Since they never
joined the MIT Consortium, the regular distribution doesn't work. Any pointers
will be highly appreciated.

Julian
-- 
   ______             
     /     /)         
  __/_    // o __  __ 
 (_/ (_(_(/_(_(_<_/ <         			Julian.Anigbogu@loria.loria.fr


Newsgroup: comp.windows.x
Document_id: 68074
From: vadi@csi.com (Vadivelu Elumalai)
Subject: X Screen Saver


Hi!

	I have a question which is not directly related to X Screen Saver.

What X Screen Saver does is to blank the screen if it has been idle for
some time.  I don't want my screen to go blank but to get locked or call
xlock program.

	Is there a parallel call to XSetScreenSaver() which locks my screen
or call my lock program after certain amount of idle time?  Or is there a
way to find out how long the server has been idle?

Thanks
-Vadi       (vadi@csi.com)

Newsgroup: comp.windows.x
Document_id: 68075
From: jarnot@kin.lap.upenn.edu (Kevin J. Jarnot)
Subject: Re: Looking for X windows on a PC

In article <C6wLIJ.L5K@bailgate.gpsemi.com> wilkinson_m@roborough.gpsemi.com writes:
> Hi All,
>        This is the first time I've posted to the net, so I hope this is
> going to the right people.
>   I'm looking for software packages that run on an IBM PC clone that
> allows me to display Openlook and motif windows on the PC. 


I highly recommend Starnet's Micro-X.  They have versions for DOS and Windows,
with support for PC/TCP, or the Clarkson packet drivers.  I have used it
successfully with twm, mwm, and olwm, over both ethernet and SLIP.
And their tech support is top notch.  They really impressed me.  

Kevin
-- 
Kevin J. Jarnot (jarnot@kin.lap.upenn.edu)      | "The monkey-boys are evil - 
Lead Programmer/Analyst/Keyboardist             | Lord Whorfin is supreme..."
Univ. of Pennsylvania Language Analysis Center  |  
3700 Market St, Suite 202  Phila, PA 19104      |       "Vita Non Jerk"

Newsgroup: comp.windows.x
Document_id: 68076
From: schase@xodus.MITRE.org (Steven Chase)
Subject: Re: UIMX - A Motif Application Generator

In article <1993May11.152807.21386@xact.demon.co.uk> ptm@xact.demon.co.uk (Paul Thomas Mahoney) writes:

   Newsgroups: comp.windows.x
   Path: linus.mitre.org!linus!agate!howland.reston.ans.net!torn!nott!bnrgate!bnr.co.uk!uknet!warwick!qmw-dcs!qmw!demon!xact.demon.co.uk!ptm
   From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
   Organization: X-Act Solutions Limited
   X-Newsreader: Tin 1.1 PL3
   Date: Tue, 11 May 1993 15:28:07 GMT
   Lines: 8

   I am looking of information regarding UIMX. I believe this is an application
   front end generator tool for Motif (among others). Whould someone given me a
   contact? I need to get hold of the programmers' guide, or something like it.
   -- 
   Paul Mahoney, X-Act Solutions Limited
   smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
   email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
   phone: +44 424 846368





I went to the XWorld convention in NY and talked to the people
from Bluestone who make UIMX.  They sent me a HUGE 3 ring binder
of info and a demo tape.  Let me know what you need.

Steve Chase
schase@xodus.mitre.org

Newsgroup: comp.windows.x
Document_id: 68077
From: boutilie@rtsg.mot.com (Eric Boutilier)
Subject: Re: Looking for X windows on a PC

> pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney) writes:

> Price:
> 		PC-Xview for DOS      $445.00 for 1  $1780.00 for 5


NCD just announced a new generation of PC-Xview. They
changed the name a little though and I can't remember
exactly... PC-Xsomething.

It now supports Windows and their press release
implies that since it's still priced in the $500 range
and it's so feature-full why buy anything else?
(Disclaimer: This is not a direct quote from the 
literature, but I think it sums it up. Also, I have
never used the product.)

Newsgroup: comp.windows.x
Document_id: 68078
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: How to make a window's input be ALL CAPS without Caps Lock?

An application we *must* use requires upper-case input.  I'd like to be
able to simply move my cursor into the window where that application is running
(just a text window, xterm or some such) and have everything I type be entered
as ALL CAPS.  When the cursor is in any of my many other windows, I want to
automatically return to normal functionality.  I have point-to-type set.

Is there a way to do this in X (specifically OW 3.0 on SPARCs)?  Is there a
way to mess with .Xdefaults to make a category of window do this?  Any
hints would be most appreciated.  I program in C but not X, although I can
pick up somthing that's not too involved.

Thanks kindly.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
Document_id: 68081
From: rrk@bones.et.byu.edu (Robin Kinzy)
Subject: Resource listing for X11R5


Does anyone know of a source (book, file, etc.) of ALL the standard 
resource names in X11R5? A small description of what the resource
IS would also be helpful, but not vital. Any help in which direction
to go would be greatly appreciated.

Thanks. 
Robin Kinzy

 =================================================================
| Office :                            |   Home :                  |
|                                     |                           |
| Brigham Young University            |                           |
| College of Engineering & Technology |   Robin R. Kinzy          |
| 270 Clyde Building                  |   1080 E. 700 N.          |
| Provo, UT 84602                     |   Provo, UT 84606         |
|                                     |                           |
| Phone : (801) 378-7206              |   Phone : (801) 373-4657  |
| Email : rrk@bones.et.byu.edu        |                           |
 =================================================================


-- 
Bruce Owen Lee				|"We will pay the price
Brigham Young University		| But we will not count the cost"
College of Engineering & Technology	|  
Email: lee@bones.et.byu.edu		|		-- RUSH -- 

Newsgroup: comp.windows.x
Document_id: 68082
From: xmplus@ani.univie.ac.AT (Bernhard Strassl)
Subject: ANNOUNCE: Xm++/CommonInteract UI Development Sys

Xm++/CommonInteract    Another User Interface Development System
-------------------

If you would like to implement X-Toolkit applications with C++ in a style
like this...

// mini sample application /////////////////////////////////////

class Test : public XmWindow {
	void cmd(char*);
	void quit(void*);
public:
    Test() : XmWindow("Xm++ Test Window") {}

	void initialize();
};

void Test::initialize() {
    XmDropdownMenu* menu = createDropdownMenu();

    menu->addLabel("&File");
    menu->addItems( Entry("Menu Item &One", CB(Test::cmd)), 
                    Entry("Menu Item &Two", CB(Test::cmd)),
                    NULLENTRY);
    menu->addSeparator();
    menu->addItem(	Entry("E&xit", CB(Test::quit)));

    addSubpane(Edit, "myEdit");
    edit("myEdit")->setText("Hello World.");
}

void Test::cmd(char* n) {
	edit("myEdit")->setText(n);
}

void Test::quit(void*) {
	exit(0);
}

void XmApp::initialize() {
    (new Test)->initialize();
}

///////////////////////////////////////////////////////////////

...then continue reading (contents of the current release's README):

Xm++ is a user interface framework for the C++ language built upon X11
and the X-Toolkit. It is designed to be a simple and intuitive programming
interface to access the functionality of commonly used widgets.
Xm++ was initially created for the Motif widget set, now support for the
Athena widgets was added. Applications created with Xm++ run in both
environments without changes, although many nice features are only
available when using Motif.
In some situations Xm++ extends the underlying toolkit (i.e. providing
a ComboBox borrowed from MS-Windows), but never tries to replace it -
data of user interface objects is left to the widgets and only duplicated
in rare cases.

Xm++ has nothing common with Motif++ besides the general idea to
encapsulate Motif widgets in C++ objects and the '++' in it's name. Many
ideas for the Xm++ architecture came from Digitalk's Smalltalk version,
which provides an easy to use framework for Windows/PM/Mac applications
(in the very first time of development I used the Windows dialog editor and
a simple parser to create similar Smalltalk and Xm++ dialogs :-).

Top level objects in Xm++:
* 'Windows', 'SystemDialogs' and 'ToolBoxes' which use the automatic layout
  feature of various composite widgets in Motif and Xaw
* 'UserDialogs' which can be individually laid out with a user interface
  builder (a first version of such a dialog editor is included in this
  distribution)

Controls (children of top level objects):
'staticText', 'staticImage', 'pushButton', 'checkBox', 'radioButton',
'edit', 'listBox', 'comboBox', 'groupBox', 'paneArea', 'drawing', 'toolBar'

The staticImage and all the button classes can display b/w (X-bitmap
format) or color (GIF format) pictures as an alternative to a label text.

Event handling is done by a simple but powerful mechanism which redirects
Xt callbacks to member functions of Xm++ objects.


CommonInteract(II) is built upon the Xm++ drawing class and provides
components for building direct manipulative applications. Is is a very
simplified implementation of some features from the CommonInteract system
(research project of our institute in 1991), an approach to define a
software achitecture for implementing direct manipulative applications
with multiple interaction media (i.e. sound, alternative input devices).
If you are interrested, look into the June 1993 issue of the JOOP (SIGS
Publications - Journal of Object Oriented Programming) - there should be
our paper about CommonInteract (but be aware, that it is our 'state of
the art' from 1991).
CommonInteract(II) is still undocumented and is included because it was
used to implement the dialog editor. It currently supports only drawing
primitives (lines, rectangles, circles...), but we plan to extend it to
support bitmaps and some controls also.
Known problem: the Xm++ drawing class has no redrawing strategy (always
redraws the whole window, even after minimal changes like selecting an
object), this looks very ugly on slow displays and should be fixed.


About this first release:

Xm++ is still incomplete and has a lot of bugs but we are using it here
for smaller applications which are running without problems. So I think
I can call it a 'beta release' which can be used to develop applications
for any non-critical purposes.
CommonInteract may be called a 'pre alpha release'. It's development will
be continued this year because we plan to use it for another research
project here. Besides incompleteness and the redrawing problem it seems
to be stable and can be used for experimental applications.

Platforms: this release was compiled and tested on:
  HP9000/720 running HP-UX 8.07
  SUN SPARC running SunOS Release 4.1.1
  PC-AT386 running Linux v0.99pl6

Caution: although the whole stuff was initially developed using an AT&T
standard C++ compiler - this release is tested only with GNU g++ 2.3.3 or
above (the next release will be tested with both compilers).

Where to get it:
================

I have uploaded it on: export.lcs.mit.edu as: /contrib/Xm++.0.5.tar.Z

(send a mail, if you cannot find it there, e-mail addr. below)

Where to find more information:
===============================

the .../doc directory contains
   INSTALL - how to build the libraries and examples
   README.GNU - problems and limitations when using gnu g++ (read!!)
   usersGuide.txt - a tutorial how to use Xm++
   reference.txt - a first try of a Xm++ class reference manual

the README files in the .../samples gives a brief description of
each of the seven samples.


Xm++/CommonInteract is free software for any non-profit purposes,
see the file .../lib/COPYRIGHT for details.

Send any comments, bug reports and donations :-) to the Author:

    Bernhard Strassl
    Vienna User Interface Group
	Institute for Applied Computer Science and Information Systems
    University of Vienna
    Lenaugasse 2/8, A-1080 Wien, Austria

e-mail: xmplus@ani.univie.ac.at



Newsgroup: comp.windows.x
Document_id: 68083
From: fred@sobel.u-strasbg.fr (Frederic PIERRE)
Subject: [Q] xterm -S


	Hello *.*,
I'm looking for a good explanation and example of the usefulness of the -S 
option for xterm: slave mode on file descriptor xxx. Sure, but xterm -Sp00
does not seem to grab what arrives on my window. Where is my misunderstan-
ding ? TIA.
Fred.
 ===========================================================================
 Frederic PIERRE. ENSPS/LSIT 7 rue de l'universite F-67000 Strasbourg FRANCE 
 Tel: (33) 88 35 80 84 Fax: (33) 88 35 31 76 e-mail: fred@sobel.u-strasbg.fr
 ==========================HamRadio: FC1HFD=================================
 

Newsgroup: comp.windows.x
Document_id: 68084
From: hasty@netcom.com (Amancio Hasty Jr)
Subject: Re: Looking for X windows on a PC

In article <1993May13.132845.21867@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>farrow@ucsu.Colorado.EDU (J. Scott Farrow) writes:
>
>>mark@taylor.uucp (Mark A. Davis) writes:
>
>>>markw@pspmf3.gpsemi.com (Mark Wilkinson - Ext 3443) writes:
>
>>[...]
>
>>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.

I have a clone almost with no name generating 91k xstones on a 486/33Mhz
system.


>>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>>>is over 80000 Xstones.....
>>>-- 
>
>
>>I'm running Linux and XFree86 on a 33Mhz 486DX with 4MB of RAM (8MB swap) and
>>it runs just fine.  Its a lot better than some of the crappy old Xterminals
>>in the labs at school anyway.
>

>You will not come even CLOSE to the performance of an XP10 series, plus you 
>
Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 
that your XP10 series gets. Commerical verions X servers for S3 928 cards
can get 136k xstones. So the performance is there and additionally since
is running unix multiple users can use the system which I have done in
my home setup.

Maintenance is minimal if you can read README files for the X servers and
for 386bsd.

Amancio Hasty
-- 
This message brought to you by the letters X and S and the number 3
Amancio Hasty           |  
Home: (415) 495-3046    |  ftp-site depository of all my work:
e-mail hasty@netcom.com	|  sunvis.rtpnc.epa.gov:/pub/386bsd/incoming

Newsgroup: comp.windows.x
Document_id: 68085
From: sxs@extol.Convergent.Com (S. Sridhar)
Subject: Re: tvtwm icon manager

In article <13960@risky.Convergent.COM>, sxs@extol.Convergent.Com (S. Sridhar) writes:
|> Keywords: tvtwm icon manager
|> 
|> Need help on resource bindings for tvtwm.  Here's what I'd like to
|> see the icon manager do.
|> 
|> Say I iconify a window and this shows up on the icon list.  Now when I 
|> pan into another section of the virtual desktop and try to deiconify
|> the window that I iconed (sp ?)  earlier, I'd like this window to
|> deiconify in the current region.
|> 
|> Any resources that I can use to do this ?  Or more important, can I 
|> do this ?  Rather find it painful to remember where I iconified a 
|> window, go back there and deiconify.  Or simply, it is a pain to 
|> pan around to get to a deiconified window.
|> 
|> Thanks,
|> 
|> ssridhar@convergent.com
|> 
|> 
Just opened up the distribution.

Newsgroup: comp.windows.x
Document_id: 68086
From: hoswell@alumni.cs.colorado.edu (Mike Hoswell)
Subject: Any way to *STOP* and application from re-titling?


I'm quite familiar with a variety of window title *setting* methods.

My question is...  Is there any way (via Resources, etc) to stop an
application's ability to re-name it's own Name / IconName properties?

...who cares if it's not 'nice' to the application -

	I WANT CONTROL! ;-)

-Mike

-- 
Mike Hoswell - hoswell@ncar.ucar.edu |   Never Stop! / toasted - Bagels    |
Climate and Global Dynamics          | Disclaimer: I represent myself only |
NCAR, PO Box 3000, Boulder CO, 80307 +----------------+--------------------+
  ...So I've got that going for me --- Which is nice. |   Think Clearly.   |

Newsgroup: comp.windows.x
Document_id: 68087
From: x92gia@pX2.stfx.CA (Tanya Adamsson)
Subject: Help!

I am just beginning to try using the Athena toolkit and am having some problems 
getting started.  I think that some files are missing on the system, but there is
the possibility that they are just in a different directory.  When I try to link
my program it can't find XtInitailize, XtRealizeWidget, XtMainLoop, 
XtCreateManagedWidget, or commandWidgetClass.  I've included Intrinsic.h and
Command.h.  I also had a problem on compile with XtNcallback but replaced that with
a NULL in order to compile and see if there were any other problems.  I haven't 
used a toolkit before and this is simply an example I got from the manuel.  Can
someone tell me where I might look for these calls, that is, in what file not what
directory they are supposed to be under because the system manager doesn't believe
in standard directories and generally does things his own way.  (I am using UNIX)

Thank you for your assistance.

T. J. Adamsson

Newsgroup: comp.windows.x
Document_id: 68088
From: STU_JWSHELBY@VAX1.ACS.JMU.EDU (JOSEPH W SHELBY)
Subject: Xdec X11R5 server and DECstation 5000/2[0|5] sans DECnet

Has anybody built an X11R5 server that can run on a Personal Decstation
5000 line with ultrix 4.3?  The only catch is that being "personal" machines,
we did not install DECnet onto them, which the Xdec server on gatekeeper
requires.

any replies welcome...
joe shelby
stu_jwshelby@vax1.acs.jmu.edu


Newsgroup: comp.windows.x
Document_id: 68089
From: ptm@xact.demon.co.uk (Paul Thomas Mahoney)
Subject: Re: UIMX - A Motif Application Generator

Thanks for all the responses. I've made contact with the UK distributor :-)

-- 
Paul Mahoney, X-Act Solutions Limited
smail: 20 Shipley Lane, Cooden, Bexhill-on-Sea, East Sussex, TN39 3SR
email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
phone: +44 424 846368

Newsgroup: comp.windows.x
Document_id: 68108
From: earle@isolar.Tujunga.CA.US (Greg Earle)
Subject: Re: Blinking Cursor in Xterm???

In article <1993May10.022806.8186@griffin.itc.gu.edu.au> michaelw@itc.gu.edu.au writes:
>Does anyone have any ideas that may be implemented to help prevent users from
>losing sight of the cursor in an XTerm window under certain circumstances where
>there are many screen-based fields.
>
>What I would like to do is make the cursor flash on or off, but so far haven't
>found a way of doing so.  Has anybody else had similar problems or fixes to
>make a cursor stand out more than the standard type.

Users can't find the cursor?  Run "xneko" - it'll turn the cursor into a
mouse (rodent variety (-: ).  If your users still can't find it, the cat will!

-- 
	- Greg Earle
	  Phone: (818) 353-8695		FAX: (818) 353-1877
	  Internet: earle@isolar.Tujunga.CA.US
	  UUCP: isolar!earle@elroy.JPL.NASA.GOV a.k.a. ...!elroy!isolar!earle

Newsgroup: comp.windows.x
Document_id: 68109
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: Search for decent X based text editor

In article <lv6sh3INNr0e@dimebox.cs.utexas.edu>
spatel@cs.utexas.edu (Semir Patel) writes:
|> OK, I am looking for a decent X based text editor for the  the following
|> reasons:
|> 	o I hate emacs
|> 	o I hate vi
|> 	o I hate Xedit
|> 
|> Coming from a PC based environment having been brought up on
|> Borland's excellent Turbo C/Pascal environments, something with the
|> following properties would fit the bill
|> 
|> 	o Pull down menus
|> 	o Accelerator Keys
|> 	o Multiple windows
|> 	o Mouse Aware
|> 	o Regular Exp support
|> 	o Mappable Key Bindings
|> 	o Easy to use
|> 	o and most important of all....FREE
|> 
|> Does such a beast exist?

Sure sounds like aXe to me.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm

Newsgroup: comp.windows.x
Document_id: 68110
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1993May11.144231.24879@ims.com> tonyf@ims.com (Antonio Freixas) writes:

>In article <1993May10.134631.14364@taylor.uucp>, mark@taylor.uucp (Mark A. Davis) writes:
>> 
>> *OH BOY* have I wanted this too.  However, I believe that the cursor will
>> be under the server's control (could be wrong)?  On an Xterminal, for
>> example, if the server was NOT the one controlling the cursor, then trying
>> to get the xterm application to do the blinking would cause needless and
>> yucky network overhead (consistantly).
>> 


>Most people who write cursor blinking code just implement the simple case: a
>straight 500msec (or so) on/off cycle.  However, the cursor will work much
>better if cursor blinking is suppressed (i.e. the cursor is made visible) any
>time the cursor moves and for .5 to 1 sec thereafter.  If you don't do this, the
>cursor will be hard to track when in motion.

You allways could port and use emu from export.lcs.mit.edu:contrib/emu.tar.Z.
We've implemented a blinking text cursor for the very reasons people mentioned.
You can even configure the actual size of the text cursor (horizontal / ver-
tical line cursors, smaller block cursors), turn on and off blinking,
set the blink rate and so on. You even get blinking text - ok, enough
advertising.

I haven't looked at the xterm code in this respect, but from the memories
I have when we had to decide whether to start with xterm and make it do
what we wanted (mostly the blinking text), I'd say it won't be easy, since
xterm is a hairy mess (understandable if you follow it's roots back to
X10).

The actual task to get the cursor to blink isn't that difficult if you
provide the right hooks. As Antonio mentioned, you'll have to show the
cursor directly after it has moved, or people will become confused.
Since it's a good idea to take the cursor off the screen when you 
do anything on screen anyways, this isn't very complicated. You'll just
have to start the blink process with the cursor showing directly after
it's mapped.

As for the portability of emu and it's newest version. The one on export
is still the same as on the R5 contrib tape. We wanted to get out a new
release for over six months now, but unfortunately we're drowning in work.
But since the changes aren't affectiong emu's behavior much, I'd say
whoever wants to try emu shouldn't wait for a new version.

As is, emu won't work on BSD derived systems (e.g. SUNs) with anything else 
than a csh. There is a fix to this, which is very short (remove one line
of code). I'll put this on export today.

Michael
--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
Document_id: 68111
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Problems with xdm (?) under X11R5/Solaris

db@sunbim.be (Danny Backx) writes:

>Yes, that is a bug in the X11r5 port of xterm. You sometimes get this when
>you start from XDM. I have reported this to Casper but don't know whether
>it made it into his set of patches yet.

>Basically in mit/clients/xterm/main.c, there is a test at line 1598 which
>checks errno after attempting to open /dev/tty. Add the "errno == EINVAL"
>case to it and you should be fine.

It's actually a bug in the Solaris 2.1 kernel. We could add a workaround to
xterm. open should never return EINVAL, but it does :-(

I didn't have time to update the R5.SunOS5 patch lately, but non
of the existing problems seem to warrant a new set of patches.

>Since .xsession is a Bourne shell script anyway, you might as well add a line
>	. /etc/TIMEZONE
>as it is done in /etc/profile.

XDM coulda also keep the XDM environment variable. It should have inherited
it from the environment.


Casper

Newsgroup: comp.windows.x
Document_id: 68112
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: Patch for X11R5 under solaris 2.1

cfl@buc.edu.au (Colin Linahan) writes:

>Hi,
>	Sorry if this is a FAQ but : could someone please tell me where I 
>can get the patch(es) for X11R5 so that I can compile it under Solaris2.1

export.lcs.mit.edu:/contrib/R5.SunOS5.patch.tar.Z

Get Xsun.multi-screen.tar.Z while you're at it.

Casper

Newsgroup: comp.windows.x
Document_id: 68113
From: egallant@cc.gatech.edu (Edward J. Gallant III)
Subject: Re: Looking for X windows on a PC



In article <boutilie.737308085@graphite1>, boutilie@rtsg.mot.com (Eric Boutilier) writes:
|> > pm860605@longs.LANCE.ColoState.Edu (Peter J. McKinney) writes:
|> 
|> > Price:
|> > 		PC-Xview for DOS      $445.00 for 1  $1780.00 for 5
|> 
|> 
|> NCD just announced a new generation of PC-Xview. They
|> changed the name a little though and I can't remember
|> exactly... PC-Xsomething.
|> 
|> It now supports Windows and their press release
|> implies that since it's still priced in the $500 range
|> and it's so feature-full why buy anything else?
|> (Disclaimer: This is not a direct quote from the 
|> literature, but I think it sums it up. Also, I have
|> never used the product.)


It's called PC-XWare.  It is based on NCD-Ware, their X-terminal
software (which , IMHO, is excellent).  PC-XWare will include
X-Remote and be optimized for 32 bit machines. It's X11R5 based.
It will support remote management, etc.


Not an NCD employee, just a fan :)

-- 

---------------------------------					
Edward J. Gallant III
37213 Georgia Tech Station
Atlanta, Georgia 30332

e-mail: egallant@cc.gatech.edu
phone: (404) 853-9393


Newsgroup: comp.windows.x
Document_id: 68114
From: weisss@Informatik.TU-Muenchen.DE (Stefan Weiss)
Subject: X11R5(Pl.23) and Sun386i (works but not on the screen)


Hello,

I have a problem with X11R5 on a Sun386i an I hope that someone can help
me with it.
I've built X from the MIT sources after applying all patches I have got (I
think 23). Building was easy. After installing everything I started X but
nothing happened but the screen and the keyboard freezed, the machine seemed
to hang. I loged in from another machine an found the Sun386i running well.
'ps' told me that there's a X-server and a xterm running. And with some 
experimenting with the mouse and repeatedly pressing ^D I blindly hit the
xterm, endet the session and got my prompt back.
I guess it's a device problem but I did not find the correct device yet.
I've got a Sun386i with a b/w framebuffer (ACE-6 0688 94V-0, Rev 53)
SunOS 4.0.2 and ROM 4.4.
Please help me. I'm able to run clients on the Sun and send the output to
other machines but that's not what I did it for.

Thanks in advance,
Stefan


Newsgroup: comp.windows.x
Document_id: 68115
From: arshad@siesoft.co.uk (Arshad Mahmood)
Subject: Monitor freq. requirment for XFree86 (Repost)

I need some advice regarding monitor to use with Xfree86. I have an ET4000
based graphic card with 1 Meg of memory. I know this card is supported in
Xfree86 because a friend of mine has one of these in his PC. His monitor is
17" colour capable of displaying 1280x1024 resolution. I cant afford this kind
of expensive monitor. I heard from somewhere that Xfree86 requires multisync
monitor with minimum horizontal scan frequency of 60KHz. Is this true?
I would only like to use Xfree86 at resolution of 800x600 in 256 colours and
so was thinking of buying a cheap 14" SVGA monitor. Interlaced (Cheap)14" SVGA 
monitors only have have maximum horizontal scan frequency of about 38KHz.
Will this kind of monitor work with Xfree86? 

Please reply by email.

Thaks in advance.

arshad
================================================================================
Arshad Mahmood                               |  Tel   : 0344 850987
Siemens Nixdorf Information Systems Limited  |  Fax   : 0344 850096
Siemens Nixdorf House                        |  email : arshad@sni.co.uk
Oldbury, Bracknell
Berkshire RG12 4FZ
England.

Newsgroup: comp.windows.x
Document_id: 68116
From: maddox@bose.com (John Maddox)
Subject: Color Tektronics term emulation


Does anyone know of an X-based terminal emulator which can
emulate a color tektronics graphics terminal such as 
TEK 4105 or TEK 4107, etc?


Newsgroup: comp.windows.x
Document_id: 68117
From: mvalente@draco.lnec.pt ()
Subject: X on DOS or Windows



  I'm posting this request again since the last one had no title.
 
  I'm looking for X server software on DOS or Windows.
 
  I've already seen Desqview/X and XVision but would like to be aware
 of other solutions, namely public domain or shareware implementations.
 
  I'd also like to know, in the commercial case, about possible problems,
 incompatibilities, available window managers and libraries, etc.
 
  If you have any experiences in this area please let me know.
 

  C U!
 
  By(e)
 
    Mario Valente



Newsgroup: comp.windows.x
Document_id: 68118
From: J.K.Wight@newcastle.ac.UK (Jim Wight)
Subject: Re: Button 3 popup menus with Athena widgets

>Ok, I'm being driven batty.

>Trying to create popup-menus (ie. button3 press, and a menu
>appears).  I would really like to use the standard Athena
>classes to achieve this goal, but for my best attempts
>I cannot get the menus to come up without using a MenuButton
>as the parent of the widget tree.  I know this should be
>possible to to with an XtPopupSpringLoaded() and a
>little twiddling, but something is escaping me.

Read the documentation for the SimpleMenu (4.2.3 Positioning the SimpleMenu).
The reference is to the R5 documentation.

I had not done this before but in less than 10 mins I knocked up the following
Wcl application that does what you want using a Command widget. Even if you are
not familiar with Wcl the example is so simple it should be pretty obvious what
is going on. The crucial thing is the use of the XawPositionSimpleMenu and
MenuPopup actions.


Ari.wcChildren:		app

*app.wcCreate:		Command
*app.wcPopups:		menu
*app.translations:	#override \n\
			<Btn3Down>: XawPositionSimpleMenu(menu) MenuPopup(menu)

*menu.wcCreate:		SimpleMenu
*menu.wcChildren:	one, two, three

*one.wcCreate:		SmeBSB

*two.wcCreate:		SmeBSB

*three.wcCreate:	SmeBSB


Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232

Newsgroup: comp.windows.x
Document_id: 68119
From: d91-jda@themsen.nada.kth.se (Johan Danielsson)
Subject: Re: Copyrights

There will always be a zillion lawyers who, if they get paid well
enough, will sue your brains out. Gosh! Can't anyone send them off to
another planet?! 
Well maybe, it would be better to just send Apple, Microsoft and a few
others (that way we would get rid of some terrible products as well :)

--

| d91-jda@nada.kth.se   | Drag-n-Drop-dead
| Johan Danielsson      | 

Newsgroup: comp.windows.x
Document_id: 68120
From: pmartz@dsd.es.com (Paul Martz)
Subject: Re: Seeking a simple wm

In article <1993May07.160443.6208@nenuphar.saclay.cea.fr>, basile@soleil.serma.cea.fr (Basile STARYNKEVITCH) writes:
> I'm seeking a *simple* window manager (ICCCM compliant) with a minimal doc.
> I don't want ol*wm twm gwm *twm.

Whatever happened to uwm? Is it still available in some form? It's
been years since I used it or heard anyone talk about it.
-- 

   -paul	pmartz@dsd.es.com
		Evans & Sutherland

Newsgroup: comp.windows.x
Document_id: 68131
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Looking for X windows on a PC

hasty@netcom.com (Amancio Hasty Jr) writes:

>>>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.

>I have a clone almost with no name generating 91k xstones on a 486/33Mhz
>system.

Show me the realistic price tag...

>>>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
>>>>is over 80000 Xstones.....

>Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 

Nice, but way over $900....
My point is price/performance  not just performance...

-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68134
From: kem@prl.ufl.edu (Kelly Murray)
Subject: Re: Looking for X windows on a PC

In article <1993May14.021655.27374@labtam.labtam.oz.au>, graeme@labtam.labtam.oz.au (Graeme Gill) writes:
|> In article <hastyC6zGqC.Fux@netcom.com>, hasty@netcom.com (Amancio Hasty Jr) writes:
|> 
|> > >>>*BUT*  your performance WILL suck lemons running an Xserver on a clone.
|> > 
|> > I have a clone almost with no name generating 91k xstones on a 486/33Mhz
|> > system.
|> > 
|> > 
|> > >>>I can get 15" Tektronix XP11 terminals for under $900, and the performance
|> > >>>is over 80000 Xstones.....
|> > 
|> > >You will not come even CLOSE to the performance of an XP10 series, plus you 
|> > >
|> > Excuse me, but with a 486/50 256k cache, S3 928 ISA card, 8Mb XS3 (X11R5) running 386bsd  you can get 100k+ xstones at 1024x768 65Mhz which I doubt 
|> 
|> This is hardly apples to apples. Try running the benchmark over a
|> network to the clone and, and if you're still getting 100K Xstones
|> then you've got a good machine. X terminals aren't just a server you know.....
|> 
|> 	Graeme Gill.

I would further add that a 486/50,S3/928,8mb,15",200mbDISK is going to cost
/WAY/ more than $900, probably $3,000.  Color makes it not apples/apples too.
Xterminals provide better price/performance than PCs.  You can make a PC
much cheaper, and perform much worse, and you can make PC's perform great, and
cost more.  You pay extra for the additional functinality and expandability
of a PC.  For home user, that extra functionality is worth the added cost.

 -Kelly Murray

Newsgroup: comp.windows.x
Document_id: 68135
From: gtkurdy@access.digex.net (GodTom)
Subject: DROP

                                                                                                                                

Newsgroup: comp.windows.x
Document_id: 68136
From: mark@cda.mrs.umn.edu (Mark Van Overbeke)
Subject: Multi-line greeting

Is it possible to have xdm put up a multi-line greeting?  If so, how do
I specify such a thing in the Xresources file?  I don't have much
(anything) for X books, so I can't look it up.  Thanks.


-- 
Mark Van Overbeke                   Systems Software Programmer
Computing Services                  BITNET:    Mark@UMNMOR.BITNET   (VMS)
University of Minnesota, Morris     INTERNET:  Mark@caa.mrs.umn.edu (VMS) 
Morris, MN   56267           1-612-589-6378    mark@cda.mrs.umn.edu (Ultrix)
--
Success is the progressive realization of your worthwhile goal or dream!

Newsgroup: comp.windows.x
Document_id: 68137
From: anthony@kurango.cit.gu.edu.au (Anthony Thyssen)
Subject: COLORS and X windows (AIcons)

Extract from the color README file for Anthony's Icon Library.
For Network discussion...

Color Coordination...

    I tried to start a discussion in `comp.windows.x' at the start of the
  year about some sort of `standard color table' that icons should follow
  (say 16 to 32 colors including 5 colors for a small grey scale). but no
  one responded at all.

    The problem is that if the colors for icons are just used willy-nilly
  you will soon find that the workstations color table, devotes itself
  solely the window manager, icons and other `adminstrative tasks' instead
  of applications that actually require the colors for proper working.
  ``Color needful applications'' such as :  Picture and graphic displayers,
  Animation, Real Time video, Raytracers, etc... .

    The following is a suggested color table for icons, and general use.
  Icons, Window Managers, and general applications, should follow this
  table or something like it, UNLESS the application is ``color needful''.

     * for each primary color (red,green,blue) three colors
             EG: values   0, 128 and 255.
       This results in  3 ^ 3  colors (27) representing most of the
       standard colors for use in icons.

     * two extra shades of grey
             EG: vales    (black) 0, 64, 128, 196 and 255 (white,red,...)

     * 3 other colors -- probably of some primary color to provide shading
       a and 3-D look to buttons and titlebars in the window manager.

    This table represents 32 colors and represents a large range of
  posibilities for the above ``administrative services'' of the
  workstation.


  Anthony Thyssen - (SysProg @ Griffith University)     anthony@cit.gu.edu.au
------------------------------------------------------------------------------
  A Gods idea of amusement is a Snakes & Ladders game, with greased rungs.
                                           - Terry Pratchett   "Wyrd Sisters"
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68138
From: anthony@kurango.cit.gu.edu.au (Anthony Thyssen)
Subject: Re: Automatically Configuring DISPLAY variable

ainman@css.itd.umich.edu (Andrew Douglas Inman) writes:
| Does anyone out there know of a way to have a UNIX machine automatically
| set it's display variable to that of the Xterm you're using when it's
| not the machine that's serving you X? 
|
| The best I've been able to come up with has been a rather convoluted 
| script that extracts your IP # from the whos command, and it 
| frequently fails, not to mention that it requires having your user
| name added to it.
|
|    -- Andrew Inman, Consultant, ITD Consulting and Support Services
|       ainman@umich.edu          University of Michigan
|
|
From my own notes on this subject....

Methods to automatically passwd Authorization from one machine to another.
  This also includes the problem of notifing the remote host of the current
DISPLAY that is being used.

1/ Use rsh/rexec/on...  (the method in the xauth manual)
      Set up the your .rhosts file in the home directory on the remote
  machine so that a password in not required to remotly execute commands.

         xauth extract - $DISPLAY | rsh other xauth merge -

  This method is also used by xrsh to pass authorization. My vampire
  program also uses a variation, however I wrap it as part of the remote
  command sequence  (EG:  xauth add $auth)

     Included in this method is the use of `xrlogin' and `xrsh' to do
  this job for you. These programs usally (the newer ones that is) allow
  you to pass a secified list of ENVIRONMENT variables which includes
  the `DISPLAY' and/or a copy of the authorization code required.

     The `xon' program available (if enabled) on sun machines will also
  pass environment variables, as well as the current directory.  You will
  however be required to store the Authority in such a variable for
  passing. Unless you are also have shared home directories.

    WARNING: Environment variables and command line arguments are visible
  in `ps' listing with the appropiate flags. As such passing authorization
  information in environment variables or as arguments is not recomended.
  The recommended method as given in the manual (shown above) is safe from
  the view of other users.

2/ Wrap it as part of the TERM environment variable.
      This method uses the fact that most remote command executors do pass
  the TERM environment variable to the remote host. It is then a matter of
  an appropiate script in your remote .login file to extract the information
  from the TERM environment variable and set up things appropiatly.
    A version of the xrlogin script is available on the network which does
  this. Basically you change the TERM environment variable before the
  actual call to rlogin is performed, to include your DISPLAY and your
  authorization.
    On the remote machine you then extract this information and return the
  TERM environment variable to normal BEFORE you use it for reseting or
  stty'ing your terminal.

  ---8<---
  script for launching rlogin:
    #!/bin/sh
    # ~/bin/rl   --- Rlogin with display:
    if [ -n "$DISPLAY" ]; then
      case "$DISPLAY" in
        :*) DISPLAY=`hostname`$DISPLAY ;;
      esac
      TERM="$TERM&$DISPLAY&`xauth nextract - $DISPLAY`"
      export TERM
    fi
    rlogin $*
  ---8<---
  add to your .cshrc or .login
    if ( $?TERM ) then
      if ( `echo $TERM | tr -cd '&'` != '' ) then
        echo "$TERM" | cut '-d&' -f3 | xauth nmerge -
        setenv DISPLAY `echo "$TERM" | cut '-d&' -f2`
        setenv TERM    `echo "$TERM" | cut '-d&' -f1`
      endif
    endif
  ---8<---
  xterm command to use
    xterm -T hostname -e ~/bin/rl hostname
  ---8<---

3/ NFS.
     Write it to a file on a shared NFS partition you have access to.
   Note that if the home directories are NFS mounted, then authorization
   is automatically passed, Hoever you will still have to pass your
   DISPLAY environment variable via a file or other means. IE:

      login host:       echo $DISPLAY > ~/.X11host
      remote host:      setenv DISPLAY `cat ~/.X11host`

4/ Finger for the info in a .plan file
      This involves encrypting the information into your `.plan' or
  `.project' and having the remote machine finger for the information.
  This has the disadvantage of having the information to anyone fingering
  the user.  Thus requiring a encryption method that is uniq to each
  individual.  IE: the method of decyrption must not be shared or known
  by others, nor should it be easy to determine.
    A improvment is to use the `who fingered me' technique to only give
  the information only to your own remote accounts and not just to anyone
  who is asking.
    This last method was developed last year by a second year here, untill
  I explained to him the need for the encryption, at which point he gave
  up this method. It is however a valid method. It is easer than (2) but
  less secure.


  Anthony Thyssen - (SysProg @ Griffith University)     anthony@cit.gu.edu.au
------------------------------------------------------------------------------
    "Magic is Real -- unless declared an integer"  ---  John P.Melvin
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68139
From: warren@atmos.washington.edu (David Warren)
Subject: Re: viewing postscript files under X windows

On the subject of ghostscript, it will also solve the earlier request
of converting postscript to HPGL to filter into Interleaf.
--
David Warren 		INTERNET: warren@atmos.washington.edu
(206) 543-0945		UUCP:	  uw-beaver!atmos.washington.edu!warren
Dept of Atmospheric Sciences, AK-40
University of Washington
DECUS E-PUBS Library Committee representative
SeaLUG DECUS Vice Chair

Newsgroup: comp.windows.x
Document_id: 68159
From: HART@uv2.EGlin.AF.MIL
Subject: VXT2000 Windowing Terminal Help

                               E G L I N     A F B

From:  DENNIS L. HART                       Date:     14-May-1993 02:41pm CST
       HART                                 Tel No:   904 882 3154
Dept:  646CCSG/SCWA*SAS

TO:    Internet Addressee                   ( _SMTP[xpert@expo.lcs.mit.edu] )


Subject: VXT2000 Windowing Terminal Help

Greetings!


We have several VXT 2000 Windowing terminals and associated software on our
network.  We are able to open a LAT terminal window to any of our workstation
nodes but we are unable to get a LAT X session to work.

We have customized the terminal security to allow all LAT connections.

Trying to invoke a LAT X session from the VXT 2000 results in the following
message being displayed in the terminal manager window message area:

Host Does Not Support X Sessions

(The host is a VAX4000 Model 60 and does support X sessions)


Opening a LAT terminal window and logging into the server node, setting the
display variable as follows:

$ set display/create/node=LAT_###########/transport=lat

and then trying to create a decterm on the VXT as follows:

$ create/term=decterm/detach

Fails and gives the following error message:

dectermport failed to find language, XOpenDisplay("")  returned NULL
%DECW-F-CANT-OPEN-DISPL Can't open display

The VXT 2000 is using its system defaults (ie. default font(s), language, ...)
except for the security options to allow all connections and options enabling 
LAT protocol.

we have VT1200 windowing terminals and the above things were enough to allow
LAT X sessions.

VMS Version is 5.5-1
Running DECwindows/Motif of VAX4000 Model 60s


Please help.


Dennis Hart
Atlantic Research Corporation
Directorate of Computer Sciences
Eglin AFB, FL
 



Newsgroup: comp.windows.x
Document_id: 68160
From: jwhit@wbst845e.xerox.com (Jeff Whitmire)
Subject: Need help compiling xtmenu

I am having trouble compiling xtmenu.  I am running on a Sparc IPC
using SunOS 4.1.1 and OpenWindows 3.  I am getting undefined references
to arguments to XtSetArg such as XttextEdit, XttextRead, etc.  Am I
using the wrong version of a library? missing an include file?  Any
help would be greatly appreciated.

Jeff.

----------------------------------------------------------------------
|        Jeff Whitmire                 | Man is the best computer we |
| email     : jwhit@wbst845e.xerox.com | can put aboard a spacecraft |
| phone     : (716) 422-5647           | ... and the only one that   |
| snailmail : 780 Salt Road  845-20C   | can be mass produced with   |
|             Webster, NY  14580       | unskilled labor.            |
|                                      |       -- Wernher von Braun  |
----------------------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 68170
From: kaleb@expo.lcs.mit.edu (Kaleb Keithley)
Subject: Re: Seeking a simple wm

pmartz@dsd.es.com (Paul Martz) writes:

>In article basile@soleil.serma.cea.fr (Basile STARYNKEVITCH) writes:
>> I'm seeking a *simple* window manager (ICCCM compliant) with a minimal doc.
>> I don't want ol*wm twm gwm *twm.

>Whatever happened to uwm? Is it still available in some form? It's
>been years since I used it or heard anyone talk about it.

I'm 99&44/100% positive that uwm isn't ICCCM compliant.  If you want it,
the R4 sources are still available on export.lcs.mit.edu (18.24.0.12)
in /pub/R4.

--

Kaleb


Newsgroup: comp.windows.x
Document_id: 68171
From: doug@foxtrot.ccmrc.ucsb.edu (Douglas Scott)
Subject: Help with porting screensaver function

This is a question aimed at those who have done some server code hacking:



I am attempting to add a working SaveScreen function to a new
server.  I have been able to get the screen to blank out properly, and through
debugging I can see that my savescreen function is being called with on=0,
which (for some arcane reason) means to blank the screen.

My problem is that this function is never being called again with on=1, even
after I have moved the mouse and/or typed some keys.  My question is:  what am
I likely to be missing that would cause this problem?  I copied the basic
design of my function from the existing versions:

static Bool next_savescreen(scr,on)
ScreenPtr scr;
Bool on;
{

  /* this was copied from the omron server code -- is it the right way? */
  if (on != SCREEN_SAVER_ON) {
		nextSetLastEventTime();
  }

  if (on == SCREEN_SAVER_ON) { /* Save user's current setting */
		next_save_screen_brightness = NXScreenBrightness(my_eventhandle);
		NXSetScreenBrightness( my_eventhandle, 0.0); /* Blank the screen */
  }
  else {											 /* Unblank the screen */
		NXSetScreenBrightness( my_eventhandle, next_save_screen_brightness);
  }

  return TRUE;
}

I can see in the server/os code where the screensaver is called to turn on the
saver, but I cannot find where it "wakes up" the server and unblanks the
screen.

Any tips/help would be appreciated.

Thanks.


-- 
Douglas Scott                              (805)893-8352
Center for Computer Music Research and Composition
University of California, Santa Barbara
Internet: (NeXTMail ok)   <doug@foxtrot.ccmrc.ucsb.edu>

Newsgroup: comp.windows.x
Document_id: 68172
From: kaleb@expo.lcs.mit.edu (Kaleb Keithley)
Subject: Re: Blinking Cursor in Xterm???

bernward@moepi.do.open.de (Bernward Averwald) writes:

>Yes. Don't confuse the mouse cursor with the text cursor in the xterms.
>The latter is only controlled by the application.
>Back in the days of X11.1 I did analyse the xterm code. The cursor 
>was implemented by drawing a rectangle around the character. I doesn't
>seem to be changed 'til now.
>But if you have the sources you could add a blinking cursor via
>XtAppAddTimeOut or similar :-|.

Xt(App)AddTimeout doesn't work in xterm, because, despite appearances 
to the contrary, xterm is not really an Xt based application.  "Other
sources" like timeouts and inputs are never checked in xterm's main
loop. So don't be surprised when you try this and it doesn't work.

--

Kaleb


Newsgroup: comp.windows.x
Document_id: 68173
From: mcgary@intellection.com (Mike McGary)
Subject: Re: ICS Widget data book

In article <1993May13.075328.28052@nordic-offshore.no> olav@nordic-offshore.no (Jan-Olav Eide) writes:

>   Does anyone know how I can obtain information about the ICS widget data book?
>   I only have their email address, and they don't seem to be reading (or 
>   replying) to their mail.
>
ICS - Integrated Computer Solutions Incorporated
      201 Broadway
      Cambridge, MA  02139
      Vox: (617) 621-0060
      Fax: (617) 621-9555
      Email: info@ics.com

      Circle 9 on Reader Service Card


-- 
               /  __/   ____/                           Mike McGary
       /   /  /  /     /                                mcgary@intellection.com
      / __/  /  /     /         __  /    __ \     /   / Intellection, Inc.
     /      / ___/   /__  /    /   /    /   /    /   /  Dallas, Texas
    /      /        /    /    __  /    __ <     /   /   vox: (214) 620-2100
 __/    __/      _______/  __/ __/  __/ __/  ____  /    fax: (214) 484-8110
                                                  /
                         ________________________/

Newsgroup: comp.windows.x
Document_id: 68174
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: xterm fonts

bernward@moepi.do.open.de (Bernward Averwald) writes:

>In article <1993May11.133626.7425@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>I have a problem which many of you might have run into.  We use LOTS of
>>ASCII terminals and use them to the max.  Meaning lots of attributes, line
>>
>>This means needing all attributes to work, including bold and line drawing.
>>The only fonts which seem to meet these criteria are a pairs of fonts in
>>which one is bold and the other normal, while both have linedraw, fixed
>>spacing, and several sizes.
>>
>>The only standard fonts which work are the fonts like 9x15 and 9x15B under
>>"misc".  They work great, except I need a font one size larger, 10x20.  Now
>>10x20 works well, but there is no bold counterpart!
>>

>You don't need a 'bold' counterpart. From `man xterm`:

>       -fb font
>               This  option specifies a font to be used when dis-
>               playing bold text.  This font  must  be  the  same
>               height  and width as the normal font.  If only one
>               of the normal or bold fonts is specified, it  will
>               be  used as the normal font and the bold font will
>               be  produced  by  overstriking  this  font.    The
>               default  is to do overstriking of the normal font.

I have tried that with one font, if your xterm terminfos/termcaps are set up
to NOT remap bold (which they are be default) to reverse, then nothing happens
when bold is displayed.  It would appear (at least in X11R4) than you cannot
display bold in an xterm without specifying two fonts; a normal and a bold.
I wish someone would prove that incorrect.
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68175
From: sandiway@research.nj.nec.com (Sandiway Fong)
Subject: Sun 4.1.3, OpenWindows 3.0 problem: static linking and X libraries


I build two executables for the same application. 
Let's call them Papp (uses shared libs) and SPapp (statically linked).

The problem is that I get problems when trying to build the *static one*, 
but not the dynamic one. See the trace below. 

BTW, the static one runs fine despite the ominous error message. 
Can someone clue me in as to why the static one bombs at link time?

Thanks very much,

Sandiway


Dr. Sandiway Fong
NEC Research Institute Inc.
4 Independence Way
Princeton NJ 08540

(609) 951-2733
(609) 951-2482 (FAX)

Here is the linking stage...

/usr2/quintus/bin3.1.1/sun4-4.1/ld -e start -Bstatic Papp.o \
/usr2/quintus/generic/qplib3.1.1/library/sun4-4/libpl.a  \
/usr2/quintus/generic/qplib3.1.1/library/sun4-4/libplm.a  \
/usr2/quintus/bin3.1.1/sun4-4.1/libqp.a \
-lsspkg -lXpm -lm -L/usr/local/guide/lib -lguidexv  -lxvps -lxview \
-lolgx -lX11 -lXext -lcps  -lc -lpixrect -o SPapp
Undefined:
_XESetCreateGC
_XESetFreeFont
_XESetCloseDisplay
_XESetError
_XInitExtension
_XESetFreeGC
_XESetCopyGC
_XESetCreateFont
_XESetFlushGC
_XESetEventToWire
_XESetErrorString
_XESetWireToEvent
*** Error code 1
make: Fatal error: Command failed for target `SPapp'

ldd SPapp
SPapp: statically linked

The shared lib version is linked in exactly the same way save for the omission
of -Bstatic.

ldd Papp
	-lsspkg.1 => /usr/local/lib/libsspkg.so.1.0
	-lXpm.2 => /usr/local/lib/libXpm.so.2.7
	-lxvps.0 => /usr/openwin/lib/libxvps.so.0.2
	-lxview.3 => /usr/openwin/lib/libxview.so.3.1
	-lolgx.3 => /usr/openwin/lib/libolgx.so.3.1
	-lX11.4 => /usr/openwin/lib/libX11.so.4.3
	-lcps.1 => /usr/openwin/lib/libcps.so.1.0
	-lc.1 => /usr/lib/libc.so.1.8
	-lpixrect.2 => /usr/lib/libpixrect.so.2.14
	-ldl.1 => /usr/lib/libdl.so.1.0



Newsgroup: comp.windows.x
Document_id: 68176
From: tma@encore.com (Thanh Ma)
Subject: Re: Online Help Motif Widget?

d3e758@bucky.pnl.gov (JE Pelkey) writes:




>I am looking for online help Motif widgets (public domain or otherwise) to
>run on a Sun Sparc.

>I'd be especially interested in help widgets that can integrate hypertext 
>help, graphics, etc.

>I know that some of the GUI builders like Galaxy come with online
>help widgets, but I need to check into stand-alone help widgets as
>well, seeing as how we have not picked a GUI tool yet.

>Anybody know of any widgets like this?

X Resource, Issue 6

Thanh Ma
tma@encore.com

Newsgroup: comp.windows.x
Document_id: 68177
From: cws@Faultline.Com (Carl Schmidtmann)
Subject: Re: Any way to *STOP* and application from re-titling?

In article <1993May13.212121.29048@colorado.edu>, hoswell@alumni.cs.colorado.edu (Mike Hoswell) writes:
|> 
|> I'm quite familiar with a variety of window title *setting* methods.
|> 
|> My question is...  Is there any way (via Resources, etc) to stop an
|> application's ability to re-name it's own Name / IconName properties?
|> 

Sorry, that's a feature.  The ICCCM specifies how the app should set its title, so the wm is obliged to do it.  If this bothers you, complain to the app writer.

|> ...who cares if it's not 'nice' to the application -
|> 
|> 	I WANT CONTROL! ;-)
|> 

Write your own wm that doesn't support the ICCCM.  Or write an program that you give a window ID and a title.  The your program can set the windows title for the app and then if the app changes it, your program switches it back again.

|> -Mike
|> 
|> -- 
|> Mike Hoswell - hoswell@ncar.ucar.edu |   Never Stop! / toasted - Bagels    |
|> Climate and Global Dynamics          | Disclaimer: I represent myself only |
|> NCAR, PO Box 3000, Boulder CO, 80307 +----------------+--------------------+
|>   ...So I've got that going for me --- Which is nice. |   Think Clearly.   |

-- 
_______________________________________________________________________________
Carl Schmidtmann                                  Faultline Software Group, Inc
(408) 736-9655                                    867 Karo Court  
cws@Faultline.Com  ...!{apple|decwrl}!gigo!cws    Sunnyvale, CA 94086-8146

Newsgroup: comp.windows.x
Document_id: 68182
Subject: GUI builders for VMS
From: mark@trident.datasys.swri.edu (Mark D. Collier)

I am looking for GUI Builders/UIMS's which run in a VMS/OpenVMS
environment. I am interested in both Motif tools and GUI-independent
tools such as XVT. My client also requires that the tool has been
in production for at least 6 months in the VMS environment. Note
that I have the list of tools from the FAQ, but not the info on
VMS availability.

Thanks

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark D. Collier                      Southwest Research Institute
Senior Research Analyst              Automation and Data Systems Division
Voice: (512) 522-3437                Data Systems Department
FAX:   (512) 522-5499                Software Engineering Section
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: comp.windows.x
Document_id: 68183
From: chas@stax.uchicago.edu (Charles Blair)
Subject: xnlock / xdm

I am using xnlock as the screensaver for a PC-based X server. However,
after an interval of no activity, my X session ends. This does not
happen when I use xscreensaver. 

My screensave command is fired up from my .xsession like this:

xautolock -time 1 -locker xnlock -corners ++++ -cornerdelay 1 &

My hypothesis is that xdm (I use xdmcp to start my X session) detects
a period of inactivity from the server, then terminates the session.
However, for some reason, this does not happen with xscreensaver. Is
there a workaround?

I'd prefer responses via e-mail.

Thanks.





--
"Economics is not for those who are atracted to real-world problems
which have simple and clear solutions. For these individuals, I
recommend astrology."  -- Hugo Sonnenschein

Newsgroup: comp.windows.x
Document_id: 68184
From: ross@loral.cts.com (Robert Ross)
Subject: Detecting/Saving Geometry Changes

Hi,

I'm trying to get my program to monitor resize/position events,
so that when the program exits, I can save the last known geometry in 
some sort of 'preferences' file.

I am adding an event handler for StructureNotify to the TopLevelShell:

 XtAddEventHandler(topLevel,StructureNotifyMask,False,configureCB,myData);

This works fine, and my callback is called whenever the window is resized
or repositioned using the window manager (mwm).

However, when I'm just resizing the window, using any resize handle on the
window manager resize decoration, the x and y are set to zero in the
XEvent passed to the event handler callback.  I'm accessing the xconfigure
structure, like the X11 manual says.  (xev->xconfigure.x, xev->xconfigure.y).
The width and height memebers are correct.

When I reposition the window, using the window manager, the xevent's xconfigure
structure contains all the correct x, y, width, height member settings.

Q1: Anybody know why, when just resizing, the x and y are being set to zero?

Q2: Any other way to handle detecting and saving geometry changes?

I've tried using XtGetValues() on the topLevel widget when exiting my
application (before destroying any widgets) and all I get is garbage values
for the x, y, width, height resources.

Thanks
--

Bob Ross (ross@li.loral.com)         | "Mr. Plow, that's the name. That name
Loral Instrumentation, San Diego, CA |  again is Mr. Plow" - Homer Simpson

Newsgroup: comp.windows.x
Document_id: 68185
From: boyd@gauss (Mickey Boyd)
Subject: Xkernel on Sun 3/80

Has anyone built Xkernel for 3/80's?  It works great on our 3/50s, and I 
would just as soon kiss the entire Sun 3 architeture goodbye (and reclaim 
a bunch of disk space).  Email me direct, I'll post a summary.

--
******************************************************************************
*                                Mickey Boyd                                 *
*                           Systems Administrator                            *
*              Florida State University Mathematics Department               *
* email:  boyd@math.fsu.edu  Office:  (904) 644-7167  Pager:  (904) 657-6425 *
******************************************************************************

Newsgroup: comp.windows.x
Document_id: 68186
From: boyd@gauss (Mickey Boyd)
Subject: Re: Dump x-window screen

H. J. Hong (hjhong@ev004.ev.nctu.edu.tw) wrote:

> Hi! I'm looking for a tool to dump a X-window screen image?
> Any one can help me ?                                

See xwd, xpr.  Even better, grab xdump from ftp.cs.uwm.edu.  It makes use 
of these programs as well, but has a much nicer interface (and can do more).
You can dump to PostScript, bitmaps, etc.

--
******************************************************************************
*                                Mickey Boyd                                 *
*                           Systems Administrator                            *
*              Florida State University Mathematics Department               *
* email:  boyd@math.fsu.edu  Office:  (904) 644-7167  Pager:  (904) 657-6425 *
******************************************************************************

Newsgroup: comp.windows.x
Document_id: 68187
From: dacheng@jaffna.berkeley.edu (Da Cheng)
Subject: X terminal FAQ


> Subject:  68)  What is the current state of the world in X terminals?
>
> Jim Morton (jim@applix.com) posts quarterly to comp.windows.x a list of
> manufacturers and terminals; it includes pricing information.

Can somebody send me a copy of this faq?

Thanks alot!

Da

Newsgroup: comp.windows.x
Document_id: 68188
From: dhliu@solar.csie.ntu.edu.tw (Der-Hua Liu)
Subject: keycode wrong for XKeyReleasedEvent ??

I am writing a X-based dosemu which requires XKeyReleasedEvent. 
I found the keycode of XKeyReleasedEvent is wrong.   If I run the program on
a Linux host(XFree1.2) with  DISPLAY set to the local Linux and to
the Sun host (X11R5), the two keycodes from the two Xservers are different. 
Of course, the keycode of XKeyPressedEvent is O.K.

Can anybody verify this ?     Did I do anything wrong ? 
	
Thanks.

--
Edward Der-Hua Liu
CS department
National Taiwan University, Taiwan
dhliu@solar.csie.ntu.edu.tw

Newsgroup: comp.windows.x
Document_id: 68189
From: brown@ftms.UUCP (Vidiot)
Subject: Re: viewing postscript files under X windows

In article <gordons.737161050@mon> gordons@mon.sps.mot.com (Gordon Sasamori) writes:
<In <C6tGoJ.20J@inmet.camb.inmet.com> gjs@corsica.camb.inmet.com (George Snyder) writes:
<
<>In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
<
<>> I wonder if anybody know of a X-window-based postscript file
<>> viewer that runs under SunOS (prefered), HPUX, or IBM AIX.
<
<>If you are running Sun OpenWindows, you can use "pageview".  This is an
<>X Window PostScript previewer like "ghostview", but displays much nicer
<
<Yes, but it's broken on OW 2.0.  It does not handle multiple pages
<well.  If you don't have the proper PostScript commands it will
<draw the entire document on the same page instead of pausing after
<each page.  I haven't tried OW 3.0 yet, though.

OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
requires DSC compliant PostScript files, in order to stop at page breaks.
I don't consider that broken.  I say that any program that puts out a
PostScript file that isn't DSC compliant is broken.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 68190
From: casper@fwi.uva.nl (Casper H.S. Dik)
Subject: Re: imake.rules problem under Solaris 2

dple@lungta.infores.com (david levine) writes:

>Hey folks,
>I'm attempting to use imake to manage makefiles for a development effort and was curious
>to find out if anybody else is experiencing problems with any target that
>has subdirs generated by imake on Solaris 2 platforms. 

>For example, 'make makefiles' chokes in the very first subdirectory. 

>	i.e. target: subdirMakefiles not found 

You don't give the precise error message, but I assume that
the making of the target fails, because make can't find the rules.

We've seen this happen with SunOS 5.x make as well and aat this
point I'm not sure why it happens. It seems to happen
with large Makefiles. The entries near the end get lost.
Small changes in the makefile will remedy this problem,
as it does in your example.

In the MIT R5 distribution + R5.SunOS5.patch this can happen with
the target ``Makefiles'' in one of the doc directories.

>At first I thought this was a bug with make on my Sun, but I built and used gnumake with the
>same results. Attached you'll find the first Makefiles target rule from the generated makefile

This is really weird. Are your *really* sure that you were using GNU make?

Casper

Newsgroup: comp.windows.x
Document_id: 68191
From: naccarat@eclipse.sheridanc.on.ca (Rob Naccarato)
Subject: Somebody please help me!

  Hello, I hope this is the right group to post this in.
  I've got a little problem.  I finally managed to get a REAL operating
system (Linux, as opposed to MS-Dos) and I like it alot.  But, when I
try to run 'startx', I get a strange response: My monitor goes into
graphics mode and I get this big white rectangle on the screen - that's
all! Nothing else!  Now, I've collected almost every FAQ in the world to
help me but either it's too confusing or I must be missing something.
  My setup:
	386DX (about 20Mhz)
	Trident 8900C SVGA (w/1 Meg)
	4 MB RAM
	Plenty of HD space
Any help is appreciated.
Thanx.


Newsgroup: comp.windows.x
Document_id: 68192
From: ppan@celsiustech.se (Per Andersson)
Subject: X, shared libraries, and replacing modules in them?


Hi.

I'm wonderring if it is possible to replace a single module, as XKeybind.o
in a shared library, as libX11.so in Suns OpenWindows. I tried to RTFM, but
I didn't get any wiser that way. Also, can I do the same on an RS6000 machine
running 3.2.2 (if it is possible at all). I know how to do it with real 
libraries (ar). I am trying to replace XLookupString in the delivered
libraries, with another that does a few special things.

/Per
-- 
-----------------------------------------------------------------------------
Per Andersson - ppan@celsiustech.se (perand@stacken.kth.se on free time)
Managing networks ( and occasionally SUNs) at, but not speaking for:
CelsiusTech AB, J{rf{lla, Sweden

Newsgroup: comp.windows.x
Document_id: 68193
From: allbery@wariat.org (allbery)
Subject: Re: Blinking Cursor in Xterm???

As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
+---------------
> Back in the days of X11.1 I did analyse the xterm code. The cursor 
> was implemented by drawing a rectangle around the character. I doesn't
> seem to be changed 'til now.
> But if you have the sources you could add a blinking cursor via
> XtAppAddTimeOut or similar :-|.

The server overhead for this is mildly ridiculous, though (see also DESQview/X,
which does this in its DOS windows).  Do you really want xterm to wake up every
half second and whack the server into doing a bitblt?

++Brandon

Newsgroup: comp.windows.x
Document_id: 68194
From: jones@chpc.utexas.edu (William L. Jones)
Subject: Re: Outline scalable fonts versus bitmap replicated scalable fonts


After looking at the scaling code I realized the follwing:

  1) My problem with the resolution 100x100 foints is due to an installation 
     problem.

  2) That the X server or font server will rescale the best font it can find
     to meet your requirements.  

     This means that if you server return a response like the following

     -adobe-helvetica-medium-o-normal--0-0-75-75-p-0-iso8859-1

     You can ask for the follwogin:

        -adobe-helvetica-medium-o-normal--14-100-90-90-p-0-iso8859-1
 
     and it will generate it for you.  You should try to always use 
     known pixel sizes.  

Bill Jones




Newsgroup: comp.windows.x
Document_id: 68195
From: carl@frost.bain.oz.au (Carl Sandland)
Subject: Re: C++/Motif, gcc, silly messages

Thanks to everyone who mailed help, unfortunately the end problem was a REALLY
stupid `oversight' on my behalf. The code was 100% perfect, but it might
help to add Control.C to my makefile.......

	Anyway the mangled name was telling me it could'nt locate the Control
constructor...

	I just want to reaffirm what a valuable book this one is, I'm enjoying
evry page :)

Newsgroup: comp.windows.x
Document_id: 68196
Subject: Re: X on DOS or Windows
From: clee2@calstatela.edu (C. Lee)

In article 16924@psg.com, mvalente@draco.lnec.pt () writes:
>
>
>  I'm posting this request again since the last one had no title.
> 
>  I'm looking for X server software on DOS or Windows.
> 
>  I've already seen Desqview/X and XVision but would like to be aware
> of other solutions, namely public domain or shareware implementations.
> 
>  I'd also like to know, in the commercial case, about possible problems,
> incompatibilities, available window managers and libraries, etc.
> 
>  If you have any experiences in this area please let me know.
> 
>
>  C U!
> 
>  By(e)
> 
>    Mario Valente
>
>



Try Linux. Available on the internet.
    


Newsgroup: comp.windows.x
Document_id: 68197
From: gordons@mon.sps.mot.com (Gordon Sasamori)
Subject: Re: viewing postscript files under X windows

In <604@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:

>OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
>requires DSC compliant PostScript files, in order to stop at page breaks.
>I don't consider that broken.  I say that any program that puts out a
>PostScript file that isn't DSC compliant is broken.

Well that may be true.  However, the man page for pageview for OW 2.0
does not mention about DSC compliance.  In any event, the point here
is that if you try to display some PS files using pageview you will
find out that it's not a practical tool.
-- 
...v....1....v....2....v....3....v....4....v....5....v....6....v....7..
Gordon T. Sasamori
HC05 CSIC MCU Design       (email: gordons@ai.sps.mot.com,
Nippon Motorola Ltd.        voice: 81(3)3280-8339, FAX: 81(3)3440-0033)

Newsgroup: comp.windows.x
Document_id: 68198
From: mufti@pls.com
Subject: Including color pixmap .xpm files in my application

Is there a portable and convenient way to use color picture files in
the .xpm format to define an X pixmap in a Motif application? Any
functions, pointers, tips etc. would be most welcome.

--------------------
Saad Mufti
Personal Library Software

e-mail: mufti@pls.com


Newsgroup: comp.windows.x
Document_id: 68199
From: broeze@cs.utwente.nl (Arjen Broeze)
Subject: MSWindows -> XWindows conversion


Hi All,

I've heard of a commercial package named ZINK, that could convert MS-Windows
source-code to XWindows source-code (C). The only problem is, the package
isn't available in Holland (at least, I can't find it anywhere :-( )

Is there another package (preferrably free- or shareware), that can do the 
same thing? And if so, where can I find or buy it?

Thanks in advance

Arjen

Newsgroup: comp.windows.x
Document_id: 68200
From: tvtjet@eua.ericsson.se (Jorgen Eriksson)
Subject:  ######### Drawing networks, graphs ? ###########


	Are there any widgets, function 
	librarys for drawing networks, 
	graphs etc ? (Not tree views) 
	Freeware, shareware, comercial...
	Like this, for instance:
                                                               
                          O
                          |
                          |
                O---------O=======>O
               / \        |
              /   \       |
        O----O.....O      O
            / \
           /   \ 
          O     O

	* Just by giving the associations 
	  between the nodes. Automatic
	  layout generation.

	* It would be nice if any node 
	  symbols could be used. Maybe 
	  even to insert widgets as nodes.

	* Using different line styles etc.
	  for describing associations.

	Any information would be appreciated,
	thanks in advance,

			Jorgen (Jorgen.Eriksson@eua.ericsson.se)


Newsgroup: comp.windows.x
Document_id: 68201
From: pflynn@curia.ucc.ie (Peter Flynn)
Subject: Compiling ghostview under Sun OpenWindows 3

Due it seems to Sun's crapulous organisation of the X libraries and includes,
most standard (GNU and other) software won't compile out of the box (well, tar
file). 

Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
now the ghoddam thing _still_ complains it can't find them.

I still haven't been able to compile xdvi, not no way.

Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
tried hard copying all the relevant files into the "right" places and
every time, there's some bit missing or it refuses to find it.

///Peter

Newsgroup: comp.windows.x
Document_id: 68202
From: soenke@wiwi12.uni-bielefeld.de (Soenke Voss)
Subject: Help needed: callbacks, actions and events 


I understood that there are two methods to connect application code to widgets:

                       callbacks and actions

The problem I face now is that I have a quite long piece of application code
that performs a lot of drawing into a window. I want to connect this to a
widget. No problem so far. I could use a callback function or an action to do this, processing any events afterwards.

But because the drawing takes some while, I want the application code sequence
to be able to be interrupted by events. Then I want to handle the events
and resume with processing the application code at the point it was
interrupted.
It seems to me that this isn't possible, but how can I give the user the
impression that his inputs are immediately processed ?

Has anybody an idea?

Please answer via e-mail.

Thanks in advance.

Soenke

-------------------------------------------------------------------------------
Soenke Voss                                                Faculty of Economics
soenke@wiwi12.uni-bielefeld.de                          University of Bielefeld
                                                             W-4800 Bielefeld 1
                                                                        Germany

The only difference between me and a madman is
that I am not mad ! (Salvador Dali)
-------------------------------------------------------------------------------


Newsgroup: comp.windows.x
Document_id: 68203
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1t0dndINNmsd@senator-bedfellow.MIT.EDU> steve.mcmahon@launchpad.unc.edu writes:

>>>>>> On Fri, 14 May 1993 07:15:25 GMT, me@dude.pcs.com (Michael
>Elbel) said:

>ME> As is, emu won't work on BSD derived systems (e.g. SUNs) with
>ME> anything else than a csh. There is a fix to this, which is very
>ME> short (remove one line of code). I'll put this on export today.

>It's more than that actually. In the version on export one cannot just
>specify a POSIX tty behaviour, the POSIX config files are incomplete
>without those of some specific platforms like Suns and DECs. I looked
>twice at porting emu to linux, but stopped short becuse of the tty
>part. Is there a `cleaner' version of emu that supports POSIX tty
>explicitly?

Hmm, depends on how you define 'clean'. Jordan implemented the system
dependent stuff in a way that you have basic implementations for,
call it, operating system types, then you go ahead and write a include
file for your specific machine or operating system using the basic
implementations. Since both Jordan and I haven't encountered a 
OS flavor yet, that is fully POSIX, we haven't gotten around to
really implement (and test) a top-level include file specifically
for just posix. The posix routines are used in the sun specific file
tty_sun.i for example, but here we also use some bsd stuff. All in all
it still is probably better to implement a include file for each and
every operating system than '#ifdef'ing in existing ones. The type
of mess that can result from that can clearly be seen in the xterm
sources. Even if quite a bit of code gets copied almost unchanged a 
couple of times, this only uses up some disk space, since only the 
"drivers" actually included from the toplevel include file will be 
compiled into emu.

It shouldn't be hard to come up with a tty_linux.i file that fully
relies on the posix stuff, but unfortunately I don't have a linux
system available to me, so I can't do the port myself. I would suggest
you read the README in term/sysdep and if you have any problems or
questions, contact me and we could try to sort this out. Unfortunately
we have to rely on help from the net on this part of emu, since we 
just don't have access to that many different systems.

Michael


--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
Document_id: 68204
From: duggan@ecs.umass.edu
Subject: Creating Your own ColorMap, i.e. Lookup Table in X11 R4

Hello,

Below I have the copy of some source I am using to setup a user-specified color-
map for X R11 V4. I am attempting to create user defined colors in terms of
RGB color ranges. The calls to XAllocColor prove ineffective. 

Variables are defined are as follows:

    int                 i, j, k, lut_index
    color_type          min_image, max_image;
    color_type          image Pixel_Value_Range, last_image, start, end, jump,
                        lut [ 512 ];
    unsigned long       pixel;
    double              red, green, blue;

/*
 * Data structure used by color operations
 *
typedef struct {
        unsigned long pixel;
        unsigned short red, green, blue;
        char flags;  /-* do_red, do_green, do_blue *-/
        char pad;
} XColor;
***************/
    XColor              rgbcolor, hardwarecolor;


With color_type defined as { double red, double green, double blue }.

What I need to know is how to set [is it possible] the values in hardwarecolor
to work within the call to XAllocColor:

    start.red = (int) 255 * min_image.red;	/* 0..255 */
    end.red   = (int) 255 * max_image.red;	/* 0..255 */
    jump.red  = (int) (( end.red - start.red ) / 7);

    start.green = (int) 255 * min_image.green;  /* 0..255 */
    end.green   = (int) 255 * max_image.green;  /* 0..255 */
    jump.green  = (int) (( end.green - start.green ) / 7);

    start.blue = (int) 255 * min_image.blue;    /* 0..255 */
    end.blue   = (int) 255 * max_image.blue;    /* 0..255 */
    jump.blue  = (int) (( end.blue - start.blue ) / 7);

    lut_index = 0;
    for (i=0; i<8; i++)
        for (j=0; j<8; j++)
            for (k=0; k<8; k++)
                {
                if ( i == 0 || jump.red < 1 )
                    lut [ lut_index ].red = start.red;
                else
                    lut [ lut_index ].red = jump.red * i - 1;

                if ( j == 0 || jump.green < 1 )
                    lut [ lut_index ].green = start.green;
                else
                    lut [ lut_index ].green = jump.green * j - 1;

                if ( k == 0 || jump.blue < 1 )
                    lut [ lut_index ].blue = start.blue;
                else
                    lut [ lut_index ].blue = jump.blue* k - 1;

                hardwarecolor.red   = (short) lut [ lut_index ].red;
                hardwarecolor.green = (short) lut [ lut_index ].green;
                hardwarecolor.blue  = (short) lut [ lut_index ].blue;
                hardwarecolor.pixel = lut_index;

printf("HW1: i = %d :  %d %d %d: pixel = %d \n", lut_index, hardwarecolor.red,
                hardwarecolor.green, hardwarecolor.blue, hardwarecolor.pixel );

                status = XAllocColor ( dpy, colormap, &hardwarecolor );
printf("HW2: i = %d: %d %d %d: pixel = %d \n", lut_index, hardwarecolor.red,
                hardwarecolor.green, hardwarecolor.blue, hardwarecolor.pixel );
                if ( status != 0 )
                    {
                    XSetForeground ( dpy, gc, hardwarecolor.pixel );
                    XFillRectangle ( dpy, win, gc, 1, 1, MAXCOLUMN, MAXROW );
                    XFlush ( dpy );
                    sleep (10);
                printf("%d: %f %f %f at %d \n", lut_index, lut [ lut_index ].re
                            lut [ lut_index ].green, lut [ lut_index ].blue,
                            hardwarecolor.pixel );
                    }
                lut_index = lut_index + 1;
                }

Thanks in advance to anyone who can help me with this problem.

Sincerely,

	John F. Duggan

----------------------------------------------------------------------------
John F. Duggan                               alias    :Genghis Khan
Engineering Computer Services,               internet : DUGGAN@ecs.umass.edu  
Univ. of Massachusetts, Amherst, MA 01003    Bitnet     : DUGGAN@umaecs

Newsgroup: comp.windows.x
Document_id: 68205
From: jc@minya.UUCP (John Chambers)
Subject: program to display .gif files?

It seems silly, but while I've located things like tgif that can  edit
gif  files, and various tools to convert to/from gif format, I haven't
been able to locate a program that just opens a window and displays  a
gif file in it.  I've looked thru various faq files, also to no avail.
Is there one lurking about in some  archive?   Nothing  sophisticated;
just "show the pretty picture"?

Alternatively, if I could locate the specs for gif, I don't suppose it
would be too hard to write it myself, but I have no idea where to even
start looking for the spec.  (Well, actually, I do have an idea - this
newsgroup.  ;-)


-- 
If the auto industry were like the computer industry, a car would  now
cost $5, would get 5000 miles to the gallon, and at random times would
explode, killing all its passengers.

Newsgroup: comp.windows.x
Document_id: 68207
From: jvs@jacks.apana.org.au (Jack Strangio)
Subject: SVR4 xclients won't work under SVR4.2 (repost)

When I changed from SVR4 to SVR4.2 on my Intel box I discovered that
some of my SVR4 xclients such as xload, etc would no longer work.


They bomb out with the message:

error: can't open display unix:0.0

Is this because they can't find the correct shared libraries, they need
to be recompiled, or have I not used the correct options?

Both systems use X11R5.

Thanks.

Jack.


Newsgroup: comp.windows.x
Document_id: 68208
From: kerr@ux1.cso.uiuc.edu (Stan Kerr)
Subject: Re: Mac X and Sun OpenWindows 3

benj@ossa.hq.nasa.gov (Benjamin Jones) writes:

>I've run into a bit of a snag while trying to get Mac X up and running and would appreciate
>any responses from anyone who may have seen this problem.

>On my local network, I have a number of Macs, Suns and SGI machines.

>I have installed MacX/MacTCP on all of the Macintoshes and can run Xclients on the SGI machines
>all the live-long day.  The problem is when I try to run an Xclient on any Sun, I setup
>the command in MacX, then execute it.  Nothing happens, I don't even get any command output.

>Now, I thought it might be a routing issue, but I can run remote Xclients on the suns from my SGI
>machines, as well as vice-versa.  I can also run remote Xclients on SGI machines that
>are NOT on my local net here, but the above problem holds true for non-local Suns as well.

I tried to send this as private mail, but mail to benj@ossa.hq.nasa.gov was
rejected, so here it is:

Here is an extract from the README file that comes with MacX:

Users of remote commands with Sun machines may find that their remote commands 
appear to do nothing and there is no output from the Sun machine.  This is due 
to a feature of the Sun rexecd network daemon which quietly disconnects from 
requesting machines that are not known to the Sun|s network address (/etc/hosts
or NIS hosts) database.  To successfully use remote commands with a SunOS-based
machine, there must be an entry in the network address database for the 
Macintosh which is running MacX.

-- 

Stan Kerr    
Computing & Communications Services Office, U of Illinois/Urbana
Phone: 217-333-5217  Email: stankerr@uiuc.edu   

Newsgroup: comp.windows.x
Document_id: 68209
From: montnaro@spyder.crd.ge.com (Skip Montanaro)
Subject: Re: ######### Drawing networks, graphs ? ###########


In article <1993May17.085405.7807@eua.ericsson.se> tvtjet@eua.ericsson.se (Jorgen Eriksson) writes:

	   Are there any widgets, function 
	   librarys for drawing networks, 
	   graphs etc ? (Not tree views) 
	   Freeware, shareware, comercial...
	   Like this, for instance:

	   [ pretty picture deleted ]

	   * Just by giving the associations 
	     between the nodes. Automatic
	     layout generation.

	   * It would be nice if any node 
	     symbols could be used. Maybe 
	     even to insert widgets as nodes.

	   * Using different line styles etc.
	     for describing associations.

Check out the XmGraph library in the following location:

	iworks.ecn.uiowa.edu:/comp.hp/GUI_classic/XmGraph.tar.Z.
--
Skip (montanaro@crd.ge.com)

Newsgroup: comp.windows.x
Document_id: 68210
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: internationalization...


 
 hi, is there anybody has some example programs about using
 the internationalization features in X11R5 ? Such as a small
 X program just to show Chinese texts in wondows, menu bar or
 icons... Thanks in advance.
 
 Michael C. Hung
 

Newsgroup: comp.windows.x
Document_id: 68211
From: mjcarley@unix2.tcd.ie (Michael Carley)
Subject: DVI Viewers

I need some help in tracking down a dvi viewer for X. I have xdvi but we
have not got the X libraries and includes installed- so 
		i) is there a way around this, as we are trying to avoid
		   installing the stuff (space is at a premium).
		ii)would someone be prepared to make the binaries
		   available. We have a HP700 and a HP382.

	Thanks for any help
	Michael Carley, Dept. of Mech Engineering,
	TCD


Newsgroup: comp.windows.x
Document_id: 68212
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: SUMMARY: How to make a window's input be ALL CAPS

Thanks to Bruce Barnett, who recommended xvttool, and Bernward Averwald and
Liam Quin, who recommended modifying .Xdefaults to get the desired behavior
for a *class* of xterms.

In xvttool, simply create a key file that looks like:
"a"	"A"
"b"	"B"
"c"	"C"
...
and specify said key file on the command line.  This will translate
any input into any other (in my case, lo-case to up-case).  Works great, and
you get a customizable button-pad on the right or left side.

To use an xterm solution, add to your .Xdefaults:
capxterm*VT100.Translations: #override \
   <Key>a: string("A")\n\
   ...

or:
capxterm.vt100.translations: #override \n\
        <Key>a: insert-string(A) \n\
        <Key>b: insert-string(B) \n\
        ...

and invoke as: xterm -name capxterm

Thanks loads!
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
Document_id: 68213
From: marcus@iiasa.ac.at (Marcus SCHNELL)
Subject: Re: program to display .gif files?

John Chambers (jc@minya.UUCP) wrote:
: It seems silly, but while I've located things like tgif that can  edit
: gif  files, and various tools to convert to/from gif format, I haven't
: been able to locate a program that just opens a window and displays  a
: gif file in it.  I've looked thru various faq files, also to no avail.
: Is there one lurking about in some  archive?   Nothing  sophisticated;
: just "show the pretty picture"?

xv



Newsgroup: comp.windows.x
Document_id: 68214
From: sadie@cs.sun.ac.za (Sadie  HF)
Subject: Looking for Article


I am urgently looking for the following article, but I can't seem to
find it anywhere here:

     "The Multi-Threaded X Server"
     John Allen Smith
     The X Resource
        Issue 1, pp. 73-89, Winter 1992

If anyone can tell me where to find it, it WILL be much appreciated.

H.F. Sadie
Departement of Computer Science
University of Stellenbosch
South Africa
 
e-mail:   sadie@itu.sun.ac.za

Newsgroup: comp.windows.x
Document_id: 68215
From: skji@eve.kaist.ac.KR (Ji SoonKi)
Subject: (none)

SUBSCRIBE XPERT skji@eve.kaist.ac.kr

Newsgroup: comp.windows.x
Document_id: 68217
From: ladislas@sobeco.com (Ladislas A.)
Subject: FAQ's ??


Could someone repost the FAQs for this group, please?

Thanks
Ladislas.

Newsgroup: comp.windows.x
Document_id: 68218
From: dave@sg25.npt.nuwc.navy.MIL (dave lewis)
Subject: unsubscribe

unsubscribe


Newsgroup: comp.windows.x
Document_id: 68219
From: Gary Keim <gk5g+@andrew.cmu.edu>
Subject: Re: COLORS and X windows (AIcons)

Excerpts from netnews.comp.windows.x: 15-May-93 Re: COLORS and X windows
(A.. John Cwikla@morrison.wri (4620) 

> The problem is that we need solutions for applications now.  And although 
> I would love to have most of the things mentioned here, somebody has to write 
> it. 

What I'd like to see is this scenario: 

Each widget, view, whatever, describes it's colors via a palette. 
Palettes can be shared and they only contain descriptive information. 
They are not directly tied to the object that uses them.  Palettes are
held in the server.  A palette can accomadate, up to, the number of
hardware color cells of color descriptors. 

When the input focus is in a particular widget, that widget has access
to all of the colors that are described in its associated palette.  ALL
OTHER WIDGETS, TRANSIENTLY, GET THE CLOSEST APPROXIMATION THAT CAN BE
GENERATED BY A UNION OF THE COLORS FROM THE CURRENT PALETTE AND ANY FREE
COLORS THAT ARE LEFT OVER. 

A widget specifies a color for imaging by providing an index (pixel)
into its associated palette. 

The bold part above is hard and would need to be done in the server. 
 

Newsgroup: comp.windows.x
Document_id: 68220
From: udumula@fndaug.fnal.gov (Lourdu Udumula)
Subject: xterm slave mode

I am tunning into this newgroup after a long time. Could somebody tell me 
what the slave mode in the xterm is? and what can it be used for? Any info
where I can get more info or examples. I want to use a bunch of xterms and 
send the input from one application to these xterms and get the output on the
xterms. Please email me any info. 

Thanks,
Lourdu




Newsgroup: comp.windows.x
Document_id: 68221
From: rsc@hao.ucar.edu (Bob Campbell)
Subject: Motif 1.2 and OW 3.0 / compiling xcoral

I've built xcoral on my system (SunOS 4.1.3, X11R5, Motif 1.2, OW 3.0)
and it builds fine, but when I run it, any child windows that xcoral
opens,
1) locks the mouse into the window area
2) doesn't accept any input from the mouse.

Needless to say, this is a pain in the ass, as I have to go find an
empty terminal to login and kill xcoral.

Is this a problem with OpenWindows or Motif?  Is there a patch?
---
#######################################################################
# Bob Campbell                 #  "Crayons can take you where no      #
# System Manager               #   Starship can go."                  #
# HAO, NCAR                    #                    -Guinan           #
# rsc@hao.ucar.edu             #                     STTNG            # 
#######################################################################
DISCLAIMER: My views are in no way connected to my employer.

"A closed mouth gathers no feet."      - Unknown
"It only requires a little thought and a little work."     - Don Hicks
                                                       Managing Editor
                                                     Amazing Computing


Newsgroup: comp.windows.x
Document_id: 68222
From: dave@sg25.npt.nuwc.navy.MIL (dave lewis)
Subject: unsubscribe

unsubscribe



Newsgroup: comp.windows.x
Document_id: 68224
From: hildjj@jupiter.fuentez.COM (Joe Hildebrand)
Subject: Re: Help needed: callbacks, actions and events


> 
> I understood that there are two methods to connect application code
to widgets:
> 
>                        callbacks and actions
> 
> The problem I face now is that I have a quite long piece of
application code
> that performs a lot of drawing into a window. I want to connect this
to a
> widget. No problem so far. I could use a callback function or an
action to do this, processing any events afterwards.
> 
> But because the drawing takes some while, I want the application code
sequence
> to be able to be interrupted by events. Then I want to handle the
events
> and resume with processing the application code at the point it was
> interrupted.
> It seems to me that this isn't possible, but how can I give the user
the
> impression that his inputs are immediately processed ?
 
Use a workProc.  See XtAppAddWorkProc(3Xt).

You should split your drawing routnie up into small chunks (this
is the hard part).  Then, in the callback that starts the drawing,
you call XtAppAddWorkProc() to call your workProc the first time. 
Your workProc should be a function that returns a boolean...
TRUE when you are finished, and FALSE when you want to keep
processing.  If you return FALSE, the workProc is automatically
re-installed.  

Note that this method is better that using a time-out loop, since
events get processed in a more precedence-oriented manner.  If you
are using the same Ada bindings I am, however, you are hosed, and
should look into XtAppAddTimeout(3Xt).

----------
Joe Hildebrand
hildjj@fuentez.com
Software Engineer
Fuentez Systems Concepts
(703)273-1447

Standard disclaimers apply

Newsgroup: comp.windows.x
Document_id: 68225
From: Peter_Imants_Buttuls@mts.ucs.ualberta.CA
Subject: Any free X-servers for PCs

Does anyone know of any free X-servers for PCs, preferably that run under
MS Windows? THANKS.
 
Peter Buttuls, University of Alberta, Edmonton, Canada 
e-mail:(userpib@mts.ucs.ualberta.ca) 

Newsgroup: comp.windows.x
Document_id: 68226
From: dan@watson.ibm.COM (Walt Daniels)
Subject: X, shared libraries, and replacing modules in them?

I know nothing about Sun's but replacing pieces of libraries, shared
or not, is straight forward on RS/6000's (all releases).  Extract the
appropriate pierce with ar; rebind the .o; and replace with ar.
See Info for details.


Newsgroup: comp.windows.x
Document_id: 68227
From: mlt@blues.infores.com (Michael Turok)
Subject: 'makedepend' problem

Hi, netters:

We have a problem with 'makedepend': it doesn't know how to correctly process
#if clause in C preprocessor statements. It evaluates everything to
true no matter what the conditionals are.
For example, makedepend chokes on one of X11 include files (as distributed
by Sun) - namely Xos.h:

#if     !defined(SUNOS41) || defined(__STDC__)
#       include <string.h>
#       define  index   strchr
#       define  rindex  strrchr
#else   /* BSD && !__STDC__ */
#       include <strings.h>
#endif  /* !SUNOS41 || __STDC__ */

Here 'makedepend' evaluates both #if and corresponding #else statements
to 'true' and tries to open the file <strings.h> which doesn't exist
under Solaris2.
We also have a lot of #if statements in some of our legacy code.
We got and built 'makedepend' off the net - it didn't fix the problem.

In all fairness it should be noted that 'makdepend' man-page (Sun's
distribution) mentions this problem:

BUGS
     If you do not have  the  source  for  cpp,  the  Berkeley  C
     preprocessor, then makedepend will be compiled in such a way
     that all #if directives will evaluate to  "true"  regardless
     of  their  actual  value.  This may cause the wrong #include
     directives to be evaluated.  Makedepend should  simply  have
     its own parser written for #if expressions.

Has anybody come up with some solution/fix to 'makdepend' other than
WriteYourOwnParser... and willing to share it with us?

Since we often experience delays in our newsfeed - please reply 
directly to my e-mail address -> I'll post a summary.

Thanks in advance.
***************************************************************************
*     Michael Turok                  *                                    *
*  Information Resources, Inc.       * E-Mail:  mlt@blues.infores.com     *
*     200 Fifth Avenue               * Voice:  (617) 890 1100 ext.7531    *
*  Waltham, MA 02154, USA            * Fax:    (617) 890 4660             *
***************************************************************************

Newsgroup: comp.windows.x
Document_id: 68228
From: gibanez@dcc.uchile.cl (Gabriel Ibanez C.)
Subject: key event ----> window

Hi there,


  Do someone of you have a program for sending a key event
to another window but it MUST appear in that window....

I have used xsendevent.tar package but it does not do that !!!

For example, if I get a program executing:

--------------
#!/bin/sh
read something
....
....
echo $something
....
....
--------------

and if I send the key event "<KeyPress>a,<KeyRelease>a"
to that window then I will get:

something=a


Thanks in advance.


-- 

   Gabriel Iban~ez C.          
   gibanez@dcc.uchile.cl

Newsgroup: comp.windows.x
Document_id: 68229
From: harden@skate.ics.com (Aub Harden)
Subject: Re: Did Microsoft buy Xhibition??


In article <1993May14.191035.19271@vpbuild.vp.com>, jessea@u013.me.vp.com (Jesse W. Asher) writes:
|> I've been getting mail from Xhibition about the June conference and I was
|> wondering if Microsoft had bought Xhibition?  The front says "Conference
|> from Microsoft Windows NT Developers".  What's the deal?  I thought
|> "X"hibition was for "X-windows"??
|> 
|> -- 
|>       Jesse W. Asher                                          

Yes, Xhibition is for the X Window System.  The X Window System Conference 
remains the largest and most complete conference devoted to X.  Nineteen full
and half day tutorials and thirty-six technical sessions over three days
provide huge amounts of information for X application developers.  Add vendor
exhibits and a Product Presentation track to provide information on what
folks can purchase today, and you have a complete show focused on X11.

Speakers at Xhibition 93 include: 

  Bob Schiefler, Lu Abel, Mark Ackerman, Paul Asente, Doug Blewett, 
  Donna Converse, Jim Fulton, Oliver Jones, Keith Packard, Ralph Swick, 
  Doug Young, and many others.

Xhibition is growing (fortunately for us:-) and we have added some additional
conferences.  Surveys that we have given have indicated additional topics of
interest.  These include: object oriented technologies such as the Object
Management Group's ORB and CORBA; C++ as it applies to X; client server
technologies such as DCE; threads; databases- object oriented and relational;
and (not surprisingly when you look at the audience) Windows NT.

With the bulk of the Xhibition audience (and the UNIX community) developing
applications for in-house or custom use, a new 32-bit operating system from a
player as large as Microsoft needs to be evaluated. With MS Windows on so many
desktops, and the price of computing power dropping, its successor needs to be
evaluated.  As corporations begin to look at NT, so must their developers and
suppliers.

The mission of the Xhibition technical conferences is to provide information
to the application developer and to the technology planner.  The NT Conference
at Xhibition is designed to do just that.  We worked with Microsoft to provide
the *only* conference this year specifically designed to show X and UNIX
developers the capabilities of Windows and NT.  If you aren't sure that NT has
what you need for your application development or systems deployment, this is
the place to find out.  Ask the folks from Microsoft, get them to show you
what you need.  Conference attendees will receive NT Software Development
Kits- to bang on, evaluate, and generally to see for yourself.

I hope this doesn't sound like an NT commercial (it should sound like an
Xhibition commercial:-).  I just want to reiterate that the Xhibition audience
is growing and Xhibition is growing along with it.  The industry is a
confusing place at the moment with UNIX, COSE, NT, DCE, CORBA, and all of
the other acronyms sprouting up.  Xhibition can help sort out the confusion.


-Aub Harden
 Technical Program Manager
 harden@ics.com


        X H I B I T I O N   The Conference and Trade
         ******    *****    Show for Corporate
        *      *       *    Software Development
         ******     ***  
             *         *    201 Broadway
          ***     *****     Cambridge, MA  02139

              Windows on Distributed Computing

                 June 7 - 11,   San Jose, CA

           xhibit@ics.com  uunet!ics.com!xhibit
        Voice: (617) 621-0060  Fax: (617) 621-9555

      Presented by Integrated Computer Solutions, Inc.

Newsgroup: comp.windows.x
Document_id: 68230
From: da188@cs.city.ac.uk (A. Khattri)
Subject: Re: Blinking Cursor in Xterm???

>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>> was implemented by drawing a rectangle around the character. I doesn't
>> seem to be changed 'til now.
>> But if you have the sources you could add a blinking cursor via
>> XtAppAddTimeOut or similar :-|.
>
>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>which does this in its DOS windows).  Do you really want xterm to wake up every
>half second and whack the server into doing a bitblt?

Most DOS X servers are terribly slow to use in my experience - and no, I guess 
performance would be pretty bad. I believe the discussion is valid for an X 
server on a decent workstation.

-- 
.-------------------------[ The Eno ]-------------------------------------.
| "The trouble with New Age    | JANET : da188@uk.ac.city                 |
|  music is that there's no    |         eno@uk.ac.city.cs                |
|  evil in it.." - Brian Eno   | US :    da188%city.ac.uk@cunyvm.cuny.edu |

Newsgroup: comp.windows.x
Document_id: 68231
From: webster@ucssun1.sdsu.EDU (paolini p)
Subject: xdm-X emul error

When attempting to connect to an SGI Indigo from a PC clone using
a commercial X windows emulation package, the X package hangs in
a pre-login X screen mode.  The login box won't display.  Using
the package in 'telnet' mode, I can logon to the SGI, and run any
none graphic type things.  On the PC I get an error:
"Read error 0 on socket 1"  (raw socket error)

On the SGI, in xdm-errors:
I get a termination error when I kill the stalled screen on the PC

On the SGI, in SYSLOG:
<date><time><SGI> xdm[#]:Hung in XOpenDisplay(<remote>:0, aborting
  "                  "  :server open failed for <remote>:0, giving up

I have all access control disabled (I believe, SYSLOG message confirms
this when I login on the SGI).  I believe I have the SGI set up properly
as described in the X ADm. book by O'Rielly....

The X emul package tech support hasn't been able to solve the problem.

So what I'm looking for is some suggestions on where to look for problems,
and possible tests to run to narrow down the questions.
Thanks

webster@ucssun1.sdsu.edu


Newsgroup: comp.windows.x
Document_id: 68232
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Did Microsoft buy Xhibition??

harden@skate.ics.com (Aub Harden) writes:


>In article <1993May14.191035.19271@vpbuild.vp.com>, jessea@u013.me.vp.com (Jesse W. Asher) writes:
>|> I've been getting mail from Xhibition about the June conference and I was
>|> wondering if Microsoft had bought Xhibition?  The front says "Conference
>|> from Microsoft Windows NT Developers".  What's the deal?  I thought
>|> "X"hibition was for "X-windows"??
>|> 
>|> -- 
>|>       Jesse W. Asher                                          

I was wondering this myself.

>and (not surprisingly when you look at the audience) Windows NT.

>With the bulk of the Xhibition audience (and the UNIX community) developing
>applications for in-house or custom use, a new 32-bit operating system from a
>player as large as Microsoft needs to be evaluated. With MS Windows on so many
>desktops, and the price of computing power dropping, its successor needs to be
>evaluated.  As corporations begin to look at NT, so must their developers and
>suppliers.

>what you need.  Conference attendees will receive NT Software Development
>Kits- to bang on, evaluate, and generally to see for yourself.

>I hope this doesn't sound like an NT commercial (it should sound like an
>Xhibition commercial:-).

Unfortunately it does.  I don't agree with the logic of NT at an X windows
conference.  Perhaps some good will come of it, but the two are so dissimilar
and the NT marketing stuff is so large in the Xhibition adds that I was 
coming to a similar conclusion as Jesse...

-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68233
From: eposnak@dale.ksc.nasa.gov (Ed Posnak)
Subject: what is a client's DISPLAY variable set to?


Is there an easy (ie via shell commands) way to tell what the DISPLAY 
environment variable is for any given client process?  Sometimes I can 
get what I want by typing ps -axe if:
   a. the client was invoked with a -display argument
      or
   b. DISPLAY is one of the first few variables defined in the environment
      (actually I've never seen b. but it's there to illustrate the type 
      of thing I'm looking for)

Ultimately I wish to determine the number of displays that are simultaneously 
running a given X application.

my system: SunOS 4.1.2 sun4c

thanks for any help,


-- 
Ed Posnak
Harris Space Systems Corporation
eposnak@core1.hssc.ksc.nasa.gov

Newsgroup: comp.windows.x
Document_id: 68234
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: multi-bytes fonts


I am wondering how to change the English fonts in an existed 
API to some multi-bytes fonts ? (such as Chinese, Japanese...)
Someone told me X11R5 supports some internationalization
features, but I cannot find any examples for my need. Is there
anybody has done some similar jobs ?

By the way, all the English fonts should be replace by Chinese or
Japanese fonts, that means in windows, menubar, button....

That will be great if someone can share us what you have done.
Thanks in advance.

M.C. Hung

Newsgroup: comp.windows.x
Document_id: 68235
From: hdr@ross.COM (Henry D. Reynolds)
Subject: Help w/ X11R5p22 w/ Sun 4/110 cg2 framebuffer


Xsun won't come up in color w/ this framebuffer! I am trying to use xkernel on
some of these 4/110s I have a freshly built Statically linkes copy of Xsun
that works just fine on cg6, cg4, bw2 type of framebuffers, but on the 4/110
that have this type of frame buffer all I get is Mono.

cgtwo0 at vme24d16 0x400000 vec 0xa8 
cgtwo0: Sun-3 color board, fast read

Here is what I've tried.

removing all the other /dev/cg* , /dev/bw , and /dev/fb and then selectivly
recreating /dev/cgtwo0. Xsun comes up mono. recreating /dev/fb, comes up mono,

I've tried Xsun & Xsun -dev /dev/cgtwo0.

PS Xnews will come up in color but it's not statically linked, and the
dynamically linked Xsun comes up in mono also.

PPS Xsun was compiled on w/ gcc 2.3.3 on a system running 4.1.3 and the 4/110
is also running 4.1.3.

Thanks n advance
--

- ..  the HIGHWAY is made out of LIME JELLO and my HONDA
 is a barbequeued OYSTER!  Yum!

Henry D. Reynolds           hdr@ross.com -OR- hdr@nidhog.cactus.org
FONE: (512)892-7802 x253    ROSS Technology, Inc.
FAX:  (512)892-3036         5316 Hwy 290 West Suite 500 Austin, TX 78735

Newsgroup: comp.windows.x
Document_id: 68236
From: robert@swanee.ee.uwa.edu.au (Roberto Togneri)
Subject: Querying XDM to manage a remote display - How under Linux/xfree86?

We have Suns running SunOS 4.1.3 and Openwindows 3.0 (X11R4). We have
used Xvision on a PC, setup to broadcast query to the UNIX xdm servers and
allow a user to choose a UNIX client in which to login: xdm will then
manage that display. I would like to do the same thing with xfree86
running under Linux, but I don't know how. I don't want to hardwire the UNIX
xdm to manage the PC displays as the PC's are not always running Linux 
(let alone xfree86). I would like the same setup as provided by Xvision.

Can anybody help?
Thanks,
--
Dr. Roberto Togneri                        Phone: +61-9-380-2535     _--_|\
Centre for Intelligent Information Processing Systems               /      \ 
Dept. of Electrical & Electronic Engineering                        *_.--._/
The University of Western Australia        Fax:   +61-9-380-1101          v 
NEDLANDS WA 6009 Australia                 Email: robert@swanee.ee.uwa.edu.au

Newsgroup: comp.windows.x
Document_id: 68237
From: dawagner@phoenix.Princeton.EDU (David A. Wagner)
Subject: Re: viewing postscript files under X windows

In article <1sk97rINNptb@polaris.isi.com> kin@isi.com (Kin Cho) writes:
>
>I can also live with a utility that converts postscript to plain
>text, perferably retaining page counts so that I know how many pages
>the original document contains.
>

	Well, I know of one hack to sort of do this conversion.  First
get ghostscript and check out the gs_2asc.ps file that comes with it.
It prints out some information about where each text string goes on the
page, and maintains page counts.  I've written a little C program to
massage the output of gs -dNODISPLAY gs_2asc.ps somewhat, so that you
can get all the ascii strings in the document.  No guarantees that it
won't break up words/sentences, though - I've used it with varying
degrees of success.  Anyways, try this out, it may do what you want.

/*
 * massager: a filter for use with gs; does crude Postscript->ASCII conversion
 *
 * Usage:
 *	cat file.ps | gs -dNODISPLAY gs_2asc.ps - | massager
 *
 * I print a <Ctrl-L> after each new page.
 *
 * Put the following source into massager.c and compile it:
 */

#include <stdio.h>
#include <string.h>

main()
{
	char	line[1000], *p;

	while (fgets(line, sizeof(line), stdin) != NULL)
		if (line[0] == 'P')
			printf("\f\n");
		else if (line[0] == 'S' && line[1] == ' ') {
			if ((p = strrchr(line, ')')) == NULL)
				continue;
			*p = '\0';
			if ((p = strchr(line, '(')) == NULL)
				continue;
			for (p++; *p; p++)
				if (*p != '\\' || (p[1] != ')' && p[1] != '('))
					putchar(*p);
			putchar('\n');
		}

	return(0);
}

--------------------------------------------------------------------------------
David Wagner                                              dawagner@princeton.edu

Newsgroup: comp.windows.x
Document_id: 68238
From: gabi@ankh.technion.ac.il (Gabi Zodik)
Subject: Wanted An Interactive GUI builder for X motif

Hi there,

I'm looking for tools that can make X programming easy. 
I would like to have a tool that will enable to create X motif
GUI Interactivly. Currently I'm Working on a SGI with forms.
A package that enables to create GUI with no coding at all 
(but the callbacks). 
Any help will be appreciated.

Thanks Gabi.


Newsgroup: comp.windows.x
Document_id: 68239
From: iop@server2.iie.ncku.edu.tw
Subject: How to program about WM_PROTOCOLS & WM_DELETE_WINDOW in OLIT...

HI, all
    I study about WM_DELETE_WINDOW atom in Open Look. I study the book -->
"Unix Desktop guide to OPEN LOOK", I run the example of chapter 8, but It
is not the result described as book's figure 8.1. Dose anyone read the book?
Or run the example (winprop.c)? What is the problem?
    I am curious about WM_DELETE_WINDOW programming... Anyone help me?
                       Thanks in advance for any help!!!
                                                            IOP

Newsgroup: comp.windows.x
Document_id: 68240
From: irakliot@longs.LANCE.ColoState.Edu (Leo J. Irakliotis)
Subject: PLEASE!

This discussion on viewing .ps files undex X11 seems rather interesting
but I fail to understand the reason it is not contained in 2 at most
newsgroups.

I am subscribed to comp.text.interleaf and I could care less about
.ps viewing under X11. I am sure that members of this group interested in
the topic can followup by looking at other newsgroups.

Could you please remove the comp.text.interleaf from your distribution?
Just as a nettish sort of courtesy.

Best regards.

-- 
Leo J Irakliotis               irakliot@longs.lance.colostate.edu
-----------------------------------------------------------------
Electrical Engineering                      l.irakliotis@ieee.org
Colorado State U
(303) 491-2021                              Optical Computing Lab

Newsgroup: comp.windows.x
Document_id: 68241
From: jhpark@kdb.snu.ac.kr (Park Jang Ho)
Subject: X11R5 on IBM RS6000

How are you, Everybody?

I installed X11R5 on our IBM RS6000 workstation. OS version is AIX 3.2.3.
There was no problem in installation.
But there was a problem in invoking 'xinit'.
When I invoke 'xinit', there is a error message as follows:

giving up.
xinit: unable to connect to X server
xinit: No such process (errno 3): Server error.

I'm a navice. So I don't know the reason why I get this message.
Please help me. I am waiting for your help.

Thanks for reading this mail.

-Park Jang Ho  (jhpark@kdb.snu.ac.kr)

Newsgroup: comp.windows.x
Document_id: 68242
From: pacebes@cozuelos (Pedro Antonio Acebes Bayon)
Subject: xfig with open look problem

I'm a Solaris 2.1 user with a classic workstation.

I have compiled xfig 2.1.7 version with -DOPENWIN flag to use it with 
openwindows, but when i run it, the program runs and runs and runs (15 minutes)
and never is ready to work with it. The labels are not completed and i can't
push any button.

I have no problem if i does not run the openwindows but X.

Any solution?

Thanks in advance and excuse for my english.
--


-------------------------------
Pedro Antonio Acebes Bayon
E-mail: pacebes@cozuelos.tid.es

X.400 adress:
	  C=es;ADMD=mensatex;PRMD=iris;O=rediris;OU=relay;
	  DD.RFC-822=pacebes(a)cozuelos.tid.es





Newsgroup: comp.windows.x
Document_id: 68243
From: mhung@capricorn.taisel.COM.TW (Michael Hung)
Subject: multi-byte fonts



I am wondering how to change the English fonts in an existed
API to some multi-bytes fonts ? (such as Chinese, Japanese...)
Someone told me X11R5 supports some internationalization
features, but I cannot find any examples for my need. Is there
anybody has done some similar jobs ?

By the way, all the English fonts should be replace by Chinese or
Japanese fonts, that means in windows, menubar, button....

That will be great if someone can share us what you have done.
Thanks in advance.

M.C. Hung


Newsgroup: comp.windows.x
Document_id: 68244
From: herb@iiasa.ac.at (Herb HASLER)
Subject: X11R5 on IBM RS6000

Yes we have the same problem with xinit.  The problems seems to come from the
fact that the XOpenDisplay(":0") fails.   If we try (on our machine
named godzilla)

setenv DISPLAY godzilla:0.0
Xibm&
xterm 


It works fine, but the following will not work

setenv DISPLAY unix:0.0
Xibm&
xterm 

Did we set a configuration option incorrectly?  Thank you for any assistance
you can offer.

---------------------------------------------------------------------------
                    Herb Hasler --- herb@iiasa.ac.at
      International Institute for Applied Systems Anaylsis  (IIASA)
          A-2361 Laxemburg, Austria --- +43 2236 715 21 ext 548
---------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68245
From: se7107297@ntuvax.ntu.ac.sg
Subject: X-Windows on MS-DOS PC? Where's the FAQ?

I need to know where I can get a FAQ on Xwindows for MS-DOS machines.
The usual FAQ just gave me a name of a file called XServers-NonUNIX.txt.Z.
which I cannot find anywhere.
 
  I need to do X-Windows programming on a MSDOS PC. Does anyone know how to
go about doing it?


Newsgroup: comp.windows.x
Document_id: 68246
From: me@dude.pcs.com (Michael Elbel)
Subject: Re: Blinking Cursor in Xterm???

In <1993May16.213936.6904@wariat.org> allbery@wariat.org (allbery) writes:

>As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
>+---------------
>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>> was implemented by drawing a rectangle around the character. I doesn't
>> seem to be changed 'til now.
>> But if you have the sources you could add a blinking cursor via
>> XtAppAddTimeOut or similar :-|.

>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>which does this in its DOS windows).  Do you really want xterm to wake up every
>half second and whack the server into doing a bitblt?

So what? I'm running emu on a 25 MHz 68020 box. I cannot make out ANY
difference in performance whether the cursor is set to blinking or
not (If you think about it a bit, a cycle of 400 ms is a hell a lot of
time for even the slowest PC). Since you would of course only enable
the blinking text cursor when your xterm has the input focus, this 
application is active anyway. To repeat it, a blinking text cursor
costs almost nothing in performance, it just needs some thought when
designing the xterm software.

Michael
--
Michael Elbel, Digital-PCS GmbH, Muenchen, Germany - me@dude.pcs.com
Intelligenz is sowieso nur wat fuer Doofe - Mia
Fermentation fault (coors dumped)

Newsgroup: comp.windows.x
Document_id: 68247
From: sadie@cs.sun.ac.za (Sadie  HF)
Subject: Looking for Article


I am urgently looking for the following article, can I cannot find it
anywhere in our local libraries:

      John Allen Smith
      "The Multi-Threaded X Server"
      The X Resource
        Issue 1, pp. 73-89, Winter 1992

If anyone can tell me where I can find it, I WILL much appreciate it!!

H.F. Sadie
Departement of Computer Science
University of Stellenbosch
South Africa

e-mail:  sadie@itu.sun.ac.za



Newsgroup: comp.windows.x
Document_id: 68248
From: ccdw@kudu.ru.ac.za (Dave Wilson)
Subject: Open Look - where?

Where can I obtain a copy of the Open Look widgets?  Is it obtainable on
the net somewhere, or do I need to order a copy (if so, how)?

Thanks for any help.  Please email.

--
Dave Wilson
Computing Centre, Rhodes University
Grahamstown, South Africa

Newsgroup: comp.windows.x
Document_id: 68249
From: Callum.Downie@brunel.ac.uk (Callum Downie)
Subject: Re: Mac X and Sun OpenWindows 3

In article <1t851o$mrd@ux1.cso.uiuc.edu> kerr@ux1.cso.uiuc.edu (Stan Kerr) writes:
>benj@ossa.hq.nasa.gov (Benjamin Jones) writes:
>
>>I've run into a bit of a snag while trying to get Mac X up and running and would appreciate
>> 
>> stuff deleted
>>
>>are NOT on my local net here, but the above problem holds true for non-local Suns as well.
>
>I tried to send this as private mail, but mail to benj@ossa.hq.nasa.gov was
>rejected, so here it is:

same here

>
>Here is an extract from the README file that comes with MacX:
>
>Users of remote commands with Sun machines may find that their remote commands 
>appear to do nothing and there is no output from the Sun machine.  This is due 
>to a feature of the Sun rexecd network daemon which quietly disconnects from 
>requesting machines that are not known to the Sun|s network address (/etc/hosts
>or NIS hosts) database.  To successfully use remote commands with a SunOS-based
>machine, there must be an entry in the network address database for the 
>Macintosh which is running MacX.
>

I received similar information/advice about what appears to be the same problem 
Benjamin has (and I still have).
NIS has all the information about the Macs
(I even put explicit entries in /etc/hosts to no avail).
Monitoring with 'snoop' on my Classic, the initial REXEC packet is sent to
the the SUN, which sends something to the correct Mac, but nothing appears
at the Mac.
'rexecd' is number one suspect, but it's more suble than the README suggests and
I haven't yet looked into it further.

>-- 
>
>Stan Kerr    
>Computing & Communications Services Office, U of Illinois/Urbana
>Phone: 217-333-5217  Email: stankerr@uiuc.edu   
-- 
callum.downie@brunel.ac.uk
Faculty of Technology, Brunel University, Uxbridge, UB8 3PH, UK
+44 895 274000 x2730

4.003 Die meisten Saetze und Fragen, welche ueber philosophische Dinge geschrieben worden sind, sind nicht falsch, sondern unsinnig.
7     Wovon man nicht sprechen kann, darueber muss man schweigen.

Newsgroup: comp.windows.x
Document_id: 68250
From: brown@ftms.UUCP (Vidiot)
Subject: Re: viewing postscript files under X windows

In article <gordons.737605006@mon.sps.mot.com> gordons@mon.sps.mot.com (Gordon Sasamori) writes:
<In <604@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:
<
<>OW 3.0 is the same.  But, the definition of broken is relative.  Pageview
<>requires DSC compliant PostScript files, in order to stop at page breaks.
<>I don't consider that broken.  I say that any program that puts out a
<>PostScript file that isn't DSC compliant is broken.
<
<Well that may be true.  However, the man page for pageview for OW 2.0
<does not mention about DSC compliance.  In any event, the point here
<is that if you try to display some PS files using pageview you will
<find out that it's not a practical tool.

It is true that the man page for pageview does not say that the files need
to be DSC compliant.  That is the fault of the left hand not knowing what the
right hand is doing at Sun.  I was informed by a Sun employee that the pageview
program does require DSC compliant PostScript.  There was the possibility that
it was going to be changed so that if the file wasn't DSC compliant that it
would stop at each showpage.  I believe that this method would preclude being
able to go backwards and forwards through the file, i.e., you could only go
forward to the next showpage.  This isn't in OW3.0 pageview, but maybe it is
in the Solaris 2.x version of OW (OW 3.1?).

In any event, I find pageview extremely useful.  Since all of the PostScript
that I produce IS DSC compliant, I don't have any problems.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 68251
From: rainer@sun3.eeam.elin.co.at (Rainer Hochreiter)
Subject: Moving Curosr with Keyboard

Hi Xperts!

How can I move the cursor with the keyboard (i.e. cursor keys), 
if no mouse is available?

Any hints welcome.

Thanks.
-- 
Rainer Hochreiter                | Telephone: +43 (1) 89100 / 3961
ELIN-Energieanwendung GesmbH     | Telefax  : +43 (1) 89100 / 3387
Penzingerstr. 76                 |
A-1141 Wien, Austria/Europe      | E-mail   : rainer@elin.co.at

Newsgroup: comp.windows.x
Document_id: 68252
From: emeinfel@fomalhaut.gb.nrao.edu (Edmond L. Meinfelder)
Subject: Re: Fitting straight line (or curve) to data points

In article  warda@land.vf.ge.com (Andrew Ward) writes:
|>      I am looking for a graphing program that will fit my data to a straight     
|>  line.  Any program that estimates a closest fit curve or gives any
|> statistics would be helpful.     


Many spreadsheets do regression analysis.  The topic is also well covered
in most undergraduate statistic books.  Cubic Splines are usually well
covered in any undergraduate computer science numerical analysis text.
I am sure ge/mm has a well stocked library.

I have never used mathematica, but I would be surprised if it could not do a 
spline.

-- 
Edmond L. Meinfelder                         Programmer, Virtual Guy,
"My aardvark is bigger." -Anon.              Hack for hire.

Newsgroup: comp.windows.x
Document_id: 68253
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Blinking Cursor in Xterm???

me@dude.pcs.com (Michael Elbel) writes:

>In <1993May16.213936.6904@wariat.org> allbery@wariat.org (allbery) writes:

>>As quoted from <1993May13.212321.2563@moepi.do.open.de> by bernward@moepi.do.open.de (Bernward Averwald):
>>+---------------
>>> Back in the days of X11.1 I did analyse the xterm code. The cursor 
>>> was implemented by drawing a rectangle around the character. I doesn't
>>> seem to be changed 'til now.
>>> But if you have the sources you could add a blinking cursor via
>>> XtAppAddTimeOut or similar :-|.

>>The server overhead for this is mildly ridiculous, though (see also DESQview/X,
>>which does this in its DOS windows).  Do you really want xterm to wake up every
>>half second and whack the server into doing a bitblt?

>So what? I'm running emu on a 25 MHz 68020 box. I cannot make out ANY
>difference in performance whether the cursor is set to blinking or
>not (If you think about it a bit, a cycle of 400 ms is a hell a lot of
>time for even the slowest PC). Since you would of course only enable
>the blinking text cursor when your xterm has the input focus, this 
>application is active anyway. To repeat it, a blinking text cursor
>costs almost nothing in performance, it just needs some thought when
>designing the xterm software.

You are stuck in a distributed system feedback loop!  What if you are on an
Xterminal or running xterm over the net to another machine?  That is when the
load problems occur.  If you had a machine with 20 Xterminals attached and
they all had blinking cursors in xterm's, this could represent a considerable
ethernet bandwidth waste.

I'm not picking on you, just people keep forgetting that there is a lot of life
out there besides distributed or singleuser "Workstations"!
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68254
From: dgreen@sti.com (Dan R. Greening)
Subject: Re: Did Microsoft buy Xhibition??

jessea@u013.me.vp.com (Jesse W. Asher) wrote:
>I've been getting mail from Xhibition about the June conference and I was
>wondering if Microsoft had bought Xhibition?  The front says "Conference
>from Microsoft Windows NT Developers".  What's the deal?  I thought
>"X"hibition was for "X-windows"??

I had exactly the same feeling.  I was depressed.  If you ever programmed
Windows and X11, you'd be depressed if an X conference touted its tutorials
to show you how to convert from X to Windows API.  Sort of like, "how to
convert your C++ classes to the new, improved C."

What happened?
-- 
____
\  /Dan Greening    Software Transformation   1601 Saratoga-Sunnyvale Rd, #100
 \/greening@sti.com (408) 973-8081 x313       Cupertino, CA 95014

Newsgroup: comp.windows.x
Document_id: 68255
From: ngolding@tartarus.uwa.edu.au (Neil Golding)
Subject: CGA for windows 3.1

HI

I`m looking for some assistance in locating information on how to run
win 3.1 on a CGA monitor. The setup suggests you look at the manual, but
the guy I`m helping is part of a large office and computer assistance
must be booked in advance, therefore he cant get windows onto his CGA
system. 

Thanx in anticipation

NEIL

Newsgroup: comp.windows.x
Document_id: 68256
From: km@mathcs.emory.edu (Ken Mandelberg)
Subject: Graphics Text with X?

Are there any graphics texts with examples/demos/projects directly in
X?

The last time I taught the course, I used a popular graphics text that
uses its own graphics package, with implementations available for
X/Mac/PC.  The problem was that after the course the students were good
at programming in the artificial package, but frustrated that they
couldn't really use their skill for other work.


---
Ken Mandelberg      | km@mathcs.emory.edu          PREFERRED
Emory University    | {rutgers,gatech}!emory!km    UUCP 
Dept of Math and CS | km@emory.bitnet              NON-DOMAIN BITNET  
Atlanta, GA 30322   | Phone: Voice (404) 727-7963, FAX 727-5611



Newsgroup: comp.windows.x
Document_id: 68257
From: timbo@rudolph.csd.harris.com (Tim Bomgardner)
Subject: X Professional Organization

Has anyone ever heard of the X Professional Organization?  Is anyone a member?
Is the membership worth the $100 or so that they charge?

Tim Bomgardner

Newsgroup: comp.windows.x
Document_id: 68258
From: fvd@ma1ws1.mathematik.uni-karlsruhe.de (M. 'FvD' Weber)
Subject: Q: Whats _vendorShellWidgetClass ?


We tried to compile an old X11R4/Motif program with X115 and a newer
Version of Motif.

But we newer succeed. Any ideas?

CC  -o xtrack.new main.o libxtrack.a ../xutils/libxutils.a ../pmshort/libpmshort.a  ../matrix/libmatrix.a  otte/lib_otte.a verb/lib_verb.a /tools/newmotif/lib/libMrm.a /tools/newmotif/lib/libXm.a -L/tools/X11R5/lib -lXaw -lXmu -lXt -lX11  -lL -lm -lXext 
cXm.a -lXaw -lXmu -lXt -lX11 -lL -lm -lXext -L/usr/CC/sun4/ -lC
ld: /tools/X11R5/lib/libXaw.sa.5.0(sharedlib.o): _vendorShellWidgetClass: multiply defined
*** Error code 2
make: Fatal error: Command failed for target `xtrack'

Thanks FvD.
--
       FvD, Markus Weber fvd@ma1ws1.mathematik.uni-karlsruhe.de
		  Sometimes there's nothing to feel.

Newsgroup: comp.windows.x
Document_id: 68259
From: schit@ctp.com (Subbarao Chitturi)
Subject: Starting X windows

As soon as I am logged into Linux, I type

# xinit

Setting TCP SO_LINGER : Protocol not available
no SIOCGIFCONF
XFree86 Version 1.2/X Window System
(protocol Version 11, revision 0, vendor release 5000)
configured drivers:
	VGA256(256 colout SVGA):
	  et4000, et 3000, PVGA1, gvga, ati, tvga8900c, tgva9000
    (using VT number 7)
Mouse : type : Mouse Systems, device : /dev/mouse, baudrate:1200
Font Path set to "usr/lib/X11/fonts/Type1, /usr/lib/X11/fonts/75 dpi/,
				  /usr/lib/X11/fonts/Speedo, /usr/lib/X11/fonts/Bitstream1/,
				  /usr/lib/X11/fonts/misc.
VGA 256 : et4000 ( mem : OK numclocks : 16 )
VGA 256 : Clocks : 25.2 28.3 47.8 41.2 25.4 0.0 47.6 0.0
VGA 256 : Clocks : 0.0  0.0  0.0  0.0  0.0  0.0 0.0  41.3
Vga 256 : Too little memory for virtual resolution 1024 1204

*** A configured device found, but display modes could not be resolved. ***

Fatal server error:
no screens found
giving up.
xinit : Interrupted system call(errno 4) : Unable to connect to X server
xinit : No such process(errno 3) : Server error.

===========================================================================

Why am I getting these messages when I type in xinit?
Is there a configuration file for X-Windows(like config.sys for MSDOS)?
How do I start the X session( from shell )?


______________________________________________________

Subbarao Chitturi
schit@ctp.com

Newsgroup: comp.windows.x
Document_id: 68260
From: khera@cs.duke.edu (Vivek Khera)
Subject: Re: 'makedepend' problem

In article <3032@cronos.metaphor.com> mlt@blues.infores.com (Michael Turok) writes:

   We have a problem with 'makedepend': it doesn't know how to correctly process
   #if clause in C preprocessor statements. It evaluates everything to
   true no matter what the conditionals are.

   [...]

   Has anybody come up with some solution/fix to 'makdepend' other than
   WriteYourOwnParser... and willing to share it with us?

rewrite 'makedepend' to use 'cc -M' or 'gcc -M' or 'gcc -MM' (which is
the one I prefer, since system headers don't change that often) for
generating the actual dependencies.  you'll still need to write the
parts that edit the actual Makefile.  I think there's a program in the
Berkeley distributions called mkdep that will do essentially this.
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Vivek Khera, Gradual Student/Systems Guy  Department of Computer Science
Internet:   khera@cs.duke.edu             Box 90129
            (MIME mail accepted)          Durham, NC 27708-0129 (919)660-6528

Newsgroup: comp.windows.x
Document_id: 68272
From: dbl@visual.COM
Subject: Re: 'makedepend' problem


|> We have a problem with 'makedepend': it doesn't know how to correctly process

I'm most of the way through adding a grammar for parsing the #if expressions.
I don't know when I'll be able to get back to it; you're welcome to what I 
have so far. I haven't looked at other versions of makedepend, which may solve
the problem more elegantly.

-- 
David B. Lewis		Temporarily at but not speaking for Visual, Inc.
day: dbl@visual.com	evening: david%craft@uunet.uu.net

Newsgroup: comp.windows.x
Document_id: 68273
From: pjs@euclid.JPL.NASA.GOV (Peter J. Scott)
Subject: Re: Did Microsoft buy Xhibition??

Well, I'm glad that there's plenty of NT stuff at Xhibition.
Not because I want to use it instead of X, but because I want to 
find out what the chances are that some time in the future I may 
not have any choice.

-- 
This is news.  This is your       |    Peter Scott, NASA/JPL/Caltech
brain on news.  Any questions?    |    (pjs@euclid.jpl.nasa.gov)

Newsgroup: comp.windows.x
Document_id: 68274
From: kerch@parc.xerox.com (Berry Kercheval)
Subject: Re: CGA for windows 3.1

sat@eng.tridom.com (Stephen Thomas) writes:
>In article 6af@uniwa.uwa.edu.au, ngolding@tartarus.uwa.edu.au (Neil Golding) writes:
>>I`m looking for some assistance in locating information on how to run
>>win 3.1 on a CGA monitor. 
>The CGA driver for Windows 3.0 works fine with Win3.1. 


Oh no! Oh no!  They've taken over comp.windows.misc and now THEY'RE
COMING FOR US!

  --berry

--
Berry Kercheval :: kerch@parc.xerox.com 


Newsgroup: comp.windows.x
Document_id: 68277
From: oj@world.std.com (Oliver Jones)
Subject: Re: XQueryTree, XGrabServer, and robustness

In article <1993May18.150655.23645@viewlogic.com> josh@viewlogic.com (Josh Marantz) writes:
>I have an application that wants to walk the server window hierarchy,
>looking for a window with a specific property. 

>I think what happens is that XQueryTree gives me an array of n
>children, but by the time I get to the nth child window, it has been
>destroyed.  Then I get a BadWindow error, and my application exits.
>
>How can I make this robust?  I've thought of the following:
 ...
>2.      Set up an X error handler that longjmps back to where I
>        made the offending call.  Is this safe?  Do I have to
>        longjmp, or can I just return?

BadWindow is an X protocol error.  If you write a custom error handler
which does not do "exit(1);" the error handler will return and let
your program carry on.  So, using a XSetErrorHandler is the way to
go, but never mind the longjmp.


>3.      Register for DestroyNotify on all the windows returned from
>        XQueryTree.  ...

Too hard....

Newsgroup: comp.windows.x
Document_id: 68278
From: brendan@oc3s-emh1.ARmy.MIL (Brendan McKenna)
Subject: Problems with characters above 127


Hi all,

I've read the FAQ, I've fiddled around, but I am still having problems getting
my poor old HP9000/300 to let me input/display characters above 127.  I have 
the following in my .Xdefaults:

XTerm*Font     :   -adobe-courier-bold-r-normal--14-140-75-75-m-90-iso8859-1

So I believe that I have the correct font selected to use in xterm.  I have NOT
set my LC_CTYPE environment variable because whatever I put it, it tells me that
that locale is not supported (apparently we have no additional locales defined,
or at least, /lib/locale doesn't exist).  I can get some of the characters
above 127 to print out, but they are not where I'd expect them -- for example,
Alt-v does not produce a u umlaut.  This leads me to believe that the fault
lies with the stty settings, which are as follows:

speed 9600 baud; line = 0; susp <undef>; dsusp <undef>
intr = ^C; quit = ^\; erase = ^H; kill = ^K; swtch = ^@
eof = ^D; eol = ^@; min = 4; time = 0; stop = ^S; start = ^Q
-parenb -parodd cs8 -cstopb hupcl cread -clocal -loblk -crts 
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc 
ixon -ixany ixoff -ienqak 
isig icanon iexten -xcase echo echoe echok -echonl -noflsh 
opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel -tostop 

Anyway, I've struggled with this off and on for a couple of weeks, and any help
anyone could offer would be greatly appreciated.


					Thanks!

					Brendan

Newsgroup: comp.windows.x
Document_id: 68279
From: dls@Autodesk.COM (Daniel Louis Smith)
Subject: Windows -> Motif tools SUMMARY


	I posted this May 12th:


>         I am looking for info on products that can take
> Windows source on a Unix box (such as Sparc), and produce a
> Motif executable.  Another requirement is that MFC 2.0 should
> be supported.  I already know of:
> 
>         Wind/U  by Bristol Technologies
>         Hunter SDK
>         MainWin by MainSoft
> 
>         Are there any others?
> 
> 	I will post a summary if it's wanted.


	I got a few requests asking for a summary, so I'll attempt one
here:


	Here's the ones I know of:

	Wind/U		- Bristol Technologies

	Hunter SDK	- Hunter Systems

	MainWin		- MainSoft

	LIBWXM          - Visual Solutions


	Hunter 

	The company is going through some big changes.  I expect
to eventually see the Hunter SDK pop up with a new name.  At the moment, it
is difficult to get phone calls returned and otherwise obtain info.
Hopefully they will post something about themselves once things settle down. 

	Visual Solutions

	LIBWXM is a product that I just heard about.  They don't
yet support MDI or MFC.  Libwxm was used to port VisSim, a mathematical
modeling package.  Does native Motif Widgets, like Wind/U from Bristol.
Contact Carrie Lemieux at 508 392 0100 for more info.  She's very helpful.

	MainSoft

	This translates Windows source to a Unix executable that
can switch off between a Windows or Quasi-Motif look and feel at
runtime.  They skip the Xt and Xm (Motif) X toolkit levels and go
straight to Xlib.  They don't yet support MFC.  They're at 415 896 0708.

	Bristol

	This company that seems to be on the right track.  Wind/U uses
Xlib/Xt/Xm to give a *real* Motif app.  They seem to be doing the most work
in trying to support things like DDE, Common Dialogs, and more on the horizon.
My contact there is knowledgeable, responds to my email, and wrote an example
program for me showing how to obtain X widgets from Windows handles.
They're at 203 438 6969, or you can email info@bristol.com.

-- 
		 dls@autodesk.com           dls@netcom.com
     Daniel L Smith, Autodesk, Sausalito, California, (415) 332-2344 x 2580
disclaimer:  accuracy of statements corrrelates somehow to caffeine intake

Newsgroup: comp.windows.x
Document_id: 68298
From: spatel@cs.tamu.edu (Samir K Patel)
Subject: Colorizing Motif Widgets using Resource File



I posted this question about colorizing motif widgets. I got it working
fine. There was one bug in my .Xdefault file. It should work fine in normal
case.

Thanks


Samir ( spatel@cs.tamu.edu )

Newsgroup: comp.windows.x
Document_id: 68299
From: gabi@ankh.technion.ac.il (Gabi Zodik)
Subject: Wanted An Interactive GUI builder for X motif

Hi there,

I'm looking for tools that can make X programming easy.
I would like to have a tool that will enable to create X motif
GUI Interactivly. Currently I'm Working on a SGI with forms.
A package that enables to create GUI with no coding at all
(but the callbacks).
Any help will be appreciated.

Thanks Gabi.
      ________________________________________________
     /                                                \
    /      /\                                          \
   / .----/  \----.        Gabi Zodik                   \
  /   \          /    EE room 608  Ph. 04-29-4723        \
 /  .--\ (o)(o) /__.  Technion, Haifa, Israel             \
|    \     ()     /   Interest: Mapping Problem           |
 \    >   (C_)   <    E-mail gabi@techunix.technion.ac.il /
  \  /___\____/___\                                      /
   \    /|    |\                                        /
    \  /        \                                      /
     \________________________________________________/


Newsgroup: comp.windows.x
Document_id: 68300
From: gmh@hpfcso.FC.HP.COM (Greg Hughes)
Subject: Re: HPGL to anything converter wanted

In comp.windows.x, doug@happy.vf.ge.com (Doug Hughes) writes:

> 
> I've found an hpgl viewer for X. and a converter from HPGL
> to postscript.. Does anybody have anything that allows you
> to convert from anything into HPGL? I'm desperately in need
> of something like this.

HPGL does not support raster primitives, so a formatter would have to 
punt on most popular image formats.  This probably explains the lack of
translators out there.  What do you need to plot ?

Greg Hughes	gmh@fc.hp.com	(303) 229-7162

Newsgroup: comp.windows.x
Document_id: 68301
From: brown@ftms.UUCP (Vidiot)
Subject: Re: Compiling ghostview under Sun OpenWindows 3

In article <C75z4A.8r7@curia.ucc.ie> pflynn@curia.ucc.ie (Peter Flynn) writes:
<Due it seems to Sun's crapulous organisation of the X libraries and includes,
<most standard (GNU and other) software won't compile out of the box (well, tar
<file). 
<
<Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
<so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
<now the ghoddam thing _still_ complains it can't find them.
<
<I still haven't been able to compile xdvi, not no way.
<
<Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
<(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
<tried hard copying all the relevant files into the "right" places and
<every time, there's some bit missing or it refuses to find it.

Sounds like you didn't load the support for those libraries when OW3.0 was
loaded.  The Xaw support was missing from OW2.0 but added in 3.0.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 68302
From: brown@ftms.UUCP (Vidiot)
Subject: Re: program to display .gif files?

In article <1465@minya.UUCP> jc@minya.UUCP (John Chambers) writes:
<It seems silly, but while I've located things like tgif that can  edit
<gif  files, and various tools to convert to/from gif format, I haven't
<been able to locate a program that just opens a window and displays  a
<gif file in it.  I've looked thru various faq files, also to no avail.
<Is there one lurking about in some  archive?   Nothing  sophisticated;
<just "show the pretty picture"?
<
<Alternatively, if I could locate the specs for gif, I don't suppose it
<would be too hard to write it myself, but I have no idea where to even
<start looking for the spec.  (Well, actually, I do have an idea - this
<newsgroup.  ;-)

Get, xv, version 3.0.  It reads/displays/manipulates many different formats.
-- 
harvard\
  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
rutgers/
INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Newsgroup: comp.windows.x
Document_id: 68303
From: cek@sdc.boeing.com (Conrad Kimball)
Subject: Re: Problem with R4 release

In article <MCGARY.93May12172612@mojo.intellection.com>, mcgary@intellection.com (Mike McGary) writes:
|> In article <1sr3klINNauq@news.u.washington.edu> pramod@stein.u.washington.edu (Pramod Mahadev) writes:
|> 
|> >   ld: Unidentified external symbol
|> >      _get_wmShellWidgetclass
|> >      _get_applicationshellwidgetclass
|> >
|> >     I use -lXaw -lXmu -lXext -lX11 -lXt not in this order but in a proper order
|> >
|> >   I am wondering if there has to be some changes in my link libraries or should
|> >   i include some more libraries.
|> >
|> >   ANy help in this matter will be very useful and highly appreciated
|> >
|> 
|> We get this too.  If you put -Bstatic into your options it goes away. 
|> Things seem to run ok without it...must not be called very often.

From the FAQ:

Subject:  96)! What is this link problem with libXmu on SunOS 4.1.[23]?

        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:
        _get_wmShellWidgetClass
        _get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" appears to work.

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 MIT 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 export in [1/93]
        contrib/X11R4_sunos4.1.2_patch_version3.Z

--
Conrad Kimball        | Client Server Tech Services, Boeing Computer Services
cek@sdc.cs.boeing.com | P.O. Box 24346, MS 7A-35
(206) 865-6410        | Seattle, WA  98124-0346

Newsgroup: comp.windows.x
Document_id: 68304
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: ideas on xterm paste irritation?

In article <eillihca.9305181611108371@grizzle.stanford.edu> eillihca@drizzle.StanFord.EDU ( Achille Hui, the Day Dreamer ) writes:
:Read the xterm's manual pages for more informations about the avaliable
:actions of xterm. Read the FAQ and get a good book on customizing your
:X applications.

Okay, I will byte.  Could someone provide more info on a 'good book on
customizing your X applicaitons'?  I am in search of one which does NOT
expect the reader to have the X11 source code memorized (or even available
online!)

-- 
:s 
:s Larry W. Virden                 INET: lvirden@cas.org
:s Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614

Newsgroup: comp.windows.x
Document_id: 68305
From: wijkstra@fwi.uva.nl (Marcel Wijkstra (AIO))
Subject: Resources and cpp - HELP!

Hi,

I am running X11R4 on an IBM RS/6000 (AIX 3.2) and X11R5 on a Sun4 (SunOS 4.1).

Since I run X on both colour and black&white displays, I need different
values for the same resource, so I want to use #ifdef COLOR in my
application defaults files. However, cpp is only invoked by xrdb, and
not when the resources are loaded on demand.

Is there a proper solution to this?

So far, the only proper solution I've come to think of, is to create 2
different files in my ~/app-defaults/, say XTerm and XTerm-color, and
set my XFILESEARCHPATH to either $HOME/%T/%N or $HOME/%T/%N-color.
But that does not always seem to work (e.g. executing a remote shell
command without reading the .cshrc does not set XFILESEARCHPATH).

Furthermore, I thought of using #include "XTerm" in XTerm-color.
However, for resources in XTerm that I want to override in XTerm-color,
things are different on both machines. On a Sun, the FIRST found resource
is used (i.e. the one from XTerm, the b&w one), while on an RS/6000, the
LAST found value is used (i.e. the one from XTerm-color). What can I do
about it?

I have one last question: for the specification of XFILESEARCHPATH, I
can use %T, %N, %C and %S. %T stands for app-defaults, %N for the
resource class, but what do %C and %S stand for?

Thanks in advance for replying,
Marcel.
-- 
 X   drs. Marcel Wijkstra     (AIO  Visualization)   wijkstra@fwi.uva.nl
|X|    Faculty of Mathematics and Computer Science   ph: +31 20 525 7522
 X       University of Amsterdam   The Netherlands   fx: +31 20 525 7490
=========== Life stinks. Fortunately, I've got a cold.==================

Newsgroup: comp.windows.x
Document_id: 68306
From: sakaria@vipunen.hut.fi (Sakari Aaltonen)
Subject: aXe/HP-UX Problem

I`ve been happy with aXe under Linux. Now I wanted to use it under HP-UX,
too. However, my attempts have ended in core dumps this far (Bus Error).

Has anybody else been more successful? Jim Wight`s INSTALL file does
say there have been problems with HP`s...

Data: aXe 5.0; HP-UX 9.01; X11R4 or X11R5 doesn`t seem to matter (shared
libs); HP 9000/720.

Thanks in advance,

-- 
Sakari Aaltonen            | Linux is an ftp-able Unix clone for 386/486 PC's.
sakaria@vipunen.hut.fi     | Boggles *my* mind, it does.

Newsgroup: comp.windows.x
Document_id: 68307
From: sommer@ips.cs.tu-bs.de (Thorsten Sommer)
Subject: Looking for a file-manager under TWM

Hi out there!

Every command-line-shell-favourating user: Close your ears, ehm, eyes...

I'm looking for a X file-manager which can be driven under TWM.
Somebody told me last night, there is one under OpenWindows
(and there certainly is one under MS-Windows :-#).

But I'd like an X-one, you know, with icon's, click-and-drag, directory-structures
shown in a graphic-layout, a paper-basket etc. ...

Anybody got an idea?

Please reply.

      _/   _/     _/_/_/       thSo - Thorsten Sommer, better known as:
     _/   _/    _/                    Chiquita (Denn nur Chiquita ist Banane!)
  _/_/_/ _/_/_/  _/_/    _/_/ 
   _/   _/  _/      _/ _/   _/           e-mail: sommer@ips.cs.tu-bs.de
  _/   _/  _/      _/ _/   _/   
 _/_/ _/  _/ _/_/_/    _/_/  
------------------------------------------------------------------------------
 Transform ... and roll out! (BigTruck - Transformers)
------------------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68308
From: ln@doc.ic.ac.uk (Leonidas Nikidis)
Subject: How XCreateRegion works ??


Hi,

	

   Could someone explain to me what exactly the Xlib functions 

XCreateRegion, XPolygonRegion, XPointInRegion do, or to 

suggest a ftp site where I can find programs using these functions.


PS: The man pages does not explain much ......

	
Thank you,
Leo.






-- 
---------------------------------------------------------------------
Leonidas Nikidis : ln@doc.ic.ac.uk	Imperial College, London,UK
					Dept. of Computing
---------------------------------------------------------------------

Newsgroup: comp.windows.x
Document_id: 68309
From: ik@arrow.ctt.bellcore.com (Ik Su Yoo )
Subject: Re: Did Microsoft buy Xhibition??


>>>>> "mark" == Mark A. Davis <mark@taylor.uucp> writes:

In article <1993May18.210029.26727@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:

  mark> *WE* are the ones in control of what we use.  It is those who
  mark> follow like blind sheep which cause the markets to skew.  I'm sure
  mark> there will be enough "paid market hipe NT conferences" without it
  mark> needing to be in what was once a conference for open windowing
  mark> enviroments.  I know that if I were planning to go I would cancel.
  mark> NOT because I have my eyes closed, but because NT does not belong
  mark> at such a conference.  I would, however, like to go to a CLOSED
  mark> environment NT conference to see the product because I am curious.
  mark> I doubt, however, based on the objective opinions of those I trust,
  mark> that I would be impressed.  --

Why do many (?) people believe that Xhibition '93 is one of the "paid
market hype NT conferences" (as you put it)? I for one am going, because
I, too, am curious about the technology. I think this is a great chance
to learn about NT, mainly because:

  - It will be presented in X's "home turf". I believe that the attendees
    will mostly have X backgrounds (biases? :-); thus, I expect that the
    NT presentations will face a tough audience.

  - I can be there in person to judge for myself whether or not NT is what
    it is hyped to be. This is as closely as I can get to in evaluating the
    NT technology without actually using it myself, which I don't have the
    time to do.

  - If NT turns out to be a vapor technology and I get bored, there will be
    many other interesting tutorials/presentations that I won't have to
    waste my time ... in California?!?  :-)

Just my thoughts...
--

Ik Su Yoo
RRC-4F728, x5764
ik@leis.bellcore.com

Newsgroup: comp.windows.x
Document_id: 68310
From: pb@idca.tds.philips.nl (Peter Brouwer)
Subject: Re: mysterious xdm files

X-Disclaimer: All views are my own unless expicitly stated otherwise.

In <1993May18.235641.10747@csi.jpl.nasa.gov> mwette@csi.jpl.nasa.gov (Matt Wette) writes:

>I'm getting lots of files in /usr/lib/X11/xdm of the form
>	Abert:0-a00138

>I'm running xdm.  Anybody know what these are and, better yet, how to
>move them (i.e., what resource can I change to make them appear
>somewhere else)?

That are the authorisation files for the server.
Depending on what type of key your X supports they contain magic cookies,
DES based authentication or SUN DES authentication.

The place is defined with the DisplayManager.authDir 
Other things like the file name can be changed as well see XDM manual pages.



--
#Peter Brouwer,                | Digital Equipment Enterprise ,              #
#NET  : pb@idca.tds.philips.nl | Integration Industry Standard Systems,      #
#PHONE:ext [+31] [-0]55 434218,| Dept Systems Enginering, Bld V1/B7          #
#FAX  :ext [+31] [-0]55 432103 | P.O.Box 245,7300AE Apeldoorn,The Netherlands#

Newsgroup: comp.windows.x
Document_id: 68311
From: queloz@bernina.ethz.ch (Ronald Queloz)
Subject: Integration of HP46021A-Keyboard into SCO ODT 2.0

SCO ODT allows to adapt the X-Server to any non-standard (AT) keyboard 
using the Xkeyboard configuration compiler xsconfig. SCO provides some
configuration files in /usr/lib/X11/xsconfig/*.kbd, e.g. for 
Siemens WX200.

Question:
Is there anywhere a configuration file for the HP46021A keyboard
available ? 
I am especially interested in using the HP specific keys such as 
"InsertLine", "Menu".

Thanks  -Ron.


Newsgroup: comp.windows.x
Document_id: 68312
From: dealy@narya.gsfc.nasa.gov (Brian Dealy - CSC)
Subject: Re: How XCreateRegion works ??


In article <1td5inINNl7m@finch.doc.ic.ac.uk>, ln@doc.ic.ac.uk (Leonidas Nikidis) writes:
|> 
|> Hi,
|> 
|> 	
|> 
|>    Could someone explain to me what exactly the Xlib functions 
|> 
|> XCreateRegion, XPolygonRegion, XPointInRegion do, or to 
|> 
|> suggest a ftp site where I can find programs using these functions.
|> 
|> 
|> PS: The man pages does not explain much ......
|> 
|> 	
|> Thank you,
|> Leo.
|> 
|> 
|> 
|> 
|> 
|> 
|> -- 
|> ---------------------------------------------------------------------
|> Leonidas Nikidis : ln@doc.ic.ac.uk	Imperial College, London,UK
|> 					Dept. of Computing
|> ---------------------------------------------------------------------
I use those routines in a widget which only redraws exposed areas.
here's a small piece of code that uses those routines

static void Redisplay(pw, ev, region)
XtpManagerWidget pw;
XExposeEvent *ev;
Region region;

/* pp->exposure_region is an XRegion */
XtpManagerPart *pp = &pw->plotter;
pp->exposure_region = XCreateRegion();
   /* region is passed via an expose event */
if(region == NULL)
{
if (ev->send_event)  /* synthetic event sent by widget it wants a full redraw*/
        {
        exporect.x = pw->core.x;
        exporect.y = pw->core.y;
        exporect.width = pw->core.width;
        exporect.height = pw->core.height;
        }
     else
        {
        exporect.x = ev->x;
        exporect.y = ev->y;
        exporect.width = ev->width;
        exporect.height = ev->height;
        }

stuff deleted      

/* region now contains the exposure region */
        XUnionRectWithRegion(&exporect,pp->exposure_region,pp->exposure_region);
}
else
        XUnionRegion ( region, pp->exposure_region, pp->exposure_region);
stuff deleted 
/* WE NEED to CLIP on EXPOSE REGION for REDRAWING the GRID */
        XSetRegion(XtDisplayOfObject(pw), pp->plotarea_gc,pp->exposure_region);
stuff deleted 
        /* check to see if child is exposed */
        if (XRectInRegion (pw->plotter.exposure_region,
                         child->core.x ,
                         child->core.y ,
                         child->core.width  ,
                         child->core.height ))

So, I build up a region of exposures so that when I service my container
widget redraw of rectobj children, I only redraw what need to be redrawn.

It works for me, hope this helps you.
Brian

-- 
Brian Dealy                |301-572-8267| It not knowing where it's at  
dealy@kong.gsfc.nasa.gov   |            | that's important,it's knowing
!uunet!dftsrv!kong!dealy   |            | where it's not at...  B.Dylan

Newsgroup: comp.windows.x
Document_id: 68313
From: bouronm@uproar.enet.dec.com (Marc Bouron)
Subject: Re: Looking for a file-manager under TWM


In article <1993May19.124004@ips.cs.tu-bs.de>, sommer@ips.cs.tu-bs.de (Thorsten Sommer) writes...
>Hi out there!
> 
>Every command-line-shell-favourating user: Close your ears, ehm, eyes...
> 
>I'm looking for a X file-manager which can be driven under TWM.
>Somebody told me last night, there is one under OpenWindows
>(and there certainly is one under MS-Windows :-#).
> 
>But I'd like an X-one, you know, with icon's, click-and-drag, directory-structures
>shown in a graphic-layout, a paper-basket etc. ...
> 
>Anybody got an idea?

I've recently joined the Motif world, so I'd like a similar tool for
Motif.  I've bene used to the OpenWin one in the past and miss it.

Cheers,

[M][a][r][c]

**  ---------------------------  **  -----------------------------  **
**  Marc CR Bouron               **  DESISCo Ltd.                   **
**  +44 (0)895 208260            **  Harefield Place, The Drive,    **
**  Marc.Bouron@ime.mts.dec.com  **  Uxbridge, Middlesex, UB10 8AQ  **
**  ---------------------------  **  -----------------------------  **

Newsgroup: comp.windows.x
Document_id: 68314
From: rick@ee.uwm.edu (Rick Miller - Linux Device Registrar)
Subject: Where can I find a list of "-<toolkit options>"?

I've just started messing with X Windows under Linux, and I've run into this
"-<toolkit options>" thing in the man-pages of a number of X clients.

Where can I get a list of these options?  Is this only an "xview" thing?
(If so, would some kind soul show me how to set it up under Linux?)

Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
          RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA

Newsgroup: comp.windows.x
Document_id: 68315
From: mark@taylor.uucp (Mark A. Davis)
Subject: Re: Blinking Cursor in Xterm???

barmar@think.com (Barry Margolin) writes:

>In article <1993May18.130845.6859@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>You are stuck in a distributed system feedback loop!  What if you are on an
>>Xterminal or running xterm over the net to another machine?  That is when the
>>load problems occur.  If you had a machine with 20 Xterminals attached and
>>they all had blinking cursors in xterm's, this could represent a considerable
>>ethernet bandwidth waste.

>Ethernet certainly has enough bandwidth for a few blinking cursors.  My
>Lisp Machine blinks the cursor twice a second and updates the time in the
>status line every second.  This uses under 1K bytes/second, or about .1% of
>the bandwidth of Ethernet.  A hundred of them on a single ethernet might be
>a problem, but a couple dozen should be fine.

Granted it's nothing to loose sleep over, but this is Ethernet's tragic flaw:
the more activity (especially lots of tiny activity), the more collisions
happen and the performance gets exponentially worse...  I am just now
opposing ANY kind of waste of bandwidth under Ethernet.  Although in a polling
system it would not be so bad.
-- 
  /--------------------------------------------------------------------------\
  | Mark A. Davis    | Lake Taylor Hospital | Norfolk, VA (804)-461-5001x431 |
  | Sys.Administrator|  Computer Services   | mark@taylor / mark@taylor.UUCP |
  \--------------------------------------------------------------------------/

Newsgroup: comp.windows.x
Document_id: 68316
From: mek@hydrox.enet.dec.com (Mark Klamerus)
Subject: EventHandlers on XmPushButtons


	Help,

	I've got an applications with a series of pushbuttons across
	the top (a toolbar).  I wanted to add eventhandlers to these
	pushbuttons on EnterWindowMask and LeaveWindowMask so that
	I can put up some descriptive text about the function of each
	pushbutton as the pointer crosses over it.

	I've done this fine, but I've turned up the following problem:

	When the pushbuttons are sensitive I get callbacks on both of
	the above events, but when they are not sensitive I only get
	callbacks on LeaveWindow events.  This seems odd.  I would
	expect this to be an all-or-nothing type of thing.

	Is this a bug?  If not, can someone explain this behavior?

	thanks,

	Mark


Newsgroup: comp.windows.x
Document_id: 68317
From: mich@lin.infolog.se (Thomas Michanek)
Subject: Re: GUI builders for VMS

In article <352@trident.datasys.swri.edu> mark@trident.datasys.swri.edu (Mark D. Collier) writes:
>I am looking for GUI Builders/UIMS's which run in a VMS/OpenVMS
>environment. I am interested in both Motif tools and GUI-independent
>tools such as XVT. My client also requires that the tool has been
>in production for at least 6 months in the VMS environment. Note
>that I have the list of tools from the FAQ, but not the info on
>VMS availability.
>
>Thanks

Take a look at TeleUSE, a complete UIMS from Alsys (formerly TeleSoft).
In the US, you can reach them at (619) 457 2700.

Alsys have an VMS version of TeleUSE v2.0.5 for VMS V5.5 or higher,
built using DECwindows Motif 1.0 (based on X11R4 and Motif v1.1.1).

BTW, the VMS port from the UNIX version was made at my company, and was
released in November 1992.

.- - - - - - - - - - - -.  _ _  _ ___ _  _   _   _  _  _  _   .- - - - - - - -.
|    Thomas Michanek    |  | |\ | |_ / \ |  / \ / _ | / `|_`  | Dial +46 13   |
|  Infologics Linkoping |  | | \| |  \_/ |_,\_/ \_| | \_,._|  | 210060  Phone |
| email:Thomas.Michanek |          _                          | 210068  Direct|
|       @lin.infolog.se |  L I N K O P I N G  -  S W E D E N  | 210155  Fax   |
`- - - - - - - - - - - -'                                     `- - - - - - - -'




Newsgroup: comp.windows.x
Document_id: 68318
From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Subject: Re: Blinking Cursor in Xterm???

In article <1tbpi9INNfp3@early-bird.think.com> barmar@think.com (Barry Margolin) writes:
>In article <1993May18.130845.6859@taylor.uucp> mark@taylor.uucp (Mark A. Davis) writes:
>>You are stuck in a distributed system feedback loop!  What if you are on an
>>Xterminal or running xterm over the net to another machine?  That is when the
>>load problems occur.  If you had a machine with 20 Xterminals attached and
>>they all had blinking cursors in xterm's, this could represent a considerable
>>ethernet bandwidth waste.
>
>Ethernet certainly has enough bandwidth for a few blinking cursors.  My
>Lisp Machine blinks the cursor twice a second and updates the time in the
>status line every second.  This uses under 1K bytes/second, or about .1% of
>the bandwidth of Ethernet.  A hundred of them on a single ethernet might be
>a problem, but a couple dozen should be fine.

Bandwidth is unlikely to be the problem, except over a wet string network.
One of major flaws of X is the horrendous number of transactions (and
hence process switches) that it forces upon a host.  Actual measurements
(hourly average) are 5 per second per logged in user, which can lead to
20-50 or more process switches (depending on whether each event is
filtered by the window manager as well as the applications and how
many processes are needed for each character.)

While a blinking cursor needs only the application and the networking
process, and does not add any transactions, it will add something like
10 process switches per second per user.  This is a significant increase
in overhead, especially as the application may have quite a large working
set.  If you want a rapidly blinking cursor, there could be as many
as 50.

If you want to go there, I wouldn't start from here!


Nick Maclaren
University of Cambridge Computer Laboratory,
New Museums Site, Pembroke Street,
Cambridge CB2 3QG, England.
Email:  nmm1@cus.cam.ac.uk
Tel.:   +44 223 334761
Fax:    +44 223 334679

Newsgroup: comp.windows.x
Document_id: 68319
From: beck@irs131.inf.tu-dresden.de (Andre Beck)
Subject: XDM & backgroundPixmap ?


Hi,

I've tried to get rid off XDM's ugly Login window by giving it a 'cool'
backgroundPixmap ressource. As Login is derived from Core, this should be
possible. Anyway, setting xlogin*backgroundPixmap:/a/b/c.xpm did not
produce any message of the form 'cannot convert String to Pixmap' and
explicitely registering such converter lead to nothing, too.

Any way to do it ?

--
+-o-+--------------------------------------------------------------+-o-+
| o |                \\\-  Brain Inside -///                       | o |
| o |                    ^^^^^^^^^^^^^^^                           | o |
| o | Andre' Beck (ABPSoft) mehl: Andre_Beck@IRS.Inf.TU-Dresden.de | o |
+-o-+--------------------------------------------------------------+-o-+

Newsgroup: comp.windows.x
Document_id: 68320
From: J.K.Wight@newcastle.ac.uk (Jim Wight)
Subject: Re: Athena Tookkit HELP !!!

vck0479@cs.rit.edu (Vidya C Kayar) writes:
>I am currently programming on Athena Toolkit. I am having problems
>creating a Text Widget. Any guidence or help will be greatly
>appreciated.

I assume that you are literally trying to create a widget of type
textWidgetClass. Use the AsciiText widget instead.

Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232



Newsgroup: comp.windows.x
Document_id: 68321
From: mick@quay.ie
Subject: Looking for converters for xpm


I am looking for utilities for converting GIFs/JPEGs/PS etc to xpm format? Any 
information appreciated.

Thanks,

Michael Linehan.

Newsgroup: comp.windows.x
Document_id: 68322
From: hou@siemens.com. (Tai-Yuan Hou)
Subject: How to iconize a window?

I have an application running in one window. In this application,
I'd like to iconize this window, and later deiconize back to window.
How could I do it? Your help would be appreciated.

Tai
thou@siemens.com


Newsgroup: comp.windows.x
Document_id: 68323
From: scot@bristol.NoSubdomain.NoDomain (Scot Wingo)
Subject: ******* Cool Demo Now Available on Internet! *********




Bristol Technology announces the availability of 
its HyperHelp(tm) and Xprinter(tm) demo for downloading.

This demo showcases the two products in the form of a 
diagram editor called DE.

Download the demo and see some of these exciting features for yourself:

	 o Complete on-line context sensitive help system.

	 o Printing support for PCL5 and PostScript.

	 o Rotated Text support!

	 o Source code for the demo is provided.

The demo is available via anonymous ftp from ftp.uu.net (137.39.1.9).

There are two versions of the demo located in the vendor/Bristol directory:
Sun     - sun4.demo.tar.Z (SunOS 4.x)
HP      - hp700.tar.Z     (HP-UX 8 & 9)

If you have any questions about the demo, send an
e-mail to: support@bristol.com.

If you want another version of the demo (rs6000,etc...) 
please send an e-mail to: info@bristol.com.

Remember to use binary mode!


What are HyperHelp and Xprinter?  Read on......
---------------------------------------------------------
Bristol Technology is proud to announce version 3.0 of
its popular HyperHelp product and version 2.0 of Xprinter.

			    HyperHelp 3.0
			    -------------
HyperHelp is the de-facto standard for on-line context
sensitive help in the Unix marketplace.  Through a one
line function call, application developers can access the
full features of HyperHelp and cut down drastically on
their development time.  HyperHelp can use the same RTF,
project, and bitmap files as the MS Windows Help facility.
This allows a documentation department to maintain a single
set of help documents portable between MS Windows, Motif and
Open Look.  HyperHelp can also be authored in FrameMaker. 
And with HyperHelp 3.0 Bristol introduces its SGML compiler!

New features in HyperHelp 3.0 include secondary windows,a character
based viewer, segmented bitmaps, SGML support, and an improved History
window.

			     Xprinter 2.0
			     ------------
Xprinter 2.0 allows developers to add sophisticated
printer support to their existing/new X based applications
very easily.  Xprinter uses the Xlib API for both the
display and printer.  This lets you use the exact same code
for drawing and printing.  Take a look at the source code for
our demo and see Xprinter in action.

If you are interested in adding PostScript and PCL5 support
to your application, Xprinter is the tool for you!  Earlier
this year Bristola dn USL signed an agreement that
resulted in Xprinter becoming the standard printing technology
for UNIX SVR4.2.


Feel free to run the demo and let us know what you think about
HyperHelp and Xprinter. 

If you have any questions or comments, send them to us at:
info@bristol.com or call us at (203) 438-6969.

				Happy demoing,



					The staff at Bristol Technology







     			    


Newsgroup: comp.windows.x
Document_id: 68324
From: henne@math.ias.EDU (Leslie R. Henne)
Subject: Re: ideas on xterm paste irritation?

In <C78u6q.D0D@deshaw.com>, wolf@cs.stanford.edu writes:

>Moving the mouse out of the xterm window before
>clicking up will not abort the paste.  In fact, once that middle
>button is pressed down, the paste is inevitable.

>So, the obvious questions.  Is there some way around this?  And, do
>others feel that moving the mouse out of an xterm window before
>release should abort the paste?  I would have thought this would have
>been a common enough problem that someone would have changed xterm by
>now, but maybe it's just me.

>Michael

It is not just you.  I have been aggravated many times by the mouse making
hay of my maladroitness, and would be _ever_ grateful to everyone who would
make keyboard alternatives for ALL mouse actions.

lsrh


Newsgroup: comp.windows.x
Document_id: 68325
From: curtis@aries.wistar.upenn.edu
Subject: Setting DISPLAY

I am working for a company which has only one connection to the Internet.
This is through a firewall gateway (unix workstation). I would like to be
able to telnet to a host outside the company and set the DISPLAY to my PC
which is running an X-terminal emulator (eXceed/W). The display can be set
to the gateway workstation with no problem but when I set the variable to 
my IP address I get a "Error: Can't open display" message. 

This can't be that hard to work around can it?

BTW I have no trouble running x-clients on local workstations (in the company)
and having them display on my PC.
-- 
Curtis Wahlgren                                       


Newsgroup: comp.windows.x
Document_id: 68326
From: kbw@helios.ath.epa.gov (Kevin B. Weinrich)
Subject: Tcpview doesn't read my XKeysymDB file. Howcum?

Any Tcpview-for-Sun users out there?  I pulled down the pre-compiled
executables made for Sun for Tcpview, but I'm getting a whole slew of the
following types of error messages when I try to start it up:
  Warning: translation table syntax error: Unknown keysym name: osfActivate
  Warning: ... found while parsing '<Key>osfActivate:ManagerParentActivate()'
  Warning: translation table syntax error: Unknown keysym name: osfCancel
  Warning: ... found while parsing '<Key>osfCancel:ManagerParentCancel()'
  Warning: translation table syntax error: Unknown keysym name: osfSelect
  Warning: ... found while parsing '<Key>osfSelect:ManagerGadgetSelect()'
  ...
But I *know* I have those in my keysym:
  egrep "osfActivate|osfCancel|osfSelect" $OPENWINHOME/lib/XKeysymDB
yields:
  osfActivate             :1004FF44
  osfSelect               :1004FF60
  osfCancel               :1004FF69
  osfSelectAll            :1004FF71
and, if I take *out* the osf lines from said XKeysymDB, my copy of wscrawl
(another Motif-compiled-for-Sun program) gives the same type of complaints
as listed above.

Any tips?  I'm mystified.
-- 
Kevin Weinrich     Computer Sciences Corp.
kbw@helios.ath.epa.gov

Newsgroup: comp.windows.x
Document_id: 68327
From: main@lambda.msfc.nasa.gov (John Main)
Subject: xod - does it exist?


Hello,

I was wondering if anyone knew of an interface to od ( octal dump ), I assume
it would be called xod.  Actually, any viewer for a core file will do.

I looked at export ( @ mit ) in the index of /contrib, but didn't find anything 
relevant.


			Thanks,
			I Hate bama & winter
			main@superman.msfc.nasa.gov

Newsgroup: comp.windows.x
Document_id: 68332
From: iop@server2.iie.ncku.edu.tw
Subject: Program WM_PROTOCOLS in OPEN LOOK toolkit.....

Hi, all:
    I am studying the book --> "UNIX Desktop Guide to OPEN LOOK".
There is an example --> winprop.c that demonstrate how to program
WM_PROTOCOLS property in chapter 8.  It can run, but only show the
static text messages, no Notice pop_up. What is the problem?
	    Thanks in advance for help!!1	    IOP
/*-------------------------------------------------------------*/
/*  File:  winprop.c
 *
 *  Shows how to set properties on a window.
 *
 */
#include <X11/Xatom.h>	/* For definition of XA_ATOM */
#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <Xol/OpenLook.h>
#include <Xol/StaticText.h>
#include <Xol/OblongButt.h>
#include <Xol/Notice.h>
/* This file defines the atoms with _OL_ prefix */
/* ID of the top-level and NoticeShell widget */
static Widget top_level, notice_shell;
static Widget make_notice();
static char message[] = "Clients use properties to communicate \
with the window manager. This example illustrates how an OPEN \
LOOK application requests notification from the window manager \
when certain events occur. The communication is in the form of \
a ClientMessage event that the application processes in an \
event-handler.";
/* Atoms used for inter-client communication */
Atom ATOM_WM_PROTOCOLS, ATOM_WM_DELETE_WINDOW,
     ATOM_WM_SAVE_YOURSELF;
static void handle_wm_messages();
static void save_and_exit();
static void save_yourself();
static void pop_notice();
static void do_exit();
/* String to hold comand line (for use in responding to
 * the WM_SAVE_YOURSELF protocol message.
 */
char saved_cmdline[128];
/*-------------------------------------------------------------*/
void main(argc, argv)
int  argc;
char **argv;
{
    Widget w;
    int i;
/* Save the command-line for use in responding to the
 * WM_SAVE_YOURSELF protocol message.
 */
    sprintf(saved_cmdline, "%s ", argv[0]);
    if(argc > 1)
	for(i = 1; i < argc; i++)
	{
	    strcat(saved_cmdline, argv[i]);
	    strcat(saved_cmdline, " ");
	}
/* Create and initialize the top-level widget */
    top_level = OlInitialize(argv[0], "Ol_main", NULL,
			       0, &argc, argv);
/* Create a StaticText widget */
    w = XtVaCreateManagedWidget("Stext",
		      staticTextWidgetClass, top_level,
		      XtNstring,    message,
		      XtNwidth,     200,
		      NULL);
/* Create a NoticeShell widget for later use */
    make_notice(top_level);
/* Intern the atoms */
    ATOM_WM_PROTOCOLS = XInternAtom(XtDisplay(w),
					"WM_PROTOCOLS", False);
    ATOM_WM_DELETE_WINDOW = XInternAtom(XtDisplay(w),
				    "WM_DELETE_WINDOW", False);
    ATOM_WM_SAVE_YOURSELF = XInternAtom(XtDisplay(w),
				    "WM_SAVE_YOURSELF", False);
/* Add an event-handler to process ClientMessage events sent
 * by the window manager
 */
    XtAddEventHandler(top_level, NoEventMask, True,
		      handle_wm_messages, NULL);
/* Realize the widgets and start processing events */
    XtRealizeWidget(top_level);
/* Append the properties WM_DELETE_WINDOW and WM_SAVE_YOURSELF
 * to the definition of the WM_PROTOCOLS property. This step
 * requires the window ID of the top-level widget. The window
 * ID is valid only after the widget is realized.
 */
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    ATOM_WM_PROTOCOLS, XA_ATOM, 32,
		    PropModeAppend,
		    &ATOM_WM_DELETE_WINDOW, 1);
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    ATOM_WM_PROTOCOLS, XA_ATOM, 32,
		    PropModeAppend,
		    &ATOM_WM_SAVE_YOURSELF, 1);
    XtMainLoop();
}
/*-------------------------------------------------------------*/
static void handle_wm_messages(w, client_data, p_event)
Widget	  w;
XtPointer client_data;
XEvent	  *p_event;
{
    if(p_event->type == ClientMessage &&
       p_event->xclient.message_type == ATOM_WM_PROTOCOLS)
    {
	if(p_event->xclient.data.l[0] == ATOM_WM_DELETE_WINDOW)
	{
		save_and_exit();
	}
	if(p_event->xclient.data.l[0] == ATOM_WM_SAVE_YOURSELF)
	{
		save_yourself();
	}
    }
}
/*-------------------------------------------------------------*/
static void save_and_exit()
{
/* Display a notice giving the user a chance to respond */
    pop_notice(top_level, notice_shell);
}
/*-------------------------------------------------------------*/
static void save_yourself()
{
/* Set the WM_COMMAND property to the saved command-line. */
    XChangeProperty(XtDisplay(top_level), XtWindow(top_level),
		    XA_WM_COMMAND, XA_STRING, 8,
		    PropModeReplace, saved_cmdline,
		    strlen(saved_cmdline) + 1);
}
/*-------------------------------------------------------------*/
static Widget make_notice(parent)
Widget parent;
{
    Widget w, n_text, n_control, n_exit, n_cancel;
/* Create a button and provide a callback to pop up a Notice */
    w = XtVaCreateManagedWidget("QuitButton",
		      oblongButtonWidgetClass, parent,
		      XtNlabel,    "Exit...",
		      NULL);
    XtAddCallback(w, XtNselect, pop_notice, NULL);
/* Create the NoticeShell widget. Note that you have to use
 * XtVaCreatePopupShell instead of the usual
 * XtVaCreateManagedWidget.
 */
    notice_shell = XtVaCreatePopupShell("QuitNotice",
		      noticeShellWidgetClass, w,
		      NULL);
/* Get the ID of the text and control area widgets of the
 * NoticeShell.
 */
    XtVaGetValues(notice_shell,
		  XtNtextArea,	      &n_text,
		  XtNcontrolArea,     &n_control,
		  NULL);
/* Place a message in the text area of the NoticeShell */
    XtVaSetValues(n_text,
	    XtNstring, "Please confirm exit from program.",
	    NULL);
/* Add buttons to the control area of the NoticeShell.
 * Each button has an appropriate callback.
 */
    n_exit = XtVaCreateManagedWidget("NoticeExit",
		      oblongButtonWidgetClass, n_control,
		      XtNlabel,    "Exit",
		      NULL);
    XtAddCallback(n_exit, XtNselect, do_exit, NULL);
    n_cancel = XtVaCreateManagedWidget("NoticeCancel",
		      oblongButtonWidgetClass, n_control,
		      XtNlabel,    "Cancel",
		      XtNdefault,  True,
		      NULL);
    return w;
}
/*-------------------------------------------------------------*/
static void pop_notice(w_emanate, w_notice)
Widget	  w_emanate, w_notice;
{
    XtVaSetValues(w_notice, XtNemanateWidget, w_emanate, NULL);
/* Pop up the NoticeShell widget. The NoticeShell widget makes
 * sure that the aplication waits until the user selects from
 * one of the buttons in the NoticeShell's control area.
 */
    XtPopup(w_notice, XtGrabExclusive);
}
/*-------------------------------------------------------------*/
static void do_exit(w, call_data, client_data)
Widget	  w;
XtPointer call_data, client_data;
{
    XCloseDisplay(XtDisplay(w));
    exit(0);
}

Newsgroup: comp.windows.x
Document_id: 68333
From: mccoy@gothamcity.jsc.nasa.gov (Daniel McCoy)
Subject: Re: MotifBC

In article h1m@vtserf.cc.vt.edu, stellr@smyrna.cc.vt.edu (Ray Stell) writes:
|>
|>If I install X11R5 with backward compatibility for motif, will motif
|>1.2 clients work on the X11R5 servers?

It works for me.  I've run Motif 1.1.3,1.1.4,1.1.5,1.2,1.2.1, and 1.2.2 on
an X11R5 server with MotifBC defined.


---
Daniel J. McCoy           |=> SPACE  <=|                   I-NET, Inc.
NASA Mail Code PT4        |=>   IS   <=|             TEL: 713-483-0950
NASA/Johnson Space Center |=>  OUR   <=|             FAX: 713-244-5698
Houston, Texas 77058      |=> FUTURE <=| mccoy@gothamcity.jsc.nasa.gov


Newsgroup: comp.windows.x
Document_id: 68338
From: mdoob@ccu.umanitoba.ca (Michael Doob)
Subject: Re: Compiling ghostview under Sun OpenWindows 3

In <615@ftms.UUCP> brown@ftms.UUCP (Vidiot) writes:

>In article <C75z4A.8r7@curia.ucc.ie> pflynn@curia.ucc.ie (Peter Flynn) writes:
><Due it seems to Sun's crapulous organisation of the X libraries and includes,
><most standard (GNU and other) software won't compile out of the box (well, tar
><file). 
><
><Right now I'm trying to make ghostview. It complains it can't find X11/XaW/...
><so I just linked (ln -s) the files from /usr/openwin/share/include/X11 and 
><now the ghoddam thing _still_ complains it can't find them.
><
><I still haven't been able to compile xdvi, not no way.
><
><Has anyone _ever_ managed to get _anything_ normal to compile on a Sun
><(SunOS 4.1.3 and OpenWindows 3)? What's the trick I'm missing? I've even 
><tried hard copying all the relevant files into the "right" places and
><every time, there's some bit missing or it refuses to find it.

>Sounds like you didn't load the support for those libraries when OW3.0 was
>loaded.  The Xaw support was missing from OW2.0 but added in 3.0.
>-- 
>harvard\
>  ucbvax!uwvax!astroatc!ftms!brown  or  uu2.psi.com!ftms!brown
>rutgers/
>INTERNET: brown@wi.extrel.com  or  ftms!brown%astroatc.UUCP@cs.wisc.edu

Or the library might be there but not pointed to by LD_LIBRARY_PATH.

Michael



