home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1995-11-07 | 7.8 KB | [TEXT/CWIE] |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
You can browse this item here: ICMovableModal.p
Confidence | Program | Detection | Match Type | Support
|
---|
66%
| dexvert
| ZX81 Sinclair BASIC (image/sinclairBASIC)
| ext
| Supported |
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Applause Picture (image/applausePicture)
| ext
| Unsupported |
1%
| dexvert
| bsdiff patch (other/bsdiffPatch)
| ext
| Unsupported |
1%
| dexvert
| imgdiff patch (other/imgdiffPatch)
| ext
| Unsupported |
1%
| dexvert
| MATLAB p-code (other/matlabPCode)
| ext
| Unsupported |
1%
| dexvert
| WSUS Patch Storage File (other/wsusPatchStorageFile)
| ext
| Unsupported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Tue Nov 7 10:32:45 1995, modified Tue Nov 7 10:32:45 1995, creator 'CWIE', type ASCII, 7263 bytes "ICMovableModal.p" , at 0x1cdf 410 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [CWIE] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 10 49 43 4d 6f 76 61 | 62 6c 65 4d 6f 64 61 6c |..ICMova|bleModal|
|00000010| 2e 70 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.p......|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 57 49 | 45 01 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 1c 5f 00 | 00 01 9a ac c5 2c 9d ac |......_.|.....,..|
|00000060| c5 2c 9d 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.,......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 a7 94 00 00 |........|........|
|00000080| 75 6e 69 74 20 49 43 4d | 6f 76 61 62 6c 65 4d 6f |unit ICM|ovableMo|
|00000090| 64 61 6c 3b 0d 0d 7b 20 | 54 68 69 73 20 75 6e 69 |dal;..{ |This uni|
|000000a0| 74 20 69 6d 70 6c 65 6d | 65 6e 74 73 20 61 20 4d |t implem|ents a M|
|000000b0| 6f 76 61 62 6c 65 4d 6f | 64 61 6c 44 69 61 6c 6f |ovableMo|dalDialo|
|000000c0| 67 20 72 6f 75 74 69 6e | 65 20 73 69 6d 69 6c 61 |g routin|e simila|
|000000d0| 72 20 74 6f 20 7d 0d 7b | 20 74 68 65 20 54 6f 6f |r to }.{| the Too|
|000000e0| 6c 62 6f 78 20 72 6f 75 | 74 69 6e 65 20 4d 6f 64 |lbox rou|tine Mod|
|000000f0| 61 6c 44 69 61 6c 6f 67 | 2c 20 74 6f 20 62 65 20 |alDialog|, to be |
|00000100| 75 73 65 64 20 66 6f 72 | 20 6d 6f 76 61 62 6c 65 |used for| movable|
|00000110| 20 6d 6f 64 61 6c 20 64 | 69 61 6c 6f 67 73 20 7d | modal d|ialogs }|
|00000120| 0d 0d 7b 20 42 61 73 65 | 64 20 6f 6e 20 63 6f 64 |..{ Base|d on cod|
|00000130| 65 20 62 79 20 4d 65 72 | 7a 77 61 72 65 6e 20 3c |e by Mer|zwaren <|
|00000140| 70 69 6f 76 61 6e 65 6c | 40 64 73 69 2e 75 6e 69 |piovanel|@dsi.uni|
|00000150| 6d 69 2e 69 74 3e 20 7d | 0d 0d 69 6e 74 65 72 66 |mi.it> }|..interf|
|00000160| 61 63 65 0d 0d 09 75 73 | 65 73 0d 09 09 54 79 70 |ace...us|es...Typ|
|00000170| 65 73 3b 0d 0d 09 70 72 | 6f 63 65 64 75 72 65 20 |es;...pr|ocedure |
|00000180| 44 69 73 61 62 6c 65 4d | 65 6e 75 42 61 72 20 28 |DisableM|enuBar (|
|00000190| 76 61 72 20 73 61 76 65 | 64 5f 73 74 61 74 65 3a |var save|d_state:|
|000001a0| 20 75 6e 69 76 20 50 74 | 72 3b 20 68 6d 6e 75 49 | univ Pt|r; hmnuI|
|000001b0| 44 3a 20 49 6e 74 65 67 | 65 72 29 3b 0d 09 70 72 |D: Integ|er);..pr|
|000001c0| 6f 63 65 64 75 72 65 20 | 52 65 45 6e 61 62 6c 65 |ocedure |ReEnable|
|000001d0| 4d 65 6e 75 42 61 72 20 | 28 76 61 72 20 73 61 76 |MenuBar |(var sav|
|000001e0| 65 64 5f 73 74 61 74 65 | 3a 20 75 6e 69 76 20 50 |ed_state|: univ P|
|000001f0| 74 72 29 3b 0d 09 70 72 | 6f 63 65 64 75 72 65 20 |tr);..pr|ocedure |
|00000200| 4d 6f 76 61 62 6c 65 4d | 6f 64 61 6c 44 69 61 6c |MovableM|odalDial|
|00000210| 6f 67 20 28 66 69 6c 74 | 65 72 50 72 6f 63 3a 20 |og (filt|erProc: |
|00000220| 50 72 6f 63 50 74 72 3b | 20 76 61 72 20 69 74 65 |ProcPtr;| var ite|
|00000230| 6d 48 69 74 3a 20 49 6e | 74 65 67 65 72 29 3b 0d |mHit: In|teger);.|
|00000240| 0d 69 6d 70 6c 65 6d 65 | 6e 74 61 74 69 6f 6e 0d |.impleme|ntation.|
|00000250| 0d 09 75 73 65 73 0d 09 | 09 47 65 73 74 61 6c 74 |..uses..|.Gestalt|
|00000260| 45 71 75 2c 20 49 43 54 | 79 70 65 73 2c 20 49 43 |Equ, ICT|ypes, IC|
|00000270| 44 69 61 6c 6f 67 73 2c | 20 49 43 47 6c 6f 62 61 |Dialogs,| ICGloba|
|00000280| 6c 73 2c 20 44 69 61 6c | 6f 67 73 2c 20 54 6f 6f |ls, Dial|ogs, Too|
|00000290| 6c 55 74 69 6c 73 2c 20 | 53 63 72 61 70 2c 20 49 |lUtils, |Scrap, I|
|000002a0| 43 4d 69 73 63 53 75 62 | 73 3b 0d 0d 09 63 6f 6e |CMiscSub|s;...con|
|000002b0| 73 74 0d 09 09 6b 53 79 | 73 74 65 6d 4d 65 6e 75 |st...kSy|stemMenu|
|000002c0| 54 68 72 65 73 68 6f 6c | 64 20 3d 20 2d 31 36 30 |Threshol|d = -160|
|000002d0| 30 30 3b 09 09 7b 20 6d | 65 6e 75 20 49 44 73 20 |00;..{ m|enu IDs |
|000002e0| 3c 3d 20 74 68 61 6e 20 | 74 68 69 73 20 61 72 65 |<= than |this are|
|000002f0| 20 75 73 65 64 20 62 79 | 20 74 68 65 20 73 79 73 | used by| the sys|
|00000300| 74 65 6d 20 7d 0d 09 09 | 6b 4d 6f 76 61 62 6c 65 |tem }...|kMovable|
|00000310| 4d 6f 64 61 6c 45 76 65 | 6e 74 4d 61 73 6b 20 3d |ModalEve|ntMask =|
|00000320| 20 6d 44 6f 77 6e 4d 61 | 73 6b 20 2b 20 6d 55 70 | mDownMa|sk + mUp|
|00000330| 4d 61 73 6b 20 2b 20 6b | 65 79 44 6f 77 6e 4d 61 |Mask + k|eyDownMa|
|00000340| 73 6b 20 2b 20 6b 65 79 | 55 70 4d 61 73 6b 20 2b |sk + key|UpMask +|
|00000350| 20 61 75 74 6f 4b 65 79 | 4d 61 73 6b 20 2b 20 75 | autoKey|Mask + u|
|00000360| 70 64 61 74 65 4d 61 73 | 6b 20 2b 20 61 63 74 69 |pdateMas|k + acti|
|00000370| 76 4d 61 73 6b 20 2b 20 | 6f 73 4d 61 73 6b 3b 0d |vMask + |osMask;.|
|00000380| 0d 09 74 79 70 65 0d 09 | 09 4d 65 6e 75 45 6e 74 |..type..|.MenuEnt|
|00000390| 72 79 20 3d 20 72 65 63 | 6f 72 64 0d 09 09 09 09 |ry = rec|ord.....|
|000003a0| 68 4d 65 6e 75 3a 20 4d | 65 6e 75 48 61 6e 64 6c |hMenu: M|enuHandl|
|000003b0| 65 3b 0d 09 09 09 09 6c | 65 66 74 45 64 67 65 3a |e;.....l|eftEdge:|
|000003c0| 20 49 6e 74 65 67 65 72 | 3b 0d 09 09 09 65 6e 64 | Integer|;....end|
|000003d0| 3b 0d 0d 09 09 4d 65 6e | 75 4c 69 73 74 20 3d 20 |;....Men|uList = |
|000003e0| 72 65 63 6f 72 64 0d 09 | 09 09 09 6f 66 66 73 65 |record..|...offse|
|000003f0| 74 54 6f 4c 61 73 74 4d | 65 6e 75 3a 20 49 6e 74 |tToLastM|enu: Int|
|00000400| 65 67 65 72 3b 0d 09 09 | 09 09 72 69 67 68 74 6d |eger;...|..rightm|
|00000410| 6f 73 74 45 64 67 65 3a | 20 49 6e 74 65 67 65 72 |ostEdge:| Integer|
|00000420| 3b 0d 09 09 09 09 75 6e | 75 73 65 64 3a 20 49 6e |;.....un|used: In|
|00000430| 74 65 67 65 72 3b 0d 09 | 09 09 09 74 68 65 4d 65 |teger;..|...theMe|
|00000440| 6e 75 73 3a 20 61 72 72 | 61 79 5b 30 2e 2e 31 30 |nus: arr|ay[0..10|
|00000450| 30 30 5d 20 6f 66 20 4d | 65 6e 75 45 6e 74 72 79 |00] of M|enuEntry|
|00000460| 3b 0d 09 09 09 65 6e 64 | 3b 0d 09 09 4d 65 6e 75 |;....end|;...Menu|
|00000470| 4c 69 73 74 50 74 72 20 | 3d 20 5e 4d 65 6e 75 4c |ListPtr |= ^MenuL|
|00000480| 69 73 74 3b 0d 09 09 4d | 65 6e 75 4c 69 73 74 48 |ist;...M|enuListH|
|00000490| 61 6e 64 6c 65 20 3d 20 | 5e 4d 65 6e 75 4c 69 73 |andle = |^MenuLis|
|000004a0| 74 50 74 72 3b 0d 0d 09 | 09 4d 65 6e 75 42 61 72 |tPtr;...|.MenuBar|
|000004b0| 53 74 61 74 65 20 3d 20 | 72 65 63 6f 72 64 0d 09 |State = |record..|
|000004c0| 09 09 09 6d 62 73 42 61 | 72 45 6e 61 62 6c 65 3a |...mbsBa|rEnable:|
|000004d0| 20 4c 6f 6e 67 49 6e 74 | 3b 0d 09 09 09 09 6d 62 | LongInt|;.....mb|
|000004e0| 73 45 64 69 74 45 6e 61 | 62 6c 65 3a 20 4c 6f 6e |sEditEna|ble: Lon|
|000004f0| 67 49 6e 74 3b 0d 09 09 | 09 65 6e 64 3b 0d 09 09 |gInt;...|.end;...|
|00000500| 4d 65 6e 75 42 61 72 53 | 74 61 74 65 50 74 72 20 |MenuBarS|tatePtr |
|00000510| 3d 20 5e 4d 65 6e 75 42 | 61 72 53 74 61 74 65 3b |= ^MenuB|arState;|
|00000520| 0d 0d 09 66 75 6e 63 74 | 69 6f 6e 20 48 61 73 48 |...funct|ion HasH|
|00000530| 65 6c 70 4d 61 6e 61 67 | 65 72 3a 20 42 6f 6f 6c |elpManag|er: Bool|
|00000540| 65 61 6e 3b 0d 09 09 76 | 61 72 0d 09 09 09 72 65 |ean;...v|ar....re|
|00000550| 73 70 6f 6e 73 65 3a 20 | 4c 6f 6e 67 49 6e 74 3b |sponse: |LongInt;|
|00000560| 0d 09 62 65 67 69 6e 0d | 09 09 48 61 73 48 65 6c |..begin.|..HasHel|
|00000570| 70 4d 61 6e 61 67 65 72 | 20 3a 3d 20 28 47 65 73 |pManager| := (Ges|
|00000580| 74 61 6c 74 28 67 65 73 | 74 61 6c 74 48 65 6c 70 |talt(ges|taltHelp|
|00000590| 4d 67 72 41 74 74 72 2c | 20 72 65 73 70 6f 6e 73 |MgrAttr,| respons|
|000005a0| 65 29 20 3d 20 6e 6f 45 | 72 72 29 20 26 20 54 50 |e) = noE|rr) & TP|
|000005b0| 62 74 73 74 28 72 65 73 | 70 6f 6e 73 65 2c 20 67 |btst(res|ponse, g|
|000005c0| 65 73 74 61 6c 74 48 65 | 6c 70 4d 67 72 50 72 65 |estaltHe|lpMgrPre|
|000005d0| 73 65 6e 74 29 3b 0d 09 | 65 6e 64 3b 0d 0d 09 66 |sent);..|end;...f|
|000005e0| 75 6e 63 74 69 6f 6e 20 | 4c 4d 47 65 74 4d 65 6e |unction |LMGetMen|
|000005f0| 75 4c 69 73 74 3a 20 48 | 61 6e 64 6c 65 3b 0d 09 |uList: H|andle;..|
|00000600| 69 6e 6c 69 6e 65 0d 09 | 09 24 32 45 42 38 2c 20 |inline..|.$2EB8, |
|00000610| 24 30 41 31 43 3b 09 09 | 09 7b 20 4d 4f 56 45 2e |$0A1C;..|.{ MOVE.|
|00000620| 4c 20 24 30 41 31 43 2c | 28 53 50 29 20 7d 0d 0d |L $0A1C,|(SP) }..|
|00000630| 09 66 75 6e 63 74 69 6f | 6e 20 48 4d 53 65 74 4d |.functio|n HMSetM|
|00000640| 65 6e 75 52 65 73 49 44 | 20 28 6d 65 6e 75 49 44 |enuResID| (menuID|
|00000650| 3a 20 69 6e 74 65 67 65 | 72 3b 20 72 65 73 49 44 |: intege|r; resID|
|00000660| 3a 20 69 6e 74 65 67 65 | 72 29 3a 20 4f 53 45 72 |: intege|r): OSEr|
|00000670| 72 3b 0d 09 69 6e 6c 69 | 6e 65 0d 09 09 24 33 30 |r;..inli|ne...$30|
|00000680| 33 43 2c 20 24 30 32 30 | 44 2c 20 24 41 38 33 30 |3C, $020|D, $A830|
|00000690| 3b 0d 0d 09 70 72 6f 63 | 65 64 75 72 65 20 44 69 |;...proc|edure Di|
|000006a0| 73 61 62 6c 65 4d 65 6e | 75 42 61 72 20 28 76 61 |sableMen|uBar (va|
|000006b0| 72 20 73 61 76 65 64 5f | 73 74 61 74 65 3a 20 75 |r saved_|state: u|
|000006c0| 6e 69 76 20 50 74 72 3b | 20 68 6d 6e 75 49 44 3a |niv Ptr;| hmnuID:|
|000006d0| 20 49 6e 74 65 67 65 72 | 29 3b 0d 09 09 76 61 72 | Integer|);...var|
|000006e0| 0d 09 09 09 6d 65 6e 75 | 4c 69 73 74 3a 20 4d 65 |....menu|List: Me|
|000006f0| 6e 75 4c 69 73 74 48 61 | 6e 64 6c 65 3b 0d 09 09 |nuListHa|ndle;...|
|00000700| 09 69 2c 20 6e 4d 65 6e | 75 73 3a 20 49 6e 74 65 |.i, nMen|us: Inte|
|00000710| 67 65 72 3b 0d 09 09 09 | 74 68 65 4d 65 6e 75 3a |ger;....|theMenu:|
|00000720| 20 4d 65 6e 75 48 61 6e | 64 6c 65 3b 0d 09 09 09 | MenuHan|dle;....|
|00000730| 6d 65 6e 75 49 44 3a 20 | 49 6e 74 65 67 65 72 3b |menuID: |Integer;|
|00000740| 0d 09 09 09 74 68 65 44 | 69 61 6c 6f 67 3a 20 44 |....theD|ialog: D|
|00000750| 69 61 6c 6f 67 50 74 72 | 3b 0d 09 09 09 68 61 73 |ialogPtr|;....has|
|00000760| 42 61 6c 6c 6f 6f 6e 73 | 2c 20 6e 65 65 64 45 64 |Balloons|, needEd|
|00000770| 69 74 4d 65 6e 75 3a 20 | 42 6f 6f 6c 65 61 6e 3b |itMenu: |Boolean;|
|00000780| 0d 09 09 09 6a 75 6e 6b | 3a 20 4f 53 45 72 72 3b |....junk|: OSErr;|
|00000790| 0d 09 09 09 73 74 61 74 | 65 3a 20 4d 65 6e 75 42 |....stat|e: MenuB|
|000007a0| 61 72 53 74 61 74 65 50 | 74 72 3b 0d 09 62 65 67 |arStateP|tr;..beg|
|000007b0| 69 6e 0d 09 09 68 61 73 | 42 61 6c 6c 6f 6f 6e 73 |in...has|Balloons|
|000007c0| 20 3a 3d 20 48 61 73 48 | 65 6c 70 4d 61 6e 61 67 | := HasH|elpManag|
|000007d0| 65 72 3b 0d 0d 09 09 74 | 68 65 44 69 61 6c 6f 67 |er;....t|heDialog|
|000007e0| 20 3a 3d 20 46 72 6f 6e | 74 57 69 6e 64 6f 77 3b | := Fron|tWindow;|
|000007f0| 0d 09 09 6e 65 65 64 45 | 64 69 74 4d 65 6e 75 20 |...needE|ditMenu |
|00000800| 3a 3d 20 28 74 68 65 44 | 69 61 6c 6f 67 20 3c 3e |:= (theD|ialog <>|
|00000810| 20 6e 69 6c 29 20 26 20 | 28 53 65 6c 65 63 74 65 | nil) & |(Selecte|
|00000820| 64 54 65 78 74 49 74 65 | 6d 28 74 68 65 44 69 61 |dTextIte|m(theDia|
|00000830| 6c 6f 67 29 20 3e 20 30 | 29 3b 0d 0d 09 09 6d 65 |log) > 0|);....me|
|00000840| 6e 75 4c 69 73 74 20 3a | 3d 20 4d 65 6e 75 4c 69 |nuList :|= MenuLi|
|00000850| 73 74 48 61 6e 64 6c 65 | 28 4c 4d 47 65 74 4d 65 |stHandle|(LMGetMe|
|00000860| 6e 75 4c 69 73 74 29 3b | 0d 09 09 6e 4d 65 6e 75 |nuList);|...nMenu|
|00000870| 73 20 3a 3d 20 6d 65 6e | 75 4c 69 73 74 5e 5e 2e |s := men|uList^^.|
|00000880| 6f 66 66 73 65 74 54 6f | 4c 61 73 74 4d 65 6e 75 |offsetTo|LastMenu|
|00000890| 20 64 69 76 20 53 69 7a | 65 4f 66 28 4d 65 6e 75 | div Siz|eOf(Menu|
|000008a0| 45 6e 74 72 79 29 3b 0d | 0d 09 09 73 61 76 65 64 |Entry);.|...saved|
|000008b0| 5f 73 74 61 74 65 20 3a | 3d 20 4e 65 77 50 74 72 |_state :|= NewPtr|
|000008c0| 28 53 69 7a 65 4f 66 28 | 4d 65 6e 75 42 61 72 53 |(SizeOf(|MenuBarS|
|000008d0| 74 61 74 65 29 29 3b 0d | 09 09 73 74 61 74 65 20 |tate));.|..state |
|000008e0| 3a 3d 20 4d 65 6e 75 42 | 61 72 53 74 61 74 65 50 |:= MenuB|arStateP|
|000008f0| 74 72 28 73 61 76 65 64 | 5f 73 74 61 74 65 29 3b |tr(saved|_state);|
|00000900| 0d 0d 09 09 73 74 61 74 | 65 5e 2e 6d 62 73 42 61 |....stat|e^.mbsBa|
|00000910| 72 45 6e 61 62 6c 65 20 | 3a 3d 20 30 3b 0d 09 09 |rEnable |:= 0;...|
|00000920| 66 6f 72 20 69 20 3a 3d | 20 30 20 74 6f 20 6e 4d |for i :=| 0 to nM|
|00000930| 65 6e 75 73 20 2d 20 31 | 20 64 6f 20 62 65 67 69 |enus - 1| do begi|
|00000940| 6e 0d 09 09 09 74 68 65 | 4d 65 6e 75 20 3a 3d 20 |n....the|Menu := |
|00000950| 6d 65 6e 75 4c 69 73 74 | 5e 5e 2e 74 68 65 4d 65 |menuList|^^.theMe|
|00000960| 6e 75 73 5b 69 5d 2e 68 | 4d 65 6e 75 3b 0d 09 09 |nus[i].h|Menu;...|
|00000970| 09 6d 65 6e 75 49 44 20 | 3a 3d 20 74 68 65 4d 65 |.menuID |:= theMe|
|00000980| 6e 75 5e 5e 2e 6d 65 6e | 75 49 44 3b 0d 0d 09 09 |nu^^.men|uID;....|
|00000990| 09 69 66 20 28 6d 65 6e | 75 49 44 20 3e 20 6b 53 |.if (men|uID > kS|
|000009a0| 79 73 74 65 6d 4d 65 6e | 75 54 68 72 65 73 68 6f |ystemMen|uThresho|
|000009b0| 6c 64 29 20 74 68 65 6e | 20 62 65 67 69 6e 20 7b |ld) then| begin {|
|000009c0| 20 64 6f 20 6e 6f 74 68 | 69 6e 67 20 69 66 20 74 | do noth|ing if t|
|000009d0| 68 69 73 20 69 73 20 61 | 20 73 79 73 74 65 6d 20 |his is a| system |
|000009e0| 6d 65 6e 75 20 7d 0d 0d | 09 09 09 09 69 66 20 28 |menu }..|....if (|
|000009f0| 6d 65 6e 75 49 44 20 3d | 20 4d 5f 45 64 69 74 29 |menuID =| M_Edit)|
|00000a00| 20 74 68 65 6e 20 62 65 | 67 69 6e 0d 09 09 09 09 | then be|gin.....|
|00000a10| 09 73 74 61 74 65 5e 2e | 6d 62 73 45 64 69 74 45 |.state^.|mbsEditE|
|00000a20| 6e 61 62 6c 65 20 3a 3d | 20 74 68 65 4d 65 6e 75 |nable :=| theMenu|
|00000a30| 5e 5e 2e 65 6e 61 62 6c | 65 46 6c 61 67 73 3b 0d |^^.enabl|eFlags;.|
|00000a40| 09 09 09 09 09 69 66 20 | 6e 65 65 64 45 64 69 74 |.....if |needEdit|
|00000a50| 4d 65 6e 75 20 74 68 65 | 6e 20 62 65 67 69 6e 0d |Menu the|n begin.|
|00000a60| 09 09 09 09 09 09 74 68 | 65 4d 65 6e 75 5e 5e 2e |......th|eMenu^^.|
|00000a70| 65 6e 61 62 6c 65 46 6c | 61 67 73 20 3a 3d 20 31 |enableFl|ags := 1|
|00000a80| 20 2b 20 42 53 4c 28 31 | 2c 20 45 4d 5f 43 75 74 | + BSL(1|, EM_Cut|
|00000a90| 29 20 2b 20 42 53 4c 28 | 31 2c 20 45 4d 5f 43 6f |) + BSL(|1, EM_Co|
|00000aa0| 70 79 29 20 2b 20 42 53 | 4c 28 31 2c 20 45 4d 5f |py) + BS|L(1, EM_|
|00000ab0| 50 61 73 74 65 29 3b 0d | 09 09 09 09 09 65 6e 64 |Paste);.|.....end|
|00000ac0| 20 65 6c 73 65 20 62 65 | 67 69 6e 0d 09 09 09 09 | else be|gin.....|
|00000ad0| 09 09 44 69 73 61 62 6c | 65 49 74 65 6d 28 74 68 |..Disabl|eItem(th|
|00000ae0| 65 4d 65 6e 75 2c 20 30 | 29 3b 0d 09 09 09 09 09 |eMenu, 0|);......|
|00000af0| 65 6e 64 3b 0d 09 09 09 | 09 65 6e 64 0d 09 09 09 |end;....|.end....|
|00000b00| 09 65 6c 73 65 20 62 65 | 67 69 6e 20 7b 20 69 66 |.else be|gin { if|
|00000b10| 20 74 68 69 73 20 6d 65 | 6e 75 20 69 73 20 65 6e | this me|nu is en|
|00000b20| 61 62 6c 65 64 2c 20 64 | 69 73 61 62 6c 65 20 69 |abled, d|isable i|
|00000b30| 74 20 61 6e 64 20 73 65 | 74 20 74 68 65 20 63 6f |t and se|t the co|
|00000b40| 72 72 65 73 70 6f 6e 64 | 69 6e 67 20 62 69 74 20 |rrespond|ing bit |
|00000b50| 20 7d 0d 09 09 09 09 09 | 69 66 20 28 54 50 62 74 | }......|if (TPbt|
|00000b60| 73 74 28 74 68 65 4d 65 | 6e 75 5e 5e 2e 65 6e 61 |st(theMe|nu^^.ena|
|00000b70| 62 6c 65 46 6c 61 67 73 | 2c 20 30 29 29 20 74 68 |bleFlags|, 0)) th|
|00000b80| 65 6e 20 62 65 67 69 6e | 0d 09 09 09 09 09 09 42 |en begin|.......B|
|00000b90| 53 45 54 28 73 74 61 74 | 65 5e 2e 6d 62 73 42 61 |SET(stat|e^.mbsBa|
|00000ba0| 72 45 6e 61 62 6c 65 2c | 20 69 29 3b 0d 09 09 09 |rEnable,| i);....|
|00000bb0| 09 09 09 44 69 73 61 62 | 6c 65 49 74 65 6d 28 74 |...Disab|leItem(t|
|00000bc0| 68 65 4d 65 6e 75 2c 20 | 30 29 3b 0d 09 09 09 09 |heMenu, |0);.....|
|00000bd0| 09 65 6e 64 3b 0d 0d 09 | 09 09 09 09 69 66 20 28 |.end;...|....if (|
|00000be0| 68 61 73 42 61 6c 6c 6f | 6f 6e 73 29 20 74 68 65 |hasBallo|ons) the|
|00000bf0| 6e 20 62 65 67 69 6e 20 | 7b 20 72 65 6d 61 70 20 |n begin |{ remap |
|00000c00| 74 68 65 20 68 65 6c 70 | 20 73 74 72 69 6e 67 73 |the help| strings|
|00000c10| 20 66 6f 72 20 74 68 69 | 73 20 6d 65 6e 75 20 7d | for thi|s menu }|
|00000c20| 0d 09 09 09 09 09 09 6a | 75 6e 6b 20 3a 3d 20 48 |.......j|unk := H|
|00000c30| 4d 53 65 74 4d 65 6e 75 | 52 65 73 49 44 28 6d 65 |MSetMenu|ResID(me|
|00000c40| 6e 75 49 44 2c 20 68 6d | 6e 75 49 44 29 3b 0d 09 |nuID, hm|nuID);..|
|00000c50| 09 09 09 09 65 6e 64 3b | 0d 09 09 09 09 65 6e 64 |....end;|.....end|
|00000c60| 3b 0d 09 09 09 65 6e 64 | 3b 0d 09 09 65 6e 64 3b |;....end|;...end;|
|00000c70| 0d 0d 09 09 48 69 6c 69 | 74 65 4d 65 6e 75 28 30 |....Hili|teMenu(0|
|00000c80| 29 3b 0d 09 09 44 72 61 | 77 4d 65 6e 75 42 61 72 |);...Dra|wMenuBar|
|00000c90| 3b 0d 09 65 6e 64 3b 0d | 0d 09 70 72 6f 63 65 64 |;..end;.|..proced|
|00000ca0| 75 72 65 20 52 65 45 6e | 61 62 6c 65 4d 65 6e 75 |ure ReEn|ableMenu|
|00000cb0| 42 61 72 20 28 76 61 72 | 20 73 61 76 65 64 5f 73 |Bar (var| saved_s|
|00000cc0| 74 61 74 65 3a 20 75 6e | 69 76 20 50 74 72 29 3b |tate: un|iv Ptr);|
|00000cd0| 0d 09 09 76 61 72 0d 09 | 09 09 6d 65 6e 75 4c 69 |...var..|..menuLi|
|00000ce0| 73 74 3a 20 4d 65 6e 75 | 4c 69 73 74 48 61 6e 64 |st: Menu|ListHand|
|00000cf0| 6c 65 3b 0d 09 09 09 69 | 2c 20 6e 4d 65 6e 75 73 |le;....i|, nMenus|
|00000d00| 3a 20 49 6e 74 65 67 65 | 72 3b 0d 09 09 09 74 68 |: Intege|r;....th|
|00000d10| 65 4d 65 6e 75 3a 20 4d | 65 6e 75 48 61 6e 64 6c |eMenu: M|enuHandl|
|00000d20| 65 3b 0d 09 09 09 6d 65 | 6e 75 49 44 3a 20 49 6e |e;....me|nuID: In|
|00000d30| 74 65 67 65 72 3b 0d 09 | 09 09 68 61 73 42 61 6c |teger;..|..hasBal|
|00000d40| 6c 6f 6f 6e 73 3a 20 42 | 6f 6f 6c 65 61 6e 3b 0d |loons: B|oolean;.|
|00000d50| 09 09 09 65 72 72 3a 20 | 4f 53 45 72 72 3b 0d 09 |...err: |OSErr;..|
|00000d60| 09 09 73 74 61 74 65 3a | 20 4d 65 6e 75 42 61 72 |..state:| MenuBar|
|00000d70| 53 74 61 74 65 50 74 72 | 3b 0d 09 62 65 67 69 6e |StatePtr|;..begin|
|00000d80| 0d 09 09 73 74 61 74 65 | 20 3a 3d 20 4d 65 6e 75 |...state| := Menu|
|00000d90| 42 61 72 53 74 61 74 65 | 50 74 72 28 73 61 76 65 |BarState|Ptr(save|
|00000da0| 64 5f 73 74 61 74 65 29 | 3b 0d 0d 09 09 68 61 73 |d_state)|;....has|
|00000db0| 42 61 6c 6c 6f 6f 6e 73 | 20 3a 3d 20 48 61 73 48 |Balloons| := HasH|
|00000dc0| 65 6c 70 4d 61 6e 61 67 | 65 72 3b 0d 0d 09 09 6d |elpManag|er;....m|
|00000dd0| 65 6e 75 4c 69 73 74 20 | 3a 3d 20 4d 65 6e 75 4c |enuList |:= MenuL|
|00000de0| 69 73 74 48 61 6e 64 6c | 65 28 4c 4d 47 65 74 4d |istHandl|e(LMGetM|
|00000df0| 65 6e 75 4c 69 73 74 29 | 3b 0d 09 09 6e 4d 65 6e |enuList)|;...nMen|
|00000e00| 75 73 20 3a 3d 20 6d 65 | 6e 75 4c 69 73 74 5e 5e |us := me|nuList^^|
|00000e10| 2e 6f 66 66 73 65 74 54 | 6f 4c 61 73 74 4d 65 6e |.offsetT|oLastMen|
|00000e20| 75 20 64 69 76 20 53 69 | 7a 65 4f 66 28 4d 65 6e |u div Si|zeOf(Men|
|00000e30| 75 45 6e 74 72 79 29 3b | 0d 0d 09 09 66 6f 72 20 |uEntry);|....for |
|00000e40| 69 20 3a 3d 20 30 20 74 | 6f 20 6e 4d 65 6e 75 73 |i := 0 t|o nMenus|
|00000e50| 20 2d 20 31 20 64 6f 20 | 62 65 67 69 6e 0d 09 09 | - 1 do |begin...|
|00000e60| 09 74 68 65 4d 65 6e 75 | 20 3a 3d 20 6d 65 6e 75 |.theMenu| := menu|
|00000e70| 4c 69 73 74 5e 5e 2e 74 | 68 65 4d 65 6e 75 73 5b |List^^.t|heMenus[|
|00000e80| 69 5d 2e 68 4d 65 6e 75 | 3b 0d 09 09 09 6d 65 6e |i].hMenu|;....men|
|00000e90| 75 49 44 20 3a 3d 20 74 | 68 65 4d 65 6e 75 5e 5e |uID := t|heMenu^^|
|00000ea0| 2e 6d 65 6e 75 49 44 3b | 0d 0d 09 09 09 69 66 20 |.menuID;|.....if |
|00000eb0| 28 6d 65 6e 75 49 44 20 | 3e 20 6b 53 79 73 74 65 |(menuID |> kSyste|
|00000ec0| 6d 4d 65 6e 75 54 68 72 | 65 73 68 6f 6c 64 29 20 |mMenuThr|eshold) |
|00000ed0| 74 68 65 6e 20 62 65 67 | 69 6e 0d 09 09 09 09 69 |then beg|in.....i|
|00000ee0| 66 20 28 6d 65 6e 75 49 | 44 20 3d 20 4d 5f 45 64 |f (menuI|D = M_Ed|
|00000ef0| 69 74 29 20 74 68 65 6e | 20 62 65 67 69 6e 0d 09 |it) then| begin..|
|00000f00| 09 09 09 09 74 68 65 4d | 65 6e 75 5e 5e 2e 65 6e |....theM|enu^^.en|
|00000f10| 61 62 6c 65 46 6c 61 67 | 73 20 3a 3d 20 73 74 61 |ableFlag|s := sta|
|00000f20| 74 65 5e 2e 6d 62 73 45 | 64 69 74 45 6e 61 62 6c |te^.mbsE|ditEnabl|
|00000f30| 65 3b 0d 09 09 09 09 65 | 6e 64 20 65 6c 73 65 20 |e;.....e|nd else |
|00000f40| 69 66 20 28 54 50 62 74 | 73 74 28 73 74 61 74 65 |if (TPbt|st(state|
|00000f50| 5e 2e 6d 62 73 42 61 72 | 45 6e 61 62 6c 65 2c 20 |^.mbsBar|Enable, |
|00000f60| 69 29 29 20 74 68 65 6e | 20 62 65 67 69 6e 0d 09 |i)) then| begin..|
|00000f70| 09 09 09 09 45 6e 61 62 | 6c 65 49 74 65 6d 28 74 |....Enab|leItem(t|
|00000f80| 68 65 4d 65 6e 75 2c 20 | 30 29 3b 0d 09 09 09 09 |heMenu, |0);.....|
|00000f90| 65 6e 64 3b 0d 09 09 09 | 09 69 66 20 28 68 61 73 |end;....|.if (has|
|00000fa0| 42 61 6c 6c 6f 6f 6e 73 | 29 20 74 68 65 6e 20 62 |Balloons|) then b|
|00000fb0| 65 67 69 6e 0d 09 09 09 | 09 09 65 72 72 20 3a 3d |egin....|..err :=|
|00000fc0| 20 48 4d 53 65 74 4d 65 | 6e 75 52 65 73 49 44 28 | HMSetMe|nuResID(|
|00000fd0| 6d 65 6e 75 49 44 2c 20 | 2d 31 29 3b 0d 09 09 09 |menuID, |-1);....|
|00000fe0| 09 65 6e 64 3b 0d 09 09 | 09 65 6e 64 3b 0d 09 09 |.end;...|.end;...|
|00000ff0| 65 6e 64 3b 0d 0d 09 09 | 44 69 73 70 6f 73 65 50 |end;....|DisposeP|
|00001000| 74 72 28 73 61 76 65 64 | 5f 73 74 61 74 65 29 3b |tr(saved|_state);|
|00001010| 0d 09 09 73 61 76 65 64 | 5f 73 74 61 74 65 20 3a |...saved|_state :|
|00001020| 3d 20 6e 69 6c 3b 0d 09 | 09 44 72 61 77 4d 65 6e |= nil;..|.DrawMen|
|00001030| 75 42 61 72 3b 0d 09 65 | 6e 64 3b 0d 0d 09 66 75 |uBar;..e|nd;...fu|
|00001040| 6e 63 74 69 6f 6e 20 43 | 61 6c 6c 46 69 6c 74 65 |nction C|allFilte|
|00001050| 72 20 28 64 69 61 6c 6f | 67 3a 20 44 69 61 6c 6f |r (dialo|g: Dialo|
|00001060| 67 50 74 72 3b 20 76 61 | 72 20 65 76 65 6e 74 3a |gPtr; va|r event:|
|00001070| 20 45 76 65 6e 74 52 65 | 63 6f 72 64 3b 20 76 61 | EventRe|cord; va|
|00001080| 72 20 69 74 65 6d 3a 20 | 49 6e 74 65 67 65 72 3b |r item: |Integer;|
|00001090| 20 66 69 6c 74 65 72 50 | 72 6f 63 3a 20 50 72 6f | filterP|roc: Pro|
|000010a0| 63 50 74 72 29 3a 20 42 | 6f 6f 6c 65 61 6e 3b 0d |cPtr): B|oolean;.|
|000010b0| 09 69 6e 6c 69 6e 65 0d | 09 09 24 32 30 35 46 2c |.inline.|..$205F,|
|000010c0| 20 24 34 45 39 30 3b 0d | 0d 09 70 72 6f 63 65 64 | $4E90;.|..proced|
|000010d0| 75 72 65 20 43 61 6c 6c | 42 65 65 70 65 72 20 28 |ure Call|Beeper (|
|000010e0| 73 6f 75 6e 64 4e 6f 3a | 20 49 6e 74 65 67 65 72 |soundNo:| Integer|
|000010f0| 3b 20 62 65 65 70 65 72 | 50 72 6f 63 3a 20 50 72 |; beeper|Proc: Pr|
|00001100| 6f 63 50 74 72 29 3b 0d | 09 69 6e 6c 69 6e 65 0d |ocPtr);.|.inline.|
|00001110| 09 09 24 32 30 35 46 2c | 20 24 34 45 39 30 3b 0d |..$205F,| $4E90;.|
|00001120| 0d 09 66 75 6e 63 74 69 | 6f 6e 20 4c 4d 47 65 74 |..functi|on LMGet|
|00001130| 44 41 42 65 65 70 65 72 | 3a 20 50 72 6f 63 50 74 |DABeeper|: ProcPt|
|00001140| 72 3b 0d 09 69 6e 6c 69 | 6e 65 0d 09 09 24 32 45 |r;..inli|ne...$2E|
|00001150| 42 38 2c 20 24 30 41 39 | 43 3b 09 09 09 7b 20 4d |B8, $0A9|C;...{ M|
|00001160| 4f 56 45 2e 4c 20 24 30 | 41 39 43 2c 28 53 50 29 |OVE.L $0|A9C,(SP)|
|00001170| 20 7d 0d 0d 09 66 75 6e | 63 74 69 6f 6e 20 44 6f | }...fun|ction Do|
|00001180| 4d 65 6e 75 43 68 6f 69 | 63 65 20 28 74 68 65 44 |MenuChoi|ce (theD|
|00001190| 69 61 6c 6f 67 3a 20 44 | 69 61 6c 6f 67 50 74 72 |ialog: D|ialogPtr|
|000011a0| 3b 20 76 61 72 20 74 68 | 65 45 76 65 6e 74 3a 20 |; var th|eEvent: |
|000011b0| 45 76 65 6e 74 52 65 63 | 6f 72 64 3b 20 76 61 72 |EventRec|ord; var|
|000011c0| 20 69 74 65 6d 48 69 74 | 3a 20 49 6e 74 65 67 65 | itemHit|: Intege|
|000011d0| 72 3b 20 6d 65 6e 75 43 | 68 6f 69 63 65 3a 20 4c |r; menuC|hoice: L|
|000011e0| 6f 6e 67 49 6e 74 29 3a | 20 42 6f 6f 6c 65 61 6e |ongInt):| Boolean|
|000011f0| 3b 0d 09 09 76 61 72 0d | 09 09 09 6d 65 6e 75 49 |;...var.|...menuI|
|00001200| 44 2c 20 6d 65 6e 75 49 | 74 65 6d 3a 20 49 6e 74 |D, menuI|tem: Int|
|00001210| 65 67 65 72 3b 0d 09 09 | 09 63 75 72 72 65 6e 74 |eger;...|.current|
|00001220| 45 64 69 74 46 69 65 6c | 64 2c 20 69 74 65 6d 54 |EditFiel|d, itemT|
|00001230| 79 70 65 3a 20 49 6e 74 | 65 67 65 72 3b 0d 09 09 |ype: Int|eger;...|
|00001240| 09 6a 75 6e 6b 3a 20 4f | 53 45 72 72 3b 0d 09 62 |.junk: O|SErr;..b|
|00001250| 65 67 69 6e 0d 09 09 74 | 68 65 45 76 65 6e 74 20 |egin...t|heEvent |
|00001260| 3a 3d 20 74 68 65 45 76 | 65 6e 74 3b 20 7b 20 55 |:= theEv|ent; { U|
|00001270| 6e 75 73 65 64 20 7d 0d | 09 09 44 6f 4d 65 6e 75 |nused }.|..DoMenu|
|00001280| 43 68 6f 69 63 65 20 3a | 3d 20 66 61 6c 73 65 3b |Choice :|= false;|
|00001290| 0d 0d 09 09 6d 65 6e 75 | 49 44 20 3a 3d 20 48 69 |....menu|ID := Hi|
|000012a0| 57 6f 72 64 28 6d 65 6e | 75 43 68 6f 69 63 65 29 |Word(men|uChoice)|
|000012b0| 3b 0d 09 09 6d 65 6e 75 | 49 74 65 6d 20 3a 3d 20 |;...menu|Item := |
|000012c0| 4c 6f 57 6f 72 64 28 6d | 65 6e 75 43 68 6f 69 63 |LoWord(m|enuChoic|
|000012d0| 65 29 3b 0d 0d 09 09 69 | 66 20 28 6d 65 6e 75 49 |e);....i|f (menuI|
|000012e0| 44 20 3d 20 4d 5f 45 64 | 69 74 29 20 26 20 6e 6f |D = M_Ed|it) & no|
|000012f0| 74 20 73 79 73 74 65 6d | 37 20 74 68 65 6e 20 62 |t system|7 then b|
|00001300| 65 67 69 6e 0d 09 09 09 | 63 75 72 72 65 6e 74 45 |egin....|currentE|
|00001310| 64 69 74 46 69 65 6c 64 | 20 3a 3d 20 53 65 6c 65 |ditField| := Sele|
|00001320| 63 74 65 64 54 65 78 74 | 49 74 65 6d 28 74 68 65 |ctedText|Item(the|
|00001330| 44 69 61 6c 6f 67 29 3b | 0d 09 09 09 47 65 74 44 |Dialog);|....GetD|
|00001340| 49 74 65 6d 4b 69 6e 64 | 28 74 68 65 44 69 61 6c |ItemKind|(theDial|
|00001350| 6f 67 2c 20 63 75 72 72 | 65 6e 74 45 64 69 74 46 |og, curr|entEditF|
|00001360| 69 65 6c 64 2c 20 69 74 | 65 6d 54 79 70 65 29 3b |ield, it|emType);|
|00001370| 0d 0d 09 09 09 69 66 20 | 28 42 41 4e 44 28 69 74 |.....if |(BAND(it|
|00001380| 65 6d 54 79 70 65 2c 20 | 69 74 65 6d 44 69 73 61 |emType, |itemDisa|
|00001390| 62 6c 65 29 20 3d 20 30 | 29 20 74 68 65 6e 20 62 |ble) = 0|) then b|
|000013a0| 65 67 69 6e 20 7b 20 69 | 66 20 74 68 65 20 63 75 |egin { i|f the cu|
|000013b0| 72 72 65 6e 74 20 65 64 | 69 74 20 66 69 65 6c 64 |rrent ed|it field|
|000013c0| 20 69 73 20 61 6e 20 65 | 6e 61 62 6c 65 64 20 69 | is an e|nabled i|
|000013d0| 74 65 6d 2c 20 65 78 69 | 74 20 66 72 6f 6d 20 4d |tem, exi|t from M|
|000013e0| 6f 76 61 62 6c 65 4d 6f | 64 61 6c 44 69 61 6c 6f |ovableMo|dalDialo|
|000013f0| 67 20 6c 6f 6f 70 20 7d | 0d 09 09 09 09 44 6f 4d |g loop }|.....DoM|
|00001400| 65 6e 75 43 68 6f 69 63 | 65 20 3a 3d 20 74 72 75 |enuChoic|e := tru|
|00001410| 65 3b 0d 09 09 09 09 69 | 74 65 6d 48 69 74 20 3a |e;.....i|temHit :|
|00001420| 3d 20 63 75 72 72 65 6e | 74 45 64 69 74 46 69 65 |= curren|tEditFie|
|00001430| 6c 64 3b 0d 09 09 09 65 | 6e 64 3b 0d 0d 09 09 09 |ld;....e|nd;.....|
|00001440| 69 66 20 28 6d 65 6e 75 | 49 74 65 6d 20 3d 20 45 |if (menu|Item = E|
|00001450| 4d 5f 43 75 74 29 20 74 | 68 65 6e 20 62 65 67 69 |M_Cut) t|hen begi|
|00001460| 6e 0d 09 09 09 09 44 69 | 61 6c 6f 67 43 75 74 28 |n.....Di|alogCut(|
|00001470| 74 68 65 44 69 61 6c 6f | 67 29 3b 0d 09 09 09 09 |theDialo|g);.....|
|00001480| 6a 75 6e 6b 20 3a 3d 20 | 5a 65 72 6f 53 63 72 61 |junk := |ZeroScra|
|00001490| 70 3b 0d 09 09 09 09 6a | 75 6e 6b 20 3a 3d 20 54 |p;.....j|unk := T|
|000014a0| 45 54 6f 53 63 72 61 70 | 3b 0d 09 09 09 65 6e 64 |EToScrap|;....end|
|000014b0| 20 65 6c 73 65 20 69 66 | 20 28 6d 65 6e 75 49 74 | else if| (menuIt|
|000014c0| 65 6d 20 3d 20 45 4d 5f | 43 6f 70 79 29 20 74 68 |em = EM_|Copy) th|
|000014d0| 65 6e 20 62 65 67 69 6e | 0d 09 09 09 09 44 69 61 |en begin|.....Dia|
|000014e0| 6c 6f 67 43 6f 70 79 28 | 74 68 65 44 69 61 6c 6f |logCopy(|theDialo|
|000014f0| 67 29 3b 0d 09 09 09 09 | 6a 75 6e 6b 20 3a 3d 20 |g);.....|junk := |
|00001500| 5a 65 72 6f 53 63 72 61 | 70 3b 0d 09 09 09 09 6a |ZeroScra|p;.....j|
|00001510| 75 6e 6b 20 3a 3d 20 54 | 45 54 6f 53 63 72 61 70 |unk := T|EToScrap|
|00001520| 3b 0d 09 09 09 65 6e 64 | 20 65 6c 73 65 20 69 66 |;....end| else if|
|00001530| 20 28 6d 65 6e 75 49 74 | 65 6d 20 3d 20 45 4d 5f | (menuIt|em = EM_|
|00001540| 50 61 73 74 65 29 20 74 | 68 65 6e 20 62 65 67 69 |Paste) t|hen begi|
|00001550| 6e 0d 09 09 09 09 6a 75 | 6e 6b 20 3a 3d 20 54 45 |n.....ju|nk := TE|
|00001560| 46 72 6f 6d 53 63 72 61 | 70 3b 0d 09 09 09 09 44 |FromScra|p;.....D|
|00001570| 69 61 6c 6f 67 50 61 73 | 74 65 28 74 68 65 44 69 |ialogPas|te(theDi|
|00001580| 61 6c 6f 67 29 3b 0d 09 | 09 09 65 6e 64 3b 0d 09 |alog);..|..end;..|
|00001590| 09 65 6e 64 3b 0d 0d 09 | 09 48 69 6c 69 74 65 4d |.end;...|.HiliteM|
|000015a0| 65 6e 75 28 30 29 3b 0d | 09 65 6e 64 3b 0d 0d 09 |enu(0);.|.end;...|
|000015b0| 66 75 6e 63 74 69 6f 6e | 20 48 61 6e 64 6c 65 4d |function| HandleM|
|000015c0| 6f 75 73 65 44 6f 77 6e | 20 28 74 68 65 44 69 61 |ouseDown| (theDia|
|000015d0| 6c 6f 67 3a 20 44 69 61 | 6c 6f 67 50 74 72 3b 20 |log: Dia|logPtr; |
|000015e0| 76 61 72 20 74 68 65 45 | 76 65 6e 74 3a 20 45 76 |var theE|vent: Ev|
|000015f0| 65 6e 74 52 65 63 6f 72 | 64 3b 20 76 61 72 20 69 |entRecor|d; var i|
|00001600| 74 65 6d 48 69 74 3a 20 | 49 6e 74 65 67 65 72 29 |temHit: |Integer)|
|00001610| 3a 20 42 6f 6f 6c 65 61 | 6e 3b 0d 09 09 76 61 72 |: Boolea|n;...var|
|00001620| 0d 09 09 09 70 61 72 74 | 43 6f 64 65 3a 20 49 6e |....part|Code: In|
|00001630| 74 65 67 65 72 3b 0d 09 | 09 09 77 69 6e 64 3a 20 |teger;..|..wind: |
|00001640| 57 69 6e 64 6f 77 50 74 | 72 3b 0d 09 09 09 62 65 |WindowPt|r;....be|
|00001650| 65 70 65 72 3a 20 50 72 | 6f 63 50 74 72 3b 0d 09 |eper: Pr|ocPtr;..|
|00001660| 09 09 64 72 61 67 52 65 | 63 74 3a 20 52 65 63 74 |..dragRe|ct: Rect|
|00001670| 3b 0d 09 62 65 67 69 6e | 0d 09 09 48 61 6e 64 6c |;..begin|...Handl|
|00001680| 65 4d 6f 75 73 65 44 6f | 77 6e 20 3a 3d 20 66 61 |eMouseDo|wn := fa|
|00001690| 6c 73 65 3b 0d 0d 09 09 | 70 61 72 74 43 6f 64 65 |lse;....|partCode|
|000016a0| 20 3a 3d 20 46 69 6e 64 | 57 69 6e 64 6f 77 28 74 | := Find|Window(t|
|000016b0| 68 65 45 76 65 6e 74 2e | 77 68 65 72 65 2c 20 77 |heEvent.|where, w|
|000016c0| 69 6e 64 29 3b 0d 0d 09 | 09 69 66 20 28 70 61 72 |ind);...|.if (par|
|000016d0| 74 43 6f 64 65 20 3d 20 | 69 6e 4d 65 6e 75 42 61 |tCode = |inMenuBa|
|000016e0| 72 29 20 74 68 65 6e 20 | 62 65 67 69 6e 0d 09 09 |r) then |begin...|
|000016f0| 09 48 61 6e 64 6c 65 4d | 6f 75 73 65 44 6f 77 6e |.HandleM|ouseDown|
|00001700| 20 3a 3d 20 44 6f 4d 65 | 6e 75 43 68 6f 69 63 65 | := DoMe|nuChoice|
|00001710| 28 74 68 65 44 69 61 6c | 6f 67 2c 20 74 68 65 45 |(theDial|og, theE|
|00001720| 76 65 6e 74 2c 20 69 74 | 65 6d 48 69 74 2c 20 4d |vent, it|emHit, M|
|00001730| 65 6e 75 53 65 6c 65 63 | 74 28 74 68 65 45 76 65 |enuSelec|t(theEve|
|00001740| 6e 74 2e 77 68 65 72 65 | 29 29 3b 0d 09 09 65 6e |nt.where|));...en|
|00001750| 64 20 65 6c 73 65 20 69 | 66 20 28 6e 6f 74 20 50 |d else i|f (not P|
|00001760| 74 49 6e 52 67 6e 28 74 | 68 65 45 76 65 6e 74 2e |tInRgn(t|heEvent.|
|00001770| 77 68 65 72 65 2c 20 57 | 69 6e 64 6f 77 50 65 65 |where, W|indowPee|
|00001780| 6b 28 74 68 65 44 69 61 | 6c 6f 67 29 5e 2e 73 74 |k(theDia|log)^.st|
|00001790| 72 75 63 52 67 6e 29 29 | 20 74 68 65 6e 20 62 65 |rucRgn))| then be|
|000017a0| 67 69 6e 0d 09 09 09 62 | 65 65 70 65 72 20 3a 3d |gin....b|eeper :=|
|000017b0| 20 4c 4d 47 65 74 44 41 | 42 65 65 70 65 72 3b 0d | LMGetDA|Beeper;.|
|000017c0| 09 09 09 69 66 20 28 62 | 65 65 70 65 72 20 3c 3e |...if (b|eeper <>|
|000017d0| 20 6e 69 6c 29 20 74 68 | 65 6e 20 62 65 67 69 6e | nil) th|en begin|
|000017e0| 0d 09 09 09 09 43 61 6c | 6c 42 65 65 70 65 72 28 |.....Cal|lBeeper(|
|000017f0| 31 2c 20 62 65 65 70 65 | 72 29 3b 0d 09 09 09 65 |1, beepe|r);....e|
|00001800| 6e 64 3b 0d 09 09 65 6e | 64 20 65 6c 73 65 20 69 |nd;...en|d else i|
|00001810| 66 20 28 70 61 72 74 43 | 6f 64 65 20 3d 20 69 6e |f (partC|ode = in|
|00001820| 44 72 61 67 29 20 26 20 | 28 74 68 65 44 69 61 6c |Drag) & |(theDial|
|00001830| 6f 67 20 3d 20 77 69 6e | 64 29 20 74 68 65 6e 20 |og = win|d) then |
|00001840| 62 65 67 69 6e 20 7b 20 | 6e 6f 77 2c 20 77 65 20 |begin { |now, we |
|00001850| 68 61 76 65 20 74 6f 20 | 68 61 6e 64 6c 65 20 74 |have to |handle t|
|00001860| 68 65 20 6f 6e 6c 79 20 | 74 68 69 6e 67 20 44 69 |he only |thing Di|
|00001870| 61 6c 6f 67 53 65 6c 65 | 63 74 20 64 6f 65 73 6e |alogSele|ct doesn|
|00001880| 27 74 20 64 6f 20 66 6f | 72 20 75 73 3a 20 64 72 |'t do fo|r us: dr|
|00001890| 61 67 67 69 6e 67 20 7d | 0d 09 09 09 64 72 61 67 |agging }|....drag|
|000018a0| 52 65 63 74 20 3a 3d 20 | 47 65 74 47 72 61 79 52 |Rect := |GetGrayR|
|000018b0| 67 6e 5e 5e 2e 72 67 6e | 42 42 6f 78 3b 0d 09 09 |gn^^.rgn|BBox;...|
|000018c0| 09 44 72 61 67 57 69 6e | 64 6f 77 28 77 69 6e 64 |.DragWin|dow(wind|
|000018d0| 2c 20 74 68 65 45 76 65 | 6e 74 2e 77 68 65 72 65 |, theEve|nt.where|
|000018e0| 2c 20 64 72 61 67 52 65 | 63 74 29 3b 0d 09 09 09 |, dragRe|ct);....|
|000018f0| 74 68 65 45 76 65 6e 74 | 2e 77 68 61 74 20 3a 3d |theEvent|.what :=|
|00001900| 20 6e 75 6c 6c 45 76 65 | 6e 74 3b 0d 09 09 65 6e | nullEve|nt;...en|
|00001910| 64 3b 0d 09 65 6e 64 3b | 0d 0d 09 70 72 6f 63 65 |d;..end;|...proce|
|00001920| 64 75 72 65 20 4d 6f 76 | 61 62 6c 65 4d 6f 64 61 |dure Mov|ableModa|
|00001930| 6c 44 69 61 6c 6f 67 20 | 28 66 69 6c 74 65 72 50 |lDialog |(filterP|
|00001940| 72 6f 63 3a 20 50 72 6f | 63 50 74 72 3b 20 76 61 |roc: Pro|cPtr; va|
|00001950| 72 20 69 74 65 6d 48 69 | 74 3a 20 49 6e 74 65 67 |r itemHi|t: Integ|
|00001960| 65 72 29 3b 0d 09 09 76 | 61 72 0d 09 09 09 74 68 |er);...v|ar....th|
|00001970| 65 44 69 61 6c 6f 67 2c | 20 6a 75 6e 6b 5f 64 69 |eDialog,| junk_di|
|00001980| 61 6c 6f 67 3a 20 44 69 | 61 6c 6f 67 50 74 72 3b |alog: Di|alogPtr;|
|00001990| 0d 09 09 09 74 68 65 45 | 76 65 6e 74 3a 20 45 76 |....theE|vent: Ev|
|000019a0| 65 6e 74 52 65 63 6f 72 | 64 3b 0d 09 09 09 67 6f |entRecor|d;....go|
|000019b0| 74 45 76 65 6e 74 3a 20 | 42 6f 6f 6c 65 61 6e 3b |tEvent: |Boolean;|
|000019c0| 0d 09 62 65 67 69 6e 0d | 09 09 69 74 65 6d 48 69 |..begin.|..itemHi|
|000019d0| 74 20 3a 3d 20 30 3b 0d | 09 09 74 68 65 44 69 61 |t := 0;.|..theDia|
|000019e0| 6c 6f 67 20 3a 3d 20 46 | 72 6f 6e 74 57 69 6e 64 |log := F|rontWind|
|000019f0| 6f 77 3b 0d 09 09 69 66 | 20 28 74 68 65 44 69 61 |ow;...if| (theDia|
|00001a00| 6c 6f 67 20 3c 3e 20 6e | 69 6c 29 20 74 68 65 6e |log <> n|il) then|
|00001a10| 20 62 65 67 69 6e 0d 09 | 09 09 53 65 74 50 6f 72 | begin..|..SetPor|
|00001a20| 74 28 74 68 65 44 69 61 | 6c 6f 67 29 3b 0d 09 09 |t(theDia|log);...|
|00001a30| 09 72 65 70 65 61 74 0d | 09 09 09 09 67 6f 74 45 |.repeat.|....gotE|
|00001a40| 76 65 6e 74 20 3a 3d 20 | 57 61 69 74 4e 65 78 74 |vent := |WaitNext|
|00001a50| 45 76 65 6e 74 28 6b 4d | 6f 76 61 62 6c 65 4d 6f |Event(kM|ovableMo|
|00001a60| 64 61 6c 45 76 65 6e 74 | 4d 61 73 6b 2c 20 74 68 |dalEvent|Mask, th|
|00001a70| 65 45 76 65 6e 74 2c 20 | 30 2c 20 6e 69 6c 29 3b |eEvent, |0, nil);|
|00001a80| 0d 09 09 09 09 53 65 74 | 50 6f 72 74 28 74 68 65 |.....Set|Port(the|
|00001a90| 44 69 61 6c 6f 67 29 3b | 0d 0d 09 09 09 09 69 66 |Dialog);|......if|
|00001aa0| 20 28 66 69 6c 74 65 72 | 50 72 6f 63 20 3c 3e 20 | (filter|Proc <> |
|00001ab0| 6e 69 6c 29 20 26 20 43 | 61 6c 6c 46 69 6c 74 65 |nil) & C|allFilte|
|00001ac0| 72 28 74 68 65 44 69 61 | 6c 6f 67 2c 20 74 68 65 |r(theDia|log, the|
|00001ad0| 45 76 65 6e 74 2c 20 69 | 74 65 6d 48 69 74 2c 20 |Event, i|temHit, |
|00001ae0| 66 69 6c 74 65 72 50 72 | 6f 63 29 20 74 68 65 6e |filterPr|oc) then|
|00001af0| 20 62 65 67 69 6e 0d 09 | 09 09 09 09 4c 65 61 76 | begin..|....Leav|
|00001b00| 65 3b 0d 09 09 09 09 65 | 6e 64 3b 0d 0d 09 09 09 |e;.....e|nd;.....|
|00001b10| 09 69 66 20 28 74 68 65 | 45 76 65 6e 74 2e 77 68 |.if (the|Event.wh|
|00001b20| 61 74 20 3d 20 6d 6f 75 | 73 65 44 6f 77 6e 29 20 |at = mou|seDown) |
|00001b30| 26 20 48 61 6e 64 6c 65 | 4d 6f 75 73 65 44 6f 77 |& Handle|MouseDow|
|00001b40| 6e 28 74 68 65 44 69 61 | 6c 6f 67 2c 20 74 68 65 |n(theDia|log, the|
|00001b50| 45 76 65 6e 74 2c 20 69 | 74 65 6d 48 69 74 29 20 |Event, i|temHit) |
|00001b60| 74 68 65 6e 20 62 65 67 | 69 6e 0d 09 09 09 09 09 |then beg|in......|
|00001b70| 4c 65 61 76 65 3b 0d 09 | 09 09 09 65 6e 64 3b 0d |Leave;..|...end;.|
|00001b80| 0d 09 09 09 09 69 66 20 | 28 74 68 65 45 76 65 6e |.....if |(theEven|
|00001b90| 74 2e 77 68 61 74 20 3d | 20 6b 65 79 44 6f 77 6e |t.what =| keyDown|
|00001ba0| 29 20 26 20 28 42 41 4e | 44 28 74 68 65 45 76 65 |) & (BAN|D(theEve|
|00001bb0| 6e 74 2e 6d 6f 64 69 66 | 69 65 72 73 2c 20 63 6d |nt.modif|iers, cm|
|00001bc0| 64 4b 65 79 29 20 3c 3e | 20 30 29 20 26 20 44 6f |dKey) <>| 0) & Do|
|00001bd0| 4d 65 6e 75 43 68 6f 69 | 63 65 28 74 68 65 44 69 |MenuChoi|ce(theDi|
|00001be0| 61 6c 6f 67 2c 20 74 68 | 65 45 76 65 6e 74 2c 20 |alog, th|eEvent, |
|00001bf0| 69 74 65 6d 48 69 74 2c | 20 4d 65 6e 75 4b 65 79 |itemHit,| MenuKey|
|00001c00| 28 43 48 52 28 42 41 4e | 44 28 74 68 65 45 76 65 |(CHR(BAN|D(theEve|
|00001c10| 6e 74 2e 6d 65 73 73 61 | 67 65 2c 20 63 68 61 72 |nt.messa|ge, char|
|00001c20| 43 6f 64 65 4d 61 73 6b | 29 29 29 29 20 74 68 65 |CodeMask|)))) the|
|00001c30| 6e 20 62 65 67 69 6e 0d | 09 09 09 09 09 4c 65 61 |n begin.|.....Lea|
|00001c40| 76 65 3b 0d 09 09 09 09 | 65 6e 64 3b 0d 0d 09 09 |ve;.....|end;....|
|00001c50| 09 09 69 66 20 49 73 44 | 69 61 6c 6f 67 45 76 65 |..if IsD|ialogEve|
|00001c60| 6e 74 28 74 68 65 45 76 | 65 6e 74 29 20 26 20 44 |nt(theEv|ent) & D|
|00001c70| 69 61 6c 6f 67 53 65 6c | 65 63 74 28 74 68 65 45 |ialogSel|ect(theE|
|00001c80| 76 65 6e 74 2c 20 6a 75 | 6e 6b 5f 64 69 61 6c 6f |vent, ju|nk_dialo|
|00001c90| 67 2c 20 69 74 65 6d 48 | 69 74 29 20 74 68 65 6e |g, itemH|it) then|
|00001ca0| 20 62 65 67 69 6e 0d 09 | 09 09 09 09 4c 65 61 76 | begin..|....Leav|
|00001cb0| 65 3b 0d 09 09 09 09 65 | 6e 64 3b 0d 09 09 09 75 |e;.....e|nd;....u|
|00001cc0| 6e 74 69 6c 20 66 61 6c | 73 65 3b 0d 09 09 65 6e |ntil fal|se;...en|
|00001cd0| 64 3b 0d 0d 09 65 6e 64 | 3b 0d 0d 65 6e 64 2e 00 |d;...end|;..end..|
|00001ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d00| 00 00 01 00 00 00 01 54 | 00 00 00 54 00 00 00 46 |.......T|...T...F|
|00001d10| 2c 20 77 68 65 72 65 2e | 76 52 65 66 4e 75 6d 2c |, where.|vRefNum,|
|00001d20| 20 77 68 65 72 65 2e 70 | 61 72 49 44 29 3b 0d 09 | where.p|arID);..|
|00001d30| 10 49 43 4d 6f 76 61 62 | 6c 65 4d 6f 64 61 6c 2e |.ICMovab|leModal.|
|00001d40| 70 4d 02 00 00 00 54 45 | 58 54 43 57 49 45 00 00 |pM....TE|XTCWIE..|
|00001d50| 00 00 54 45 58 54 43 57 | 49 45 00 00 00 d0 00 40 |..TEXTCW|IE.....@|
|00001d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d70| 00 00 a8 5f 54 39 00 00 | 1c 5f 00 00 01 9a 46 49 |..._T9..|._....FI|
|00001d80| 6e 66 6f 28 77 68 65 72 | 65 2e 76 52 65 66 4e 75 |nfo(wher|e.vRefNu|
|00001d90| 6d 2c 20 77 68 65 72 65 | 2e 70 61 72 49 44 2c 20 |m, where|.parID, |
|00001da0| 77 68 65 72 65 2e 6e 61 | 6d 65 2c 20 69 6e 66 6f |where.na|me, info|
|00001db0| 29 3b 0d 09 09 09 69 66 | 20 65 72 72 20 3c 3e 20 |);....if| err <> |
|00001dc0| 6e 6f 45 72 72 20 74 68 | 65 6e 20 62 65 67 69 6e |noErr th|en begin|
|00001dd0| 0d 09 09 09 09 66 6f 75 | 6e 64 20 3a 3d 20 66 61 |.....fou|nd := fa|
|00001de0| 6c 73 65 3b 0d 09 09 09 | 09 6e 64 78 20 3a 3d 20 |lse;....|.ndx := |
|00001df0| 31 3b 0d 09 09 09 09 72 | 65 70 65 61 74 0d 09 09 |1;.....r|epeat...|
|00001e00| 00 00 00 48 00 09 47 65 | 6e 65 76 61 00 00 00 00 |...H..Ge|neva....|
|00001e10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e20| 00 00 00 00 00 00 00 03 | 00 02 00 3e 00 0a 01 d7 |........|...>....|
|00001e30| 02 80 00 3e 00 0a 01 d7 | 02 80 ae 0e ab 6b 00 00 |...>....|.....k..|
|00001e40| 02 4e 00 00 02 51 00 00 | 00 da 01 00 00 00 00 04 |.N...Q..|........|
|00001e50| 00 01 00 01 00 00 01 00 | 00 00 01 54 00 00 00 54 |........|...T...T|
|00001e60| 00 00 00 46 00 65 49 d0 | 12 5e 00 00 00 1c 00 46 |...F.eI.|.^.....F|
|00001e70| 00 01 4d 50 53 52 00 00 | 00 12 4d 57 42 42 00 00 |..MPSR..|..MWBB..|
|00001e80| 00 1e 03 ed ff ff 00 00 | 00 00 00 00 00 00 03 f0 |........|........|
|00001e90| ff ff 00 00 00 4c 00 00 | 00 00 00 00 00 00 00 00 |.....L..|........|
|00001ea0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001eb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ec0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ed0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+