v10i030: xfig -- X Drawing Tool, Patch9, Part05/06
Brian V. Smith
envbvs at bea.lbl.gov
Fri Oct 26 04:06:49 AEST 1990
Submitted-by: envbvs at bea.lbl.gov (Brian V. Smith)
Posting-number: Volume 10, Issue 30
Archive-name: xfig2/patch9.05
Patch-To: xfig2: Volume XXX, Issue XXX
#! /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 5 (of 6)."
# Contents: @figs/watch.fig.uu patch9.diff1
# Wrapped by envbvs at bea.lbl.gov.lbl.gov on Wed Oct 17 10:24:40 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f '@figs/watch.fig.uu' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'@figs/watch.fig.uu'\"
else
echo shar: Extracting \"'@figs/watch.fig.uu'\" \(13250 characters\)
sed "s/^X//" >'@figs/watch.fig.uu' <<'END_OF_FILE'
Xbegin 664 watch.fig
XM(T9)1R R+C *.# @, at HU(#$@," Q(# @," P(# @,"XP,# @," P(# @,3DT
XM+C P," T,S8N,# P(#(P-B T,S$@,C W(#0S-B R,#8 at -#0Q"C4@,2 P(#$@
XM," P(# @," P+C P," P(# @," Q.3 N-3 P(#0S-BXP,# @,C X(#0S," R
XM,#D at -#,V(#(P." T-#(*-2 Q(# @,2 P(# @," P(# N,# P(# @," P(#$X
XM-RXP,# @-#,V+C P," R,3(@-#(Y(#(Q,R T,S8@,C$R(#0T,PHU(#$@," Q
XM(# @," P(# @,"XP,# @,2 P(# @,C U+C P," T,S8N,# P(#$Y,R T,S$@
XM,3DR(#0S-B Q.3, at -#0Q"C4@,2 P(#$@," P(# @," P+C P," Q(# @," R
XM,#<N-3 P(#0S-BXP,# @,3DP(#0S," Q.#D at -#,V(#$Y," T-#(*-2 Q(# @
XM,2 P(# @," P(# N,# P(#$@," P(#(Q,2XP,# @-#,V+C P," Q.#<@-#(Y
XM(#$X-B T,S8@,3 at W(#0T,PHQ(#0@," Q(# @," P(# @,"XP,# @,2 P+C P
XM," R-# @,S,Y(#@@." R,S,@,S,Y(#(T." S,SD*,2 T(# @,R P(# @," R
XM,2 P+C P," Q(# N,# P(#(T," S,SD@,R S(#(S." S,SD@,C0S(#,S.0HQ
XM(#,@," Q(# @," P(#(Q(# N,# P(#$@,"XP,# @,3DX(#0T," R(#(@,3DX
XM(#0T," R,# @-#0P"C$@,R P(#$@," P(# @,C$@,"XP,# @,2 P+C P," R
XM-3(@-#0R(#(@,B R-3(@-#0R(#(U-" T-#(*,B S(# @,2 P(# @," R,2 P
XM+C P," P(# *"2 R,S4@,S(X(#(R,B S,#4@,C(S(#,P,R R,C4@,S S(#(S
XM-2 S,C@@.3DY.2 Y.3DY"C(@-" P(#$@," P(# @," P+C P," U(# @, H)
XM(#0W.2 R-3D at -#<Y(#(W.2 T.3$@,C<Y(#0Y,2 R-3D at -#<Y(#(U.2 Y.3DY
XM(#DY.3D*,B T(# @,2 P(# @," P(# N,# P(#4@," P"@D at -#<Y(#0Q.2 T
XM-SD at -#,Y(#0Y,2 T,SD at -#DQ(#0Q.2 T-SD at -#$Y(#DY.3D at .3DY.0HR(#0@
XM," Q(# @," P(# @,"XP,# @-2 P(# *"2 Q-#<@-#$Y(#$T-R T,SD@,34Y
XM(#0S.2 Q-3D at -#$Y(#$T-R T,3D at .3DY.2 Y.3DY"C(@,2 P(#,@," P(# @
XM," P+C P," P(# *"2 S-30@,S at T(#,U-" S.#D at .3DY.2 Y.3DY"C(@,2 P
XM(#,@," P(# @," P+C P," P(# *"2 S-30@,S4T(#,U-" S-3D at .3DY.2 Y
XM.3DY"C(@,R P(#$@," P(# @,C$@,"XP,# @," P"@D at -#0V(#,W-R T-#0@
XM,S at P(#0T-" T,#(@-#0V(#0P-2 T-#@@-# R(#0T." S.# @-#0V(#,W-R Y
XM.3DY(#DY.3D*,B S(# @,2 P(# @," R,2 P+C P," P(# *"2 T-#8@,S0U
XM(#0T-" S-#@@-#0T(#,W," T-#8@,S<S(#0T." S-S @-#0X(#,T." T-#8@
XM,S0U(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#(Q(# N,# P(# @, H)(#0T
XM-B S-S4 at -#0S(#,W,R T,C$@,S<S(#0Q." S-S4 at -#(Q(#,W-R T-#,@,S<W
XM(#0T-B S-S4 at .3DY.2 Y.3DY"C(@,R P(#$@," P(# @,C$@,"XP,# @," P
XM"@D@,SDX(#0P-2 S.34 at -# S(#,W,R T,#,@,S<P(#0P-2 S-S, at -# W(#,Y
XM-2 T,#<@,SDX(#0P-2 Y.3DY(#DY.3D*,B S(# @,2 P(# @," R,2 P+C P
XM," P(# *"2 S-CD@,S<V(#,V-R S-SD@,S8W(#0P,2 S-CD at -# T(#,W,2 T
XM,#$@,S<Q(#,W.2 S-CD@,S<V(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#(Q
XM(# N,# P(# @, H)(#,Y.2 S-#4@,SDW(#,T." S.3<@,S<P(#,Y.2 S-S,@
XM-# Q(#,W," T,#$@,S0X(#,Y.2 S-#4 at .3DY.2 Y.3DY"C(@,R P(#$@," P
XM(# @,C$@,"XP,# @," P"@D@,SDW(#,T-" S.30@,S0R(#,W,B S-#(@,S8Y
XM(#,T-" S-S(@,S0V(#,Y-" S-#8@,SDW(#,T-" Y.3DY(#DY.3D*,B S(# @
XM,2 P(# @," R,2 P+C P," P(# *"2 S-#0@,S<V(#,T,B S-SD@,S0R(#0P
XM,2 S-#0 at -# T(#,T-B T,#$@,S0V(#,W.2 S-#0@,S<V(#DY.3D at .3DY.0HR
XM(#,@," Q(# @," P(#(Q(# N,# P(# @, H)(#,T-" S-#0@,S0R(#,T-R S
XM-#(@,S8Y(#,T-" S-S(@,S0V(#,V.2 S-#8@,S0W(#,T-" S-#0 at .3DY.2 Y
XM.3DY"C(@,R P(#$@," P(# @,C$@,"XP,# @," P"@D@,SDW(#,W-" S.30@
XM,S<R(#,W,B S-S(@,S8Y(#,W-" S-S(@,S<V(#,Y-" S-S8@,SDW(#,W-" Y
XM.3DY(#DY.3D*,B S(# @,2 P(# @," R,2 P+C P," P(# *"2 S,30@,S<V
XM(#,Q,B S-SD@,S$R(#0P,2 S,30 at -# T(#,Q-B T,#$@,S$V(#,W.2 S,30@
XM,S<V(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#(Q(# N,# P(# @, H)(#,Q
XM-" S-#0@,S$R(#,T-R S,3(@,S8Y(#,Q-" S-S(@,S$V(#,V.2 S,38@,S0W
XM(#,Q-" S-#0 at .3DY.2 Y.3DY"C(@,R P(#$@," P(# @,C$@,"XP,# @," P
XM"@D at -#$X(#,T-2 T,38@,S0X(#0Q-B S-S @-#$X(#,W,R T,C @,S<P(#0R
XM," S-#@@-#$X(#,T-2 Y.3DY(#DY.3D*,B R(# @,2 P(# @," P(# N,# P
XM(# @, H)(#$U,2 R-3@@,34Q(#(W.2 Q-3D@,C<Y(#$U.2 R-3@@,34Q(#(U
XM." Y.3DY(#DY.3D*,B Q(# @,2 P(# @," R,2 P+C P," P(# *"2 Q.30@
XM,S,Y(#(P.2 S,SD at .3DY.2 Y.3DY"C(@,2 P(#$@," P(# @,C$@,"XP,# @
XM," P"@D@,C at Y(#,S.2 R-S0@,S,Y(#DY.3D at .3DY.0HR(#$@," Q(# @," P
XM(# @,"XP,# @," P"@D@,C,Y(#,X.2 R,SD at -# T(#DY.3D at .3DY.0HR(#$@
XM," Q(# @," P(# @,"XP,# @," P"@D@,C,Y(#(V-" R,SD@,C<Y(#DY.3D@
XM.3DY.0HR(#,@," Q(# @," P(#(Q(# N,# P(# @, H)(#(T." S-#D@,C<S
XM(#,W-R R-S(@,S at P(#(V.2 S-SD@,C0X(#,T.2 Y.3DY(#DY.3D*,B Q(# @
XM,B P(# @," P(# N,# P(# @, H)(#0R," S,#@@-#,S(#,P." Y.3DY(#DY
XM.3D*,B Q(# @,B P(# @," P(# N,# P(# @, H)(#0R,2 R.#8 at -#,U(#(X
XM-B Y.3DY(#DY.3D*,B Q(# @,B P(# @," P(# N,# P(# @, H)(#0R,R R
XM-C, at -#,V(#(V,R Y.3DY(#DY.3D*,B Q(# @,B P(# @," P(# N,# P(# @
XM, H)(#0S-R R.#<@-#,U(#,P-R Y.3DY(#DY.3D*,B Q(# @,B P(# @," P
XM(# N,# P(# @, H)(#0S.2 R-C0 at -#,W(#(X-" Y.3DY(#DY.3D*,B Q(# @
XM,B P(# @," P(# N,# P(# @, H)(#0Q.2 R.#<@-#$W(#,P-R Y.3DY(#DY
XM.3D*,B Q(# @,B P(# @," P(# N,# P(# @, H)(#0R,2 R-C0 at -#$Y(#(X
XM-" Y.3DY(#DY.3D*,B Q(# @,B P(# @," P(# N,# P(# @, H)(#0P-" R
XM.#<@-# R(#,P-R Y.3DY(#DY.3D*,B Q(# @,B P(# @," P(# N,# P(# @
XM, H)(#0P-B R-C0 at -# T(#(X-" Y.3DY(#DY.3D*,B T(# @,2 P(# @," P
XM(# N,# P(#<@," P"@D@,CDY(#(U-" R.3D at -#$T(#0U-" T,30 at -#4T(#(U
XM-" R.3D@,C4T(#DY.3D at .3DY.0HR(#0@," Q(# @," P(# @,"XP,# @-R P
XM(# *"2 Q.#0@,C4T(#$X-" T,30@,CDY(#0Q-" R.3D@,C4T(#$X-" R-30@
XM.3DY.2 Y.3DY"C(@,2 P(#$@," P(# @," P+C P," P(# *"2 R-SD at -#$Y
XM(#$W.2 T,3D at .3DY.2 Y.3DY"C(@,B P(#$@," P(# @," P+C P," P(# *
XM"2 S,C0 at -#$Y(#(W.2 T,3D@,C<Y(#0U-" S,C0 at -#4T(#,R-" T,3D at .3DY
XM.2 Y.3DY"C(@,B P(#$@," P(# @," P+C P," P(# *"2 S,C0 at -#$Y(#,V
XM.2 T,3D@,S8Y(#0U-" S,C0 at -#4T(#,R-" T,3D at .3DY.2 Y.3DY"C(@,B P
XM(#$@," P(# @," P+C P," P(# *"2 T,30 at -#$Y(#,V.2 T,3D@,S8Y(#0U
XM-" T,30 at -#4T(#0Q-" T,3D at .3DY.2 Y.3DY"C(@,2 P(#$@," P(# @," P
XM+C P," P(# *"2 T-3D at -#$Y(#0Q-" T,3D at .3DY.2 Y.3DY"C(@-" P(#(@
XM," P(# @," P+C P," X(# @, H)(#$W.2 R-#D@,3<Y(#0U-" T-3D at -#4T
XM(#0U.2 R-#D@,3<Y(#(T.2 Y.3DY(#DY.3D*,B Q(# @,2 P(# @," P(# N
XM,# P(# @, H)(#(U-" R,SD at -#,Y(#(S.2 Y.3DY(#DY.3D*,B Q(# @,2 P
XM(# @," P(# N,# P(# @, H)(#(U-" R,S0 at -#,Y(#(S-" Y.3DY(#DY.3D*
XM,B Q(# @,2 P(# @," P(# N,# P(# @, H)(#(U-" R,CD at -#,Y(#(R.2 Y
XM.3DY(#DY.3D*,B Q(# @,2 P(# @," P(# N,# P(# @, H)(#(U-" R,C0@
XM-#,Y(#(R-" Y.3DY(#DY.3D*,B Q(# @,2 P(# @," P(# N,# P(# @, H)
XM(#(U-" R,3D at -#,Y(#(Q.2 Y.3DY(#DY.3D*,B S(# @,B P(# @," P(# N
XM,# P(# @, H)(#$X.2 R,30@,3<Y(#(S-" Q.#0@,C0T(#0U-" R-#0 at -#4Y
XM(#(S-" T-#D@,C$T(#$X.2 R,30 at .3DY.2 Y.3DY"C(@,R P(#(@," P(# @
XM," P+C P," P(# *"2 Q.#0@,C Y(#$V.2 R,SD@,38Y(#0U.2 Q.#0 at -#@Y
XM(#0U-" T.#D at -#8Y(#0U.2 T-CD@,C,Y(#0U-" R,#D@,3 at T(#(P.2 Y.3DY
XM(#DY.3D*,B S(# @,R P(# @," P(# N,# P(# @, H)(#$W.2 Q.3D@,34Y
XM(#(S.2 Q-3D at -#4Y(#$W.2 T.3D at -#4Y(#0Y.2 T-SD at -#4Y(#0W.2 R,SD@
XM-#4Y(#$Y.2 Q-SD@,3DY(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP
XM,# @," P"@D@,3 at Y(#$Y.2 Q.#D@,3 at T(#(V.2 Q.#0@,C8Y(#$V-" R.#D@
XM,38T(#(X.2 Q.#0@,S Y(#$X-" S,#D@,38T(#,R.2 Q-C0@,S(Y(#$X-" S
XM-#D@,3 at T(#,T.2 Q-C0@,S8Y(#$V-" S-CD@,3 at T(#0T.2 Q.#0 at -#0Y(#$Y
XM.2 Q.#D@,3DY(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P
XM"@D@,3DT(#$W.2 R-CD@,3<Y(#(V.2 Q-#0@,C T(#$T-" Q.30@,3<Y(#DY
XM.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#$S.2 R
XM-CD@,3 T(#(Q-B Q,#0@,C V(#$S.2 R-CD@,3,Y(#DY.3D at .3DY.0HR(#,@
XM," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#DY(#(V.2 V-" R,C, at -C0@
XM,C$W(#DY(#(V.2 Y.2 Y.3DY(#DY.3D*,B S(# @,2 P(# @," T(# N,# P
XM(# @, H)(#(R-" U.2 R-CD at -3D@,C8Y(#(T(#(R-R R-" R,C0 at -3D@.3DY
XM.2 Y.3DY"C(@,B P(#$@," P(# @-" P+C P," P(# *"2 R-CD@,3(T(#(V
XM.2 Q-C0@,C at Y(#$V-" R.#D@,3(T(#(V.2 Q,C0 at .3DY.2 Y.3DY"C(@,B P
XM(#$@," P(# @-" P+C P," P(# *"2 R.#D@,30T(#(X.2 Q.#0@,S Y(#$X
XM-" S,#D@,30T(#(X.2 Q-#0 at .3DY.2 Y.3DY"C(@,B P(#$@," P(# @-" P
XM+C P," P(# *"2 S-#D at -" S-#D at -#0@,S8Y(#0T(#,V.2 T(#,T.2 T(#DY
XM.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S Y(#$R-" S
XM,#D@,38T(#,R.2 Q-C0@,S(Y(#$R-" S,#D@,3(T(#DY.3D at .3DY.0HR(#(@
XM," Q(# @," P(#0@,"XP,# @," P"@D@,C at Y(#$P-" R.#D@,30T(#,P.2 Q
XM-#0@,S Y(#$P-" R.#D@,3 T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@
XM,"XP,# @," P"@D@,C8Y(#@T(#(V.2 Q,C0@,C at Y(#$R-" R.#D at .#0@,C8Y
XM(#@T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C at Y
XM(#8T(#(X.2 Q,#0@,S Y(#$P-" S,#D at -C0@,C at Y(#8T(#DY.3D at .3DY.0HR
XM(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S Y(#@T(#,P.2 Q,C0@,S(Y
XM(#$R-" S,CD at .#0@,S Y(#@T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@
XM,"XP,# @," P"@D@,S(Y(#$T-" S,CD@,3 at T(#,T.2 Q.#0@,S0Y(#$T-" S
XM,CD@,30T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@
XM,S(Y(#$P-" S,CD@,30T(#,T.2 Q-#0@,S0Y(#$P-" S,CD@,3 T(#DY.3D@
XM.3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S0Y(#$R-" S-#D@
XM,38T(#,V.2 Q-C0@,S8Y(#$R-" S-#D@,3(T(#DY.3D at .3DY.0HR(#(@," Q
XM(# @," P(#0@,"XP,# @," P"@D@,S0Y(#@T(#,T.2 Q,C0@,S8Y(#$R-" S
XM-CD at .#0@,S0Y(#@T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @
XM," P"@D@,S(Y(#8T(#,R.2 Q,#0@,S0Y(#$P-" S-#D at -C0@,S(Y(#8T(#DY
XM.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S Y(#0T(#,P
XM.2 X-" S,CD at .#0@,S(Y(#0T(#,P.2 T-" Y.3DY(#DY.3D*,B R(# @,2 P
XM(# @," T(# N,# P(# @, H)(#(V.2 T-" R-CD at .#0@,C at Y(#@T(#(X.2 T
XM-" R-CD at -#0 at .3DY.2 Y.3DY"C(@,B P(#$@," P(# @-" P+C P," P(# *
XM"2 R.#D@,C0@,C at Y(#8T(#,P.2 V-" S,#D@,C0@,C at Y(#(T(#DY.3D at .3DY
XM.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#0@,C8Y(#0T(#(X
XM.2 T-" R.#D at -" R-CD at -" Y.3DY(#DY.3D*,B R(# @,2 P(# @," T(# N
XM,# P(# @, H)(#,R.2 R-" S,CD at -C0@,S0Y(#8T(#,T.2 R-" S,CD@,C0@
XM.3DY.2 Y.3DY"C(@,B P(#$@," P(# @-" P+C P," P(# *"2 S,#D at -" S
XM,#D at -#0@,S(Y(#0T(#,R.2 T(#,P.2 T(#DY.3D at .3DY.0HR(#(@," Q(# @
XM," P(#0@,"XP,# @," P"@D@,S0Y(#0T(#,T.2 X-" S-CD at .#0@,S8Y(#0T
XM(#,T.2 T-" Y.3DY(#DY.3D*,B S(# @,2 P(# @," T(# N,# P(# @, H)
XM(#0T-" Q-SD@,S8Y(#$W.2 S-CD@,30T(#0S-" Q-#0 at -#0T(#$W.2 Y.3DY
XM(#DY.3D*,B S(# @,2 P(# @," T(# N,# P(# @, H)(#,V.2 Q,SD@,S8Y
XM(#$P-" T,C(@,3 T(#0S,B Q,SD@,S8Y(#$S.2 Y.3DY(#DY.3D*,B S(# @
XM,2 P(# @," T(# N,# P(# @, H)(#,V.2 Y.2 S-CD at -C0@-#$U(#8T(#0R
XM,2 Y.2 S-CD at .3D@.3DY.2 Y.3DY"C(@,R P(#$@," P(# @-" P+C P," P
XM(# *"2 T,30 at -3D@,S8Y(#4Y(#,V.2 R-" T,3$@,C0 at -#$T(#4Y(#DY.3D@
XM.3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P"@D at -#$T(#8S.2 S-CD@
XM-C,Y(#,V.2 V-S0 at -#$Q(#8W-" T,30 at -C,Y(#DY.3D at .3DY.0HR(#,@," Q
XM(# @," P(#0@,"XP,# @," P"@D@,S8Y(#4Y.2 S-CD at -C,T(#0Q-2 V,S0@
XM-#(Q(#4Y.2 S-CD at -3DY(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP
XM,# @," P"@D@,S8Y(#4U.2 S-CD at -3DT(#0R,B U.30 at -#,R(#4U.2 S-CD@
XM-34Y(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P"@D at -#0T
XM(#4Q.2 S-CD at -3$Y(#,V.2 U-30 at -#,T(#4U-" T-#0 at -3$Y(#DY.3D at .3DY
XM.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S0Y(#8U-" S-#D at -C$T
XM(#,V.2 V,30@,S8Y(#8U-" S-#D at -C4T(#DY.3D at .3DY.0HR(#(@," Q(# @
XM," P(#0@,"XP,# @," P"@D@,S Y(#8Y-" S,#D at -C4T(#,R.2 V-30@,S(Y
XM(#8Y-" S,#D at -CDT(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @
XM," P"@D@,S(Y(#8W-" S,CD at -C,T(#,T.2 V,S0@,S0Y(#8W-" S,CD at -C<T
XM(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#8Y
XM-" R-CD at -C4T(#(X.2 V-30@,C at Y(#8Y-" R-CD at -CDT(#DY.3D at .3DY.0HR
XM(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C at Y(#8W-" R.#D at -C,T(#,P
XM.2 V,S0@,S Y(#8W-" R.#D at -C<T(#DY.3D at .3DY.0HR(#(@," Q(# @," P
XM(#0@,"XP,# @," P"@D@,C8Y(#8U-" R-CD at -C$T(#(X.2 V,30@,C at Y(#8U
XM-" R-CD at -C4T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P
XM"@D@,S Y(#8U-" S,#D at -C$T(#,R.2 V,30@,S(Y(#8U-" S,#D at -C4T(#DY
XM.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S(Y(#8S-" S
XM,CD at -3DT(#,T.2 U.30@,S0Y(#8S-" S,CD at -C,T(#DY.3D at .3DY.0HR(#(@
XM," Q(# @," P(#0@,"XP,# @," P"@D@,S0Y(#8Q-" S-#D at -3<T(#,V.2 U
XM-S0@,S8Y(#8Q-" S-#D at -C$T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@
XM,"XP,# @," P"@D@,S0Y(#4W-" S-#D at -3,T(#,V.2 U,S0@,S8Y(#4W-" S
XM-#D at -3<T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@
XM,S(Y(#4Y-" S,CD at -34T(#,T.2 U-30@,S0Y(#4Y-" S,CD at -3DT(#DY.3D@
XM.3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,S(Y(#4U-" S,CD@
XM-3$T(#,T.2 U,30@,S0Y(#4U-" S,CD at -34T(#DY.3D at .3DY.0HR(#(@," Q
XM(# @," P(#0@,"XP,# @," P"@D@,S Y(#8Q-" S,#D at -3<T(#,R.2 U-S0@
XM,S(Y(#8Q-" S,#D at -C$T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP
XM,# @," P"@D@,C at Y(#8S-" R.#D at -3DT(#,P.2 U.30@,S Y(#8S-" R.#D@
XM-C,T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y
XM(#8Q-" R-CD at -3<T(#(X.2 U-S0@,C at Y(#8Q-" R-CD at -C$T(#DY.3D at .3DY
XM.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C at Y(#4Y-" R.#D at -34T
XM(#,P.2 U-30@,S Y(#4Y-" R.#D at -3DT(#DY.3D at .3DY.0HR(#(@," Q(# @
XM," P(#0@,"XP,# @," P"@D@,S Y(#4W-" S,#D at -3,T(#,R.2 U,S0@,S(Y
XM(#4W-" S,#D at -3<T(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @
XM," P"@D@,S0Y(#8Y-" S-#D at -C4T(#,V.2 V-30@,S8Y(#8Y-" S-#D at -CDT
XM(#DY.3D at .3DY.0HR(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C at Y(#4U
XM-" R.#D at -3$T(#,P.2 U,30@,S Y(#4U-" R.#D at -34T(#DY.3D at .3DY.0HR
XM(#(@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#4W-" R-CD at -3,T(#(X
XM.2 U,S0@,C at Y(#4W-" R-CD at -3<T(#DY.3D at .3DY.0HR(#,@," Q(# @," P
XM(#0@,"XP,# @," P"@D@,C(T(#8S.2 R-CD at -C,Y(#(V.2 V-S0@,C(W(#8W
XM-" R,C0 at -C,Y(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P
XM"@D@,C8Y(#4Y.2 R-CD at -C,T(#(R,R V,S0@,C$W(#4Y.2 R-CD at -3DY(#DY
XM.3D at .3DY.0HR(#,@," Q(# @," P(#0@,"XP,# @," P"@D@,C8Y(#4U.2 R
XM-CD at -3DT(#(Q-B U.30@,C V(#4U.2 R-CD at -34Y(#DY.3D at .3DY.0HR(#,@
XM," Q(# @," P(#0@,"XP,# @," P"@D@,3DT(#4Q.2 R-CD at -3$Y(#(V.2 U
XM-30@,C T(#4U-" Q.30 at -3$Y(#DY.3D at .3DY.0HR(#,@," Q(# @," P(#0@
XM,"XP,# @," P"@D@,3 at Y(#0Y.2 Q.#D at -3$T(#(V.2 U,30@,C8Y(#4S-" R
XM.#D at -3,T(#(X.2 U,30@,S Y(#4Q-" S,#D at -3,T(#,R.2 U,S0@,S(Y(#4Q
XM-" S-#D at -3$T(#,T.2 U,S0@,S8Y(#4S-" S-CD at -3$T(#0T.2 U,30 at -#0Y
XM(#0Y.2 Q.#D at -#DY(#DY.3D at .3DY.0HR(#$@," S(# @," P(# @,"XP,# @
XM," P"@D@,C P(#0S,B R,#0 at -#,R(#DY.3D at .3DY.0HR(#$@," Q(# @," P
XM(#(Q(# N,# P(# @, H)(#(P," T,SD@,C P(#0S,B Y.3DY(#DY.3D*,B Q
XM(# @,2 P(# @," P(# N,# P(# @, H)(#(T-" T,SD@,C0V(#0S-R R-#@@
XM-#,P(#(U,2 T,CD at .3DY.2 Y.3DY"C(@,2 P(#$@," P(# @," P+C P," P
XM(# *"2 R-3D at -#,Y(#(U-R T,S<@,C4U(#0S," R-3(@-#(Y(#DY.3D at .3DY
XM.0HR(#$@," Q(# @," P(# @,"XP,# @," P"@D@,C0T(#0S.2 R-3@@-#,Y
XM(#DY.3D at .3DY.0HR(#$@," R(# @," P(# @,"XP,# @," P"@D@,C4R(#0R
XM.2 R-3(@-#(W(#DY.3D at .3DY.0HT(# @,3@@,30@," P(# @,"XP,# @,2 Q
XM,2 R,R S,3D@,C at Y($%- 0HT(#$@,3@@,3@@," P(# @,"XP,# @,2 Q-" V
XM," R,3@@,C,V($-!4TE/ 0HT(#$@,3@@,30@," P(# @,"XP,# @,2 Q,2 S
XM,B T,S8 at -#0R($-(4@$*-" Q(#$X(#$T(# @," P(# N,# P(#$@,3$@,S(@
XM,SDS(#0T,B!435(!"C0@,2 Q." Q-" P(# @," P+C P," Q(#$Q(#0P(#,T
XM-R T-#(@1%5!3 $*-" Q(#$X(#$T(# @," P(# N,# P(#$@,3$@,S$@,S Q
X*(#0T,B!!3$T!"@$*
X
Xend
END_OF_FILE
if test 13250 -ne `wc -c <'@figs/watch.fig.uu'`; then
echo shar: \"'@figs/watch.fig.uu'\" unpacked with wrong size!
fi
# end of '@figs/watch.fig.uu'
fi
if test -f 'patch9.diff1' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'patch9.diff1'\"
else
echo shar: Extracting \"'patch9.diff1'\" \(24701 characters\)
sed "s/^X//" >'patch9.diff1' <<'END_OF_FILE'
X*** CHANGES.p9 Mon Jun 25 13:47:57 1990
X--- CHANGES Fri Sep 21 10:16:36 1990
X***************
X*** 1,5 ****
X--- 1,32 ----
X Version 2.0
X
X+ Patchlevel 9
X+ Changes from patchlevel 8:
X+
X+ o New feature for cutting/pasting objects from figures between xfig processes.
X+ Select COPY/PASTE from the popup menu. See the man page.
X+ From Tom Tkacik (tkacik at kyzyl.mi.org)
X+ o New automatic text line spacing feature moves text input cursor
X+ to next line (properly centered, or left/right justified) when
X+ <CR> is input and automatically re-enters text input mode.
X+ From Jon Tombs <jon at robots.oxford.ac.uk>
X+ o print button now calls fig2dev when xfig is compiled with -DTFX option
X+ From Doug Flanagan (flanagan at cs.cornell.edu)
X+ o Arrows on lines, arcs, etc. are not be corrupted anymore when copying
X+ or changing objects
X+ o proper centering of figures in postscript printing
X+ From Mark Maybe (markm at boulder.colorado.edu)
X+ o redundant $(DESTDIR) removed from Imakefile for installing troff fonts
X+ o reading figure file no longer loops infinitely if text object is missing ^A
X+ From Kenneth H. Carpenter (khc at eece.ksu.edu)
X+ o more SYSV compatibility fixes
X+ From David Elliot (dce at icky.Sony.COM)
X+ o uses 'lp' printer command for print button under SYSV
X+ From Bo Thide' (bt at irfu.se)
X+ o object image in change object popup menu fixed (caused problems on MIPS
X+ and some other machines)
X+ From Ivan Herman (ivan at cwi.nl) and David Elliot (dce at icky.Sony.COM)
X+
X Patchlevel 8
X Changes from patchlevel 7:
X
X*** Fig.ad.p9 Thu Jun 21 09:24:45 1990
X--- Fig.ad Mon Sep 17 09:10:02 1990
X***************
X*** 1,6 ****
X ! Some interesting colors for the different parts of xfig
X ! NOTE: this must actually be read by xrdb in order to work
X! ! correctly, because of the #ifdef. This will nor work correctly
X ! if put in /usr/lib/X11/app-defaults
X
X #ifdef COLOR
X--- 1,6 ----
X ! Some interesting colors for the different parts of xfig
X ! NOTE: this must actually be read by xrdb in order to work
X! ! correctly, because of the #ifdef. This will not work correctly
X ! if put in /usr/lib/X11/app-defaults
X
X #ifdef COLOR
X*** Imakefile.p9 Fri Jun 15 08:47:50 1990
X--- Imakefile Fri Sep 21 09:54:58 1990
X***************
X*** 53,56 ****
X ComplexProgramTarget_3(f2ps,,)
X
X MakeDirectories(install,$(FONTLIBDIR))
X! InstallNonExec(troff_ft_codes,$(DESTDIR)$(FONTLIBDIR)/$(FONTFILE))
X--- 53,56 ----
X ComplexProgramTarget_3(f2ps,,)
X
X MakeDirectories(install,$(FONTLIBDIR))
X! InstallNonExec(troff_ft_codes,$(FONTLIBDIR)/$(FONTFILE))
X*** README.p9 Wed Jun 27 13:46:47 1990
X--- README Thu Jul 5 15:00:35 1990
X***************
X*** 22,33 ****
X o rounded-corner boxes with any radius of the corners
X o line thicknesses supported
X o lower button panel for quick access to "save", "undo", etc. functions
X! o popup menu to modify existing objects
X! o portrait or landscape print mode
X
X NOTE: I will support these features as best I can, but I cannot promise
X anything, as my normal workload is pretty full.
X! >>>> Please send any fixes, bug reports, etc. to me at bvsmth at lbl.gov
X Brian Smith
X (bvsmith at lbl.gov)
X
X--- 22,38 ----
X o rounded-corner boxes with any radius of the corners
X o line thicknesses supported
X o lower button panel for quick access to "save", "undo", etc. functions
X! o popup menu to modify existing objects, e.g. line width, style, font etc.
X! o portrait or landscape print mode to file or lpr -Pprinter
X
X+ Caveat: Do not install Fig.ad in /usr/lib/.../app-defaults. There is
X+ an #ifdef to check for COLOR support, which is ignored in this file.
X+ Put the Fig.ad file in your resources file that gets read by xrdb.
X+
X NOTE: I will support these features as best I can, but I cannot promise
X anything, as my normal workload is pretty full.
X!
X! >>>> Please send any fixes, bug reports, etc. to me at bvsmith at lbl.gov
X Brian Smith
X (bvsmith at lbl.gov)
X
X*** bitmap.c.p9 Wed Apr 18 09:16:07 1990
X--- bitmap.c Thu Jul 5 14:48:24 1990
X***************
X*** 26,32 ****
X write_bitmap(file_name)
X char *file_name;
X {
X- FILE *fp;
X struct stat file_status;
X char string[180];
X
X--- 26,31 ----
X***************
X*** 72,86 ****
X create_n_write_bitmap(filename)
X char *filename;
X {
X! int box, marker, xmin, ymin, xmax, ymax;
X int width, height;
X! Window sav_canvas, oneplane_win;
X int sav_pointmarker_shown;
X Pixmap largepm,bitmap;
X extern F_compound objects;
X! XVisualInfo *visual,vinfo_template,*vis;
X! long vinfo_mask;
X! int nitems,i;
X GC xgc;
X
X /* Assume that there is at least one object */
X--- 71,83 ----
X create_n_write_bitmap(filename)
X char *filename;
X {
X! int xmin, ymin, xmax, ymax;
X int width, height;
X! Window sav_canvas;
X int sav_pointmarker_shown;
X Pixmap largepm,bitmap;
X extern F_compound objects;
X! int i;
X GC xgc;
X
X /* Assume that there is at least one object */
X*** change.c.p9 Wed Jun 20 13:27:54 1990
X--- change.c Tue Oct 16 08:33:15 1990
X***************
X*** 32,38 ****
X
X extern char *panel_get_value();
X extern Widget make_popup_menu();
X- extern void toggle();
X
X extern (*canvas_kbd_proc)();
X extern (*canvas_locmove_proc)();
X--- 32,37 ----
X***************
X*** 67,72 ****
X--- 66,72 ----
X static get_f_pos();
X static points_panel();
X static get_points();
X+ static XtCallbackProc toggle(), done_button(), apply_button(), cancel_button();
X static void line_style_select();
X static void text_adjust_select();
X static Widget popup, form;
X***************
X*** 82,88 ****
X extern F_compound objects;
X
X #define NUM_IMAGES 15
X! extern PIXRECT cirrad_ic, cirdia_ic, ellrad_ic, elldia_ic,
X c_spl_ic, spl_ic, c_intspl_ic, intspl_ic,
X line_ic, polygon_ic, box_ic, arc_box_ic,
X arc_ic, text_ic, blank_ic;
X--- 82,88 ----
X extern F_compound objects;
X
X #define NUM_IMAGES 15
X! extern PIXRECTREC cirrad_ic, cirdia_ic, ellrad_ic, elldia_ic,
X c_spl_ic, spl_ic, c_intspl_ic, intspl_ic,
X line_ic, polygon_ic, box_ic, arc_box_ic,
X arc_ic, text_ic, blank_ic;
X***************
X*** 127,133 ****
X static Widget font_size_panel;
X static Widget filled_panel;
X static Widget radius;
X! static Widget entry, menu, adjust_menu;
X static Widget but1;
X
X Arg args[12];
X--- 127,133 ----
X static Widget font_size_panel;
X static Widget filled_panel;
X static Widget radius;
X! static Widget menu, adjust_menu;
X static Widget but1;
X
X Arg args[12];
X***************
X*** 155,162 ****
X float style_val;
X int pen;
X int area_fill;
X! int for_arrow;
X! int back_arrow;
X } generic_vals;
X
X #define put_generic_vals(x) \
X--- 155,162 ----
X float style_val;
X int pen;
X int area_fill;
X! F_arrow *for_arrow;
X! F_arrow *back_arrow;
X } generic_vals;
X
X #define put_generic_vals(x) \
X***************
X*** 169,175 ****
X generic_vals.area_fill = x->area_fill
X
X #define get_generic_vals(x) \
X! new_generic_values(NULL, NULL); \
X x->thickness = generic_vals.thickness; \
X x->color = generic_vals.color; \
X x->depth = generic_vals.depth; \
X--- 169,175 ----
X generic_vals.area_fill = x->area_fill
X
X #define get_generic_vals(x) \
X! new_generic_values(); \
X x->thickness = generic_vals.thickness; \
X x->color = generic_vals.color; \
X x->depth = generic_vals.depth; \
X***************
X*** 179,184 ****
X--- 179,196 ----
X x->area_fill = generic_vals.area_fill
X
X #define put_generic_arrows(x) \
X+ generic_vals.for_arrow = x->for_arrow; \
X+ generic_vals.back_arrow = x->back_arrow
X+
X+ #define get_generic_arrows(x) \
X+ x->for_arrow = generic_vals.for_arrow; \
X+ x->back_arrow = generic_vals.back_arrow
X+
X+ /* The following is bogus until we have a change arrow feature */
X+
X+ /***** COMMENTED OUT
X+
X+ #define put_generic_arrows(x) \
X generic_vals.for_arrow = (x->for_arrow != NULL); \
X generic_vals.back_arrow = (x->back_arrow != NULL)
X
X***************
X*** 189,194 ****
X--- 201,207 ----
X free((char*)x->back_arrow); \
X x->for_arrow = (generic_vals.for_arrow)? forward_arrow(): NULL; \
X x->back_arrow = (generic_vals.back_arrow)? backward_arrow(): NULL
X+ *****/
X
X
X change_item_selected()
X***************
X*** 368,374 ****
X F_text *t;
X {
X PIX_FONT temp_font;
X- int i,cw;
X static char * adjust_item_names[] = {
X "Left Justified ", "Centered ", "Right Justified"};
X
X--- 381,386 ----
X***************
X*** 497,503 ****
X F_ellipse *e;
X {
X char *s1, *s2;
X! PIXRECT *image;
X
X new_ellipse = copy_ellipse(e);
X new_ellipse->next = e;
X--- 509,515 ----
X F_ellipse *e;
X {
X char *s1, *s2;
X! PIXRECT image;
X
X new_ellipse = copy_ellipse(e);
X new_ellipse->next = e;
X***************
X*** 856,867 ****
X generic_vals.area_fill = 0;
X }
X
X static
X new_arrow_values()
X {
X! generic_vals.for_arrow = (int)panel_get_value(for_arrow_panel);
X! generic_vals.back_arrow = (int)panel_get_value(back_arrow_panel);
X }
X
X static char *
X style_val_string(s, v)
X--- 868,881 ----
X generic_vals.area_fill = 0;
X }
X
X+ #ifdef notdef
X static
X new_arrow_values()
X {
X! generic_vals.for_arrow = panel_get_value(for_arrow_panel);
X! generic_vals.back_arrow = panel_get_value(back_arrow_panel);
X }
X+ #endif
X
X static char *
X style_val_string(s, v)
X***************
X*** 884,890 ****
X }
X
X
X! static
X done_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X--- 898,904 ----
X }
X
X
X! static XtCallbackProc
X done_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X***************
X*** 892,901 ****
X {
X button_result = DONE;
X done_proc();
X! Quit();
X }
X
X! static
X apply_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X--- 906,915 ----
X {
X button_result = DONE;
X done_proc();
X! Quit(NULL, NULL, NULL);
X }
X
X! static XtCallbackProc
X apply_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X***************
X*** 905,911 ****
X done_proc();
X }
X
X! static
X cancel_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X--- 919,925 ----
X done_proc();
X }
X
X! static XtCallbackProc
X cancel_button(panel_local,item, event)
X Widget panel_local;
X Widget *item;
X***************
X*** 913,919 ****
X {
X button_result = CANCEL;
X done_proc();
X! Quit();
X }
X
X /*
X--- 927,933 ----
X {
X button_result = CANCEL;
X done_proc();
X! Quit(NULL, NULL, NULL);
X }
X
X /*
X***************
X*** 1121,1128 ****
X char *label;
X Widget *pi_x;
X {
X- char buf[32];
X-
X XtSetArg(args[0], XtNfromVert, below);
X XtSetArg(args[1], XtNlabel, label);
X below = XtCreateManagedWidget(label, labelWidgetClass, form, args, TWO);
X--- 1135,1140 ----
X***************
X*** 1154,1160 ****
X Widget
X make_popup_menu(entries, nent, parent, callback)
X char *entries[];
X! int nent;
X Widget parent;
X XtCallbackProc callback;
X {
X--- 1166,1172 ----
X Widget
X make_popup_menu(entries, nent, parent, callback)
X char *entries[];
X! Cardinal nent;
X Widget parent;
X XtCallbackProc callback;
X {
X***************
X*** 1208,1214 ****
X char *label;
X Widget *pi_x;
X {
X! int width,nlines,i,n;
X Dimension pwidth;
X PIX_FONT temp_font;
X
X--- 1220,1227 ----
X char *label;
X Widget *pi_x;
X {
X! int width,nlines,i;
X! Cardinal n;
X Dimension pwidth;
X PIX_FONT temp_font;
X
X***************
X*** 1363,1370 ****
X break;
X XtSetArg(args[0], XtNfromVert,below);
X sprintf(buf,"X:%d",i);
X! XtSetArg(args[1], XtNlabel, buf);
X! beside = XtCreateManagedWidget(label, labelWidgetClass, form, args, TWO);
X sprintf(bufxy, "%d", p->x);
X XtSetArg(args[1], XtNstring, bufxy);
X XtSetArg(args[2], XtNinsertPosition, strlen(bufxy));
X--- 1376,1382 ----
X break;
X XtSetArg(args[0], XtNfromVert,below);
X sprintf(buf,"X:%d",i);
X! beside = XtCreateManagedWidget(buf, labelWidgetClass, form, args, ONE);
X sprintf(bufxy, "%d", p->x);
X XtSetArg(args[1], XtNstring, bufxy);
X XtSetArg(args[2], XtNinsertPosition, strlen(bufxy));
X***************
X*** 1375,1384 ****
X form, args, SIX);
X
X sprintf(buf,"Y:%d",i);
X! XtSetArg(args[1], XtNlabel, buf);
X! XtSetArg(args[2], XtNfromHoriz, px_panel[i]);
X! beside = XtCreateManagedWidget(label, labelWidgetClass,
X! form, args, THREE);
X
X sprintf(bufxy, "%d", p->y);
X XtSetArg(args[1], XtNstring, bufxy);
X--- 1387,1395 ----
X form, args, SIX);
X
X sprintf(buf,"Y:%d",i);
X! XtSetArg(args[1], XtNfromHoriz, px_panel[i]);
X! beside = XtCreateManagedWidget(buf, labelWidgetClass,
X! form, args, TWO);
X
X sprintf(bufxy, "%d", p->y);
X XtSetArg(args[1], XtNstring, bufxy);
X***************
X*** 1430,1436 ****
X Widget widget;
X XtPointer client_data, call_data;
X {
X-
X XtDestroyWidget(popup);
X }
X
X--- 1441,1446 ----
X***************
X*** 1442,1452 ****
X
X XtSetArg(args[0], XtNstring, &val);
X XtGetValues(widg, args, ONE);
X! if(atol(val) < 0)
X {
X panel_set_value(widg,"0");
X return "0";
X }
X return val;
X
X }
X--- 1452,1463 ----
X
X XtSetArg(args[0], XtNstring, &val);
X XtGetValues(widg, args, ONE);
X! /* if(atol(val) < 0)
X {
X panel_set_value(widg,"0");
X return "0";
X }
X+ */
X return val;
X
X }
X***************
X*** 1501,1507 ****
X }
X
X
X! void
X toggle(w, clos, garbage)
X Widget w;
X XtPointer clos, garbage;
X--- 1512,1518 ----
X }
X
X
X! static XtCallbackProc
X toggle(w, clos, garbage)
X Widget w;
X XtPointer clos, garbage;
X*** char.c.p9 Tue May 1 16:33:47 1990
X--- char.c Wed Aug 1 15:41:24 1990
X***************
X*** 15,20 ****
X--- 15,21 ----
X extern int cur_x, cur_y;
X extern int cur_font, cur_fontsize;
X extern int cur_textjust;
X+ extern int new_text_line();
X
X #define BLINK_INTERVAL 700 /* milliseconds blink rate */
X #define BUF_SIZE 400
X***************
X*** 92,98 ****
X
X if (c == CR) {
X erase_char_string();
X! cr_proc();
X }
X else if (c == DEL || c == CTRL_H) {
X if (leng_prefix > 0) {
X--- 93,102 ----
X
X if (c == CR) {
X erase_char_string();
X! /* comment out the cr_proc() and un-comment the new_text-line()
X! to have new text automatically start after old */
X! /* cr_proc(); */
X! new_text_line();
X }
X else if (c == DEL || c == CTRL_H) {
X if (leng_prefix > 0) {
X*** const.h.p9 Fri May 4 14:53:44 1990
X--- const.h Wed Aug 1 15:19:00 1990
X***************
X*** 30,33 ****
X
X #define MAXPRINTERS 3
X
X! #define DEF_PRINTFONTSIZE 11 /* default printer font size (points) */
X--- 30,33 ----
X
X #define MAXPRINTERS 3
X
X! #define DEF_PRINTFONTSIZE 12 /* default printer font size (points) */
X*** copy.c.p9 Tue May 1 16:40:15 1990
X--- copy.c Fri Sep 21 09:38:39 1990
X***************
X*** 13,18 ****
X--- 13,19 ----
X #include "func.h"
X #include "object.h"
X #include "paintop.h"
X+ #include "const.h"
X
X #define TOLERANCE 7
X
X***************
X*** 33,41 ****
X--- 34,56 ----
X
X extern F_compound objects;
X
X+ extern char cut_buf_name[];
X+ extern char *sys_errlist[];
X+ extern int pointmarker_shown;
X+
X extern int copy_selected();
X extern int init_copy();
X+ extern int init_file_cut();
X
X+ static (*save_kbd_proc)();
X+ static (*save_locmove_proc)();
X+ static (*save_leftbut_proc)();
X+ static (*save_middlebut_proc)();
X+ static (*save_rightbut_proc)();
X+ static (*save_return_proc)();
X+ static CURSOR save_cursor;
X+ static Boolean save_pointmarker;
X+
X copy_selected()
X {
X canvas_kbd_proc = null_proc;
X***************
X*** 129,139 ****
X--- 144,267 ----
X canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
X }
X
X+ file_cut_selected()
X+ {
X+ save_kbd_proc = canvas_kbd_proc;
X+ save_locmove_proc = canvas_locmove_proc;
X+ save_leftbut_proc = canvas_leftbut_proc;
X+ save_middlebut_proc = canvas_middlebut_proc;
X+ save_rightbut_proc = canvas_rightbut_proc;
X+ save_return_proc = return_proc;
X+ save_pointmarker = pointmarker_shown;
X+
X+ canvas_kbd_proc = null_proc;
X+ canvas_locmove_proc = null_proc;
X+ canvas_leftbut_proc = init_file_cut;
X+ canvas_middlebut_proc = null_proc;
X+ canvas_rightbut_proc = null_proc;
X+ return_proc = file_cut_selected;
X+ show_pointmarker();
X+ save_cursor = cur_cursor;
X+ set_cursor(&pick9_cursor);
X+ reset_action_on();
X+ }
X+
X+ init_file_cut(x, y)
X+ int x, y;
X+ {
X+ extern char file_header[];
X+ F_line *l, *line;
X+ F_ellipse *e, *ellipse;
X+ F_text *t, *text;
X+ F_spline *s, *spline;
X+ F_arc *a, *arc;
X+ F_compound *c, *compound;
X+ int px, py;
X+
X+ FILE *fp;
X+ struct stat file_status;
X+
X+ if (stat(cut_buf_name, &file_status) == 0) { /* file exists */
X+ if (file_status.st_mode & S_IFDIR) {
X+ put_msg("\"%s\" is a directory", cut_buf_name);
X+ return(-1);
X+ }
X+ if (file_status.st_mode & S_IWRITE) { /* writing is permitted */
X+ if (file_status.st_uid != geteuid()) {
X+ put_msg("Error: access denied to cut file");
X+ return(-1);
X+ }
X+ }
X+ else {
X+ put_msg("Error: cut file is read only");
X+ return(-1);
X+ }
X+ }
X+ else if (errno != ENOENT)
X+ return(-1); /* file does exist but stat fails */
X+
X+ if ((fp = fopen(cut_buf_name, "w")) == NULL) {
X+ blink_msg();
X+ put_msg("Couldn't open cut file %s", sys_errlist[errno]);
X+ return(-1);
X+ }
X+ else {
X+ fprintf(fp, "%s\n", file_header);
X+ fprintf(fp, "%d %d\n", PIX_PER_INCH, 2);
X+ }
X+
X+ if ((c = compound_search(x, y, TOLERANCE, &px, &py)) != NULL) {
X+ win_setmouseposition(canvas_win, px, py);
X+ clean_up();
X+ write_compound(fp, c);
X+ }
X+ else if ((a = arc_search(x, y, TOLERANCE, &px, &py)) != NULL) {
X+ win_setmouseposition(canvas_win, px, py);
X+ clean_up();
X+ write_arc(fp, a);
X+ }
X+ else if ((e = ellipse_search(x, y, TOLERANCE, &px, &py)) != NULL) {
X+ win_setmouseposition(canvas_win, px, py);
X+ clean_up();
X+ write_ellipse(fp, e);
X+ }
X+ else if ((l = line_search(x, y, TOLERANCE, &px, &py)) != NULL) {
X+ win_setmouseposition(canvas_win, px, py);
X+ clean_up();
X+ write_line(fp, l);
X+ }
X+ else if ((t = text_search(x, y)) != NULL) {
X+ clean_up();
X+ write_text(fp, t);
X+ }
X+ else if ((s = spline_search(x, y, TOLERANCE, &px, &py)) != NULL) {
X+ win_setmouseposition(canvas_win, px, py);
X+ clean_up();
X+ write_spline(fp, s);
X+ }
X+ else {
X+ fclose(fp);
X+ return;
X+ }
X+ if (!save_pointmarker)
X+ erase_pointmarker();
X+ put_msg("Object copied to cut file");
X+ set_cursor(save_cursor);
X+ canvas_kbd_proc = save_kbd_proc;
X+ canvas_locmove_proc = save_locmove_proc;
X+ canvas_leftbut_proc = save_leftbut_proc;
X+ canvas_middlebut_proc = save_middlebut_proc;
X+ canvas_rightbut_proc = save_rightbut_proc;
X+ return_proc = save_return_proc;
X+ fclose(fp);
X+ }
X+
X F_arc *
X copy_arc(a)
X F_arc *a;
X {
X F_arc *arc;
X+ F_arrow *arrow;
X
X if (NULL == (Arc_malloc(arc))) {
X put_msg(Err_mem);
X***************
X*** 141,146 ****
X--- 269,294 ----
X }
X *arc = *a;
X arc->next = NULL;
X+ if (a->for_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)arc);
X+ return(NULL);
X+ }
X+ arc->for_arrow = arrow;
X+ *arrow = *a->for_arrow;
X+ }
X+ if (a->back_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)arc);
X+ return(NULL);
X+ }
X+ arc->back_arrow = arrow;
X+ *arrow = *a->back_arrow;
X+ }
X return(arc);
X }
X
X***************
X*** 165,170 ****
X--- 313,319 ----
X {
X F_line *line;
X F_point *p, *point, *last_point;
X+ F_arrow *arrow;
X
X if (NULL == (Line_malloc(line))) {
X put_msg(Err_mem);
X***************
X*** 176,181 ****
X--- 325,351 ----
X free((char *)line);
X return(NULL);
X }
X+ if (l->for_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)line);
X+ return(NULL);
X+ }
X+ line->for_arrow = arrow;
X+ *arrow = *l->for_arrow;
X+ }
X+ if (l->back_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)line);
X+ return(NULL);
X+ }
X+ line->back_arrow = arrow;
X+ *arrow = *l->back_arrow;
X+ }
X+
X line->points = point;
X last_point = point;
X p = l->points;
X***************
X*** 199,204 ****
X--- 369,375 ----
X F_spline *spline;
X F_point *p, *point, *last_point;
X F_control *cntrl_pnt, *cp, *last_cntrl_pnt;
X+ F_arrow *arrow;
X
X if (NULL == (Spline_malloc(spline))) {
X put_msg(Err_mem);
X***************
X*** 206,211 ****
X--- 377,402 ----
X }
X *spline = *s;
X spline->next = NULL;
X+ if (s->for_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)spline);
X+ return(NULL);
X+ }
X+ spline->for_arrow = arrow;
X+ *arrow = *s->for_arrow;
X+ }
X+ if (s->back_arrow)
X+ {
X+ if (NULL == (Arrow_malloc(arrow))) {
X+ put_msg(Err_mem);
X+ free((char *)spline);
X+ return(NULL);
X+ }
X+ spline->back_arrow = arrow;
X+ *arrow = *s->back_arrow;
X+ }
X
X if (NULL == (Point_malloc(point))) {
X put_msg(Err_mem);
X*** f2ps.c.p9 Tue Jun 19 09:43:16 1990
X--- f2ps.c Wed Aug 1 13:24:30 1990
X***************
X*** 197,204 ****
X char host[256];
X struct passwd *who;
X long when;
X- extern char *ctime(), *strcpy();
X- extern long time();
X
X fprintf(tfp, "%%!\n"); /* PostScript magic strings */
X who = getpwuid(getuid());
X--- 197,202 ----
X***************
X*** 285,291 ****
X
X /* center image on page */
X if (center)
X! fprintf(tfp, "%f %f translate\n", origx, origy);
X
X /* scale image (=> "flip" if origin changing) */
X fprintf(tfp, "%f %f scale\n", scalex, scaley);
X--- 283,291 ----
X
X /* center image on page */
X if (center)
X! fprintf(tfp, "%f %f translate\n", origx, origy);
X! else
X! fprintf(tfp, "%d %d translate\n", landscape ? PAGE_WIDTH : 0,PAGE_HEIGHT);
X
X /* scale image (=> "flip" if origin changing) */
X fprintf(tfp, "%f %f scale\n", scalex, scaley);
X***************
X*** 697,706 ****
X else
X fprintf(tfp,") %d %d moveto ",t->base_x,t->base_y);
X
X if (coord_system == 2) /* upper left is 0,0 */
X! fprintf(tfp, "1 -1 scale show 1 -1 scale\n");
X else
X! fprintf(tfp, "show\n");
X }
X
X genps_arc(a,fill)
X--- 697,711 ----
X else
X fprintf(tfp,") %d %d moveto ",t->base_x,t->base_y);
X
X+ if (t->angle != 0)
X+ fprintf(tfp," %d rotate ",(int) (t->angle*180/M_PI));
X if (coord_system == 2) /* upper left is 0,0 */
X! fprintf(tfp, "1 -1 scale show 1 -1 scale ");
X else
X! fprintf(tfp, "show ");
X! if (t->angle != 0)
X! fprintf(tfp," %d rotate ",(int) (-t->angle*180/M_PI));
X! putc('\n',tfp);
X }
X
X genps_arc(a,fill)
X*** fig.h.p9 Thu Apr 26 11:22:00 1990
X--- fig.h Thu Aug 2 11:20:25 1990
X***************
X*** 10,16 ****
X--- 10,18 ----
X #include <X11/Xos.h>
X
X #include <sys/stat.h>
X+ #ifndef SYSV
X #include <fcntl.h>
X+ #endif
X #include <pwd.h>
X #include <signal.h>
X
X*** font.c.p9 Fri May 4 14:53:01 1990
X--- font.c Thu Jul 5 09:50:39 1990
X***************
X*** 21,27 ****
X extern struct _fstruct fontnames[NUMFONTS];
X extern appresStruct appres;
X
X- XFontStruct *XLoadQueryFont();
X #define MAXNAMES 30
X
X static struct {
X--- 21,26 ----
X*** func.h.p9 Fri Apr 6 17:04:30 1990
X--- func.h Thu Sep 20 16:27:46 1990
X***************
X*** 62,69 ****
X--- 62,71 ----
X #define F_SAVE_IN 104
X #define F_SAVE 105
X #define F_UNDO 107
X+ #define F_CUT 108
X #define F_REDISPLAY 109
X #define F_QUIT 111
X+ #define F_PASTE 112
X #define F_REMOVE_ALL 113
X #define F_SAVE_N_EXIT 115
X #define F_CHDIR 117
X***************
X*** 76,82 ****
X #define F_JUST 127
X #define F_SIZE 128
X #define F_PRINTSEL 129
X!
X /**************** Drawing aids *****************/
X #define F_GRID1 250
X #define F_GRID2 251
X--- 78,84 ----
X #define F_JUST 127
X #define F_SIZE 128
X #define F_PRINTSEL 129
X! #define F_STEP 130
X /**************** Drawing aids *****************/
X #define F_GRID1 250
X #define F_GRID2 251
X*** global.c.p9 Tue May 1 16:23:11 1990
X--- global.c Tue Jul 31 11:35:13 1990
X***************
X*** 92,97 ****
X--- 92,98 ----
X int fill_mode = 0;
X int print_landscape = 0; /* def. orientation for printer */
X int size_button; /* font size button value */
X+ int step_button = 12; /* text step */
X int font_button = 0; /* font button value */
X int type_button = T_LEFT_JUSTIFIED; /* text type button value */
X int cur_font; /* font of current text object */
END_OF_FILE
if test 24701 -ne `wc -c <'patch9.diff1'`; then
echo shar: \"'patch9.diff1'\" unpacked with wrong size!
fi
# end of 'patch9.diff1'
fi
echo shar: End of archive 5 \(of 6\).
cp /dev/null ark5isdone
MISSING=""
for I in 1 2 3 4 5 6 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have unpacked all 6 archives.
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
dan
----------------------------------------------------
O'Reilly && Associates argv at sun.com / argv at ora.com
Opinions expressed reflect those of the author only.
More information about the Comp.sources.x
mailing list