home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-05-26 | 67.2 KB | 1,913 lines |
- Newsgroups: comp.sources.x
- From: envbvs@epb9.lbl.gov (Brian V. Smith)
- Subject: v19i118: xfig - Draw amd manipulate objects in an X-Window, Part06/27
- Message-ID: <1993May21.021322.5310@sparky.imd.sterling.com>
- X-Md4-Signature: 4b119499b1a85a9c31c32aed4a8ea111
- Sender: chris@sparky.imd.sterling.com (Chris Olson)
- Organization: Sterling Software
- Date: Fri, 21 May 1993 02:13:22 GMT
- Approved: chris@sparky.imd.sterling.com
-
- Submitted-by: envbvs@epb9.lbl.gov (Brian V. Smith)
- Posting-number: Volume 19, Issue 118
- Archive-name: xfig/part06
- Environment: X11
- Supersedes: xfig: Volume 16, Issue 6-30,39
-
- #! /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 6 (of 27)."
- # Contents: CompKeyDB Examples/house.fig.uu Examples/houseC.fig.uu
- # Examples/test2.fig.uu e_addpt.c e_flip.c fig.h w_cmdpanel.c
- # Wrapped by envbvs@epb9.lbl.gov.lbl.gov on Mon May 3 12:05:49 1993
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'CompKeyDB' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'CompKeyDB'\"
- else
- echo shar: Extracting \"'CompKeyDB'\" \(8042 characters\)
- sed "s/^X//" >'CompKeyDB' <<'END_OF_FILE'
- X:~Ctrl<Key>1: insert-string(1)
- X:~Ctrl<Key>2: insert-string(2)
- X:~Ctrl<Key>3: insert-string(3)
- X:~Ctrl<Key>4: insert-string(4)
- X:~Ctrl<Key>a: insert-string(a)
- X:~Ctrl<Key>c: insert-string(c)
- X:~Ctrl<Key>d: insert-string(d)
- X:~Ctrl<Key>e: insert-string(e)
- X:~Ctrl<Key>i: insert-string(i)
- X:~Ctrl<Key>n: insert-string(n)
- X:~Ctrl<Key>o: insert-string(o)
- X:~Ctrl<Key>p: insert-string(p)
- X:~Ctrl<Key>s: insert-string(s)
- X:~Ctrl<Key>u: insert-string(u)
- X:~Ctrl~Meta<Key>y: insert-string(y)
- X:~Ctrl<Key>A: insert-string(A)
- X:~Ctrl<Key>C: insert-string(C)
- X:~Ctrl<Key>E: insert-string(E)
- X:~Ctrl<Key>D: insert-string(D)
- X:~Ctrl<Key>I: insert-string(I)
- X:~Ctrl<Key>L: insert-string(L)
- X:~Ctrl<Key>N: insert-string(N)
- X:~Ctrl<Key>O: insert-string(O)
- X:~Ctrl<Key>P: insert-string(P)
- X:~Ctrl<Key>R: insert-string(R)
- X:~Ctrl<Key>S: insert-string(S)
- X:~Ctrl<Key>U: insert-string(U)
- X:~Ctrl<Key>X: insert-string(X)
- X:~Ctrl<Key>Y: insert-string(Y)
- X:<Key>quotedbl: insert-string(0x22)
- X:<Key>bar: insert-string(|)
- X:<Key>exclam: insert-string(!)
- X:<Key>underscore: insert-string(_)
- X:<Key>less: insert-string(<)
- X:<Key>minus: insert-string(-)
- X:<Key>asciicircum: insert-string(^)
- X:<Key>plus: insert-string(+)
- X:<Key>backslash: insert-string(\)
- X:<Key>slash: insert-string(/)
- X:<Key>greater: insert-string(>)
- X:<Key>question: insert-string(?)
- X:<Key>asterisk: insert-string(*)
- X:<Key>grave: insert-string(`)
- X:<Key>apostrophe: insert-string(')
- X:<Key>asciitilde: insert-string(~)
- X:<Key>period: insert-string(.)
- X:<Key>comma: insert-string(0x2c)
- X:<Key>colon: insert-string(:)
- X:Ctrl<Key>a: beginning-of-line()
- X:Ctrl<Key>e: end-of-line()
- X:Ctrl<Key>f: forward-character()
- X:Meta<Key>f: forward-word()
- X:Ctrl<Key>b: backward-character()
- X:Meta<Key>b: backward-word()
- X:Meta<Key>]: forward-paragraph()
- X:Meta<Key>[: backward-paragraph()
- X:Ctrl<Key>d: delete-next-character()
- X:Ctrl<Key>h: delete-previous-character()
- X:Meta<Key>d: delete-next-word()
- X:Meta<Key>h: delete-previous-word()
- X:Meta<Key>D: kill-word()
- X:Meta<Key>H: backward-kill-word()
- X:Ctrl<Key>w: kill-selection()
- X:Ctrl<Key>k: kill-to-end-of-line()
- X:Meta<Key>k: kill-to-end-of-paragraph()
- X:Meta<Key>y: insert-selection(PRIMARY,CUT_BUFFER0)
- X:Ctrl<Key>l: redraw-display()
- X:Meta<Key>i: insert-file()
- X:Ctrl<Key>r: search(backward)
- X:Ctrl<Key>s: search(forward)
- X:Ctrl<Key>u: multiply(4)
- X:Ctrl<Key>g: multiply(Reset)
- X:Meta<Key>q: form-paragraph()
- X:Ctrl<Key>t: transpose-characters()
- X:Ctrl<Key>y: insert-selection(CUT_BUFFER1)
- X:<Key>Multi_key,:<Key>exclam,:<Key>exclam: insert-string(0xA1)
- X:<Key>Multi_key,:<Key>C,:<Key>slash: insert-string(0xA2)
- X:<Key>Multi_key,:<Key>L,:<Key>minus: insert-string(0xA3)
- X:<Key>Multi_key,:<Key>O,:<Key>X: insert-string(0xA4)
- X:<Key>Multi_key,:<Key>Y,:<Key>minus: insert-string(0xA5)
- X:<Key>Multi_key,:<Key>bar,:<Key>bar: insert-string(0xA6)
- X:<Key>Multi_key,:<Key>S,:<Key>O: insert-string(0xA7)
- X:<Key>Multi_key,:<Key>quotedbl,:<Key>quotedbl: insert-string(0xA8)
- X:<Key>Multi_key,:<Key>C,:<Key>O: insert-string(0xA9)
- X:<Key>Multi_key,:<Key>underscore,:<Key>a: insert-string(0xAA)
- X:<Key>Multi_key,:<Key>less,:<Key>less: insert-string(0xAB)
- X:<Key>Multi_key,:<Key>minus,:<Key>bar: insert-string(0xAC)
- X:<Key>Multi_key,:<Key>minus,:<Key>minus: insert-string(0xAD)
- X:<Key>Multi_key,:<Key>R,:<Key>O: insert-string(0xAE)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>minus: insert-string(0xAF)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>asterisk: insert-string(0xB0)
- X:<Key>Multi_key,:<Key>plus,:<Key>minus: insert-string(0xB1)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>2: insert-string(0xB2)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>3: insert-string(0xB3)
- X:<Key>Multi_key,:<Key>backslash,:<Key>backslash: insert-string(0xB4)
- X:<Key>Multi_key,:<Key>slash,:<Key>u: insert-string(0xB5)
- X:<Key>Multi_key,:<Key>P,:<Key>exclam: insert-string(0xB6)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>period: insert-string(0xB7)
- X:<Key>Multi_key,:<Key>asciicircum,:<Key>1: insert-string(0xB9)
- X:<Key>Multi_key,:<Key>underscore,:<Key>o: insert-string(0xBA)
- X:<Key>Multi_key,:<Key>greater,:<Key>greater: insert-string(0xBB)
- X:<Key>Multi_key,:<Key>1,:<Key>4: insert-string(0xBC)
- X:<Key>Multi_key,:<Key>1,:<Key>2: insert-string(0xBD)
- X:<Key>Multi_key,:<Key>3,:<Key>4: insert-string(0xBE)
- X:<Key>Multi_key,:<Key>question,:<Key>question: insert-string(0xBF)
- X:<Key>Multi_key,:<Key>A,:<Key>grave: insert-string(0xC0)
- X:<Key>Multi_key,:<Key>A,:<Key>apostrophe: insert-string(0xC1)
- X:<Key>Multi_key,:<Key>A,:<Key>asciicircum: insert-string(0xC2)
- X:<Key>Multi_key,:<Key>A,:<Key>asciitilde: insert-string(0xC3)
- X:<Key>Multi_key,:<Key>A,:<Key>quotedbl: insert-string(0xC4)
- X:<Key>Multi_key,:<Key>A,:<Key>asterisk: insert-string(0xC5)
- X:<Key>Multi_key,:<Key>A,:<Key>E: insert-string(0xC6)
- X:<Key>Multi_key,:<Key>C,:<Key>comma: insert-string(0xC7)
- X:<Key>Multi_key,:<Key>E,:<Key>grave: insert-string(0xC8)
- X:<Key>Multi_key,:<Key>E,:<Key>apostrophe: insert-string(0xC9)
- X:<Key>Multi_key,:<Key>E,:<Key>asciicircum: insert-string(0xCA)
- X:<Key>Multi_key,:<Key>E,:<Key>quotedbl: insert-string(0xCB)
- X:<Key>Multi_key,:<Key>I,:<Key>grave: insert-string(0xCC)
- X:<Key>Multi_key,:<Key>I,:<Key>apostrophe: insert-string(0xCD)
- X:<Key>Multi_key,:<Key>I,:<Key>asciicircum: insert-string(0xCE)
- X:<Key>Multi_key,:<Key>I,:<Key>quotedbl: insert-string(0xCF)
- X:<Key>Multi_key,:<Key>D,:<Key>minus: insert-string(0xD0)
- X:<Key>Multi_key,:<Key>N,:<Key>asciitilde: insert-string(0xD1)
- X:<Key>Multi_key,:<Key>O,:<Key>grave: insert-string(0xD2)
- X:<Key>Multi_key,:<Key>O,:<Key>apostrophe: insert-string(0xD3)
- X:<Key>Multi_key,:<Key>O,:<Key>asciicircum: insert-string(0xD4)
- X:<Key>Multi_key,:<Key>O,:<Key>asciitilde: insert-string(0xD5)
- X:<Key>Multi_key,:<Key>O,:<Key>quotedbl: insert-string(0xD6)
- X:<Key>Multi_key,:<Key>asterisk,:<Key>asterisk: insert-string(0xD7)
- X:<Key>Multi_key,:<Key>O,:<Key>slash: insert-string(0xD8)
- X:<Key>Multi_key,:<Key>U,:<Key>grave: insert-string(0xD9)
- X:<Key>Multi_key,:<Key>U,:<Key>apostrophe: insert-string(0xDA)
- X:<Key>Multi_key,:<Key>U,:<Key>asciicircum: insert-string(0xDB)
- X:<Key>Multi_key,:<Key>U,:<Key>quotedbl: insert-string(0xDC)
- X:<Key>Multi_key,:<Key>Y,:<Key>apostrophe: insert-string(0xDD)
- X:<Key>Multi_key,:<Key>P,:<Key>bar: insert-string(0xDE)
- X:<Key>Multi_key,:<Key>s,:<Key>s: insert-string(0xDF)
- X:<Key>Multi_key,:<Key>a,:<Key>grave: insert-string(0xE0)
- X:<Key>Multi_key,:<Key>a,:<Key>apostrophe: insert-string(0xE1)
- X:<Key>Multi_key,:<Key>a,:<Key>asciicircum: insert-string(0xE2)
- X:<Key>Multi_key,:<Key>a,:<Key>asciitilde: insert-string(0xE3)
- X:<Key>Multi_key,:<Key>a,:<Key>quotedbl: insert-string(0xE4)
- X:<Key>Multi_key,:<Key>a,:<Key>asterisk: insert-string(0xE5)
- X:<Key>Multi_key,:<Key>a,:<Key>e: insert-string(0xE6)
- X:<Key>Multi_key,:<Key>c,:<Key>comma: insert-string(0xE7)
- X:<Key>Multi_key,:<Key>e,:<Key>grave: insert-string(0xE8)
- X:<Key>Multi_key,:<Key>e,:<Key>apostrophe: insert-string(0xE9)
- X:<Key>Multi_key,:<Key>e,:<Key>asciicircum: insert-string(0xEA)
- X:<Key>Multi_key,:<Key>e,:<Key>quotedbl: insert-string(0xEB)
- X:<Key>Multi_key,:<Key>i,:<Key>grave: insert-string(0xEC)
- X:<Key>Multi_key,:<Key>i,:<Key>apostrophe: insert-string(0xED)
- X:<Key>Multi_key,:<Key>i,:<Key>asciicircum: insert-string(0xEE)
- X:<Key>Multi_key,:<Key>i,:<Key>quotedbl: insert-string(0xEF)
- X:<Key>Multi_key,:<Key>d,:<Key>minus: insert-string(0xF0)
- X:<Key>Multi_key,:<Key>n,:<Key>asciitilde: insert-string(0xF1)
- X:<Key>Multi_key,:<Key>o,:<Key>grave: insert-string(0xF2)
- X:<Key>Multi_key,:<Key>o,:<Key>apostrophe: insert-string(0xF3)
- X:<Key>Multi_key,:<Key>o,:<Key>asciicircum: insert-string(0xF4)
- X:<Key>Multi_key,:<Key>o,:<Key>asciitilde: insert-string(0xF5)
- X:<Key>Multi_key,:<Key>o,:<Key>quotedbl: insert-string(0xF6)
- X:<Key>Multi_key,:<Key>minus,:<Key>colon: insert-string(0xF7)
- X:<Key>Multi_key,:<Key>o,:<Key>slash: insert-string(0xF8)
- X:<Key>Multi_key,:<Key>u,:<Key>grave: insert-string(0xF9)
- X:<Key>Multi_key,:<Key>u,:<Key>apostrophe: insert-string(0xFA)
- X:<Key>Multi_key,:<Key>u,:<Key>asciicircum: insert-string(0xFB)
- X:<Key>Multi_key,:<Key>u,:<Key>quotedbl: insert-string(0xFC)
- X:<Key>Multi_key,:<Key>y,:<Key>apostrophe: insert-string(0xFD)
- X:<Key>Multi_key,:<Key>p,:<Key>bar: insert-string(0xFE)
- X:<Key>Multi_key,:<Key>y,:<Key>quotedbl: insert-string(0xFF)
- END_OF_FILE
- if test 8042 -ne `wc -c <'CompKeyDB'`; then
- echo shar: \"'CompKeyDB'\" unpacked with wrong size!
- fi
- # end of 'CompKeyDB'
- fi
- if test -f 'Examples/house.fig.uu' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Examples/house.fig.uu'\"
- else
- echo shar: Extracting \"'Examples/house.fig.uu'\" \(7888 characters\)
- sed "s/^X//" >'Examples/house.fig.uu' <<'END_OF_FILE'
- Xbegin 444 house.fig
- XM(T9)1R`R+C$*.#`@,@HU(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#$@,"`P(#$P
- XM-2XU,#`@-#$R+C4P,"`U-"`T,#D@-CD@-#0Y(#$P.2`T-C0*-2`Q(#`@,2`M
- XM,2`P(#`@,"`P+C`P,"`P(#`@,"`W.3,N-3`P(#0R,RXU,#`@-S,T(#0R-"`W
- XM-#D@,S@T(#<Y-"`S-C0*-2`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,"`S
- XM.#DN,C$T(#,P.2XR,30@-#`S(#,P."`S.3D@,S$Y(#,X."`S,C,*-2`Q(#`@
- XM,2`M,2`P(#`@,"`P+C`P,"`Q(#`@,"`T-CDN,#`P(#$R-"XP,#`@-#,T(#$Q
- XM.2`T-#0@,30Y(#0W-"`Q-3D*-2`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,"`U.3DN,#`P(#$R-"XP,#`@-C,T(#$Q.2`V,C0@,30Y(#4Y-"`Q-3D*-2`Q
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,"`T,3<N-3`P(#,Q-RXU,#`@-#8Y
- XM(#,Q-"`T-30@,S4T(#0Q-"`S-CD*-2`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`Q
- XM(#`@,"`Q-C,N,#`P(#,V-2XP,#`@,C$T(#,V.2`Q.3D@,S(Y(#$U.2`S,30*
- XM,2`S(#`@,2`M,2`P(#`@,"`P+C`P,"`Q(#`N,#`P(#,P."`S,#(@-R`W(#,P
- XM."`S,#(@,S$S(#,P-PHQ(#,@,"`Q("TQ(#`@,"`P(#`N,#`P(#$@,"XP,#`@
- XM,S,T(#,P,B`U(#4@,S,T(#,P,B`S,SD@,S`R"C$@,R`P(#$@+3$@,"`P(#`@
- XM,"XP,#`@,2`P+C`P,"`S,S0@,S$Y(#<@-R`S,S0@,S$Y(#,S.2`S,C0*,2`S
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`Q(#`N,#`P(#,P."`S,3D@-2`U(#,P."`S
- XM,3D@,S$S(#,Q.0HQ(#(@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"XP,#`@-38Q
- XM(#$R,2`Q,2`Q-2`U-3(@,3,X(#4W,B`Q,#8*,2`S(#`@,2`M,2`P(#`@,"`P
- XM+C`P,"`Q(#`N,#`P(#(W-"`R.3D@,3`@,3`@,C<T(#(Y.2`R.#0@,CDY"C(@
- XM,B`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`T,30@,S<T(#0S-"`S-S0@
- XM-#,T(#0Y.2`T,30@-#DY(#0Q-"`S-S0@.3DY.2`Y.3DY"C(@-"`P(#$@+3$@
- XM,"`P(#`@,"XP,#`@,R`P(#`*"2`R.30@,C@Y(#(Y-"`S,S0@,S0Y(#,S-"`S
- XM-#D@,C@Y(#(Y-"`R.#D@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP
- XM,#`@,"`P(#`*"2`Q.2`R,CD@,CD@,C(Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ
- XM(#`@,"`P(#`N,#`P(#`@,"`P"@D@,3D@,S8Y(#(Y(#,V.2`Y.3DY(#DY.3D*
- XM,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$Y(#(X.2`R.2`R.#D@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.2`S
- XM,#D@,CD@,S`Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@,C0@,C(Y(#(T(#(X.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#(T(#,P.2`R-"`S-CD@.3DY.2`Y.3DY"C(@,2`P
- XM(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q,#D@-#`Y(#$P.2`T-C0@.3DY
- XM.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`U-3(@,3$R
- XM(#4U,B`Q,#,@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P
- XM(#`*"2`U-S`@,3$R(#4W,"`Q,#,@.3DY.2`Y.3DY"C(@-"`P(#$@+3$@,"`P
- XM(#`@,"XP,#`@,R`P(#`*"2`U-#@@,3`S(#4T."`Y,2`U-S0@.3$@-3<T(#$P
- XM,R`U-#@@,3`S(#DY.3D@.3DY.0HR(#,@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@-SDT(#0R-"`W.30@-#DY(#0Q-"`T.3D@-#$T(#,V.2`T,#0@,S8Y
- XM(#0P-"`T.3D@,C4T(#0Y.2`R-30@-#0Y"@D@,C0T(#0T.2`R-#0@-#DY(#$U
- XM.2`T.3D@,34Y(#,V.2`Q-#D@,S8Y(#$T.2`S.3D@,3`Y(#,Y.2`Q,#D@-#`Y
- XM"@D@,30Y(#0P.2`Q-#D@-3`Y(#@P-"`U,#D@.#`T(#0R-"`W.30@-#(T(#DY
- XM.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-S4Y(#0Y
- XM.2`W-3D@-3`Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@-C@Y(#0Y.2`V.#D@-3`Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@
- XM,"`P(#`N,#`P(#`@,"`P"@D@-C@Y(#4P-"`W-3D@-3`T(#DY.3D@.3DY.0HR
- XM(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-C4T(#4P.2`V-30@-3,Y
- XM(#4U-"`U,SD@-34T(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P
- XM+C`P,"`P(#`@,`H)(#4R-"`T.3D@-3(T(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@
- XM,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0U-"`T.3D@-#4T(#4P.2`Y.3DY
- XM(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0U-"`U,#0@
- XM-3(T(#4P-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,`H)(#,Q-"`T.3D@,S$T(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#,W-"`T.3D@,S<T(#4P.2`Y.3DY(#DY.3D*,B`Q
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#,Q-"`U,#0@,S<T(#4P-"`Y
- XM.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(U-"`T
- XM-3D@,S8Y(#0U.2`S-CD@,S8Y(#0P-"`S-CD@.3DY.2`Y.3DY"C(@-"`P(#$@
- XM+3$@,"`P(#`@,"XP,#`@,R`P(#`*"2`S,#D@-#8T(#,P.2`T.30@,S8T(#0Y
- XM-"`S-C0@-#8T(#,P.2`T-C0@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@
- XM,"XP,#`@,"`P(#`*"2`R-30@-#8Y(#(X-"`T-CD@,C@T(#0Y.2`Y.3DY(#DY
- XM.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#,W.2`S-CD@,S<Y
- XM(#0Y.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)
- XM(#<Y.2`Q,CD@-SDY(#(P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P
- XM+C`P,"`P(#`@,`H)(#<Y-"`R,#D@.#`T(#(P.2`Y.3DY(#DY.3D*,B`Q(#`@
- XM,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<Y-"`Q,CD@.#`T(#$R.2`Y.3DY
- XM(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#8Q-"`X-"`V
- XM-CD@.#0@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*
- XM"2`V-CD@-SD@-C8Y(#@Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N
- XM,#`P(#`@,"`P"@D@-C$T(#<Y(#8Q-"`X.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M
- XM,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#4R.2`X-"`U-C0@.#0@.3DY.2`Y.3DY
- XM"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`U-C0@-SD@-38T(#@Y
- XM(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-3(Y
- XM(#<Y(#4R.2`X.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#,Y.2`X-"`T-30@.#0@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P
- XM(#`@,"XP,#`@,"`P(#`*"2`S.3D@.#D@,SDY(#<Y(#DY.3D@.3DY.0HR(#$@
- XM,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-#4T(#<Y(#0U-"`X.2`Y.3DY
- XM(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(V-"`Q,#0@
- XM,C8T(#$V-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,`H)(#(U.2`Q,#0@,C8Y(#$P-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#(U.2`Q-C0@,C8Y(#$V-"`Y.3DY(#DY.3D*,B`Q
- XM(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#,X.2`S,#D@,S@Y(#,R-"`Y
- XM.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0S-"`Q
- XM,3D@-#<T(#$Q.2`Y.3DY(#DY.3D*,B`S(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#0W-"`Q-3D@-#@T(#$U.2`T.#0@,C`Y(#4X-"`R,#D@-3@T(#$U
- XM.2`U.30@,34Y(#4Y-"`R,C0@-3@T(#(R-`H)(#4X-"`R,3D@-3,Y(#(Q.2`U
- XM,SD@,C<T(#4X-"`R-S0@-3@T(#(V.2`U.30@,C8Y(#4Y-"`R-S0@-3DY(#(W
- XM-`H)(#4Y.2`R.#0@-#8Y(#(X-"`T-CD@,C<T(#0W-"`R-S0@-#<T(#(V.2`T
- XM.#0@,C8Y(#0X-"`R-S0@-3(Y(#(W-`H)(#4R.2`R,3D@-#@T(#(Q.2`T.#0@
- XM,C(T(#0W-"`R,C0@-#<T(#$U.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#0X-"`Q-3D@-3@T(#$U.2`Y.3DY(#DY.3D*,B`S
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<Y-"`X.2`U.30@.#D@-3DT
- XM(#$Q.2`U.#0@,3$Y(#4X-"`X.2`T.#0@.#D@-#@T(#$Q.2`T-S0@,3$Y"@D@
- XM-#<T(#@Y(#(V.2`X.2`R-CD@,C<T(#0Q-"`R-S0@-#$T(#,Q-"`T,#0@,S$T
- XM(#0P-"`R.#0@,S4Y(#(X-`H)(#,U.2`S,#0@,S@Y(#,P-"`S.#D@,S`Y(#,U
- XM-"`S,#D@,S4T(#(X-"`R-3D@,C@T(#(U.2`S,#D@,C0Y(#,P.0H)(#(T.2`R
- XM-CD@,34Y(#(V.2`Q-3D@,S$T(#$T.2`S,30@,30Y(#(U.2`R-3D@,C4Y(#(U
- XM.2`Q-SD@,CD@,3<Y"@D@,CD@,SDY(#4T(#,Y.2`U-"`T,#D@,3D@-#`Y(#$Y
- XM(#$V.2`R-3D@,38Y(#(U.2`W.2`X,#0@-SD*"2`X,#0@,S8T(#<Y-"`S-C0@
- XM-SDT(#(X-"`V-30@,C@T(#8U-"`R-S0@-SDT(#(W-"`W.30@.#D@.3DY.2`Y
- XM.3DY"C(@-"`P(#$@+3$@,"`P(#`@,"XP,#`@-B`P(#`*"2`T.#D@.30@-#@Y
- XM(#$Q-"`U,3D@,3$T(#4Q.2`Y-"`T.#D@.30@.3DY.2`Y.3DY"C(@-"`P(#$@
- XM+3$@,"`P(#`@,"XP,#`@.2`P(#`*"2`T.#0@.#D@-#@T(#$Q.2`U,C0@,3$Y
- XM(#4R-"`X.2`T.#0@.#D@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP
- XM,#`@,"`P(#`*"2`T-CD@,C<T(#0Q.2`R-30@.3DY.2`Y.3DY"C(@,2`P(#(@
- XM+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`T-30@,C(T(#0W-"`R-CD@.3DY.2`Y
- XM.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`V,3,@,C(S(#4Y
- XM-"`R-CD@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*
- XM"2`U.3D@,C<T(#8T.2`R-#D@.3DY.2`Y.3DY"C(@-"`P(#$@+3$@,"`P(#`@
- XM,"XP,#`@.2`P(#`*"2`T.#D@,38T(#0X.2`R,#0@-3<Y(#(P-"`U-SD@,38T
- XM(#0X.2`Q-C0@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P
- XM(#`*"2`U.30@,3$Y(#8S-"`Q,3D@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P
- XM(#`@,"XP,#`@,"`P(#`*"2`W,S0@-#(T(#<Y-"`T,C0@.3DY.2`Y.3DY"C(@
- XM,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`T,30@,S$T(#0V.2`S,30@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`R,30@
- XM,3<Y(#(Q-"`R-3D@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@
- XM,"`P(#`*"2`R,30@,S8Y(#$U.2`S-CD@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@
- XM,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.2`T,#D@,3D@-#@Y(#$T.2`T.#D@.3DY
- XM.2`Y.3DY"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@."`T,3D@-#,T($8!
- XM"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@."`T,3D@-#$Y($(!"C0@,"`P
- XM(#$R(#`@+3$@,"`P+C`P,"`T(#D@,C0@-3`T(#$S.2!"871H`0HT(#`@,"`Q
- XM,B`P("TQ(#`@,"XP,#`@-"`Q,B`V,R`U,SD@,S@T($QI=FEN9R!2;V]M`0HT
- XM(#`@,"`Q,B`P("TQ(#`@,"XP,#`@-"`Y(#0U(#8W.2`Q.#0@0F5D<F]O;0$*
- XM-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`T-2`S,S0@,3@T($)E9')O;VT!
- XM"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#$R(#0Q(#4T(#(Y-"!,875N9')Y
- XM`0HT(#`@,"`Q,B`P("TQ(#`@,"XP,#`@-"`Y(#,X(#(S.2`S.3D@2VET8VAE
- XM;@$*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`S-S0@,CDY($-,+@$*
- XM-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`R,CD@,C(Y($-,+@$*-"`P
- XM(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`U-30@,C4T($-,+@$*-"`P(#`@
- XD,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`T.30@,C4T($-,+@$*
- X`
- Xend
- END_OF_FILE
- if test 7888 -ne `wc -c <'Examples/house.fig.uu'`; then
- echo shar: \"'Examples/house.fig.uu'\" unpacked with wrong size!
- fi
- # end of 'Examples/house.fig.uu'
- fi
- if test -f 'Examples/houseC.fig.uu' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Examples/houseC.fig.uu'\"
- else
- echo shar: Extracting \"'Examples/houseC.fig.uu'\" \(7323 characters\)
- sed "s/^X//" >'Examples/houseC.fig.uu' <<'END_OF_FILE'
- Xbegin 444 houseC.fig
- XM(T9)1R`R+C$*.#`@,@HU(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#$@,"`P(#,Y
- XM-"XV-3@@,C(Y+C8U."`S.30@,C<T(#0R-R`R-C`@-#,Y(#(R.0HU(#$@,"`Q
- XM("TQ(#`@,"`P(#`N,#`P(#$@,"`P(#(U-RXP,#`@,C`U+C`P,"`R-#0@,C`T
- XM(#(T."`R,34@,C4Y(#(Q.0HQ(#(@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"XP
- XM,#`@,S4V(#$R,2`Q,2`Q-2`S-#<@,3,X(#,V-R`Q,#8*,2`Q(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`Q(#`N,#`P(#0V,R`Q,CD@,3$@,38@-#8S(#$R.2`T-S,@
- XM,30T"C$@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,2`P+C`P,"`T-C4@,3<R(#$Q
- XM(#$V(#0V-2`Q-S(@-#<U(#$X-PHR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@.#D@,3@T(#$V.2`Q.#0@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P
- XM(#`@,"XP,#`@,"`P(#`*"2`X.2`Q-CD@,38Y(#$V.2`Y.3DY(#DY.3D*,B`Q
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$W.2`Q-CD@,C4Y(#$V.2`Y
- XM.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$W.2`Q
- XM.#0@,C4Y(#$X-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#$W.2`Q.3D@,C4Y(#$Y.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#@Y(#(X.2`Q-CD@,C@Y(#DY.3D@.3DY.0HR
- XM(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@.#D@,C<T(#$V.2`R-S0@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`X.2`R
- XM-3D@,38Y(#(U.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#@Y(#(T-"`Q-CD@,C0T(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@
- XM,"`P(#`N,#`P(#`@,"`P"@D@.#D@,C(Y(#$V.2`R,CD@.3DY.2`Y.3DY"C(@
- XM,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`X.2`R,30@,38Y(#(Q-"`Y
- XM.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#@Y(#$Y
- XM.2`Q-CD@,3DY(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@,S0W(#$Q-"`S-#<@,3`S(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@
- XM,"`P(#`N,#`P(#`@,"`P"@D@,S8U(#$Q,B`S-C4@,3`S(#DY.3D@.3DY.0HR
- XM(#0@,"`Q("TQ(#`@,"`P(#`N,#`P(#,@,"`P"@D@,S0S(#$P,R`S-#,@.3$@
- XM,S8Y(#DQ(#,V.2`Q,#,@,S0S(#$P,R`Y.3DY(#DY.3D*,B`R(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#$X-"`S,#,@,3@T(#,R.2`R,#D@,S(Y(#(P
- XM.2`S,#,@,3@T(#,P,R`Y.3DY(#DY.3D*,B`T(#`@,2`M,2`P(#`@,"`P+C`P
- XM,"`T(#`@,`H)(#(P-"`T-3D@,S(Y(#0U.2`S,CD@,S0Y(#(P-"`S-#D@,C`T
- XM(#0U.2`Y.3DY(#DY.3D*,B`T(#`@,2`M,2`P(#`@,"`P+C`P,"`S(#`@,`H)
- XM(#(P-"`S-#0@,3@Y(#,T-"`Q.#D@-#8T(#(P-"`T-C0@,C`T(#,T-"`Y.3DY
- XM(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#8U.2`T.3D@
- XM-C4Y(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,`H)(#4Y.2`T.3D@-3DY(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#4Y.2`U,#0@-C4Y(#4P-"`Y.3DY(#DY.3D*,B`Q
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(S.2`T.3D@,C,Y(#4P.2`Y
- XM.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(Y.2`T
- XM.3D@,CDY(#4P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#(S.2`U,#0@,CDY(#4P-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#,V-"`W.2`S-C0@.#D@.3DY.2`Y.3DY"C(@
- XM,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`T,#D@-SD@-#`Y(#@Y(#DY
- XM.3D@.3DY.0HR(#,@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-#8T(#,V
- XM.2`T-30@,S8Y(#0U-"`S-#D@-3$Y(#,T.2`U,3D@-#DY(#<P-"`T.3D@-S`T
- XM(#@Y(#8P.2`X.0H)(#8P.2`R,CD@-38Y(#(R.2`U-CD@,C$Y(#4Y.2`R,3D@
- XM-3DY(#@Y(#0X.2`X.2`T.#D@,C$Y(#4Q.2`R,3D*"2`U,3D@,C(Y(#0S.2`R
- XM,CD@-#,Y(#(Q.2`T-SD@,C$Y(#0W.2`X.2`T-CD@.#D@-#8Y(#@T(#0T.2`X
- XM-`H)(#0T.2`X.2`R-CD@.#D@,C8Y(#$X.2`S,CD@,3@Y(#,R.2`R,3D@,SDT
- XM(#(Q.2`S.30@,C(Y(#,Q.2`R,CD*"2`R-3D@,C(Y(#(U.2`R,3D@,S$Y(#(Q
- XM.2`S,3D@,3DY(#(V.2`Q.3D@,C8Y(#(P-"`R-3D@,C`T(#(U.2`X.0H)(#$V
- XM.2`X.2`Q-CD@-SD@-S$T(#<Y(#<Q-"`U,#D@,38Y(#4P.2`Q-CD@,38Y(#$W
- XM.2`Q-CD@,3<Y(#0Y.0H)(#0U-"`T.3D@-#4T(#0X.2`T-C0@-#@Y(#0V-"`T
- XM.3D@-3`Y(#0Y.2`U,#D@,S4Y(#0V-"`S-3D@-#8T(#,V.2`Y.3DY(#DY.3D*
- XM,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0V,"`T,C0@-#8P(#0X
- XM-B`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0U
- XM-R`S-S(@-#4W(#0R.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P
- XM,"`P(#`@,`H)(#$V.2`T-#0@,3<Y(#0T-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M
- XM,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$W.2`S-S0@,38Y(#,W-"`Y.3DY(#DY
- XM.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#$@,`H),"`P(#$N,#`P(#0N
- XM,#`P(#@N,#`P"@D@,C$Y(#$Y-"`R,3D@,3,Y(#(P-"`Q,C0@,30T(#$R-"`Q
- XM,CD@,3,Y(#$R.2`R.3D@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP
- XM,#`@,"`P(#`*"2`Q,3D@.#0@,30Y(#@T(#DY.3D@.3DY.0HR(#$@,"`Q("TQ
- XM(#`@,"`P(#`N,#`P(#`@,"`P"@D@,30Y(#<Y(#$T.2`X.2`Y.3DY(#DY.3D*
- XM,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$Q.2`W.2`Q,3D@.#D@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`X-"`Y
- XM.2`X-"`Q,CD@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P
- XM(#`*"2`W.2`Q,CD@.#D@,3(Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P
- XM(#`N,#`P(#`@,"`P"@D@-SD@.3D@.#D@.3D@.3DY.2`Y.3DY"C(@,2`P(#$@
- XM+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`S-C0@.#0@-#`Y(#@T(#DY.3D@.3DY
- XM.0HR(#,@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@,38Y(#<Y(#<Y(#<Y
- XM(#<Y(#,Q.2`Q-CD@,S$Y(#$V.2`S,#D@.#D@,S`Y(#@Y(#@Y(#$V.2`X.0H)
- XM(#$V.2`W.2`Y.3DY(#DY.3D*,B`T(#`@,2`M,2`P(#`@,"`P+C`P,"`W(#`@
- XM,`H)(#(W-"`Y-"`R-S0@,3@T(#,Q.2`Q.#0@,S$Y(#DT(#(W-"`Y-"`Y.3DY
- XM(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#,R-"`X.2`S
- XM,C0@,3@Y(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P
- XM"@D@,3<T(#,W-"`Q-S0@-#0T(#DY.3D@.3DY.0HR(#(@,"`Q("TQ(#`@,"`P
- XM(#`N,#`P(#`@,"`P"@D@-#0Y(#@T(#0T.2`Y-"`T-CD@.30@-#8Y(#@T(#0T
- XM.2`X-"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)
- XM(#0T-"`X.2`T-#0@,C$Y(#DY.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P(#`N
- XM,#`P(#`@,"`P"@D@,SDT(#(W-"`S.30@,C(Y(#DY.3D@.3DY.0HR(#$@,"`Q
- XM("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-3$Y(#(Q.2`U,3D@,3$Y(#4V.2`Q
- XM,3D@-38Y(#(Q.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#(W-"`Q.3D@,C<T(#(Q.2`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#(T-"`R,#0@,C4Y(#(P-"`Y.3DY(#DY.3D*
- XM,B`R(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#8Y.2`Y.2`V-3(@.3D@
- XM-C4R(#$R.2`V.3D@,3(Y(#8Y.2`Y.2`Y.3DY(#DY.3D*,B`T(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`S(#`@,`H)(#(V-R`R,S$@,C8W(#(V-"`S,S0@,C8T(#,S
- XM-"`R,S$@,C8W(#(S,2`Y.3DY(#DY.3D*,B`T(#`@,2`M,2`P(#`@,"`P+C`P
- XM,"`S(#`@,`H)(#,S-2`R,S$@,S,U(#(V-"`S.#D@,C8T(#,X.2`R,S$@,S,U
- XM(#(S,2`Y.3DY(#DY.3D*,B`R(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)
- XM(#,W.2`T.30@-#(W(#0Y-"`T,C<@-#<P(#,W.2`T-S`@,S<Y(#0Y-"`Y.3DY
- XM(#DY.3D*,B`R(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#0U-"`R,CD@
- XM-3$T(#(R.2`U,30@,C4Y(#0U-"`R-3D@-#4T(#(R.2`Y.3DY(#DY.3D*,B`T
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`S(#`@,`H)(#8W.2`T,SD@-C<Y(#0X.2`U
- XM-SD@-#@Y(#4W.2`T,SD@-C<Y(#0S.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#<P.2`S-SD@-S`Y(#0S.2`Y.3DY(#DY.3D*
- XM,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<P-"`S-SD@-S$T(#,W
- XM.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<P
- XM-"`T,SD@-S$T(#0S.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P
- XM,"`P(#`@,`H)(#<P.2`Q-#D@-S`Y(#(P.2`Y.3DY(#DY.3D*,B`Q(#`@,2`M
- XM,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<P-"`R,#D@-S$T(#(P.2`Y.3DY(#DY
- XM.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#<P-"`Q-#D@-S$T
- XM(#$T.2`Y.3DY(#DY.3D*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`S.2`R
- XM,#`@,C$V($1/5TX!"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@-R`Q.3$@
- XM,S(Q(%0!"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@,C4@,C0Y(#0P.2!"
- XM140!"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@-#`@-C`T(#,P-"!35%5$
- XM60$*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q,34@,C8X(#,P-2!-05-4
- XM15(@0D5$4D]/30$*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`S,R`S-C0@
- XM,30Y($)!5$@!"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#$R(#4S(#4Y(#,Y
- XM.2!H;W5S94,N9FEG`0HT(#`@,"`Q,B`P("TQ(#`@,"XP,#`@-"`Y(#$W(#(X
- XM.2`R-#D@1%(!"C0@,"`P(#$R(#`@+3$@,"`P+C`P,"`T(#D@,3<@,S4Y(#(T
- XM.2!$4@$*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`R-R`V-C0@,3$Y(%-%
- XM5P$*-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`U,S0@,34T($-,+@$*
- XM-"`P(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q."`T-S0@-#(Y($-,+@$*-"`P
- XM(#`@,3(@,"`M,2`P(#`N,#`P(#0@.2`Q-R`T-S0@,C0Y($12`0HT(#`@,"`Q
- XM,B`P("TQ(#`@,"XP,#`@-"`Y(#$W(#,Y-"`T.#0@1%(!"C0@,"`P(#$R(#`@
- XM+3$@,"`P+C`P,"`T(#D@,S(@-C$T(#0V.2!$15-+`0HT(#`@,"`Q,B`P("TQ
- X<(#`@,"XP,#`@-"`Y(#$U(#(X.2`R,30@0TP!"E-+
- X`
- Xend
- END_OF_FILE
- if test 7323 -ne `wc -c <'Examples/houseC.fig.uu'`; then
- echo shar: \"'Examples/houseC.fig.uu'\" unpacked with wrong size!
- fi
- # end of 'Examples/houseC.fig.uu'
- fi
- if test -f 'Examples/test2.fig.uu' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Examples/test2.fig.uu'\"
- else
- echo shar: Extracting \"'Examples/test2.fig.uu'\" \(7528 characters\)
- sed "s/^X//" >'Examples/test2.fig.uu' <<'END_OF_FILE'
- Xbegin 444 test2.fig
- XM(T9)1R`R+C$*.#`@,@HU(#$@,"`R("TQ(#`@,"`P(#`N,#`P(#$@,"`P(#$X
- XM-2XT-3$@,C0Y+C0P,B`Q-S`@,3@Q(#$T,"`Q.38@,3$Y(#(R-PHU(#$@,"`R
- XM("TQ(#`@,"`P(#`N,#`P(#$@,"`P(#$R.2XS-38@,C<W+C0T-R`Q,S@@,38T
- XM(#8Y(#$X,2`S-R`R,3$*-2`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`Q(#`@,"`Q
- XM-34N-CDX(#(Q+C<R-R`T,"`Q,#8@,3`Q(#$U-"`Q-#`@,38T"C4@,2`P(#(@
- XM+3$@,"`P(#`@,"XP,#`@,2`P(#`@,3DP+C,P,"`Q,#$N-3(U(#$R,B`Q,C,@
- XM,3,U(#$T-R`Q-S,@,3<Q"C$@,B`P(#$@+3$@,"`P(#`@,"XP,#`@,2`P+C`P
- XM,"`Q-C,@-#8X(#(U(#8@,3,X(#0W-"`Q.#D@-#8R"C$@,2`P(#$@+3$@,"`P
- XM(#`@,"XP,#`@,2`P+C`P,"`Q-C,@-30W(#D@,R`Q-C,@-30W(#$U-"`U-#D*
- XM,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(W-"`U.2`V,C0@-3D@
- XM.3DY.2`Y.3DY"C(@,B`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`S,30@
- XM,S,T(#,W-"`S,S0@,S<T(#,V-"`S,30@,S8T(#,Q-"`S,S0@.3DY.2`Y.3DY
- XM"C(@,B`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`R-#D@,3`P(#(X-"`Q
- XM,#`@,C@T(#$Q-"`R-#D@,3$T(#(T.2`Q,#`@.3DY.2`Y.3DY"C(@,2`P(#(@
- XM+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`R-S4@,3DS(#(W.2`Q.3,@.3DY.2`Y
- XM.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`S-2`R,3`@,3$Y
- XM(#(R-R`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)
- XM(#(U-B`Q-#4@,C@Q(#$U,"`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P
- XM+C`P,"`P(#`@,`H)(#(W."`Q-C,@,C<X(#$X-"`Y.3DY(#DY.3D*,B`Q(#`@
- XM,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(W."`Q-C,@,C4S(#$U-R`Y.3DY
- XM(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(T.2`Q-C<@
- XM,C<Y(#$V,R`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,`H)(#$S."`Q-C0@,3<X(#$W,2`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@
- XM,"`P+C`P,"`P(#`@,`H)(#$W,R`Q-S$@,C8U(#$U-2`R-SD@,34R(#(X,R`Q
- XM-3`@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q
- XM-34@,38S(#(U-B`Q-#4@.3DY.2`Y.3DY"C(@,2`P(#(@+3$@,"`P(#`@,"XP
- XM,#`@,"`P(#`*"2`Q-S`@,3@Q(#(U,2`Q-C<@.3DY.2`Y.3DY"C(@,2`P(#(@
- XM+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`T,"`Q,#8@,3(T(#$R,R`Y.3DY(#DY
- XM.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#(V-2`Q-#8@,C8U
- XM(#$T-B`R-C4@,3$T(#DY.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P(#`N,#`P
- XM(#`@,"`P"@D@,C8Y(#$X-"`R.#8@,3@T(#DY.3D@.3DY.0HR(#$@,"`R("TQ
- XM(#`@,"`P(#`N,#`P(#`@,"`P"@D@,C<Q(#$X."`R.#0@,3@X(#DY.3D@.3DY
- XM.0HR(#$@,"`R("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@,C4S(#,U,B`S,3`@
- XM,S4R(#DY.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@
- XM,C4W(#,T-2`Y.3DY(#DY.3D*,B`Q(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`@
- XM,`H)(#0U(#,U,B`S,30@,S4R(#DY.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P
- XM(#`N,#`P(#`@,"`P"@D@,C4W(#,T-2`R-3<@,C@W(#DY.3D@.3DY.0HR(#$@
- XM,"`R("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@,C4W(#,V,"`R-3<@-#$T(#DY
- XM.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@,C4W(#,T
- XM-2`S,#@@,S0U(#DY.3D@.3DY.0HR(#$@,"`R("TQ(#`@,"`P(#`N,#`P(#`@
- XM,"`P"@D@,C4W(#,V,"`S,#,@,S8P(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@
- XM,"`P(#`N,#`P(#`@,"`P"@D@-3(@-3@V(#4S(#4X-B`Y.3DY(#DY.3D*,B`Q
- XM(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#4S(#4X-B`U,R`U.#<@.3DY
- XM.2`Y.3DY"C(@,B`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q-#0@-C`V
- XM(#$W.2`V,#8@,3<Y(#8Q-B`Q-#0@-C$V(#$T-"`V,#8@.3DY.2`Y.3DY"C(@
- XM,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q-C,@-30U(#$V,R`U-#D@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q-C,@
- XM-3@W(#$V,R`V,#8@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@
- XM,"`P(#`*"2`U,B`U.#8@,3DV(#4X-B`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P
- XM(#`@,"`P+C`P,"`P(#`@,`H)(#4R(#4X-R`Q.38@-3@W(#DY.3D@.3DY.0HR
- XM(#$@,"`Q("TQ(#`@,"`P(#`N,#`P(#`@,"`P"@D@-3(@-3@W(#$Y-B`U.#<@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`U,B`U
- XM.#<@,3DV(#4X-R`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P
- XM(#`@,`H)(#4R(#4X-R`Q.38@-3@W(#DY.3D@.3DY.0HR(#$@,"`Q("TQ(#`@
- XM,"`P(#`N,#`P(#`@,"`P"@D@-3(@-3@W(#$Y-B`U.#<@.3DY.2`Y.3DY"C(@
- XM,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.38@-3@X(#(U,"`T.3@@
- XM.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.38@
- XM-3@W(#(U,2`T.3<@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@
- XM,"`P(#`*"2`Q.38@-3@V(#(U,2`T.34@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@
- XM,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.38@-3@V(#$Y-B`V,#(@.3DY.2`Y.3DY
- XM"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q.#(@-#DU(#(U,2`T
- XM.34@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP,#`@,"`P(#`*"2`Q
- XM.38@-3@V(#(U,2`T.34@.3DY.2`Y.3DY"C(@,2`P(#$@+3$@,"`P(#`@,"XP
- XM,#`@,"`P(#`*"2`Q-#0@-#DU(#4S(#4X-B`Y.3DY(#DY.3D*,B`Q(#`@,2`M
- XM,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$V,R`U-#<@,3@Y(#0W,"`Y.3DY(#DY
- XM.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$V,R`U-#<@,3,X
- XM(#0W,"`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)
- XM(#$X.2`V,#(@,C`U(#8P,B`Y.3DY(#DY.3D*,B`Q(#`@,2`M,2`P(#`@,"`P
- XM+C`P,"`P(#`@,`H)(#$Y,2`V,#4@,C`S(#8P-2`Y.3DY(#DY.3D*,B`Q(#`@
- XM,2`M,2`P(#`@,"`P+C`P,"`P(#`@,`H)(#$Y-"`V,#@@,3DY(#8P."`Y.3DY
- XM(#DY.3D*,R`R(#`@,B`M,2`P(#`@,"`P+C`P,"`P(#`*"2`T-2`S-3(@-#$@
- XM,S8R(#4R(#,X,R`W.2`S-S`@.#0@,S,W(#<Q(#,R,R`U,2`S-#D@-SD@,SDV
- XM(#$R,R`S-C,@,3(U(#,S,"`Q,#0@,S$U(#DQ(#,U,"`Q,C`@-#`R(#$V-R`S
- XM-C(@,38V(#,Q."`Q-#(@,S`U(#$R.2`S-C`@,38Y(#0Q,"`R,3@@,S8S(#(R
- XM,"`S,38@,3DS(#(Y,2`Q-S8@,S4W(#(Q-2`T,C<@,C4Q(#,W,R`Y.3DY(#DY
- XM.3D*"2`M-C8N.#$S(#$W-2XP.30@-#(N,C$W(#,U-RXR,3D@-#$N,#@X(#,U
- XM.2XT-S(@-#$N,#@X(#,V."XX,S,*"2`T,RXP-C0@,S@Q+C`V,R`V,RXU-#@@
- XM,S@W+C@W."`W-"XS,CD@,S<W+C@R,R`X-2XR-30@,S8R+C4T-0H)(#@W+C`Y
- XM-R`S-#8N,#0U(#@R+C(R.2`S,S$N-CDU(#<W+C0Y-"`S,C(N.3@R(#4X+C8P
- XM."`S,C,N.3(R"@D@-3`N.#$S(#,S-RXU-C8@-#@N.3`Y(#,V-BXT-#<@-3DN
- XM,#4P(#,Y,2XT.3(@.3@N.38Y(#,Y.2XQ.#0*"2`Q,34N,C$S(#,W-BXX.3(@
- XM,3(V+CDP,2`S-34N-C`P(#$R."XV-C8@,S,Y+C$Q-R`Q,C$N-3,T(#,R,RXR
- XM-#<*"2`Q,3(N,S8V(#,Q,BXP-#0@.3(N,3DV(#,Q-RXW,S4@.#DN.3$R(#,S
- XM.2XV-#0@.3(N,#0V(#,V-BXY-#@*"2`Y.2XU-S,@,SDX+C4X-R`Q-#$N-3@Q
- XM(#0P-2XY-3`@,38P+C4P."`S-S<N.3$X(#$W,BXS,3`@,S4P+C0R.0H)(#$W
- XM,2XW,3(@,S(Y+C4V,B`Q-C$N,C<X(#,Q,BXR-#@@,34P+C8S,R`S,#(N,#$X
- XM(#$R-2XW-S8@,S$R+C(Y-`H)(#$R-2XX,S`@,S0S+CDQ-R`Q,S,N,#$U(#,W
- XM-RXV,S0@,30U+C<V,R`T,#DN-S0Q(#$Y-"XQ-38@-#$R+C8W-0H)(#(P.2XY
- XM.#`@,S@P+C`X."`R,C(N,C0V(#,U,BXT,34@,C(T+C0W-2`S,C@N.#(X(#(Q
- XM-2XU,#0@,S`W+C`X-PH)(#(P,BXQ-3$@,C@X+C@P-"`Q-S0N,S,T(#(Y-RXR
- XM-S$@,3<T+C$W-2`S,SDN-#@P(#$W.2XS,C`@,S<X+C`T,`H)(#$Y,BXQ-S<@
- XM-#(U+CDX-2`R,C@N.#$Q(#0R-RXU-C4@,C,W+C@T,2`T,30N,#0X("TV-BXX
- XM,3,@,3<U+C`Y-`HS(#(@,"`R("TQ(#`@,"`P(#`N,#`P(#`@,`H)(#0W(#,U
- XM,"`T-"`S-C`@-30@,S@R(#@R(#,V.2`X-B`S,S4@-S(@,S(R(#4R(#,T-2`X
- XM,B`S.30@,3(U(#,V,B`Q,C<@,S(X(#$P-B`S,3(@.3,@,S0Y(#$R,R`T,#`@
- XM,38Y(#,V,"`Q-C<@,S$V(#$T-"`S,#,@,3,Q(#,U-R`Q-S(@-#`Y(#(R,"`S
- XM-C(@,C(R(#,Q-2`Q.34@,C@Y(#$W.2`S-34@,C$X(#0R-2`R-3,@,S<P(#DY
- XM.3D@.3DY.0H)("TV-"XU-38@,3<R+C@T,2`T-"XT-S0@,S4T+CDV-B`T,RXS
- XM-#4@,S4W+C(Q.2`T,RXS-#8@,S8V+C4X,`H)(#0U+C,R,2`S-S@N.#$P(#8U
- XM+C@P-B`S.#4N-C(U(#<V+C4X-B`S-S4N-3<Q(#@W+C4Q,B`S-C`N,CDR"@D@
- XM.#DN,S4T(#,T,RXW.3(@.#0N-#@V(#,R.2XT-#(@-SDN-S4Q(#,R,"XW,CD@
- XM-C`N.#8V(#,R,2XV-CD*"2`U,RXP-S`@,S,U+C,Q,R`U,2XQ-C<@,S8T+C$Y
- XM-"`V,2XS,#<@,S@Y+C(S.2`Q,#$N,C(W(#,Y-BXY,S$*"2`Q,3<N-#<P(#,W
- XM-"XV-#`@,3(Y+C$U."`S-3,N,S0W(#$S,"XY,C,@,S,V+C@V-"`Q,C,N-SDQ
- XM(#,R,"XY.30*"2`Q,30N-C(S(#,P.2XW.3(@.30N-#4T(#,Q-2XT.#(@.3(N
- XM,38Y(#,S-RXS.3$@.30N,S`S(#,V-"XV.34*"2`Q,#$N.#,P(#,Y-BXS,S0@
- XM,30S+C@S."`T,#,N-CDW(#$V,BXW-C8@,S<U+C8V-2`Q-S0N-38W(#,T."XQ
- XM-S8*"2`Q-S,N.38Y(#,R-RXS,#D@,38S+C4S-2`S,#DN.3DU(#$U,BXX.3`@
- XM,CDY+C<V-2`Q,C@N,#,T(#,Q,"XP-#$*"2`Q,C@N,#@W(#,T,2XV-C0@,3,U
- XM+C(W,B`S-S4N,S@R(#$T."XP,C$@-#`W+C0X."`Q.38N-#$S(#0Q,"XT,C(*
- XM"2`R,3(N,C,W(#,W-RXX,S4@,C(T+C4P,R`S-3`N,38R(#(R-BXW,S(@,S(V
- XM+C4W-2`R,3<N-S8R(#,P-"XX,S0*"2`R,#0N-#`X(#(X-BXU-3$@,3<V+C4Y
- XM,2`R.34N,#$X(#$W-BXT,S(@,S,W+C(R-R`Q.#$N-3<W(#,W-2XW.#<*"2`Q
- XM.30N-#,T(#0R,RXW,S(@,C,Q+C`V."`T,C4N,S$R(#(T,"XP.3@@-#$Q+C<Y
- XM-2`M-C0N-34V(#$W,BXX-#$*-"`P(#`@,C(@,"`M,2`P(#`N,#`P(#0@,C(@
- XM,S@V(#(W-"`U-"!"87-I8R!5;'1R82UW:61E8F%N9"!!;G1E;FYA(%-H87!E
- XM<P$*-"`P(#`@,3@@,"`M,2`P(#`N,#`P(#0@,3<@,34Y(#(W.2`U,SD@8V]N
- XM92!O;B!G<F]U;F0@<&QA;F4!"C0@,"`P(#$X(#`@+3$@,"`P+C`P,"`T(#$W
- XM(#DY(#(W.2`T,3D@8V]N:6-A;"!S<&ER86P!"C0@,"`P(#$X(#`@+3$@,"`P
- XM+C`P,"`T(#$S(#$R-R`Q.#0@,C$Y(&9L87)E9"!414T@:&]R;@$*-"`P(#`@
- XM,3@@,"`M,2`P(#`N,#`P(#0@,3<@.#0@-#`T(#8S-"!&:6=U<F4@24DM,P$*
- X`
- Xend
- END_OF_FILE
- if test 7528 -ne `wc -c <'Examples/test2.fig.uu'`; then
- echo shar: \"'Examples/test2.fig.uu'\" unpacked with wrong size!
- fi
- # end of 'Examples/test2.fig.uu'
- fi
- if test -f 'e_addpt.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'e_addpt.c'\"
- else
- echo shar: Extracting \"'e_addpt.c'\" \(7758 characters\)
- sed "s/^X//" >'e_addpt.c' <<'END_OF_FILE'
- X/*
- X * FIG : Facility for Interactive Generation of figures
- X * Copyright (c) 1985 by Supoj Sutanthavibul
- X *
- X * "Permission to use, copy, modify, distribute, and sell this software and its
- X * documentation for any purpose is hereby granted without fee, provided that
- X * the above copyright notice appear in all copies and that both the copyright
- X * notice and this permission notice appear in supporting documentation.
- X * No representations are made about the suitability of this software for
- X * any purpose. It is provided "as is" without express or implied warranty."
- X */
- X
- X#include "fig.h"
- X#include "resources.h"
- X#include "mode.h"
- X#include "object.h"
- X#include "paintop.h"
- X#include "u_create.h"
- X#include "u_elastic.h"
- X#include "u_search.h"
- X#include "w_canvas.h"
- X#include "w_mousefun.h"
- Xextern void force_positioning(), force_nopositioning();
- Xextern void force_anglegeom(), force_noanglegeom();
- X
- Xstatic int init_point_adding();
- Xstatic int fix_linepoint_adding();
- Xstatic int fix_splinepoint_adding();
- Xstatic int init_linepointadding();
- Xstatic int init_splinepointadding();
- Xstatic int find_endpoints();
- X
- Xpoint_adding_selected()
- X{
- X set_mousefun("break/add here", "", "");
- X canvas_kbd_proc = null_proc;
- X canvas_locmove_proc = null_proc;
- X init_searchproc_left(init_point_adding);
- X canvas_leftbut_proc = object_search_left;
- X canvas_middlebut_proc = null_proc;
- X canvas_rightbut_proc = null_proc;
- X set_cursor(pick9_cursor);
- X force_nopositioning();
- X force_anglegeom();
- X constrained = MOVE_ARB;
- X}
- X
- Xstatic int
- Xinit_point_adding(p, type, x, y, px, py)
- X char *p;
- X int type;
- X int x, y;
- X int px, py;
- X{
- X set_action_on();
- X set_mousefun("place new point", "", "cancel");
- X draw_mousefun_canvas();
- X set_temp_cursor(null_cursor);
- X win_setmouseposition(canvas_win, px, py);
- X switch (type) {
- X case O_POLYLINE:
- X cur_l = (F_line *) p;
- X /* the search routine will ensure that we don't have a box */
- X init_linepointadding(px, py);
- X break;
- X case O_SPLINE:
- X cur_s = (F_spline *) p;
- X init_splinepointadding(px, py);
- X break;
- X default:
- X return;
- X }
- X force_positioning();
- X /* draw in rubber-band line */
- X elastic_linelink();
- X
- X if (left_point == NULL || right_point == NULL) {
- X if (latexline_mode || latexarrow_mode) {
- X canvas_locmove_proc = latex_line;
- X return;
- X }
- X if (mountain_mode || manhattan_mode) {
- X canvas_locmove_proc = constrainedangle_line;
- X return;
- X }
- X } else {
- X force_noanglegeom();
- X }
- X canvas_locmove_proc = reshaping_line;
- X}
- X
- Xstatic
- Xwrapup_pointadding()
- X{
- X reset_action_on();
- X point_adding_selected();
- X draw_mousefun_canvas();
- X}
- X
- Xstatic
- Xcancel_pointadding()
- X{
- X elastic_linelink();
- X wrapup_pointadding();
- X}
- X
- Xstatic
- Xcancel_line_pointadding()
- X{
- X if (left_point != NULL && right_point != NULL)
- X pw_vector(canvas_win, left_point->x, left_point->y,
- X right_point->x, right_point->y, INV_PAINT,
- X cur_l->thickness, cur_l->style, cur_l->style_val,
- X cur_l->color);
- X cancel_pointadding();
- X}
- X
- X/************************** spline *******************************/
- X
- Xstatic int
- Xinit_splinepointadding(px, py)
- X int px, py;
- X{
- X find_endpoints(cur_s->points, px, py, &left_point, &right_point);
- X
- X cur_x = fix_x = px;
- X cur_y = fix_y = py;
- X if (left_point == NULL && closed_spline(cur_s)) {
- X /* The added_point is between the 1st and 2nd point. */
- X left_point = right_point;
- X right_point = right_point->next;
- X }
- X canvas_leftbut_proc = fix_splinepoint_adding;
- X canvas_rightbut_proc = cancel_pointadding;
- X}
- X
- Xstatic
- Xfix_splinepoint_adding(x, y)
- X int x, y;
- X{
- X F_point *p;
- X
- X (*canvas_locmove_proc) (x, y);
- X if ((p = create_point()) == NULL) {
- X wrapup_pointadding();
- X return;
- X }
- X p->x = cur_x;
- X p->y = cur_y;
- X elastic_linelink();
- X splinepoint_adding(cur_s, left_point, p, right_point);
- X wrapup_pointadding();
- X}
- X
- X/*
- X * Added_point is always inserted between left_point and
- X * right_point, except in two cases. (1) left_point is NULL, the added_point
- X * will be prepended to the list of points. This case will never occur if the
- X * spline is closed (periodic). (2) right_point is NULL, the added_point will
- X * be appended to the end of the list.
- X */
- X
- Xsplinepoint_adding(spline, left_point, added_point, right_point)
- X F_spline *spline;
- X F_point *left_point, *added_point, *right_point;
- X{
- X F_control *c;
- X
- X if (int_spline(spline)) { /* Interpolated spline */
- X if ((c = create_cpoint()) == NULL)
- X return;
- X }
- X set_temp_cursor(wait_cursor);
- X mask_toggle_splinemarker(spline);
- X draw_spline(spline, ERASE); /* erase old spline */
- X if (left_point == NULL) {
- X added_point->next = spline->points;
- X spline->points = added_point;
- X } else {
- X added_point->next = right_point;
- X left_point->next = added_point;
- X }
- X
- X if (int_spline(spline)) { /* Interpolated spline */
- X c->next = spline->controls;
- X spline->controls = c;
- X remake_control_points(spline);
- X }
- X draw_spline(spline, PAINT); /* draw the modified spline */
- X mask_toggle_splinemarker(spline);
- X clean_up();
- X set_modifiedflag();
- X set_last_prevpoint(left_point);
- X set_last_selectedpoint(added_point);
- X set_action_object(F_ADD_POINT, O_SPLINE);
- X set_latestspline(spline);
- X reset_cursor();
- X}
- X
- X/*************************** line ********************************/
- X
- Xstatic int
- Xinit_linepointadding(px, py)
- X int px, py;
- X{
- X find_endpoints(cur_l->points, px, py, &left_point, &right_point);
- X
- X /* set cur_x etc at new point coords */
- X cur_x = fix_x = px;
- X cur_y = fix_y = py;
- X if (left_point == NULL && cur_l->type == T_POLYGON) {
- X left_point = right_point;
- X right_point = right_point->next;
- X }
- X /* erase line segment where new point is */
- X if (left_point != NULL && right_point != NULL)
- X pw_vector(canvas_win, left_point->x, left_point->y,
- X right_point->x, right_point->y, ERASE,
- X cur_l->thickness, cur_l->style, cur_l->style_val,
- X cur_l->color);
- X
- X canvas_leftbut_proc = fix_linepoint_adding;
- X canvas_rightbut_proc = cancel_line_pointadding;
- X}
- X
- Xstatic
- Xfix_linepoint_adding(x, y)
- X int x, y;
- X{
- X F_point *p;
- X
- X (*canvas_locmove_proc) (x, y);
- X if ((p = create_point()) == NULL) {
- X wrapup_pointadding();
- X return;
- X }
- X p->x = cur_x;
- X p->y = cur_y;
- X elastic_linelink();
- X linepoint_adding(cur_l, left_point, p);
- X wrapup_pointadding();
- X}
- X
- Xlinepoint_adding(line, left_point, added_point)
- X F_line *line;
- X F_point *left_point, *added_point;
- X{
- X mask_toggle_linemarker(line);
- X draw_line(line, ERASE);
- X if (left_point == NULL) {
- X added_point->next = line->points;
- X line->points = added_point;
- X } else {
- X added_point->next = left_point->next;
- X left_point->next = added_point;
- X }
- X draw_line(line, PAINT);
- X clean_up();
- X mask_toggle_linemarker(line);
- X set_action_object(F_ADD_POINT, O_POLYLINE);
- X set_latestline(line);
- X set_last_prevpoint(left_point);
- X set_last_selectedpoint(added_point);
- X set_modifiedflag();
- X}
- X
- X/*******************************************************************/
- X
- X/*
- X * If (x,y) is close to a point, q, fp points to q and sp points to q->next
- X * (right). However if q is the first point, fp contains NULL and sp points
- X * to q.
- X */
- X
- Xstatic int
- Xfind_endpoints(p, x, y, fp, sp)
- X F_point *p, **fp, **sp;
- X int x, y;
- X{
- X int d;
- X F_point *a = NULL, *b = p;
- X
- X if (x == b->x && y == b->y) {
- X *fp = a;
- X *sp = b;
- X return;
- X }
- X for (a = p, b = p->next; b != NULL; a = b, b = b->next) {
- X if (x == b->x && y == b->y) {
- X *fp = b;
- X *sp = b->next;
- X return;
- X }
- X if (close_to_vector(a->x, a->y, b->x, b->y, x, y, 1, 1.0, &d, &d)) {
- X *fp = a;
- X *sp = b;
- X return;
- X }
- X }
- X *fp = a;
- X *sp = b;
- X}
- END_OF_FILE
- if test 7758 -ne `wc -c <'e_addpt.c'`; then
- echo shar: \"'e_addpt.c'\" unpacked with wrong size!
- fi
- # end of 'e_addpt.c'
- fi
- if test -f 'e_flip.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'e_flip.c'\"
- else
- echo shar: Extracting \"'e_flip.c'\" \(8019 characters\)
- sed "s/^X//" >'e_flip.c' <<'END_OF_FILE'
- X/*
- X * FIG : Facility for Interactive Generation of figures
- X * Copyright (c) 1985 by Supoj Sutanthavibul
- X *
- X * "Permission to use, copy, modify, distribute, and sell this software and its
- X * documentation for any purpose is hereby granted without fee, provided that
- X * the above copyright notice appear in all copies and that both the copyright
- X * notice and this permission notice appear in supporting documentation.
- X * No representations are made about the suitability of this software for
- X * any purpose. It is provided "as is" without express or implied warranty."
- X */
- X
- X#include "fig.h"
- X#include "resources.h"
- X#include "mode.h"
- X#include "object.h"
- X#include "paintop.h"
- X#include "u_draw.h"
- X#include "u_search.h"
- X#include "u_create.h"
- X#include "u_list.h"
- X#include "w_canvas.h"
- X#include "w_mousefun.h"
- X
- Xstatic int flip_axis;
- Xstatic int copy;
- Xstatic int init_flip();
- Xstatic int init_copynflip();
- Xstatic int init_fliparc();
- Xstatic int init_flipcompound();
- Xstatic int init_flipellipse();
- Xstatic int init_flipline();
- Xstatic int init_flipspline();
- Xstatic int flip_selected();
- Xstatic int flip_search();
- X
- Xflip_ud_selected()
- X{
- X flip_axis = UD_FLIP;
- X flip_selected();
- X}
- X
- Xflip_lr_selected()
- X{
- X flip_axis = LR_FLIP;
- X flip_selected();
- X}
- X
- Xstatic
- Xflip_selected()
- X{
- X set_mousefun("flip", "copy & flip", "");
- X canvas_kbd_proc = null_proc;
- X canvas_locmove_proc = null_proc;
- X init_searchproc_left(init_flip);
- X init_searchproc_middle(init_copynflip);
- X canvas_leftbut_proc = object_search_left;
- X canvas_middlebut_proc = object_search_middle;
- X canvas_rightbut_proc = null_proc;
- X set_cursor(pick15_cursor);
- X}
- X
- Xstatic
- Xinit_flip(p, type, x, y, px, py)
- X char *p;
- X int type;
- X int x, y;
- X int px, py;
- X{
- X copy = 0;
- X flip_search(p, type, x, y, px, py);
- X}
- X
- Xstatic
- Xinit_copynflip(p, type, x, y, px, py)
- X char *p;
- X int type;
- X int x, y;
- X int px, py;
- X{
- X copy = 1;
- X flip_search(p, type, x, y, px, py);
- X}
- X
- Xstatic
- Xflip_search(p, type, x, y, px, py)
- X char *p;
- X int type;
- X int x, y;
- X int px, py;
- X{
- X switch (type) {
- X case O_POLYLINE:
- X cur_l = (F_line *) p;
- X init_flipline(cur_l, px, py);
- X break;
- X case O_ARC:
- X cur_a = (F_arc *) p;
- X init_fliparc(cur_a, px, py);
- X break;
- X case O_ELLIPSE:
- X cur_e = (F_ellipse *) p;
- X init_flipellipse(cur_e, px, py);
- X break;
- X case O_SPLINE:
- X cur_s = (F_spline *) p;
- X init_flipspline(cur_s, px, py);
- X break;
- X case O_COMPOUND:
- X cur_c = (F_compound *) p;
- X init_flipcompound(cur_c, px, py);
- X break;
- X default:
- X return;
- X }
- X}
- X
- Xstatic
- Xinit_fliparc(a, px, py)
- X F_arc *a;
- X int px, py;
- X{
- X F_arc *arc;
- X
- X set_temp_cursor(wait_cursor);
- X arc = copy_arc(a);
- X flip_arc(arc, px, py, flip_axis);
- X if (copy) {
- X add_arc(arc);
- X } else {
- X toggle_arcmarker(a);
- X draw_arc(a, ERASE);
- X change_arc(a, arc);
- X }
- X draw_arc(arc, PAINT);
- X toggle_arcmarker(arc);
- X reset_cursor();
- X}
- X
- Xstatic
- Xinit_flipcompound(c, px, py)
- X F_compound *c;
- X int px, py;
- X{
- X F_compound *compound;
- X
- X set_temp_cursor(wait_cursor);
- X compound = copy_compound(c);
- X flip_compound(compound, px, py, flip_axis);
- X if (copy) {
- X add_compound(compound);
- X } else {
- X toggle_compoundmarker(c);
- X draw_compoundelements(c, ERASE);
- X change_compound(c, compound);
- X }
- X draw_compoundelements(compound, PAINT);
- X toggle_compoundmarker(compound);
- X reset_cursor();
- X}
- X
- Xstatic
- Xinit_flipellipse(old_e, px, py)
- X F_ellipse *old_e;
- X{
- X F_ellipse *new_e;
- X
- X new_e = copy_ellipse(old_e);
- X flip_ellipse(new_e, px, py, flip_axis);
- X if (copy) {
- X add_ellipse(new_e);
- X } else {
- X toggle_ellipsemarker(old_e);
- X draw_ellipse(old_e, ERASE);
- X change_ellipse(old_e, new_e);
- X }
- X draw_ellipse(new_e, PAINT);
- X toggle_ellipsemarker(new_e);
- X}
- X
- Xstatic
- Xinit_flipline(old_l, px, py)
- X F_line *old_l;
- X int px, py;
- X{
- X F_line *new_l;
- X
- X new_l = copy_line(old_l);
- X flip_line(new_l, px, py, flip_axis);
- X if (copy) {
- X add_line(new_l);
- X } else {
- X toggle_linemarker(old_l);
- X draw_line(old_l, ERASE);
- X change_line(old_l, new_l);
- X }
- X draw_line(new_l, PAINT);
- X toggle_linemarker(new_l);
- X}
- X
- Xstatic
- Xinit_flipspline(old_s, px, py)
- X F_spline *old_s;
- X int px, py;
- X{
- X F_spline *new_s;
- X
- X new_s = copy_spline(old_s);
- X flip_spline(new_s, px, py, flip_axis);
- X if (copy) {
- X add_spline(new_s);
- X } else {
- X toggle_splinemarker(old_s);
- X draw_spline(old_s, ERASE);
- X change_spline(old_s, new_s);
- X }
- X draw_spline(new_s, PAINT);
- X toggle_splinemarker(new_s);
- X}
- X
- Xflip_line(l, x, y, flip_axis)
- X F_line *l;
- X int x, y, flip_axis;
- X{
- X F_point *p;
- X
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X for (p = l->points; p != NULL; p = p->next)
- X p->y = y + (y - p->y);
- X break;
- X case LR_FLIP: /* y axis */
- X for (p = l->points; p != NULL; p = p->next)
- X p->x = x + (x - p->x);
- X break;
- X }
- X if (l->type == T_EPS_BOX)
- X l->eps->flipped = 1 - l->eps->flipped;
- X}
- X
- Xflip_spline(s, x, y, flip_axis)
- X F_spline *s;
- X int x, y, flip_axis;
- X{
- X F_point *p;
- X F_control *cp;
- X
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X for (p = s->points; p != NULL; p = p->next)
- X p->y = y + (y - p->y);
- X for (cp = s->controls; cp != NULL; cp = cp->next) {
- X cp->ly = y + (y - cp->ly);
- X cp->ry = y + (y - cp->ry);
- X }
- X break;
- X case LR_FLIP: /* y axis */
- X for (p = s->points; p != NULL; p = p->next)
- X p->x = x + (x - p->x);
- X for (cp = s->controls; cp != NULL; cp = cp->next) {
- X cp->lx = x + (x - cp->lx);
- X cp->rx = x + (x - cp->rx);
- X }
- X break;
- X }
- X}
- X
- Xflip_text(t, x, y, flip_axis)
- X F_text *t;
- X int x, y, flip_axis;
- X{
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X t->base_y = y + (y - t->base_y);
- X break;
- X case LR_FLIP: /* y axis */
- X t->base_x = x + (x - t->base_x);
- X break;
- X }
- X}
- X
- Xflip_ellipse(e, x, y, flip_axis)
- X F_ellipse *e;
- X int x, y, flip_axis;
- X{
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X e->direction ^= 1;
- X e->center.y = y + (y - e->center.y);
- X e->start.y = y + (y - e->start.y);
- X e->end.y = y + (y - e->end.y);
- X break;
- X case LR_FLIP: /* y axis */
- X e->direction ^= 1;
- X e->center.x = x + (x - e->center.x);
- X e->start.x = x + (x - e->start.x);
- X e->end.x = x + (x - e->end.x);
- X break;
- X }
- X e->angle = - e->angle;
- X}
- X
- Xflip_arc(a, x, y, flip_axis)
- X F_arc *a;
- X int x, y, flip_axis;
- X{
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X a->direction ^= 1;
- X a->center.y = y + (y - a->center.y);
- X a->point[0].y = y + (y - a->point[0].y);
- X a->point[1].y = y + (y - a->point[1].y);
- X a->point[2].y = y + (y - a->point[2].y);
- X break;
- X case LR_FLIP: /* y axis */
- X a->direction ^= 1;
- X a->center.x = x + (x - a->center.x);
- X a->point[0].x = x + (x - a->point[0].x);
- X a->point[1].x = x + (x - a->point[1].x);
- X a->point[2].x = x + (x - a->point[2].x);
- X break;
- X }
- X}
- X
- Xflip_compound(c, x, y, flip_axis)
- X F_compound *c;
- X int x, y, flip_axis;
- X{
- X F_line *l;
- X F_arc *a;
- X F_ellipse *e;
- X F_spline *s;
- X F_text *t;
- X F_compound *c1;
- X int p, q;
- X
- X switch (flip_axis) {
- X case UD_FLIP: /* x axis */
- X p = y + (y - c->nwcorner.y);
- X q = y + (y - c->secorner.y);
- X c->nwcorner.y = min2(p, q);
- X c->secorner.y = max2(p, q);
- X break;
- X case LR_FLIP: /* y axis */
- X p = x + (x - c->nwcorner.x);
- X q = x + (x - c->secorner.x);
- X c->nwcorner.x = min2(p, q);
- X c->secorner.x = max2(p, q);
- X break;
- X }
- X for (l = c->lines; l != NULL; l = l->next)
- X flip_line(l, x, y, flip_axis);
- X for (a = c->arcs; a != NULL; a = a->next)
- X flip_arc(a, x, y, flip_axis);
- X for (e = c->ellipses; e != NULL; e = e->next)
- X flip_ellipse(e, x, y, flip_axis);
- X for (s = c->splines; s != NULL; s = s->next)
- X flip_spline(s, x, y, flip_axis);
- X for (t = c->texts; t != NULL; t = t->next)
- X flip_text(t, x, y, flip_axis);
- X for (c1 = c->compounds; c1 != NULL; c1 = c1->next)
- X flip_compound(c1, x, y, flip_axis);
- X}
- END_OF_FILE
- if test 8019 -ne `wc -c <'e_flip.c'`; then
- echo shar: \"'e_flip.c'\" unpacked with wrong size!
- fi
- # end of 'e_flip.c'
- fi
- if test -f 'fig.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'fig.h'\"
- else
- echo shar: Extracting \"'fig.h'\" \(7766 characters\)
- sed "s/^X//" >'fig.h' <<'END_OF_FILE'
- X/*
- X * FIG : Facility for Interactive Generation of figures
- X * Copyright (c) 1985 by Supoj Sutanthavibul
- X *
- X * "Permission to use, copy, modify, distribute, and sell this software and its
- X * documentation for any purpose is hereby granted without fee, provided that
- X * the above copyright notice appear in all copies and that both the copyright
- X * notice and this permission notice appear in supporting documentation.
- X * No representations are made about the suitability of this software for
- X * any purpose. It is provided "as is" without express or implied warranty."
- X */
- X
- X#include <X11/Xos.h>
- X
- X#if XtSpecificationRelease > 4
- X#include <X11/Xfuncs.h>
- X#else
- X
- X/* The following is just a copy of X11/Xosdefs.h and X11/Xfuncs.h (and copyright
- X notice). I include it here so xfig can still be compiled under X11R4, since
- X these files only comes with R5, and I'd like people to still be able to
- X compile xfig under R4. */
- X
- X/*
- X * O/S-dependent (mis)feature macro definitions
- X *
- X * $XConsortium: Xosdefs.h,v 1.7 91/07/19 23:22:19 rws Exp $
- X *
- X * Copyright 1991 Massachusetts Institute of Technology
- X *
- X * Permission to use, copy, modify, distribute, and sell this software and its
- X * documentation for any purpose is hereby granted without fee, provided that
- X * the above copyright notice appear in all copies and that both that
- X * copyright notice and this permission notice appear in supporting
- X * documentation, and that the name of M.I.T. not be used in advertising or
- X * publicity pertaining to distribution of the software without specific,
- X * written prior permission. M.I.T. makes no representations about the
- X * suitability of this software for any purpose. It is provided "as is"
- X * without express or implied warranty.
- X *
- X * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
- X * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
- X * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- X * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
- X * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
- X * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- X */
- X
- X#ifndef _XOSDEFS_H_
- X#define _XOSDEFS_H_
- X
- X/*
- X * X_NOT_STDC_ENV means does not have ANSI C header files. Lack of this
- X * symbol does NOT mean that the system has stdarg.h.
- X *
- X * X_NOT_POSIX means does not have POSIX header files. Lack of this
- X * symbol does NOT mean that the POSIX environment is the default.
- X * You may still have to define _POSIX_SOURCE to get it.
- X */
- X
- X#ifdef NOSTDHDRS
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X
- X#ifdef sony
- X#ifndef SYSTYPE_SYSV
- X#define X_NOT_POSIX
- X#endif
- X#endif
- X
- X#ifdef UTEK
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X
- X#ifdef CRAY
- X#define X_NOT_POSIX
- X#endif
- X
- X#ifdef vax
- X#ifndef ultrix /* assume vanilla BSD */
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X#endif
- X
- X#ifdef luna
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X
- X#ifdef Mips
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X
- X#ifdef USL
- X#ifdef SYSV /* (release 3.2) */
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X#endif
- X
- X#ifdef SYSV386
- X#ifdef SYSV
- X#define X_NOT_POSIX
- X#define X_NOT_STDC_ENV
- X#endif
- X#endif
- X
- X#ifdef MOTOROLA
- X#ifdef SYSV
- X#define X_NOT_STDC_ENV
- X#endif
- X#endif
- X
- X#endif /* _XOSDEFS_H_ */
- X/*
- X * $XConsortium: Xfuncs.h,v 1.8 91/04/17 09:27:52 rws Exp $
- X *
- X * Copyright 1990 by the Massachusetts Institute of Technology
- X *
- X * Permission to use, copy, modify, and distribute this software and its
- X * documentation for any purpose and without fee is hereby granted, provided
- X * that the above copyright notice appear in all copies and that both that
- X * copyright notice and this permission notice appear in supporting
- X * documentation, and that the name of M.I.T. not be used in advertising
- X * or publicity pertaining to distribution of the software without specific,
- X * written prior permission. M.I.T. makes no representations about the
- X * suitability of this software for any purpose. It is provided "as is"
- X * without express or implied warranty.
- X *
- X */
- X
- X#ifndef _XFUNCS_H_
- X#define _XFUNCS_H_
- X
- X#ifdef X_USEBFUNCS
- Xvoid bcopy();
- Xvoid bzero();
- Xint bcmp();
- X#else
- X#if (__STDC__ && !defined(X_NOT_STDC_ENV) && !defined(sun) && !defined(macII)) || defined(SVR4) || defined(hpux) || defined(_IBMR2)
- X#include <string.h>
- X#define bcopy(b1,b2,len) memmove(b2, b1, (size_t)(len))
- X#define bzero(b,len) memset(b, 0, (size_t)(len))
- X#define bcmp(b1,b2,len) memcmp(b1, b2, (size_t)(len))
- X#else
- X#ifdef sgi
- X#include <bstring.h>
- X#else
- X#ifdef SYSV
- X#include <memory.h>
- X#if defined(_XBCOPYFUNC) && !defined(macII)
- X#define bcopy _XBCOPYFUNC
- X#define _XNEEDBCOPYFUNC
- X#endif
- Xvoid bcopy();
- X#define bzero(b,len) memset(b, 0, len)
- X#define bcmp(b1,b2,len) memcmp(b1, b2, len)
- X#else /* bsd */
- Xvoid bcopy();
- Xvoid bzero();
- Xint bcmp();
- X#endif /* SYSV */
- X#endif /* sgi */
- X#endif /* __STDC__ and relatives */
- X#endif /* X_USEBFUNCS */
- X
- X#endif /* _XFUNCS_H_ */
- X
- X#endif /* XtSpecificationRelease > 4 */
- X
- X#ifndef X_NOT_STDC_ENV
- X#include <string.h>
- X#define index strchr
- X#define rindex strrchr
- X#else /* X_NOT_STDC_ENV IS defined */
- X#ifdef SYSV
- X#include <string.h>
- X#define index strchr
- X#define rindex strrchr
- X#else /* NOT SYSV */
- X#include <strings.h>
- X#define strchr index
- X#define strrchr rindex
- X#endif /* SYSV */
- X#endif /* X_NOT_STDC_ENV */
- X
- X#include <sys/stat.h>
- X
- X#if defined(__convex__) && defined(__STDC__)
- X#define S_IFDIR _S_IFDIR
- X#define S_IWRITE _S_IWRITE
- X#endif
- X
- X#ifndef SYSV
- X#ifndef SVR4
- X#include <fcntl.h>
- X#endif
- X#endif
- X
- X#include <pwd.h>
- X#include <signal.h>
- X#include <stdio.h>
- X#include <ctype.h>
- X#include <errno.h>
- X
- Xextern int errno;
- Xextern int sys_nerr;
- Xextern char *sys_errlist[];
- X
- X#include <math.h> /* for sin(), cos() etc */
- X
- X#if defined(SYS) && defined(SYSV386)
- X#if defined(__STDC__)
- X#ifdef ISC
- Xextern double atof(char const *);
- X#endif /* ISC */
- X#ifdef SCO
- Xextern double atof(const char *);
- X#else /* NOT SCO */
- Xextern double atof();
- X#endif /* SCO */
- X#else /* NOT __STDC__ */
- Xextern double atof();
- X#endif /* __STDC__ */
- X#else /* NOT defined(SYS) && defined(SYSV386) */
- X#ifdef X_NOT_STDC_ENV
- X#if defined(sun) && !defined(sparc) || defined(titan)
- Xextern double atof();
- Xextern char *getenv();
- X#endif /* (sun) !(sparc) (titan) */
- X#else /* NOT X_NOT_STDC_ENV */
- X#include <stdlib.h> /* for atof() and getenv() */
- X#endif /* X_NOT_STDC_ENV */
- X#endif /* defined(SYS) && defined(SYSV386) */
- X
- X#if defined(SYSV) || defined(SVR4) || defined(__osf__) || defined(USE_DIRENT)
- X#define u_int uint
- X#define USE_DIRENT
- X#define DIRSTRUCT struct dirent
- X#else
- X#define DIRSTRUCT struct direct
- X#endif
- X
- X/* define PATH_MAX if not already defined */
- X/* taken from the X11R5 server/os/osfonts.c file */
- X#ifndef X_NOT_POSIX
- X#ifdef _POSIX_SOURCE
- X#include <limits.h>
- X#else
- X#if !defined(sun) || defined(sparc)
- X#define _POSIX_SOURCE
- X#include <limits.h>
- X#undef _POSIX_SOURCE
- X#endif /* !defined(sun) || defined(sparc) */
- X#endif /* _POSIX_SOURCE */
- X#endif /* X_NOT_POSIX */
- X
- X#ifndef PATH_MAX
- X#include <sys/param.h>
- X#ifdef MAXPATHLEN
- X#define PATH_MAX MAXPATHLEN
- X#else
- X#define PATH_MAX 1024
- X#endif /* MAXPATHLEN */
- X#endif /* PATH_MAX */
- X
- X#ifndef M_PI
- X#define M_PI 3.14159265358979323846
- X#define M_PI_2 1.57079632679489661923
- X#endif
- X
- X#ifndef M_2PI
- X#define M_2PI 6.28318530717958647692
- X#endif
- X
- X#define min2(a, b) (((a) < (b)) ? (a) : (b))
- X#define max2(a, b) (((a) > (b)) ? (a) : (b))
- X#define min3(a,b,c) ((((a<b)?a:b)<c)?((a<b)?a:b):c)
- X#define max3(a,b,c) ((((a>b)?a:b)>c)?((a>b)?a:b):c)
- X#define round(a) (int)(((a)<0.0)?(a)-.5:(a)+.5)
- X#define signof(a) (((a) < 0) ? -1 : 1)
- X
- X#define DEF_NAME "unnamed.fig"
- X
- X/* include only Xlib.h and Intrinsic.h here - use figx.h for widget stuff */
- X
- X#include <X11/Xlib.h>
- X#include <X11/Intrinsic.h>
- X
- X#ifdef NOSTRSTR
- Xextern char *strstr();
- X#endif
- END_OF_FILE
- if test 7766 -ne `wc -c <'fig.h'`; then
- echo shar: \"'fig.h'\" unpacked with wrong size!
- fi
- # end of 'fig.h'
- fi
- if test -f 'w_cmdpanel.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'w_cmdpanel.c'\"
- else
- echo shar: Extracting \"'w_cmdpanel.c'\" \(7673 characters\)
- sed "s/^X//" >'w_cmdpanel.c' <<'END_OF_FILE'
- X/*
- X * FIG : Facility for Interactive Generation of figures
- X * Copyright (c) 1985 by Supoj Sutanthavibul
- X *
- X * "Permission to use, copy, modify, distribute, and sell this software and its
- X * documentation for any purpose is hereby granted without fee, provided that
- X * the above copyright notice appear in all copies and that both the copyright
- X * notice and this permission notice appear in supporting documentation.
- X * No representations are made about the suitability of this software for
- X * any purpose. It is provided "as is" without express or implied warranty."
- X */
- X
- X#include "fig.h"
- X#include "figx.h"
- X#include "resources.h"
- X#include "mode.h"
- X#include "w_canvas.h" /* for null_proc() */
- X#include "w_drawprim.h"
- X#include "w_mousefun.h"
- X#include "w_util.h"
- X#include "w_setup.h"
- X
- Xextern erase_objecthighlight();
- Xextern emptyfigure();
- Xextern do_print(), do_print_batch(), do_export(), do_save();
- Xextern void undo(), redisplay_canvas();
- Xextern void popup_print_panel(), popup_file_panel(), popup_export_panel();
- X
- Xvoid init_cmd_panel();
- Xvoid setup_cmd_panel();
- X
- X/* internal features and definitions */
- X
- X#define cmd_action(z) (z->cmd_func)(z->widget)
- X#define quick_action(z) (z->quick_func)(z->widget)
- X#define shift_quick_action(z) (z->shift_quick_func)(z->widget)
- X
- X/* prototypes */
- Xstatic void sel_cmd_but();
- Xstatic void enter_cmd_but();
- Xvoid quit();
- Xvoid delete_all_cmd();
- Xvoid paste();
- X
- X/* cmd panel definitions */
- X#define CMD_LABEL_LEN 16
- Xtypedef struct cmd_switch_struct {
- X char label[CMD_LABEL_LEN]; /* label on the button */
- X char cmd_name[CMD_LABEL_LEN]; /* command name for resources */
- X void (*cmd_func) (); /* mouse button 1 func */
- X int (*quick_func) (); /* mouse button 3 func */
- X int (*shift_quick_func) (); /* shift-mouse button 3 func */
- X char mousefun_l[CMD_LABEL_LEN]; /* label for mouse 1 func */
- X char mousefun_r[CMD_LABEL_LEN]; /* label for mouse 3 func */
- X Widget widget; /* widget */
- X} cmd_sw_info;
- X
- X/* command panel of switches below the lower ruler */
- Xcmd_sw_info cmd_switches[] = {
- X {"Quit", "quit", quit, null_proc, null_proc, "Quit", ""},
- X {"Delete ALL", "delete_all", delete_all_cmd, null_proc, null_proc,
- X "Delete all", ""},
- X {"Undo", "undo", undo, null_proc, null_proc, "Undo", ""},
- X {"Redraw", "redraw", redisplay_canvas, null_proc, null_proc,
- X "Redraw", ""},
- X {"Paste", "paste", paste, null_proc, null_proc, "Paste", ""},
- X {"File...", "file", popup_file_panel, do_save, null_proc,
- X "Popup", "Save Shortcut"},
- X {"Export...", "export", popup_export_panel, do_export, null_proc,
- X "Popup", "Export Shortcut"},
- X {"Print...", "print", popup_print_panel, do_print, do_print_batch,
- X "Popup","Print Shortcut"},
- X};
- X
- X#define NUM_CMD_SW (sizeof(cmd_switches) / sizeof(cmd_sw_info))
- X
- Xstatic XtActionsRec cmd_actions[] =
- X{
- X {"LeaveCmdSw", (XtActionProc) clear_mousefun},
- X {"quit", (XtActionProc) quit},
- X {"delete_all", (XtActionProc) delete_all_cmd},
- X {"undo", (XtActionProc) undo},
- X {"redraw", (XtActionProc) redisplay_canvas},
- X {"paste", (XtActionProc) paste},
- X {"file", (XtActionProc) popup_file_panel},
- X {"export", (XtActionProc) popup_export_panel},
- X {"print", (XtActionProc) popup_print_panel},
- X};
- X
- Xstatic String cmd_translations =
- X"<Btn1Down>:set()\n\
- X <Btn1Up>:unset()\n\
- X <LeaveWindow>:LeaveCmdSw()reset()\n";
- X
- XDeclareStaticArgs(11);
- X
- Xint
- Xnum_cmd_sw()
- X{
- X return (NUM_CMD_SW);
- X}
- X
- X/* command panel */
- Xvoid
- Xinit_cmd_panel(tool)
- X Widget tool;
- X{
- X register int i;
- X register cmd_sw_info *sw;
- X Widget beside = NULL;
- X
- X FirstArg(XtNborderWidth, 0);
- X NextArg(XtNdefaultDistance, 0);
- X NextArg(XtNhorizDistance, 0);
- X NextArg(XtNvertDistance, 0);
- X NextArg(XtNleft, XtChainLeft);
- X NextArg(XtNright, XtChainLeft);
- X NextArg(XtNtop, XtChainTop);
- X NextArg(XtNbottom, XtChainTop);
- X cmd_panel = XtCreateWidget("commands", formWidgetClass, tool,
- X Args, ArgCount);
- X XtAppAddActions(tool_app, cmd_actions, XtNumber(cmd_actions));
- X
- X FirstArg(XtNborderWidth, INTERNAL_BW);
- X NextArg(XtNfont, button_font);
- X NextArg(XtNheight, CMDPANEL_HT - 2 * INTERNAL_BW);
- X NextArg(XtNwidth, CMDPANEL_WD / NUM_CMD_SW - INTERNAL_BW);
- X NextArg(XtNvertDistance, 0);
- X NextArg(XtNhorizDistance, 0);
- X for (i = 0; i < NUM_CMD_SW; ++i) {
- X sw = &cmd_switches[i];
- X NextArg(XtNlabel, sw->label);
- X NextArg(XtNfromHoriz, beside);
- X sw->widget = XtCreateManagedWidget(sw->cmd_name, commandWidgetClass,
- X cmd_panel, Args, ArgCount);
- X /* setup callback and default actions */
- X XtAddEventHandler(sw->widget, ButtonReleaseMask, (Boolean) 0,
- X sel_cmd_but, (XtPointer) sw);
- X XtAddEventHandler(sw->widget, EnterWindowMask, (Boolean) 0,
- X enter_cmd_but, (XtPointer) sw);
- X XtOverrideTranslations(sw->widget,
- X XtParseTranslationTable(cmd_translations));
- X ArgCount -= 3;
- X NextArg(XtNhorizDistance, -INTERNAL_BW);
- X beside = sw->widget;
- X }
- X}
- X
- Xvoid
- Xsetup_cmd_panel()
- X{
- X register int i;
- X register cmd_sw_info *sw;
- X
- X XDefineCursor(tool_d, XtWindow(cmd_panel), arrow_cursor);
- X
- X for (i = 0; i < NUM_CMD_SW; ++i) {
- X sw = &cmd_switches[i];
- X FirstArg(XtNfont, button_font); /* label font */
- X SetValues(sw->widget);
- X /* install the keyboard accelerators for this command button
- X from the resources */
- X /*XtInstallAllAccelerators(sw->widget, tool);*/
- X }
- X}
- X
- Xstatic void
- Xenter_cmd_but(widget, closure, event, continue_to_dispatch)
- X Widget widget;
- X XtPointer closure;
- X XEvent* event;
- X Boolean* continue_to_dispatch;
- X{
- X cmd_sw_info *sw = (cmd_sw_info *) closure;
- X clear_mousefun();
- X draw_mousefun(sw->mousefun_l, "", sw->mousefun_r);
- X}
- X
- Xstatic void
- Xsel_cmd_but(widget, closure, event, continue_to_dispatch)
- X Widget widget;
- X XtPointer closure;
- X XEvent* event;
- X Boolean* continue_to_dispatch;
- X{
- X cmd_sw_info *sw = (cmd_sw_info *) closure;
- X XButtonEvent button;
- X
- X button = event->xbutton;
- X
- X if ((button.button == Button2) ||
- X (button.button == Button3 && button.state & Mod1Mask))
- X return;
- X
- X if (action_on) {
- X if (cur_mode == F_TEXT)
- X finish_text_input();/* finish up any text input */
- X else {
- X put_msg("FINISH drawing current object first");
- X return;
- X }
- X } else if (highlighting)
- X erase_objecthighlight();
- X
- X if (button.button == Button1)
- X cmd_action(sw);
- X else if (button.state & ShiftMask)
- X shift_quick_action(sw);
- X else
- X quick_action(sw);
- X}
- X
- Xstatic char quit_msg[] = "The current figure is modified.\nDo you want to save it before quitting?";
- X
- Xvoid
- Xquit(w)
- X Widget w;
- X{
- X int qresult;
- X
- X if (!emptyfigure() && figure_modified && !aborting) {
- X XtSetSensitive(w, False);
- X if ((qresult = popup_query(QUERY_YESNO, quit_msg)) == RESULT_CANCEL) {
- X XtSetSensitive(w, True);
- X return;
- X } else if (qresult == RESULT_YES) {
- X do_save(w);
- X /*
- X * if saving was not successful, figure_modified is still true:
- X * do not quit!
- X */
- X if (figure_modified) {
- X XtSetSensitive(w, True);
- X return;
- X }
- X }
- X }
- X /* delete the cut buffer only if it is in a temporary directory */
- X if (strncmp(cut_buf_name, TMPDIR, strlen(TMPDIR)) == 0)
- X unlink(cut_buf_name);
- X
- X /* delete any batch print file */
- X if (batch_exists)
- X unlink(batch_file);
- X
- X /* free all the GC's */
- X free_GCs();
- X XtDestroyWidget(tool);
- X exit(0);
- X}
- X
- Xvoid
- Xpaste()
- X{
- X merge_file(cut_buf_name);
- X}
- X
- Xvoid
- Xdelete_all_cmd()
- X{
- X if (emptyfigure()) {
- X put_msg("Figure already empty");
- X return;
- X }
- X delete_all();
- X put_msg("Immediate Undo will restore the figure");
- X redisplay_canvas();
- X}
- END_OF_FILE
- if test 7673 -ne `wc -c <'w_cmdpanel.c'`; then
- echo shar: \"'w_cmdpanel.c'\" unpacked with wrong size!
- fi
- # end of 'w_cmdpanel.c'
- fi
- echo shar: End of archive 6 \(of 27\).
- cp /dev/null ark6isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 27 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-
- exit 0 # Just in case...
- --
- // chris@IMD.Sterling.COM | Send comp.sources.x submissions to:
- \X/ Amiga - The only way to fly! | sources-x@imd.sterling.com
- "It's intuitively obvious to the |
- most casual observer..." | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
-