[comp.binaries.mac] Diddle FKEY

omh@cs.brown.edu (Owen M. Hartnett) (07/27/90)

[Diddle FKEY]

Here's an FKEY I wrote called Diddle.  It's a programmer's utility which
can save you a lot of time.  

When activated, CMD Shift 7, and there is a dialog window frontmost,
Diddle will draw the item number for each DITL item at the bottom left
of each item.  This saves you a trip into ResEdit or Rez/Derez every
time you forgot what the numbers were for each dialog item.  Simply get
the dialog up on the screen (usually while running the application),
hit Diddle and have the numbers displayed.

Here's an example, which might illustrate it better than my warped,
twisted explanation:  You're in Think C, chugging out some code which
deals with a dialog.  But wait!  You forgot what the item number is for
the edit text item where you enter the phone number for dial-a-porn in
your dialog.  No sweat, you say,  "I'll just get the dialog up on the
screen (easy to do in Think environs) and call Diddle to get the
number." (of the dialog item, not Dial-a-Porn).  One Cmd shift 7 later,
you've got the DITL number, and your code is that much closer to Wicked
Wanda.

CMD Shift 7 + Caps Lock will erase the numbers that Diddle puts up.

Source code (even comments) is included for you people who like to scoff
at other people's code.  Diddle is *free*, make that Capital *FREE*, but
has a small commercial located in the source code somewhere for some 
commercial software which I sell.

Owen Hartnett				omh@cs.brown.edu.CSNET
Brown University Computer Science	omh@cs.brown.edu
					uunet!brunix!omh

---
(This file must be converted with BinHex 4.0)

:#N4TC'4XC5jcDA3!8dP8)90*9#%!N!3FDJ#3"$F"8dP8)3!%!!!FDR*-BA8"!*!
(!J!,4'PNC'aP)%C,49N!N$4'5d9C2j!%!3#L2p4aSMr8F`!!!YN!N!B#E!#3"'M
G!*!)Sr)!!!3)#%!!U)!"$JE-`D[J$aIrc,e`i%5A2c*JN!0S11"Ka)N9r9%"!`,
-!L*Tb*!!B9-'K*%P4E)))%LcTXfE1(2U"#!+f*ep0J9N'b6%e6pf,b#L3c8(a4F
RAPamFP)RB"80#r!!N!$Ja%V!,%pHm-"#T)J4)@HFY!UJEF@ADa+8Y*&Q`B`%X'+
4"*Q#"+eDYQk[%C!!5pFZAKj1JM3TiRGYflF!#0H9!4C'LfX1S!&"!Z`&!,8$9,Q
0aUrbC3MP%()#ib$JbjJ!$YJ-SZqIZa$)%MJ$%p#(L#mJ2S"LiJ)3(!![%X3!*J!
%eH0Jl2d'm398#LHef8f[VJ,l2h%JhJ!J!-)c!V5Th&'(mX3*Y+lq4#%jp`!(f&3
N6!"IF%DJ#!CV&!3!'fB)K-%,+`$!58Arf!*#J*bJ!)8+$)"3"!i38-%)%QlmB`d
UG,b`!&-`%#!&%$d!%4mI!I!'!$8N-"'%0%1im`mb)Q#6BiibB-1K2lc!!*%c9!$
a!`!H-52N2miB!!3!&"bj*$01![$!NDLFmL-[U)bb**&'!M"PP9F#J-SND+&bb!m
m!-!!+SV!B!"RR[e)$)-mr-K++RE!NB--!*L6K!&"q-0+!$C!!-!C#'bC#JTJc1Q
'2m5J3NJ5l!$J`(%33%40T"U#)80'ClM`"4"Rd12N2qHFiFkUi*b"MKm!H!"406!
F`&NJr"5%"""+!2''!&)FN5YRd$##!K"5'*%'!Va-+STirk#3!*5(6#'SB%Lb-2%
0"r"!4986356K"!MSJS!333BKT"!!13#J33@-+)!+34`!!#J!Vf9"N!!#XGfN!51
8')#55L`"!J!34'PNC'aP,QCVCANZF(*[DJ#3,e&38NT35Ne0!3#L+m+BSN$HY3!
!&r%!N!B+QJ#3"#Jh!*!)-V8!!!3)#-##U)!9$JTm!X,0'cSJc,bTiiE-"5PPjNb
8-kC-a$4X2$U%+,%1"#*Tb*!!#HR#c*SbH9c!NI0'c4X""(2Uh-QcTdqGSS$GqEI
c3Mb3!'A)"&`3$8#@!dRFc+%6aJfG!dr%c#NMadkC#9'R9S9BP3b)V&ZlPP&3a@S
D1L(0$NJ3a%iBN!"Ka)6%`140',0ZbY`"-HD0e6*@jd4m)`I%J"m)iY4j5bH0Qc-
(aV"j-mIb'3@&hEUCI$R"P$"H(B-)-qIR!"!!%!#!!'!!J!3!#0bHJ'KRJL*Md,`
"B36Tcq2)NrIm4a6P($K%0Tpa)@F14qABXqqN$DLf3*ii!pS1U$YJ!B+fF4XJ)X@
+&!!-Y'0RlejqGL0,LQ3"F'"pbT9P[(''I6SY%-#""!8""44-r1$J$`2jG%d!DJ5
`J`"+i4#!(J"`)J!G!*J33#3!##)!(`#%m"-44L6"""&02'&&6VT4'0#$12k3!0-
61Z'R(iir,B#55L%4Pppq"+B(!%i%$(5JNcS&J!%!X!4JcBN!!!&!Gi`3q&0haif
AR3K8)*'%%dYm!8838``4""-p8#&&&8AXd%!4)E8a"`iia"$RR(8fi1@JK"CUk+'
)*USS6bB3d-4GEL$Ja)cBSE#6#PE`!J#QY!38!#!04%8(9fD%dC%,E+3KKRa2#+%
%E0JG'%SVj,44D$,*,%T3H!"-X0-$p%NK"8@9Y9%'UUTQeqUVfFPDa#SJ%SS--VU
+pjf[%3D%`*!!!-T%+"9&B%%&!%V-&J!f!V$4di'Lr%$0&[i4@BCfb#"4E@j,pTU
[6J2%pqN8"p,"a`%k%8!`M90S'G#8+!JFiSJPBTP#E3&d)d!I"'%#3-0m6)!*Fm`
&j!%c)2p6J"&XK(('(!YJp"F)4EL49dJj-A#&('pj&22-ma,N`"#'d8%6'c$,V&I
2!68`"99de+(BcNIAl%3C5B&`a"Y[N!!K4Kj)hcCee95NB@a1#AaY9PpMV*%G04X
lE!!![F%M-XRrj2,-!-1k`F!3D*540JK6j'&9'(J!X)4j3Nc'KP*#"+3!hhk[!GZ
R,!HJ!a1UbK%'cKQ9l2RRS)FZqZLNPflkkDLRV[VUV,IZ1ZX#!6*%!""3`)9!VqH
Zqqkmpqlllm#R6K!S$*6`440Pd)%'&6c236VZ4"'NJ2&6P-%'&$50iAcTd1IN`!q
LNQVUXDQ+%9m+j0!@N!#pf4)%`3r"jPdXqFRb"#9"#F$r(dY`E+!`!#`!J!CX"`!
5%'3J[$UJT`33[!Bkm)%3M+!%6`F(JT5R*l)"B!m#b))0!T!!"lJJ5!9c)S0"!3%
3lR"#6K3'$3$@!!FkB8%03#6$`XN346,XMJ`*iF,Hb,",-S5%#bRK3Sh*N!!6,J5
&#dRK3P5iN!!9,S5&#cXP`a$+8&-b")B,LH&#DXQ3!"NZE+%-f5C$E,L3!"XZ")F
,bH&#G,L3!"dZP*X-kH&#I,L3!"m!Y%&!@'!$hI"40Rb-$apT`dF+j(&+I14!(Q(
$4`2bd9*mj+!0B*!!4aU`d)8`j'-QE8#%20U,Mdc))a6b1#iqBL'2Yq-M'2+S&$k
L)BrUiQ-&q8K$'pM3"MLdJ3jY`%-qqY!'3,5"%2P)4$iDd3C)j+-5qFK%2MU4Me$
NSa6j5%8E@0%'@,5"&[R)46jkd3CJj+-BE8"''jL4MfMNSaVjb%BqZT'2F15M('e
!4clDNBpiC-%0pRJ$!Pa5KTQm!5"[B%Kp)[)'LY3R)frJb"Y!mJBF[!%Pp8N$!0i
JS$b`U*Edf8PpI[)'SG6R+29CbKZF8TqT[-%UpGR+'la5Rl'm`5a[3--Ef2!'1,b
"$Qr3ba[im!C![-%`Ee$-'aMa"XQm`6*[d-`E22-'dEc"0'p!a4YBm3CB[-%fEp$
0'hMa"Z'mJ4K[3)er[Y#Ljla"1fr`cK[%m`Cb[%%pEh$2'q36KJ$%J4pa!%JF#")
(K-4"3A'!5"`N&!H-a)%MF3"*((!3"a2&389C`+HmCT5b'm9"4h(`54b%&!FMa8%
TFA"5(+35"b[&35Yam&)Fa")(Xm3"$A&J3acJ%!Fka%%[FH"$(!!4"m2%36&aB%3
F*"-(bm3"+FbD54`m%`G8a)%9FB"&('`6"ph%J4Ga%%iFL"%(C-6"1A'3!%iFV"-
(lF6"1h%36ac)%3Iea-%pFC!!cacX-3Gqc!%JFb$)("!b"`A0!5*cN!$3($!b"il
-!54c`-%F6$3(Nme"*R0`f4aX0!FGcF%RFa$5()`d"kA-`8PcN!$+(+`d"kh-`8Y
c%-XFc$)(G'!Z!(0J`acd-JFqc!%3Fc$-("3c"dE-36*cX-`F0$-(cma"0(-`c4a
3-3G@c!%@Fl$0((3c"el-36Kc)-BFN!!a"qI-36TcX-iFY$-(lma"2(-Jaac8-`I
hc%%qGE"((IK4"i$8J5"e3%JG&&3(L04"3RA!5"di8JH3!03""h8`84e-9JHCe-&
PGE"4(4""aLc3`5Ge8%SGR&3(UG6"5RA35Kfm9!Hae-%XG8"$(GK3"cM8J3jed%X
Gq&!(306"-(936"dB83I*e-%bGG"-(6a6"p(8`64e3%8G@&%(@06"0RA364ei83I
Ke)%BG8"'(Ca6"qR8`6Ted%iG[&-(mG5"((936ahF8`Ijh-%HGq$((3"b"i,F!5&
h3!&-l`#41h$N$L#j!`lZB+)lQ1`1-VQ$bqjJSc[Sk!iqZB13!1jJT$XSj3j1ZS0
8lQ#P1fMP$PkkJeMZB*BlS1%1E,J$(1j!Kc[Sj3jmZ!-JlQ#B1bMQ$SbiJf6ZB*N
lD1B1RVQ$D1jJQMZJiJkXZ!-XlQ#E1qMQ$VbiJh$Z3)`l)1-1cVQ$G1jJR6XJKlr
IZB0klZ#H1mKR4MrS4ai!NJH#j!%KH9"3(L#5"`RP!50ji%JH3*)((16"4(N`@4j
NNJHAjF&'HG"4(Rb5"b(P`8Kj8%SHR*3(UH6"5RR35KkmP!Haj-%XH8"$(YL3!!F
ij)%1HG",([L3!!G!j-%`H9"-(KL4"mRN`6*jd%`H2*-(dH6"0(R3UB$!!49l@#8
!M!%#"X"L&A!cJabUm)3A-#!9B2$""j63KQL!SJ[!B-!4"1+&B!!M!0chI[PI!)!
A")$keNq&''M`!4&m!!3Im)83ZL!-B3J!%!%`)!"J#0B(!`F!$Gd(#MU5#Q2`!be
J$$MJ",VJ$H`!!`q)!m'!4jaJ!%!!$aJ3"283%%2J$J6"!#+!$6fJ0V6`$qSJ(R"
d,c!BJc)iJc4BJcCiJcLBJcUiJccBJcliJd!BK%)iK%6iJc8#!kIJ+34K%!LK%!(
!)bK3"ka`!#%8%"b!IJ$J!&#!"%4`5J'K"dE!KHm4%)CJ"&E`"+%8%**J"&03"1-
A%*jJ"@hiKJ#J#ND!"9*J"!4K#dEJ"&e)%-+!"843"(SB%-j!"%&!"8&!%0V!(N@
3!)B!B!j$m!5$5"$b-!45m)J%i3p1%!408!5HSJ")`#Ef)K!@B)C&-)B")!)"%6,
DXM(Q)%3!i)S$i!@`b%5c'$d%)!k`5%5j+"i9K3,Q)%@rb"rb!)YF9)`)B!Q`q)+
Z5"$#U$(&L#r#U%A&1!!"K!,RF$[A5%R#D%IYN`#D!)YX%`#ZQ!!(SBf&8i`*B!U
`D%E&'!'U!)YS9)`9-)l#5!q1!LN!!JK%D@4NE'8ZF'YPH5j`FQpU!*![9%9B9&"
+68d"!+)2%%'L2p4E!*!'&RS!N!B-G!!!1rd!N!C92(AFT+%$JNJD-Q6BP0R4S%%
D0h6+b$%6CNbCKJRJb(PMN8`G1@9!Y!RcN!#K`cC`&,BT!c%-R64[h$6F!m,)NL*
C3,J*Xj)-#"%'%5S8!D,26""8d+5C8h0*Q6`Jb,`T`j31QT!!CYk`BI2QcX-c1SS
ff*0Jb08aDkUq!6'R6-JdCN"BaES4BTXhF`KkG52e$SLP)-*%641'kaN3HrZk!!%
L5Gb"IqH`N!"leBeBXR)#8YjBj``DbQmMYQ(+CLR"V(*!$blmjXaN-NY6KXRc9IA
!-QedeQNM4Z*IbdE*cJ8"FJbG-'l1+!5"'N5CLTp[YeN-!NRA-RBN6SDVHN`B1+3
jVJ'ajQRNU&hG6*i,I'b#KhQIqh`6PibF-(X2$hHcZlHFefXKjpapE8P4KR'"mI@
E(B8CL#!GDi&N(hkU"CI!'h+NFFC$KIdP'R9'MFAB&@K!PFFEGCcJdah)%64((@0
m*TK9Ai89)PP"J!6#LA8iPeeUGf6i8R*XS5L(45#-m3BC@'%Bf'U'*HK6KTkj1"*
D[kR@aN%*P6%CMjFPN!!!La$*YGBDER5&'"SZf5DDEVcj4TpUX,&ff%-l'NNF98B
LD8BDbbhe!f-@*Z"BRLRUL1G`56ddAU%XfC&'A5Y"*"QL*f3(`KP[%!3K#((8-G"
NhQd&3Ke`l0N@E!3K0amF,0&*@*5S8YF%&&G%jXB*""AD"SbIp8C(4(*3P`@+QBE
%UDGV[3'VC6bQ"T)Hc!&D"R9*R,UUQ@%Q)0@6Fi`"8U`HS36#R(9'+FBEH&$&lA!
D286XHQaDaNBB[E%4Q+R$&5SG8f*!95mCe$QKCQ(kJXQQTTpq#eKjCD5U8@[hYE%
PN3'pP$#+53S)fabb39ASF1QfPQ@d)%am4XAdaUU8TeF9a19b0Z(%E9XK$5FGR2l
0X9LK3AA*9KMC-3@Q'4[P0KbEFmbah*c1XP3EUUU@`HTNVV,e%*,$%C%%&8adbeq
FFM!9KSj8SN(3SM'[LmHA(0m4%kr-BAK''6$M&KK6cmd"+&4h9)BS@el4%@1h5,q
4@d`KICG5'Ykp&"1hb(9k9E%h)K9cd$6IP"0J5,[&SSiYr%6%@S9rYY+DEB,Te9B
Za%j8eS$"8BFBTBf"hNKiCQhK5&$eGQT+Ei6"*"N!hZ%'9mCEI@jUIM2*r2%*jK'
i4#'jhL*e36$eBScEVFf8K4!HYa98!Ed)"a`B4N3`BiFHrC!!6i+*dCQ8)#K%d1T
SGM9CYPZU8VA`i#(U#+%1[A)2Gl4ATNmCcbGQH!iG2N)9Z#8U**0$@AUSJ`6XRD!
U-CY$RlbN%c@K`9RF'XM2MR)&)8A%-PN6!fF%q#N`KF&X+EYGlYJL%8NK+@!fFNm
#RR#(@#(KE(4`!pi))UC#23%*63$"&1K$Kp'&C!L+J`0bmT!!J%,&`!Bc!)%8)-F
Q1IL%#"R59"1&5)8dr!K#kK&MYQ!J!acF!!GV*-X3c5L41B3&"c#!!3K+0`-Df+!
&1B"")Cdi&cQ%"33dJ%%-@L#$'X`!N61S!3eZP)!Jm%XT6*%EAb4LKMVS+h3Kb8X
Gc2!BL%JN-h"`(`J#"J)lQ2)-CdZ5iPCbT&Q*K#Tc#-2GJUM(*dCaLQDSiYQZQ-8
YIM"P'r%)JSb!SG&!B5-Vi`N[%3-SIC(%*f$#8k(X"bMB%'N-GFL,iXk&30ZG*QQ
)5ShMFZF5Q,L"1P0)!dVB!*8*q39PU-Q01)8iR,bikQ`qD8*&j)@AcrLc0T'D9%`
Ue5S&89-1eX4QaECC+#@jiBe'dp0$LF63)Rd%58TLdQ6+-*!!bi%!#MFXeI0!-)6
Y@)DPMD`3'jALK[%ik9DjLLLP@%)(Rc(QSKQPQ$CpiadBXN'%53+*5aV(&PL0`CH
&`X)3QN!%EQe)8f"#TcTc%bq)e#CaZ8&#(Q!PKb%JP$SA&3Q'hZ+'J0Bc*T-T9%V
k&T*5kFY*3EV0Zf+'VcGS#JiR9#,2*2+#"i+ND5XFba1@3#qA201`[NRGC0,NPmQ
PVMY,+N-3Md+%-[a*XB)T$SCm3SHe0NQHPYPCL",3@PJe3%c5J3)G8Y-$%(K"1XA
CJCL'5j-LRX"8kF5JBZFdPlDNl!hbkU0Am6EBd1"QKEJ96A&!d&[9Q['f`j@048l
)"LBj-Rmaf4"%'$*FEmA'3A3)#hb&fekD*#8NaG(,jA)@XjdjlMPP%dYlDeX'KEJ
K,&T%Lr21GTmmE#%'XC0"&mi9PaLGMEhYcA!#D1,4im"(036'R`KAmT+9J$!N"Mk
$95LX8`eRQ#D2*3KcqrXKXGc@[[XpciMaTNph2A!JpZb3!#TCQ58"5@FbpY0,5!B
@+"G&l'a6j5GfaF35-TJ%Ya$4,@pp'pflbB'qp3A"9GJ!(QeaFm8%pNjH[K,CM'b
N)a38#8RFF18%-%J1i+AY9Ba3PrM+c%j3F-XD-$bQqH96$k*&Eh,N4HJ6hQ%NEU#
0D2ciQiKiQG"Yd(*BY%cS0'LkdTc1FaTX1SD`G&NLK0B+'D$3[V!Fi6jQ#29`T41
@*'Mh3*d@$44UVH[G%MS[jjh#ELYC!d)Vm3l`PHq"k%$S0B6&+AP3+"bZh"[eBN6
2CH"c6!LLJpiD"0##4S'f)A+&qA8P"@#Qb4'S1jaadq%ZHH%QAp4N&0c'C5lZ"J%
2I+!63)&'*X1YpN11!KM)#+CNKdQ-QYB`[d(0GYCa+IHmla$S-U`""IMZF`Umi!+
*piAK#ZUY$2kGCc%*A#Bdb8-&245CbA!&5hfaM-lH9*TiCqeZVATZG&2c+4AD@-0
)B)*i-,lR2R2mAqJZZCJb[9X3G"XdlMlkT,f3!'k4D2NmHMU$U*LNFl-5k92$1EP
!L$4Mkij'`"RfG01I,LmYSi$TFNLkL2j80TM9KQeQcjpTcV1IrXMT-C2qHBBGVG"
)faSh6''lPUQZp!6!hHQpGIX6c%L$YfXj"5"B!3KNJ'iad@4V)+'SeC[H(%G$@Y+
)4hYledd(9XZ"$LK3YH[Td2N`"e06UYi8V0RhH[cKI%r'JdV$lZ-A2#&FpF1G!Yj
QMi*AKb(@Zb9kYM@HG!dh*`f3!!G"$,KPqLhq+r2D4irRkbE26jUG+GqUYiC2h[M
XiJB+f6mmh#frfqUl@2laecA908b6Zc#-aRT68RUb-m!')a1N)`qRBCmPIbl`-A!
!Aq*(A&'"0a*a-Ib&AmZf*YM$6MaA"RJJ2T5c2J#'I"R@&R3!AbK`E2$PFUC&%*S
R!q[K,#bB61!R!c!3JkQLH6&3!h,RBJP3"!45"LLSJXY@Ha)S%6F8%NbbCMXK1CD
4Ap!%%cbh&L0e'!QBB8f!@96`"LM!J!i)AbkJ%$6iJ[rc)9qiE#i!)6QSI6a)D"P
'"4j)"p3%%5J!!rDRBA$iJBG@"LJ3!jcRKZhP",ZaKF+@)FQ"!U2'&[9R%Kaf&Z-
a(1@4"qZ#8$IM&Rp4BGm4(PJ#'$&((G`K3U5L%!*#09HiHRJ$EA1!!QY`KfNA&fZ
`"69`!a2'(ZdR*NR`83fbE#PB"XK@K,9BB'e4L`Q!4[K4L&q"!X!QGc6"@EmK,VK
"9+-(2@YK&@d#'DqM,q`M,p@P%h(S)AT6LX2eH%mRHC4(Ih%(IR[i"'E3KD,K)#Q
3!(3d`53GmPQ``8VB8bCqJfMHH(CLN!#%mb&c9c%TFZ&D))!#(6CRcV-SVQ9J$pB
&Q+Gq'UCQG'9T%S')(d*J$"N$$NPK`RJ$Nc%$-!J#0N!$BH&L(,CEE#"r+r"B3i#
5,!!j-5&rN`%(N!#$Ia$TBZ)BHG%hH@43HA#(H5r)LKN'!f%KM!Q`!b$JJaX'!PA
3&N,bMF*S14,K&@eKNMiL%AP!)d3#M#&aNqYA"YDQP&LQ1fcR5PjQNGH&N5ba"4)
QP"V'(BMS"VTc&cl"H5$!Ei*%Lf)jPYQh0H!A!i#SB6Rj8MYCMMm*IP[MPZe9CB&
*CAc4Q)cCH-VAHZd6Hq8eHdBSJ6%f9kV"Hh3`'F%%+"J5!L5B!%K3"FXcG"QhE4`
RIh13!*NdN5eI&4+S!L#l3K$Nj41V%h1NU6qr0$bN'4"MS"#NkC@419c('CNLdLK
-S56l4)&-S5FH+"&Aj9ai8M-jS8Ahm6(A`KK(a&UJ0%YZ!81kC$(8k8X6)dfI55J
L8P!(!K,()3H!Jb,P*@C%Si4,366A36q44KkFT4"NF$FX4L0-JCh8!3@Lk&cUijQ
UB9USN8!di8!(34Pi%4)UXe(5&6K[B&1J)C!!TE&FpB&!H6!C#p-iBh"960)5jr-
EE!+JCV)@[h)i$-*l9K4C9HB#!!-,CQYPH@4PBR9R,R!ZF(*[DJ#3,e4&@&435Ne
0!3#L083USMr88J#3"J&J!*!'!4S!!'Ca!*!'TGF%l5L8N`X5i*G6!Te3AZqL@ce
3U+8DMU65iDN!+E99AV0SZY[!@Zl5bf`QdK-CdXGQX0P&XZ5jPh[0%,GC&RZJfAp
QX+T`&lHf+h`$-NYVY8,GI6G@[XcTE*qbUV0kGZD9UR1,AfDr9*qIV20+Ul0F2jC
[6Yc5YFE#,HEkU!JL*Q56GAe8hbZf+hhTjj!!cj'HGAT2c'dFNL$rA,[Yp8m4BAP
E'LTK,Kqk*QF@k[4aM[2HiX"R'"VNialKr89[0F2iMr)$M'Ih#c2k+RRlpH3'BYq
RKak2IbSP+,Eq3[C[0F2i+J)*"A*a"6&21[X)rb%88!``(''Xm!F@"qea[0F2i,N
iJUIh#c2``((HG$2VHDiI`AF2i-"RI1MJF3)!!!:
---