np@doc.ic.ac.uk (Nigel Perry) (08/23/89)
[XCMD Miscellany Stack] This stack contains two XCMD's: * PopupField: Ths XCMD given a file description will draw frontmost window the same size and position as the field and containg the same text. The style of the window depends on the style of the field, all standard window types (document, alert, dialog, round corner etc.) are supported. the source field need not be visible. The window remains until a mouse click. * SetCursor: USE AT APPLES WRATH! This XCMD allows you to move the cursor around and even disconnect it from the mouse... Tested only on a Mac+ Sys 6.0.2, should work on others (its plays with undocumented low-memory globals, tut, tut!) Copyright FreeWare. No commercial use without agreement. Enjoy. UK mac'ers: this stack may be obtained from the sumex shadow archive at irlearn, fileserv%irlearn@earn-relay from JANET. -- Nigel Perry Department of Computing Imperial College Janet: np@uk.ac.ic.doc London DARPA: np%uk.ac.ic.doc@ucl-cs SW7 Uucp: np@icdoc.UUCP, ukc!icdoc!np England --- (This file must be converted with BinHex 4.0) :%eK$683J6@PcBf9XE'&ZH5jcDA3!8dP8)90*9#%!N!3F$J#3",)h8dP8)3!"!!! F$R*-BA8"!*!(!J)2@%004#"0DA0MC@aXB@jj!!hTp!!+!!iP"J#3!`-!$LYk!!+ k(!!0ZeS!"1TU!!iP"J-'!3S!'!!"!*!$$EYd8e4"5eG*6%3"!+!BLDLJ'KX8!!! +8`!!-8!!!!J`!!!6@,,$JC%!N!E5Q!!!"!J)3!(""!3"6(%3%-Z3!#C%!$")'$# )[RrZ3L",i!`-J!-kR1J$i-(*!iF3364*-fG-'6CX`VM*)i#LcCXiFqT-#%V-X3- "B`!*U'"+N!!f"U!"#3)2J!!B%-liFp)8!)JA!!Lm#**9"&B%,ljN4A+1"`!5!%` %3#+%f$!8!&5X,B+X'$8LE)8)!4B-QL!Qh`$`%2("5CfV@EGfr4Tfl,NB!*cS!X! *-!"'K!dMeXU9J&F!B-85)!YC-J!q)!)`#5K!&KL'!&"'R%M4)NBRFA"l"%$'LC@ !C!G!-1%'Y"m!B!4)@F4JJY8cq-!`H-D[S$FM"SlmJlBF`J3NJ-`b'!S$+3-M!(+ m%AFH!)Xc"*3B-@-!aK%3#*,$q3HL1!-BJ)#`!'!)!11%&iC03F866S$J)!LqrB0 2F$!3"eSPbVc!!!T))-''!%UmX)"N!@J"a52l43!-!Xh`-)&mCLJ3"$X#1%%#%Ki &!!%)DcJ&!K3Jm2!J#)"!iS*%J*JK4aPPQ)'!%$JJm-aZm$"`b**c0'P"LLXq%`) q#,#!!!aIMSN!#VY*Bf8EEp3aKaPErU1LP'A#F'DC+)5j'bhY#I#'M$5UFH0ZT#$ KaMrqm1M8#a")jSmm*lB!K)4+(1S2'i!+3-HJ!3(5AJ"QL0#IK!a!i*iC'"Mk$cq M6SL'3)lbFQ+PUlE"3CpQH+!UUcdD`+LMS-ak+$pX)$#M!)!-+S-3ClcJ`UT)i)% !$DLd!X%(5J$Jj,'-$)T"#1kX1UB586jc"J0ehJPQRLc38Kd!CbM`JV`M6QE#L9` Li!b8,+,`"@!-'1J&#&mmm8j@6N$64""*02LJEm#G!d#&a5&!JRp#!#)&)%TSB)B qr8Q8bMJh(L[+#8J!!-8*f9)"a`3h$-@%SNJi!3N)5S!b!K`"")'2!J+-M$)!3J! F'B*e6&%%&89))F868Vc4)`"Z[!&#'(+F88FECEK""`TcT!!#(9C283BG3p3Kaaa [b%'ee@1md6BCF`!J4KKNJ)"'#h(2E6IH)0M"YpabN!!"30q&c`&#Qh3XEJB)BV6 T"Yd"19!%(R58)BFEBE$a44&bb0%f33BBm9T$$meQNfhZi+DE8f*!$)#)&ZDRh#* +62#aJ*!!Z!+D#9mFQ#!646MXB)6m8%J#'`@i%6)#F!!!!345!)%%-%Hq))&Nrr# #a52AXf"98SH%iS%*5)L!a2-J(!#+#cL$)VB8)L`ac6%J'2"qr#Ud$idK8`#%"3, %2$@%B!NU!d%"i5!!S3"JCJA8'`"UGV-#YZ"9qf(9%N$a!4!mLam!%jKKMV!d)b5 K#%`J3S6m%CcK91`i21["T2c4(!#d`!`D@-jqC)JS-%#!1J@"J!(!i`dJC'Flbq( !""KJJ)QCTiRU%3F-RZ@2B1$22`!5%)&%Q,3&'3p#9T!!%1dUjU%#1)*lXAQ%T+$ 9)`'-LKqrdX8rq(!L*%aKBeMK(KcUf#Xm4ND1BZ"M9[c)25UFk)dkQe%"1#'#!Si JC8"DB!0PTX!#U%'#&+bN'Li)J!bU#Q6$LZ-r+&$(3q'$N!"b0-!KKk@c+Ij$(p& SSbYKf5YAiL-D8l"P,,-#21(9!3T"N!##dU43K#%JMb`(J-&abNJ,4m(JHfYN&5[ &0Uale4!1Cl""%+D44!JS8JihdX-"T--,#G$(%@T`#KJ3J!9&+%d*4@#$1lEC658 Bi!`'B1+Ti'&2-bMM"`G!"5)313+!JF1A`"4Q%458"GriJaaN#3$&3+-K$M&J#J) aJe1%NB)P@$)&E@bHU[$K+%GmVic'N!"-2bMa24)!!345m!%%'(!%1XM"$"6!JU9 dZUSX(%SI2T@3!"mJ!!BL51'R4bA9%9TL"JFBi&$KmNF9KZ8(!S!""65G!aV-`)! V@-UVUr,$!-"JJ5PBbUbVSZNEX%N!"ZSR!$k`5XiHH5KiS))13MK&ANFD,D!a#k$ 4qXFrQ*AA9%b!B#e!`MrSJ33SS')10*8H2L0,!$2BS)c8N!!-2pM4dTIQ,!8RN!# #bS,J$Rr!BfJZ3d$-(NJcQm9["-jDV+&-Q`S0P"%GQV9&Cq-(@Y%#Xl5R69PU9cZ c(Q9bVV1&afcGN3S!r-!&rR!(+Jj44ReS9JqGADlf0-Z23mleZG&&K5)Fa3%2j91 c91KXC+259Z3)!!i&J'QT!%!(qT!!"4$)3F"p1qPH1""!KJqe6!#JiBD(a[@eXi6 '%DJ!K%KBbTB+G[#UB(!!"[03(ch3$MlfDXU4TN)DL%@#2mc4Ra(,Vm6QD!%8r+% 1md*)&rZ!aQkP-0maR'&(0$B9'q#c(c!B)(T[,E%k(+L$ejTA"T,CKbGf@q!@[`S $fp8&2cMJACd*@B)qd&PID`4M1M#Ca5%BLJqL[!mHI1r!6ADJN!#8N!!a#S1#"#J 'K3UF0H*83#1fp%K&"I#FLJr`@AfQT,-j8M%02X-@ZS0Z4QcY1JGQTB)1emV@'Hc KD%KM5e[f#&*!"!X+'I#C![i#'#!14$#$)8aK$2XL6X33N!!!T)%eGC2H'`+#J$) %"!KM#*!$kK!3!M#!$QJS!`L@0)E'[H&a!,!!X)A0KMH-`A%J'!2@mRD(0%cZ$AF !3!5@2EBbB'i+G-J$'i4pE"!dJ0Yc#2HiS5d"G+1KEBhM(0HJ,6eZC`jc4RL$eqJ 0!AYlQ`j65)-Hb)hX#A#lfQ3S3a1`GJCV+klFf`jfYc%A"$DNi3c1+hHl*Aj[1L# K$"G(Jl'4h@U#'#3J##%)4K1!!MViQL!F!%"FBj-kJ44%)MVaJJPZlK4E!#!"*b" %!Xb'0V@a63i+J-*Dk`!()k6K*@3!N!-J!$#&5T!!*Im5rM-$V*kTJ!)$aJ!5F#$ %LaF$"&63!H+!J!c@"AaJ$k0*N`8#3MV*-U-)3!!#[)`j8bE-PMKckYc*XkI2Rd# $#Ke+Y+M4SdL6+Ph+Y+R6Te#MQV`C-5!L!#)!A-f+#*%)%9fr)P)P3YABXXa8c9# 9GUdl9EY8[BhVEYFZGhA[rY[ecphH[Rm6m[d(#))!%!%3!#'JX2%rVj!!`BU)))) ))XU@L3&LJ'D)!"JQBX%BX!%E-!D09!&3c9UVL#U5B51#A@Afkc[GF1[Z4[@LULU rJeFC3!J*$!B#!J334#3(%8(+!b#L)#))SL!L+!!#&-3(!J38aSNJ`)L1L!ZB)2J #K!M"1J5)!*9!*L-4'4*-*)RL&-5ALQ38V!-%+!%4S%"!J!!"!J!#%$#3!'S`A38 6BGY9#!J#()J3$#!"0%JK)2pmK`!qjKhab!8La2%,!,rm!XZ,X2ccKbpGL")%62V 8Nb-S82!SeBp!"LRNN!"%&QRNN8JQUH556$ETj*034LRPP"!*!%!63468'&18G"4 !%@!%K)P)!2#c4%$jh")3"B%N4!9&a$C9deQRRRAMQk4-J6#44d%KYaP6444p a`#!!"J!`!$J-pZ!46K(-qC'H1!d%44"(`!P!T)#'`Z%T*S8%aKq1rI0,UDMq`dp !$5`"bJYGG*((,drm-mmh@k`cKM[[Z#212[pmFdKIp!5d!"LJl*!!aaj[V+23*re mXmmhpRba6$QQcM(2,kY5kZfhi)BVlVMNPQ[ZZHLQUqkkl,EVlV[`aL[[[25f#i3 35aa"a%BG!3#"TKK0bK'r8Gf,*43"rBZ44JYEB@9'$LF9!"XJJ6"%%&,X#d")!6Q JjNkF!M$`J3d%*)!RL!Cd!$jBaC3F!"N!-!N!0!5JaNNDI56"T"KJP*8!,e2dd48 !R0(54`i`,)(2LJBG3%TA")$'d3!N(G$5&bQ"+--A+!U!#`"iF"%9a!J+%N331&( '(5!)83FGG,cK4N"bJp$''hA-88B9F$4`aKXJS2&''f8d8)BEC0L0YpjmP``!#`! Nm,)@6`I33J$p!($!54maJ$B4CF`aKX9eb$(('h*F"2N"NbYU13$kD-ljaTq(2MS 8Em"4"a`BmDk!4J(B!!!4!6!"!#U!6!S4`l3R$2VGbG$YKZ*jlpfh(@R-88FBE)" 3KKPQP$%'(5#N)8If)14q1!KcX2('(Ai$2NBBFL3Z!Zkk``(#mfq)B$MLe'0Fhb$ #Z`8!c`B"H%,a!M#,j#d-)TjcAKQJ*ld!@Um"f0-Hpl`(2['4chcS8prdf[Hqq)& JI[8$J3L'8,V6b@&r%qcIra*hYqSe,L!df*J!B&)&!&3J!#N)J$T`"N'd$B%0D4M $'N!3Ya2+M3jTF%-GbK#pL`J#!!hJ'J"#!!!B!-"4$!Z$DTJA3AqTM@eZJj[F+PK $!6B!IlXc3KV+`!ElS6"aCTKM(88!!K1B!!4aU--Ek&#'2UV`L%PFBK2(m-3S6M% CI2aM)!GCZ-24F(%A"%"#X$#%*K!""%h)hKMSb)B`Z#%2Q[3((1%J4cU53C2pQ%) Ck-"#dk&1NrPBC5[V#!)bC!m1TFc$(%!3"K$F)BTNH&rjTQF'16`aI@E`RKh+))F md!%086b$ppLJ0bHkJ3jKL')fQBL'3M,bQiHM`c$I%-eLcJ%1iNY$(XZ!4cf5J3A N40ma%DG-0)4KQ0FXj"c#3$J38+%)@+!#-H93KQ,qNjb&R#F[6CNip2RbRF'Njc) KbMk##R3-$&dI(0i`Kc4!8@iZ!%%5b"I3kGdKR1S%34fqQBEZ"G5#j4[Q'*!!U%5 08Y5Bf"`$'N!`dLKqN!"m$,hE0!&D6Q-LmhdTT8*6kAH'1K$ZQd`%R#lYQ90LJU! J8NL#%ilJ6A#+d`hD,+C3ClV%-Z!"$JbG3dRVGSHJ$M80C%LR21I)e)MD-kT0h@F bf6B(1Z5"$B@XANARS!-3-(4mTM`$BPm`"hm1&J4Q3*eM24MCb9Bf$*H9+"RQX!2 fJ40ap%YF-XGJeA4L9V1LFbBEN!#)9XcDNl51a4X!'5N(0e"6SjPp)4hNB-ThdXq eSKhQ6lP(6I+*i3eiH1d,FaH'32V9PA0)U4&J#p)hc(DF2aeZFH&`A+`QPk1L"B% E20V9L`)c$(R`D9qGbNqf3C%1L!AE2qja"B`j3Da(D#`+`T!!JR`1Nj1H*1CXhcI -21!YUb$!RRI$3%L1"J%1`#aN&I6f`L5J8`jQ#--S3A#%1Z#9MP%-A3K!J!)a&2L Dk%2`*pYJbM6SVT5%(#B+f*R(-D5"Hfc)3c)+2029YKDGLC2X'm6!2H8#d*rVG%1 3!%%JKM+X,mH%6&cGLYN%%Dm!RbCPRq$U`-XlS'k*@jlH&)T!jEHTY*Gb1`(jeZ! 'CBEKZ@j13K,`UHISDRE0,jJ"$%k3!&d39'(0)!L#3V2`K#T)!342Z))63"$@+5c ""3f3!#8Y@kKC)$-B"!kZ!i6eaY+QaYE+df1Y,B8,1&2Q!36ZQpp*TlGFEJ+ZL5M )D`SBZ6[%FP69,X5X-pZ!8k91-*ec5%DL6lR3UPk9I04dTZPk18X2DP3-VpCd,B0 ph-h5SA5qVHMdEPS%2"#bYpcl3K(N)'d3+*R*E-!d&3"Rl&pcqSA98k'fl`d#(U# K"Ba%(4Pm`!)Hf!(JEa#i$d339F$PPGFCY[HUK6diMVBaXGd8`EiRhN`VL`#I3Q$ caD43"#08J3P1[DD"LGPAKRDecXD%,i3ILlH)KcP[ilcT'XU3!)IRT[B&9mhELS0 !EBJM0R(!eZcm4JM&f9+jN!$'6Kc1DlYa&cEFLEdZj%d[6N`!hM6T,`c$'F)j[Ab A`D6PI+('ClPYcFCePKm(DK+(UVZBIThI6&BLK1[kfldrP1r6HhM0Mij2cDjpda1 rH0cV1RGB0h5T%JmfhedHjZcTPaj5,53@QM!%)K"kSc!HCQ&&[-4ZT`)%-FJ"$R* !j9Fl)3eRS#-)S"$Y21"cT(+Bp6UMqI8hj(@KK6cp&2*!Bh51cX0M5'N@(NcM9qF lS0f8mHFl6XGA4a(8H([Kk*8iKpXl%hYj6G`e+Bap85G6[B0N(bN,rm,VZcTp!Ah K5em09hD'ZCQ$`qFe55T3F(+IaD'h6$Y9"hNe6&2J6`ae"FH9!LNe")2cE0h(2R9 `"V&A@'NJ0a()5'h`ANB9JA!96RU$6`aPAB8e6-&e3RN60m3QI6Sf#LiiC0j$"mQ A96V3!+mAHpe$Hqb@"`d!1R"!2ZaN-B06Gp6d96jf1+28!%Q`JG6dBphMJ,09"V( A!%`J0mQNCPG`!`e3"'K95SLcK64@8ihP"R!!"(@`"LiJBLk3!%3ZX&S0X)9ZS!C [N!!()H!iG50#8q"rDp!!T-C4XH9Gh41%Gf4EVU4#S#-kXjFlZm0(633$I$K,IYK G6LH)U8@)[&3CYN-kUmD)J11)@e@))M#)SK9*NL4)&IC(+m46LL3rM54&9"4*J'5 +P34!H+L(EpJ#,3!#DT!!JK"f6QC32FR3!&['EZqc"$bh8'+!3GQc2Ghc2H%c2Z9 c2ZX%6b2N2[!M6ij&8B1$!M*3B$f!HJh38LBdL2HML2V$2rj$4hScMT@i3[b'MM0 82QB3Mr6M6(GJM+Kd%@!J"!I6-4qc2#B4!"(6%N%!!2iJN!$+d4-B-!)$N!!m[e! )$aQ4%$Q4%XN,KH!6#@!a'+-aV3)8)6-`!q%i!K!l+3%!""!2!-!+QJ-mB--&!E! [`1"!'9&%%R3hLCJrE)4*MF03m%4qak4bD3!#haJ$%#C&E9"Pda90Bi"(G63(Ef5 1Zf4(P6L+II4(DG!!XEC%ThBi$6"6@FNq))9UmFL6$88(mAKa0a33+X!J1`3!+*! !-TX3!$%J1bE41@Jc"C+)@+Pc%9NK16"K"!"3!J#3!!X"`!0Q%c$0ibp-J`"Yq8T `FJd"`!8Q16YP"!&-X`"YH8@[9!m"m!H(8TH*DCNA!6B+d*B%3JJ"-!%"m!P88jN mN!"Hkd8i2T!!%5D`-F$$!J'!!J%J"!(!#$)*N!"RNc!(U%a413FjD80p8hI'*(# S"deq+$LjTelX&B3&C96bd`CNd!"NkC0S9cj#fCa0C*4)kCa,L9P0f3$R0`EB@C8 U*)Vf4)VP-jCPd*0QLBhUQ6MI+!*)F',q)ijpH&1a@8M8UA@!Sh'#`cE&QBlF9$M rf93"kT`&e86kH@)JN!#Jm5K2CkQ6!`3!0j0&-E%#@i-%J@Nf!e!XC)3fCp3fEa- hF`-!GB1@el1-'q5-(K50k,06r-FqeXL1+43$'BUF*I-2UJ59A19H`D4FPUKPijB lcPN'de40-&CEkPK)i991,J96*YKT1,96L33#Z4KQ,E9CaMCIST95H#PEY+90jp9 Y4JTI'M9efM4kU*9#4[CXp$9B%IL63h96K'4Z`&G-0c93"995HN#PC-T9DH!#CC! !8S'DPe4'2dj&"N!j6(Af3@i`J1%(HS(e9'ac6*++"[U&$jr)5fdU6&k9AR860rS 6K%j+6GD%69+kS&dRIPBDFbD9T@'hTDVSTH96DZZ69'm!H6G9TPpP@FUdTLjAUQp D8VAP6XCk"aVP5pcc"YSN@(B'3''!B3dPA+E'AJpe8kJ$Hq[92@@U5IF`UUVe5dG kUPb9UNc+UNrkUZ-dTE-+89GkUp,P99c(TAVhTEik2F!UV%e&V%p!AYD9T-U9V1V UTP,(V'N&Ch8J"VlfA296K0,U2YA+UIVA9"5E9bp8CH1%0qT%S8()Tfj&2XG96#A E91&k"P'd3HAk$rD!VVfdX+CD6+LkT+XD6Dd+TE#U6I4DTH[c8[KkJX@dVl[UVrB UTX%D1ZMe9`C&A'jJA!aPAVF&I$@,83`V8`lV9Fj8C%l8@d9SVAH`XB9%YPf&XfY $9'Q!"qS)De49K1-hELal2LilVNR+2VIQ6ll+4#IlTf*+G[-PU)ZU5I9!Xk@+T$Q E96XV6DiDT8!VUd*lVc&PY,VDT8SETJ(VY--+Y9,!@9eiA8f*YFVDX1"P@K49L4` BH%j)VAGkVBQ6V6h*V3,PVI29XLp,VRm&!+X%3hIMSURQ2RSc"+R9!0LB3@NJX3+ UP&2*986TRj!!Q*9EZD4-*!G6p)J!"+1p@)PLX+*e-k'rCk&p+,eKH@@!%f),HU( cD%NR*,aP3,cemiE$D)riL)c+U%(0f%(3#%)kjEik@N*rFd+9k+2X@ir&b(0)J3# !-()DFb`H15FLda%$N3!&!JYHSbJ8l!8a`6!T-*Nr!!"Sm*X"FD)e#6Kc#E`@e$L NeRB[&'[1fEeU0$fBD*-bN!#1fDZK!@%-$-)`BM#CH!$#)RbBPFNr)#!$aqP'9DG Ce*GTE-G[USTBCJ#%c*Y#k6A$J&2$$8#dj"-$11#)5IbaJk5#GSX'8Lc!9-a99Pc %rU2&U#F$AYc%%rGfCXQq-1Si!%!J"!!m$a!!NK!!*4!!pK$%*1`[#SJie(6%CA! &D"G&$D#F@iG*5!!#+j!!MIc8"LJ`!`@@Lc+`6%f%"ShXCSpF29BJbC5F6*D-bEb kbGBCB8b-H-''"LaJ"cqU0iSFT58M!%Y6!-#c!R`F!%%3!2FJb$6T,d+J@k1%b&a iERlM2[!@1(R&"Z#%6hE`c1$db9[-bB#$"Y3F"YEFR+XmcA48cA5-5FP-6I)l24G Abl#kc%Zf3GSFcQ%JcG[FcD'X0j'mbTlXb%eeFD2mcFBE65M`cY"F6%0CB$m9d0m jaQ9F8,NB!bp@UmVC!N5*cr0-VpJBd0[mR4*Yd!#%d0m)a3YG"LN3MPEDc42p6GP Fd3#%S4F0cJ2pR3jGVbKJ"prjA'T%E!2+Uc%GTK&pdNhNdZ)XUbfGdGqid6*0dpq SUK!UdL60PFVTdi!$e0c-[KMkaB'c!J)GcAD`!P)pbiQmb'lJ1$GM!,XFSL2+-#8 Ua#LkYQR%SSMF1"R%M"cdM"mNMHfESb3%2`%mL!4m`d!D%,A*1KV4`466"3'`+J4 !Q@M6"%f,%@r*Q"V4`f`3!!Q!1C-*QN-F3dA-0*+M(!i!!*-p!lejfBKCQ4Ia$rQ 3!!64&'T%P6GlbV(H5ldh"G*QLi)6Gda1YiXE#'%!qVGj"6e+5$l*a,RB0%cBPP2 DNdf0CG8Z()3`c++'U0NeV%Rim!66ScZ9PA1`(F1mh93J(AQDK6l8KdI$CR'B9+q k$3F!YEF%UMrIc9ZqPC3VPel48,f[TP6D$A@BT'a"%-9&U,D%*6j@1&pJje5jE9A kdd3hCG-Uk&L`4mE1'B#LGAYKN!"[BNGfpDUjX`4ZMkTh#VlGd(hFfC2FcDT[F"a XFXa`$G"I8["IBp9BUPeqa%5aII[FG40E0ZCFVfCBF$"1+r5!&08#,X"(SIC#"Ij 6A)IEh90P46Gip,4LmdC-G[!'H18p4eQ2rc3(G[VK14U%V&eAVHCbH1CeYeC0[9V E1$UmPHK2L+1Ab$e&5(Ti,'a"rS-#M#G8F1DdPIUcmJK4VpCY4NG2$'LZ-4jU*q" bP3TUN!")XI5NIfD1@''!2E99c`,kT1RM@a%1iKKik4bPd0%cjrb$`QRq[X9Ve4F AMk-1[pNTM,4'M2GiM256M(%pSrTEecIU[hR0SiR6el(Vk[LS&!B9"%R!")da!9* &BCm(C+r&"QZ3!&dZi!+Z!`!!!: ---