home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / develop™ Technical Journal / develop Issue 16 code / CollaboDraw.sea / CollaboDraw / utils.c < prev    next >
MacBinary  |  1993-08-24  |  13.6 KB  |  [TEXT/MPS ]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
66% dexvert Compact Compressed (Unix) (archive/compact) ext Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Tue Aug 24 15:23:56 1993, modified Tue Aug 24 15:23:56 1993, creator 'MPS ', type ASCII, 13278 bytes "utils.c" , at 0x345e 428 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
keyvalue
macFileType[TEXT]
macFileCreator[MPS ]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 07 75 74 69 6c 73 2e | 63 00 00 00 00 00 00 00 |..utils.|c.......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|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 4d 50 53 | 20 01 00 00 00 00 00 00 |.TEXTMPS| .......|
|00000050| 00 00 00 00 00 33 de 00 | 00 01 ac a8 a0 1b 4c a8 |.....3..|......L.|
|00000060| a0 1b 4c 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..L.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 f7 bc 00 00 |........|........|
|00000080| 2f 2a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/*------|--------|
|00000090| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000d0| 2d 2d 2d 2d 2d 2d 2d 0d | 20 2a 0d 20 2a 20 53 69 |-------.| *. * Si|
|000000e0| 6d 70 6c 65 20 53 61 6d | 70 6c 65 20 50 6f 77 65 |mple Sam|ple Powe|
|000000f0| 72 54 61 6c 6b 20 41 70 | 70 6c 69 63 61 74 69 6f |rTalk Ap|plicatio|
|00000100| 6e 20 46 72 61 6d 65 77 | 6f 72 6b 0d 20 2a 0d 20 |n Framew|ork. *. |
|00000110| 2a 20 a9 31 39 39 31 2d | 31 39 39 33 20 41 70 70 |* .1991-|1993 App|
|00000120| 6c 65 20 43 6f 6d 70 75 | 74 65 72 0d 20 2a 0d 20 |le Compu|ter. *. |
|00000130| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000140| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000150| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000160| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000170| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000180| 2d 2d 2d 2d 2d 2a 2f 0d | 2f 2a 0d 20 2a 20 75 74 |-----*/.|/*. * ut|
|00000190| 69 6c 73 2e 63 20 2d 2d | 20 75 74 69 6c 69 74 79 |ils.c --| utility|
|000001a0| 20 72 6f 75 74 69 6e 65 | 73 0d 20 2a 0d 20 2a 20 | routine|s. *. * |
|000001b0| 63 68 61 6e 67 65 20 68 | 69 73 74 6f 72 79 3a 0d |change h|istory:.|
|000001c0| 20 2a 0d 20 2a 20 53 4a | 46 09 09 30 38 2f 32 33 | *. * SJ|F..08/23|
|000001d0| 2f 39 33 09 09 31 2e 30 | 66 31 09 09 75 70 64 61 |/93..1.0|f1..upda|
|000001e0| 74 65 20 74 6f 20 66 69 | 6e 61 6c 20 68 65 61 64 |te to fi|nal head|
|000001f0| 65 72 73 2c 20 66 69 78 | 20 63 6f 6d 6d 65 6e 74 |ers, fix| comment|
|00000200| 73 0d 20 2a 20 53 4a 46 | 09 09 30 34 2f 32 31 2f |s. * SJF|..04/21/|
|00000210| 39 33 09 09 31 2e 30 62 | 32 09 09 75 70 64 61 74 |93..1.0b|2..updat|
|00000220| 65 20 74 6f 20 62 32 0d | 20 2a 20 53 4a 46 09 09 |e to b2.| * SJF..|
|00000230| 30 33 2f 30 31 2f 39 33 | 09 09 31 2e 30 62 31 09 |03/01/93|..1.0b1.|
|00000240| 09 61 64 64 65 64 20 64 | 69 67 69 74 61 6c 20 73 |.added d|igital s|
|00000250| 69 67 6e 61 74 75 72 65 | 73 0d 20 2a 20 53 4a 46 |ignature|s. * SJF|
|00000260| 09 09 30 32 2f 30 39 2f | 39 33 09 09 31 2e 30 62 |..02/09/|93..1.0b|
|00000270| 31 09 09 75 70 64 61 74 | 65 20 74 6f 20 62 31 0d |1..updat|e to b1.|
|00000280| 20 2a 20 53 4a 46 09 09 | 31 30 2f 31 33 2f 39 32 | * SJF..|10/13/92|
|00000290| 09 09 31 2e 30 64 34 09 | 09 75 70 64 61 74 65 20 |..1.0d4.|.update |
|000002a0| 74 6f 20 61 31 31 0d 20 | 2a 20 53 4a 46 09 09 30 |to a11. |* SJF..0|
|000002b0| 39 2f 30 39 2f 39 32 09 | 09 31 2e 30 64 33 09 09 |9/09/92.|.1.0d3..|
|000002c0| 75 70 64 61 74 65 20 74 | 6f 20 61 39 0d 20 2a 20 |update t|o a9. * |
|000002d0| 53 4a 46 09 09 30 35 2f | 30 37 2f 39 32 09 09 31 |SJF..05/|07/92..1|
|000002e0| 2e 30 64 32 09 09 75 70 | 64 61 74 65 20 74 6f 20 |.0d2..up|date to |
|000002f0| 61 36 0d 20 2a 20 53 4a | 46 09 09 31 31 2f 30 36 |a6. * SJ|F..11/06|
|00000300| 2f 39 31 09 09 31 2e 30 | 64 31 09 09 69 6e 69 74 |/91..1.0|d1..init|
|00000310| 69 61 6c 20 63 6f 64 69 | 6e 67 0d 20 2a 0d 20 2a |ial codi|ng. *. *|
|00000320| 2f 0d 0d 23 70 72 61 67 | 6d 61 20 73 65 67 6d 65 |/..#prag|ma segme|
|00000330| 6e 74 20 6f 74 68 65 72 | 73 65 67 6d 65 6e 74 0d |nt other|segment.|
|00000340| 0d 23 69 66 6e 64 65 66 | 20 5f 5f 54 59 50 45 53 |.#ifndef| __TYPES|
|00000350| 5f 5f 0d 23 69 6e 63 6c | 75 64 65 20 3c 54 79 70 |__.#incl|ude <Typ|
|00000360| 65 73 2e 68 3e 0d 23 65 | 6e 64 69 66 0d 0d 23 69 |es.h>.#e|ndif..#i|
|00000370| 66 6e 64 65 66 20 5f 5f | 4d 45 4e 55 53 5f 5f 0d |fndef __|MENUS__.|
|00000380| 23 69 6e 63 6c 75 64 65 | 20 3c 4d 65 6e 75 73 2e |#include| <Menus.|
|00000390| 68 3e 0d 23 65 6e 64 69 | 66 0d 0d 23 69 66 6e 64 |h>.#endi|f..#ifnd|
|000003a0| 65 66 20 5f 5f 47 45 53 | 54 41 4c 54 45 51 55 5f |ef __GES|TALTEQU_|
|000003b0| 5f 0d 23 69 6e 63 6c 75 | 64 65 20 3c 47 65 73 74 |_.#inclu|de <Gest|
|000003c0| 61 6c 74 45 71 75 2e 68 | 3e 0d 23 65 6e 64 69 66 |altEqu.h|>.#endif|
|000003d0| 0d 0d 23 69 66 6e 64 65 | 66 20 5f 5f 54 52 41 50 |..#ifnde|f __TRAP|
|000003e0| 53 5f 5f 0d 23 69 6e 63 | 6c 75 64 65 20 3c 54 72 |S__.#inc|lude <Tr|
|000003f0| 61 70 73 2e 68 3e 0d 23 | 65 6e 64 69 66 0d 0d 23 |aps.h>.#|endif..#|
|00000400| 69 66 6e 64 65 66 20 5f | 5f 4e 4f 54 49 46 49 43 |ifndef _|_NOTIFIC|
|00000410| 41 54 49 4f 4e 5f 5f 0d | 23 69 6e 63 6c 75 64 65 |ATION__.|#include|
|00000420| 20 3c 4e 6f 74 69 66 69 | 63 61 74 69 6f 6e 2e 68 | <Notifi|cation.h|
|00000430| 3e 0d 23 65 6e 64 69 66 | 0d 0d 23 69 66 6e 64 65 |>.#endif|..#ifnde|
|00000440| 66 20 5f 5f 54 4f 4f 4c | 55 54 49 4c 53 5f 5f 0d |f __TOOL|UTILS__.|
|00000450| 23 69 6e 63 6c 75 64 65 | 20 3c 54 6f 6f 6c 55 74 |#include| <ToolUt|
|00000460| 69 6c 73 2e 68 3e 0d 23 | 65 6e 64 69 66 0d 0d 23 |ils.h>.#|endif..#|
|00000470| 69 66 6e 64 65 66 20 5f | 5f 46 49 4c 45 53 5f 5f |ifndef _|_FILES__|
|00000480| 0d 23 69 6e 63 6c 75 64 | 65 20 3c 46 69 6c 65 73 |.#includ|e <Files|
|00000490| 2e 68 3e 0d 23 65 6e 64 | 69 66 0d 0d 23 69 66 64 |.h>.#end|if..#ifd|
|000004a0| 65 66 20 54 48 49 4e 4b | 5f 43 0d 23 69 6e 63 6c |ef THINK|_C.#incl|
|000004b0| 75 64 65 20 3c 42 44 43 | 2e 68 3e 09 2f 2f 20 77 |ude <BDC|.h>.// w|
|000004c0| 6f 72 6b 61 72 6f 75 6e | 64 20 66 6f 72 20 74 68 |orkaroun|d for th|
|000004d0| 69 6e 6b 20 70 61 63 6b | 61 67 65 73 2e 68 20 62 |ink pack|ages.h b|
|000004e0| 75 67 0d 23 65 6e 64 69 | 66 0d 0d 23 69 66 6e 64 |ug.#endi|f..#ifnd|
|000004f0| 65 66 20 5f 5f 50 41 43 | 4b 41 47 45 53 5f 5f 0d |ef __PAC|KAGES__.|
|00000500| 23 69 6e 63 6c 75 64 65 | 20 3c 50 61 63 6b 61 67 |#include| <Packag|
|00000510| 65 73 2e 68 3e 0d 23 65 | 6e 64 69 66 0d 0d 23 69 |es.h>.#e|ndif..#i|
|00000520| 66 6e 64 65 66 20 5f 5f | 45 56 45 4e 54 53 5f 5f |fndef __|EVENTS__|
|00000530| 0d 23 69 6e 63 6c 75 64 | 65 20 3c 45 76 65 6e 74 |.#includ|e <Event|
|00000540| 73 2e 68 3e 0d 23 65 6e | 64 69 66 0d 0d 23 69 66 |s.h>.#en|dif..#if|
|00000550| 6e 64 65 66 20 5f 5f 52 | 45 53 4f 55 52 43 45 53 |ndef __R|ESOURCES|
|00000560| 5f 5f 0d 23 69 6e 63 6c | 75 64 65 20 3c 52 65 73 |__.#incl|ude <Res|
|00000570| 6f 75 72 63 65 73 2e 68 | 3e 0d 23 65 6e 64 69 66 |ources.h|>.#endif|
|00000580| 0d 0d 23 69 66 6e 64 65 | 66 20 5f 5f 46 4f 4c 44 |..#ifnde|f __FOLD|
|00000590| 45 52 53 5f 5f 0d 23 69 | 6e 63 6c 75 64 65 20 3c |ERS__.#i|nclude <|
|000005a0| 46 6f 6c 64 65 72 73 2e | 68 3e 0d 23 65 6e 64 69 |Folders.|h>.#endi|
|000005b0| 66 0d 0d 23 69 66 6e 64 | 65 66 20 5f 5f 50 41 4c |f..#ifnd|ef __PAL|
|000005c0| 45 54 54 45 53 5f 5f 0d | 23 69 6e 63 6c 75 64 65 |ETTES__.|#include|
|000005d0| 20 3c 50 61 6c 65 74 74 | 65 73 2e 68 3e 0d 23 65 | <Palett|es.h>.#e|
|000005e0| 6e 64 69 66 0d 0d 23 69 | 66 6e 64 65 66 20 5f 5f |ndif..#i|fndef __|
|000005f0| 4f 43 45 53 54 41 4e 44 | 41 52 44 4d 41 49 4c 5f |OCESTAND|ARDMAIL_|
|00000600| 5f 0d 23 69 6e 63 6c 75 | 64 65 20 3c 4f 43 45 53 |_.#inclu|de <OCES|
|00000610| 74 61 6e 64 61 72 64 4d | 61 69 6c 2e 68 3e 0d 23 |tandardM|ail.h>.#|
|00000620| 65 6e 64 69 66 0d 0d 23 | 69 6e 63 6c 75 64 65 20 |endif..#|include |
|00000630| 22 63 6f 6e 73 74 2e 68 | 22 0d 23 69 6e 63 6c 75 |"const.h|".#inclu|
|00000640| 64 65 20 22 6d 79 74 79 | 70 65 73 2e 68 22 0d 23 |de "myty|pes.h".#|
|00000650| 69 6e 63 6c 75 64 65 20 | 22 67 6c 6f 62 61 6c 73 |include |"globals|
|00000660| 2e 68 22 0d 23 69 6e 63 | 6c 75 64 65 20 22 74 72 |.h".#inc|lude "tr|
|00000670| 61 70 61 76 61 69 6c 61 | 62 6c 65 2e 68 22 0d 23 |apavaila|ble.h".#|
|00000680| 69 6e 63 6c 75 64 65 20 | 22 6d 61 69 6e 2e 68 22 |include |"main.h"|
|00000690| 0d 23 69 6e 63 6c 75 64 | 65 20 22 6d 79 6d 65 6e |.#includ|e "mymen|
|000006a0| 75 73 2e 68 22 0d 23 69 | 6e 63 6c 75 64 65 20 22 |us.h".#i|nclude "|
|000006b0| 73 74 72 63 6f 6e 73 74 | 2e 68 22 0d 23 69 6e 63 |strconst|.h".#inc|
|000006c0| 6c 75 64 65 20 22 77 69 | 6e 64 6f 77 73 74 75 66 |lude "wi|ndowstuf|
|000006d0| 66 2e 68 22 0d 0d 23 69 | 6e 63 6c 75 64 65 20 22 |f.h"..#i|nclude "|
|000006e0| 75 74 69 6c 73 2e 68 22 | 0d 0d 2f 2a 20 72 65 74 |utils.h"|../* ret|
|000006f0| 75 72 6e 73 20 74 72 75 | 65 20 69 66 20 63 6f 6c |urns tru|e if col|
|00000700| 6f 72 20 71 75 69 63 6b | 64 72 61 77 20 69 73 20 |or quick|draw is |
|00000710| 61 76 61 69 6c 61 62 6c | 65 20 2a 2f 0d 0d 42 6f |availabl|e */..Bo|
|00000720| 6f 6c 65 61 6e 20 48 61 | 73 43 6f 6c 6f 72 51 44 |olean Ha|sColorQD|
|00000730| 28 76 6f 69 64 29 0d 7b | 0d 09 53 79 73 45 6e 76 |(void).{|..SysEnv|
|00000740| 52 65 63 20 74 68 65 45 | 6e 76 3b 0d 09 0d 09 69 |Rec theE|nv;....i|
|00000750| 66 20 28 53 79 73 45 6e | 76 69 72 6f 6e 73 28 31 |f (SysEn|virons(1|
|00000760| 2c 26 74 68 65 45 6e 76 | 29 20 21 3d 20 6e 6f 45 |,&theEnv|) != noE|
|00000770| 72 72 29 0d 09 09 72 65 | 74 75 72 6e 20 66 61 6c |rr)...re|turn fal|
|00000780| 73 65 3b 0d 0d 09 72 65 | 74 75 72 6e 20 28 74 68 |se;...re|turn (th|
|00000790| 65 45 6e 76 2e 68 61 73 | 43 6f 6c 6f 72 51 44 29 |eEnv.has|ColorQD)|
|000007a0| 3b 0d 7d 0d 0d 0d 2f 2a | 20 68 61 6e 64 6c 65 73 |;.}.../*| handles|
|000007b0| 20 61 6e 20 65 72 72 6f | 72 20 62 79 20 64 69 73 | an erro|r by dis|
|000007c0| 70 6c 61 79 69 6e 67 20 | 61 6e 20 65 72 72 6f 72 |playing |an error|
|000007d0| 20 73 74 72 69 6e 67 20 | 76 69 61 20 74 68 65 20 | string |via the |
|000007e0| 6e 6f 74 69 66 69 63 61 | 74 69 6f 6e 20 6d 61 6e |notifica|tion man|
|000007f0| 61 67 65 72 20 6f 72 20 | 61 6c 65 72 74 20 2a 2f |ager or |alert */|
|00000800| 0d 0d 76 6f 69 64 20 44 | 6f 45 72 72 6f 72 28 4f |..void D|oError(O|
|00000810| 53 45 72 72 20 65 72 72 | 29 0d 7b 0d 09 53 74 72 |SErr err|).{..Str|
|00000820| 32 35 35 20 65 72 72 53 | 74 72 3b 0d 09 53 74 72 |255 errS|tr;..Str|
|00000830| 32 35 35 20 65 72 72 4e | 75 6d 53 74 72 3b 0d 09 |255 errN|umStr;..|
|00000840| 48 61 6e 64 6c 65 20 72 | 65 73 48 61 6e 64 6c 65 |Handle r|esHandle|
|00000850| 3b 0d 09 0d 09 69 66 20 | 28 65 72 72 3d 3d 6e 6f |;....if |(err==no|
|00000860| 45 72 72 29 0d 09 09 72 | 65 74 75 72 6e 3b 0d 09 |Err)...r|eturn;..|
|00000870| 0d 09 69 66 20 28 72 65 | 73 48 61 6e 64 6c 65 3d |..if (re|sHandle=|
|00000880| 47 65 74 52 65 73 6f 75 | 72 63 65 28 27 45 73 74 |GetResou|rce('Est|
|00000890| 72 27 2c 65 72 72 29 29 | 20 7b 09 2f 2f 20 67 65 |r',err))| {.// ge|
|000008a0| 74 20 6f 75 72 20 6c 69 | 73 74 20 6f 66 20 65 72 |t our li|st of er|
|000008b0| 72 6f 72 20 73 74 72 69 | 6e 67 73 0d 09 09 48 4c |ror stri|ngs...HL|
|000008c0| 6f 63 6b 28 72 65 73 48 | 61 6e 64 6c 65 29 3b 0d |ock(resH|andle);.|
|000008d0| 09 09 70 73 74 72 63 70 | 79 28 65 72 72 53 74 72 |..pstrcp|y(errStr|
|000008e0| 2c 2a 72 65 73 48 61 6e | 64 6c 65 29 3b 0d 09 09 |,*resHan|dle);...|
|000008f0| 48 55 6e 6c 6f 63 6b 28 | 72 65 73 48 61 6e 64 6c |HUnlock(|resHandl|
|00000900| 65 29 3b 0d 09 09 52 65 | 6c 65 61 73 65 52 65 73 |e);...Re|leaseRes|
|00000910| 6f 75 72 63 65 28 72 65 | 73 48 61 6e 64 6c 65 29 |ource(re|sHandle)|
|00000920| 3b 0d 09 7d 0d 09 65 6c | 73 65 20 7b 0d 09 09 4e |;..}..el|se {...N|
|00000930| 75 6d 54 6f 53 74 72 69 | 6e 67 28 65 72 72 2c 65 |umToStri|ng(err,e|
|00000940| 72 72 4e 75 6d 53 74 72 | 29 3b 0d 09 09 70 73 74 |rrNumStr|);...pst|
|00000950| 72 63 70 79 28 65 72 72 | 53 74 72 2c 22 5c 70 41 |rcpy(err|Str,"\pA|
|00000960| 6e 20 65 72 72 6f 72 20 | 68 61 73 20 6f 63 63 75 |n error |has occu|
|00000970| 72 72 65 64 3a 20 22 29 | 3b 0d 09 09 70 73 74 72 |rred: ")|;...pstr|
|00000980| 63 61 74 28 65 72 72 53 | 74 72 2c 65 72 72 4e 75 |cat(errS|tr,errNu|
|00000990| 6d 53 74 72 29 3b 0d 09 | 7d 0d 09 0d 09 69 66 20 |mStr);..|}....if |
|000009a0| 28 67 49 6e 42 61 63 6b | 67 72 6f 75 6e 64 29 0d |(gInBack|ground).|
|000009b0| 09 09 4e 6f 74 69 66 79 | 28 65 72 72 53 74 72 29 |..Notify|(errStr)|
|000009c0| 3b 0d 09 65 6c 73 65 20 | 7b 0d 09 09 50 61 72 61 |;..else |{...Para|
|000009d0| 6d 54 65 78 74 28 65 72 | 72 53 74 72 2c 6e 69 6c |mText(er|rStr,nil|
|000009e0| 2c 6e 69 6c 2c 6e 69 6c | 29 3b 0d 09 09 53 74 6f |,nil,nil|);...Sto|
|000009f0| 70 41 6c 65 72 74 28 6b | 45 72 72 6f 72 42 6f 78 |pAlert(k|ErrorBox|
|00000a00| 49 44 2c 6e 69 6c 29 3b | 0d 09 7d 09 0d 7d 0d 0d |ID,nil);|..}..}..|
|00000a10| 0d 2f 2a 20 70 6f 73 74 | 20 6f 75 72 20 6e 6f 74 |./* post| our not|
|00000a20| 69 66 69 63 61 74 69 6f | 6e 20 2a 2f 0d 0d 76 6f |ificatio|n */..vo|
|00000a30| 69 64 20 4e 6f 74 69 66 | 79 28 53 74 72 69 6e 67 |id Notif|y(String|
|00000a40| 50 74 72 20 73 74 72 69 | 6e 67 29 0d 7b 0d 09 4e |Ptr stri|ng).{..N|
|00000a50| 4d 52 65 63 50 74 72 20 | 6e 6d 3b 0d 09 53 74 72 |MRecPtr |nm;..Str|
|00000a60| 69 6e 67 50 74 72 20 73 | 74 72 50 74 72 3b 0d 09 |ingPtr s|trPtr;..|
|00000a70| 0d 09 6e 6d 20 3d 20 28 | 4e 4d 52 65 63 50 74 72 |..nm = (|NMRecPtr|
|00000a80| 29 4e 65 77 50 74 72 28 | 73 69 7a 65 6f 66 28 4e |)NewPtr(|sizeof(N|
|00000a90| 4d 52 65 63 29 29 3b 0d | 09 69 66 20 28 4d 65 6d |MRec));.|.if (Mem|
|00000aa0| 45 72 72 6f 72 28 29 21 | 3d 6e 6f 45 72 72 29 0d |Error()!|=noErr).|
|00000ab0| 09 09 72 65 74 75 72 6e | 3b 0d 09 73 74 72 50 74 |..return|;..strPt|
|00000ac0| 72 20 3d 20 28 53 74 72 | 69 6e 67 50 74 72 29 4e |r = (Str|ingPtr)N|
|00000ad0| 65 77 50 74 72 28 73 74 | 72 69 6e 67 5b 30 5d 29 |ewPtr(st|ring[0])|
|00000ae0| 3b 0d 09 69 66 20 28 4d | 65 6d 45 72 72 6f 72 28 |;..if (M|emError(|
|00000af0| 29 21 3d 6e 6f 45 72 72 | 29 0d 09 09 72 65 74 75 |)!=noErr|)...retu|
|00000b00| 72 6e 3b 0d 09 42 6c 6f | 63 6b 4d 6f 76 65 28 73 |rn;..Blo|ckMove(s|
|00000b10| 74 72 69 6e 67 2c 73 74 | 72 50 74 72 2c 73 74 72 |tring,st|rPtr,str|
|00000b20| 69 6e 67 5b 30 5d 2b 31 | 29 3b 0d 09 0d 09 6e 6d |ing[0]+1|);....nm|
|00000b30| 2d 3e 71 54 79 70 65 20 | 3d 20 6e 6d 54 79 70 65 |->qType |= nmType|
|00000b40| 3b 0d 09 6e 6d 2d 3e 6e | 6d 4d 61 72 6b 20 3d 20 |;..nm->n|mMark = |
|00000b50| 30 3b 0d 09 6e 6d 2d 3e | 6e 6d 49 63 6f 6e 20 3d |0;..nm->|nmIcon =|
|00000b60| 20 6e 69 6c 3b 0d 09 6e | 6d 2d 3e 6e 6d 53 6f 75 | nil;..n|m->nmSou|
|00000b70| 6e 64 20 3d 20 6e 69 6c | 3b 0d 09 6e 6d 2d 3e 6e |nd = nil|;..nm->n|
|00000b80| 6d 53 74 72 20 3d 20 73 | 74 72 50 74 72 3b 0d 09 |mStr = s|trPtr;..|
|00000b90| 6e 6d 2d 3e 6e 6d 52 65 | 73 70 20 3d 20 6e 69 6c |nm->nmRe|sp = nil|
|00000ba0| 3b 0d 09 4e 4d 49 6e 73 | 74 61 6c 6c 28 6e 6d 29 |;..NMIns|tall(nm)|
|00000bb0| 3b 0d 7d 0d 0d 0d 2f 2a | 20 70 61 73 63 61 6c 20 |;.}.../*| pascal |
|00000bc0| 73 74 72 69 6e 67 20 63 | 6f 70 79 20 66 75 6e 63 |string c|opy func|
|00000bd0| 74 69 6f 6e 20 2a 2f 0d | 0d 76 6f 69 64 20 70 73 |tion */.|.void ps|
|00000be0| 74 72 63 70 79 28 76 6f | 69 64 20 2a 64 65 73 74 |trcpy(vo|id *dest|
|00000bf0| 2c 76 6f 69 64 20 2a 73 | 72 63 29 0d 7b 0d 09 75 |,void *s|rc).{..u|
|00000c00| 6e 73 69 67 6e 65 64 20 | 63 68 61 72 20 73 72 63 |nsigned |char src|
|00000c10| 4c 65 6e 20 3d 20 28 28 | 75 6e 73 69 67 6e 65 64 |Len = ((|unsigned|
|00000c20| 20 63 68 61 72 20 2a 29 | 73 72 63 29 5b 30 5d 3b | char *)|src)[0];|
|00000c30| 0d 09 0d 09 42 6c 6f 63 | 6b 4d 6f 76 65 28 73 72 |....Bloc|kMove(sr|
|00000c40| 63 2c 64 65 73 74 2c 73 | 72 63 4c 65 6e 2b 31 29 |c,dest,s|rcLen+1)|
|00000c50| 3b 0d 7d 0d 0d 0d 2f 2a | 20 70 61 73 63 61 6c 20 |;.}.../*| pascal |
|00000c60| 73 74 72 69 6e 67 20 63 | 61 74 65 6e 61 74 69 6f |string c|atenatio|
|00000c70| 6e 20 66 75 6e 63 74 69 | 6f 6e 20 2a 2f 0d 0d 76 |n functi|on */..v|
|00000c80| 6f 69 64 20 70 73 74 72 | 63 61 74 28 76 6f 69 64 |oid pstr|cat(void|
|00000c90| 20 2a 6f 72 69 67 69 6e | 61 6c 2c 76 6f 69 64 20 | *origin|al,void |
|00000ca0| 2a 63 61 74 53 74 72 29 | 0d 7b 0d 09 73 68 6f 72 |*catStr)|.{..shor|
|00000cb0| 74 20 6c 65 6e 67 74 68 | 3b 0d 09 75 6e 73 69 67 |t length|;..unsig|
|00000cc0| 6e 65 64 20 63 68 61 72 | 20 6f 72 69 67 69 6e 61 |ned char| origina|
|00000cd0| 6c 4c 65 6e 20 3d 20 28 | 28 75 6e 73 69 67 6e 65 |lLen = (|(unsigne|
|00000ce0| 64 20 63 68 61 72 20 2a | 29 6f 72 69 67 69 6e 61 |d char *|)origina|
|00000cf0| 6c 29 5b 30 5d 3b 0d 09 | 75 6e 73 69 67 6e 65 64 |l)[0];..|unsigned|
|00000d00| 20 63 68 61 72 20 63 61 | 74 53 74 72 4c 65 6e 20 | char ca|tStrLen |
|00000d10| 3d 20 28 28 75 6e 73 69 | 67 6e 65 64 20 63 68 61 |= ((unsi|gned cha|
|00000d20| 72 20 2a 29 63 61 74 53 | 74 72 29 5b 30 5d 3b 0d |r *)catS|tr)[0];.|
|00000d30| 09 0d 09 6c 65 6e 67 74 | 68 20 3d 20 28 73 68 6f |...lengt|h = (sho|
|00000d40| 72 74 29 20 6f 72 69 67 | 69 6e 61 6c 4c 65 6e 3b |rt) orig|inalLen;|
|00000d50| 0d 09 6c 65 6e 67 74 68 | 20 2b 3d 20 28 73 68 6f |..length| += (sho|
|00000d60| 72 74 29 20 63 61 74 53 | 74 72 4c 65 6e 3b 0d 09 |rt) catS|trLen;..|
|00000d70| 0d 09 69 66 20 28 6c 65 | 6e 67 74 68 20 3e 20 32 |..if (le|ngth > 2|
|00000d80| 35 35 29 20 7b 0d 09 09 | 44 65 62 75 67 53 74 72 |55) {...|DebugStr|
|00000d90| 28 22 5c 70 73 74 72 69 | 6e 67 20 63 61 74 65 6e |("\pstri|ng caten|
|00000da0| 61 74 69 6f 6e 20 6f 76 | 65 72 66 6c 6f 77 22 29 |ation ov|erflow")|
|00000db0| 3b 0d 09 09 45 78 69 74 | 54 6f 53 68 65 6c 6c 28 |;...Exit|ToShell(|
|00000dc0| 29 3b 0d 09 7d 0d 09 0d | 09 42 6c 6f 63 6b 4d 6f |);..}...|.BlockMo|
|00000dd0| 76 65 28 28 63 68 61 72 | 20 2a 29 63 61 74 53 74 |ve((char| *)catSt|
|00000de0| 72 2b 31 2c 28 63 68 61 | 72 20 2a 29 6f 72 69 67 |r+1,(cha|r *)orig|
|00000df0| 69 6e 61 6c 2b 6f 72 69 | 67 69 6e 61 6c 4c 65 6e |inal+ori|ginalLen|
|00000e00| 2b 31 2c 63 61 74 53 74 | 72 4c 65 6e 29 3b 0d 09 |+1,catSt|rLen);..|
|00000e10| 28 28 75 6e 73 69 67 6e | 65 64 20 63 68 61 72 20 |((unsign|ed char |
|00000e20| 2a 29 6f 72 69 67 69 6e | 61 6c 29 5b 30 5d 20 3d |*)origin|al)[0] =|
|00000e30| 20 28 75 6e 73 69 67 6e | 65 64 20 63 68 61 72 29 | (unsign|ed char)|
|00000e40| 20 6c 65 6e 67 74 68 3b | 0d 7d 0d 0d 0d 2f 2a 20 | length;|.}.../* |
|00000e50| 74 72 69 65 73 20 74 6f | 20 67 65 74 20 61 20 67 |tries to| get a g|
|00000e60| 69 76 65 6e 20 73 74 72 | 69 6e 67 20 6f 75 74 20 |iven str|ing out |
|00000e70| 6f 66 20 74 68 65 20 72 | 65 73 6f 75 72 63 65 20 |of the r|esource |
|00000e80| 66 6f 72 6b 2c 20 61 6e | 64 20 69 66 20 69 74 27 |fork, an|d if it'|
|00000e90| 73 20 6e 6f 74 20 74 68 | 65 72 65 2c 20 63 6f 70 |s not th|ere, cop|
|00000ea0| 79 20 74 68 65 20 2a 2f | 0d 2f 2a 20 62 61 63 6b |y the */|./* back|
|00000eb0| 75 70 20 73 74 72 69 6e | 67 20 69 6e 74 6f 20 73 |up strin|g into s|
|00000ec0| 74 6f 72 61 67 65 20 62 | 65 66 6f 72 65 20 72 65 |torage b|efore re|
|00000ed0| 74 75 72 6e 69 6e 67 20 | 2a 2f 0d 0d 76 6f 69 64 |turning |*/..void|
|00000ee0| 20 47 65 74 52 65 73 53 | 74 72 69 6e 67 28 53 74 | GetResS|tring(St|
|00000ef0| 72 69 6e 67 50 74 72 20 | 73 74 6f 72 61 67 65 2c |ringPtr |storage,|
|00000f00| 73 68 6f 72 74 20 72 65 | 7a 49 44 2c 53 74 72 69 |short re|zID,Stri|
|00000f10| 6e 67 50 74 72 20 62 61 | 63 6b 75 70 53 74 72 69 |ngPtr ba|ckupStri|
|00000f20| 6e 67 29 0d 7b 0d 09 53 | 74 72 69 6e 67 48 61 6e |ng).{..S|tringHan|
|00000f30| 64 6c 65 20 72 65 7a 53 | 74 72 69 6e 67 3b 0d 09 |dle rezS|tring;..|
|00000f40| 0d 09 72 65 7a 53 74 72 | 69 6e 67 20 3d 20 47 65 |..rezStr|ing = Ge|
|00000f50| 74 53 74 72 69 6e 67 28 | 72 65 7a 49 44 29 3b 0d |tString(|rezID);.|
|00000f60| 09 69 66 20 28 72 65 7a | 53 74 72 69 6e 67 29 20 |.if (rez|String) |
|00000f70| 7b 0d 09 09 70 73 74 72 | 63 70 79 28 73 74 6f 72 |{...pstr|cpy(stor|
|00000f80| 61 67 65 2c 2a 72 65 7a | 53 74 72 69 6e 67 29 3b |age,*rez|String);|
|00000f90| 0d 09 09 52 65 6c 65 61 | 73 65 52 65 73 6f 75 72 |...Relea|seResour|
|00000fa0| 63 65 28 28 48 61 6e 64 | 6c 65 29 72 65 7a 53 74 |ce((Hand|le)rezSt|
|00000fb0| 72 69 6e 67 29 3b 0d 09 | 7d 0d 09 65 6c 73 65 0d |ring);..|}..else.|
|00000fc0| 09 09 70 73 74 72 63 70 | 79 28 73 74 6f 72 61 67 |..pstrcp|y(storag|
|00000fd0| 65 2c 62 61 63 6b 75 70 | 53 74 72 69 6e 67 29 3b |e,backup|String);|
|00000fe0| 0d 7d 0d 0d 0d 2f 2a 20 | 6d 65 6d 6f 72 79 20 6d |.}.../* |memory m|
|00000ff0| 61 6e 61 67 65 72 20 4e | 65 77 50 74 72 20 77 72 |anager N|ewPtr wr|
|00001000| 61 70 70 65 72 20 2a 2f | 0d 0d 76 6f 69 64 20 2a |apper */|..void *|
|00001010| 4e 65 77 50 74 72 43 68 | 6b 28 53 69 7a 65 20 70 |NewPtrCh|k(Size p|
|00001020| 74 72 53 69 7a 65 29 0d | 7b 0d 09 50 74 72 20 74 |trSize).|{..Ptr t|
|00001030| 68 65 50 74 72 3b 0d 0d | 09 74 68 65 50 74 72 20 |hePtr;..|.thePtr |
|00001040| 3d 20 4e 65 77 50 74 72 | 28 70 74 72 53 69 7a 65 |= NewPtr|(ptrSize|
|00001050| 29 3b 0d 09 69 66 20 28 | 4d 65 6d 45 72 72 6f 72 |);..if (|MemError|
|00001060| 28 29 21 3d 6e 6f 45 72 | 72 29 0d 09 09 44 6f 45 |()!=noEr|r)...DoE|
|00001070| 72 72 6f 72 28 4d 65 6d | 45 72 72 6f 72 28 29 29 |rror(Mem|Error())|
|00001080| 3b 0d 23 69 66 20 6b 44 | 45 42 55 47 0d 09 7b 0d |;.#if kD|EBUG..{.|
|00001090| 09 09 6c 6f 6e 67 20 2a | 6c 6f 6e 67 50 74 72 20 |..long *|longPtr |
|000010a0| 3d 20 28 6c 6f 6e 67 20 | 2a 29 74 68 65 50 74 72 |= (long |*)thePtr|
|000010b0| 3b 0d 09 09 2a 6c 6f 6e | 67 50 74 72 20 3d 20 6b |;...*lon|gPtr = k|
|000010c0| 42 65 74 74 65 72 42 75 | 73 45 72 72 3b 0d 09 7d |BetterBu|sErr;..}|
|000010d0| 0d 23 65 6e 64 69 66 0d | 09 72 65 74 75 72 6e 20 |.#endif.|.return |
|000010e0| 74 68 65 50 74 72 3b 0d | 7d 0d 0d 0d 2f 2a 20 6d |thePtr;.|}.../* m|
|000010f0| 65 6d 6f 72 79 20 6d 61 | 6e 61 67 65 72 20 4e 65 |emory ma|nager Ne|
|00001100| 77 48 61 6e 64 6c 65 20 | 77 72 61 70 70 65 72 20 |wHandle |wrapper |
|00001110| 2a 2f 0d 0d 76 6f 69 64 | 20 2a 4e 65 77 48 61 6e |*/..void| *NewHan|
|00001120| 64 6c 65 43 68 6b 28 53 | 69 7a 65 20 68 6e 64 6c |dleChk(S|ize hndl|
|00001130| 53 69 7a 65 29 0d 7b 0d | 09 48 61 6e 64 6c 65 20 |Size).{.|.Handle |
|00001140| 74 68 65 48 6e 64 6c 3b | 0d 09 0d 09 74 68 65 48 |theHndl;|....theH|
|00001150| 6e 64 6c 20 3d 20 4e 65 | 77 48 61 6e 64 6c 65 28 |ndl = Ne|wHandle(|
|00001160| 68 6e 64 6c 53 69 7a 65 | 29 3b 0d 09 69 66 20 28 |hndlSize|);..if (|
|00001170| 4d 65 6d 45 72 72 6f 72 | 28 29 21 3d 6e 6f 45 72 |MemError|()!=noEr|
|00001180| 72 29 0d 09 09 44 6f 45 | 72 72 6f 72 28 4d 65 6d |r)...DoE|rror(Mem|
|00001190| 45 72 72 6f 72 28 29 29 | 3b 0d 23 69 66 20 6b 44 |Error())|;.#if kD|
|000011a0| 45 42 55 47 0d 09 7b 0d | 09 09 6c 6f 6e 67 20 2a |EBUG..{.|..long *|
|000011b0| 2a 6c 6f 6e 67 48 6e 64 | 6c 20 3d 20 28 6c 6f 6e |*longHnd|l = (lon|
|000011c0| 67 20 2a 2a 29 74 68 65 | 48 6e 64 6c 3b 0d 09 09 |g **)the|Hndl;...|
|000011d0| 2a 2a 6c 6f 6e 67 48 6e | 64 6c 20 3d 20 6b 42 65 |**longHn|dl = kBe|
|000011e0| 74 74 65 72 42 75 73 45 | 72 72 3b 0d 09 7d 0d 23 |tterBusE|rr;..}.#|
|000011f0| 65 6e 64 69 66 0d 09 72 | 65 74 75 72 6e 20 74 68 |endif..r|eturn th|
|00001200| 65 48 6e 64 6c 3b 0d 7d | 0d 0d 0d 2f 2a 20 6d 65 |eHndl;.}|.../* me|
|00001210| 6d 6f 72 79 20 6d 61 6e | 61 67 65 72 20 44 69 73 |mory man|ager Dis|
|00001220| 70 6f 73 50 74 72 20 77 | 72 61 70 70 65 72 20 2a |posPtr w|rapper *|
|00001230| 2f 0d 0d 76 6f 69 64 20 | 44 69 73 70 6f 73 50 74 |/..void |DisposPt|
|00001240| 72 43 68 6b 28 76 6f 69 | 64 20 2a 74 68 65 50 74 |rChk(voi|d *thePt|
|00001250| 72 29 0d 7b 0d 23 69 66 | 20 6b 44 45 42 55 47 0d |r).{.#if| kDEBUG.|
|00001260| 09 7b 0d 09 09 6c 6f 6e | 67 20 2a 6c 6f 6e 67 50 |.{...lon|g *longP|
|00001270| 74 72 20 3d 20 28 6c 6f | 6e 67 20 2a 29 74 68 65 |tr = (lo|ng *)the|
|00001280| 50 74 72 3b 0d 09 09 2a | 6c 6f 6e 67 50 74 72 20 |Ptr;...*|longPtr |
|00001290| 3d 20 6b 42 65 74 74 65 | 72 42 75 73 45 72 72 3b |= kBette|rBusErr;|
|000012a0| 0d 09 7d 0d 23 65 6e 64 | 69 66 0d 0d 09 44 69 73 |..}.#end|if...Dis|
|000012b0| 70 6f 73 50 74 72 28 74 | 68 65 50 74 72 29 3b 0d |posPtr(t|hePtr);.|
|000012c0| 09 69 66 20 28 4d 65 6d | 45 72 72 6f 72 28 29 21 |.if (Mem|Error()!|
|000012d0| 3d 6e 6f 45 72 72 29 0d | 09 09 44 6f 45 72 72 6f |=noErr).|..DoErro|
|000012e0| 72 28 4d 65 6d 45 72 72 | 6f 72 28 29 29 3b 0d 7d |r(MemErr|or());.}|
|000012f0| 0d 0d 0d 2f 2a 20 6d 65 | 6d 6f 72 79 20 6d 61 6e |.../* me|mory man|
|00001300| 61 67 65 72 20 44 69 73 | 70 6f 73 48 61 6e 64 6c |ager Dis|posHandl|
|00001310| 65 20 77 72 61 70 70 65 | 72 20 2a 2f 0d 0d 76 6f |e wrappe|r */..vo|
|00001320| 69 64 20 44 69 73 70 6f | 73 48 61 6e 64 6c 65 43 |id Dispo|sHandleC|
|00001330| 68 6b 28 76 6f 69 64 20 | 2a 74 68 65 48 6e 64 6c |hk(void |*theHndl|
|00001340| 29 0d 7b 0d 23 69 66 20 | 6b 44 45 42 55 47 0d 09 |).{.#if |kDEBUG..|
|00001350| 7b 0d 09 09 6c 6f 6e 67 | 20 2a 2a 6c 6f 6e 67 48 |{...long| **longH|
|00001360| 6e 64 6c 20 3d 20 28 6c | 6f 6e 67 20 2a 2a 29 74 |ndl = (l|ong **)t|
|00001370| 68 65 48 6e 64 6c 3b 0d | 09 09 2a 2a 6c 6f 6e 67 |heHndl;.|..**long|
|00001380| 48 6e 64 6c 20 3d 20 6b | 42 65 74 74 65 72 42 75 |Hndl = k|BetterBu|
|00001390| 73 45 72 72 3b 0d 09 7d | 0d 23 65 6e 64 69 66 0d |sErr;..}|.#endif.|
|000013a0| 0d 09 44 69 73 70 6f 73 | 48 61 6e 64 6c 65 28 74 |..Dispos|Handle(t|
|000013b0| 68 65 48 6e 64 6c 29 3b | 0d 09 69 66 20 28 4d 65 |heHndl);|..if (Me|
|000013c0| 6d 45 72 72 6f 72 28 29 | 21 3d 6e 6f 45 72 72 29 |mError()|!=noErr)|
|000013d0| 0d 09 09 44 6f 45 72 72 | 6f 72 28 4d 65 6d 45 72 |...DoErr|or(MemEr|
|000013e0| 72 6f 72 28 29 29 3b 0d | 7d 0d 0d 0d 2f 2a 20 64 |ror());.|}.../* d|
|000013f0| 69 73 61 62 6c 65 73 20 | 61 6c 6c 20 6f 66 20 74 |isables |all of t|
|00001400| 68 65 20 6d 65 6e 75 73 | 20 69 6e 20 74 68 65 20 |he menus| in the |
|00001410| 6d 65 6e 75 62 61 72 20 | 2a 2f 0d 0d 76 6f 69 64 |menubar |*/..void|
|00001420| 20 44 69 73 61 62 6c 65 | 41 6c 6c 4d 65 6e 75 73 | Disable|AllMenus|
|00001430| 28 76 6f 69 64 29 0d 7b | 0d 09 4d 65 6e 75 48 61 |(void).{|..MenuHa|
|00001440| 6e 64 6c 65 20 74 68 65 | 4d 65 6e 75 3b 0d 09 73 |ndle the|Menu;..s|
|00001450| 68 6f 72 74 20 6d 65 6e | 75 49 6e 64 65 78 3b 0d |hort men|uIndex;.|
|00001460| 09 0d 09 66 6f 72 20 28 | 6d 65 6e 75 49 6e 64 65 |...for (|menuInde|
|00001470| 78 3d 6b 41 70 70 6c 65 | 4d 65 6e 75 2b 31 3b 20 |x=kApple|Menu+1; |
|00001480| 6d 65 6e 75 49 6e 64 65 | 78 3c 6b 41 70 70 6c 65 |menuInde|x<kApple|
|00001490| 4d 65 6e 75 2b 6b 4e 75 | 6d 4d 65 6e 75 73 3b 20 |Menu+kNu|mMenus; |
|000014a0| 6d 65 6e 75 49 6e 64 65 | 78 2b 2b 29 20 7b 0d 09 |menuInde|x++) {..|
|000014b0| 09 74 68 65 4d 65 6e 75 | 20 3d 20 47 65 74 4d 48 |.theMenu| = GetMH|
|000014c0| 61 6e 64 6c 65 28 6d 65 | 6e 75 49 6e 64 65 78 29 |andle(me|nuIndex)|
|000014d0| 3b 0d 09 09 44 69 73 61 | 62 6c 65 49 74 65 6d 28 |;...Disa|bleItem(|
|000014e0| 74 68 65 4d 65 6e 75 2c | 30 29 3b 0d 09 7d 0d 7d |theMenu,|0);..}.}|
|000014f0| 0d 0d 0d 2f 2a 20 65 6e | 61 62 6c 65 73 20 61 6c |.../* en|ables al|
|00001500| 6c 20 6f 66 20 74 68 65 | 20 6d 65 6e 75 73 20 69 |l of the| menus i|
|00001510| 6e 20 74 68 65 20 6d 65 | 6e 75 62 61 72 20 2a 2f |n the me|nubar */|
|00001520| 0d 0d 76 6f 69 64 20 45 | 6e 61 62 6c 65 41 6c 6c |..void E|nableAll|
|00001530| 4d 65 6e 75 49 74 65 6d | 73 28 4d 65 6e 75 48 61 |MenuItem|s(MenuHa|
|00001540| 6e 64 6c 65 20 74 68 65 | 4d 65 6e 75 29 0d 7b 0d |ndle the|Menu).{.|
|00001550| 09 73 68 6f 72 74 20 69 | 74 65 6d 49 6e 64 65 78 |.short i|temIndex|
|00001560| 2c 6e 75 6d 49 74 65 6d | 73 3b 0d 09 0d 09 6e 75 |,numItem|s;....nu|
|00001570| 6d 49 74 65 6d 73 20 3d | 20 43 6f 75 6e 74 4d 49 |mItems =| CountMI|
|00001580| 74 65 6d 73 28 74 68 65 | 4d 65 6e 75 29 3b 0d 09 |tems(the|Menu);..|
|00001590| 66 6f 72 20 28 69 74 65 | 6d 49 6e 64 65 78 3d 31 |for (ite|mIndex=1|
|000015a0| 3b 20 69 74 65 6d 49 6e | 64 65 78 3c 3d 6e 75 6d |; itemIn|dex<=num|
|000015b0| 49 74 65 6d 73 3b 20 69 | 74 65 6d 49 6e 64 65 78 |Items; i|temIndex|
|000015c0| 2b 2b 29 0d 09 09 45 6e | 61 62 6c 65 49 74 65 6d |++)...En|ableItem|
|000015d0| 28 74 68 65 4d 65 6e 75 | 2c 69 74 65 6d 49 6e 64 |(theMenu|,itemInd|
|000015e0| 65 78 29 3b 0d 09 45 6e | 61 62 6c 65 49 74 65 6d |ex);..En|ableItem|
|000015f0| 28 74 68 65 4d 65 6e 75 | 2c 30 29 3b 0d 7d 0d 0d |(theMenu|,0);.}..|
|00001600| 0d 2f 2a 20 73 65 74 73 | 20 75 70 20 6f 75 72 20 |./* sets| up our |
|00001610| 64 65 66 61 75 6c 74 20 | 6d 65 6e 75 20 73 74 61 |default |menu sta|
|00001620| 74 65 20 2a 2f 0d 0d 76 | 6f 69 64 20 53 65 74 44 |te */..v|oid SetD|
|00001630| 65 66 61 75 6c 74 4d 65 | 6e 75 73 28 76 6f 69 64 |efaultMe|nus(void|
|00001640| 29 0d 7b 0d 09 4d 65 6e | 75 48 61 6e 64 6c 65 20 |).{..Men|uHandle |
|00001650| 74 68 65 4d 65 6e 75 3b | 0d 09 09 0d 09 44 69 73 |theMenu;|.....Dis|
|00001660| 61 62 6c 65 41 6c 6c 4d | 65 6e 75 73 28 29 3b 0d |ableAllM|enus();.|
|00001670| 09 74 68 65 4d 65 6e 75 | 20 3d 20 47 65 74 4d 48 |.theMenu| = GetMH|
|00001680| 61 6e 64 6c 65 28 6b 46 | 69 6c 65 4d 65 6e 75 29 |andle(kF|ileMenu)|
|00001690| 3b 0d 09 45 6e 61 62 6c | 65 41 6c 6c 4d 65 6e 75 |;..Enabl|eAllMenu|
|000016a0| 49 74 65 6d 73 28 74 68 | 65 4d 65 6e 75 29 3b 0d |Items(th|eMenu);.|
|000016b0| 09 44 69 73 61 62 6c 65 | 49 74 65 6d 28 74 68 65 |.Disable|Item(the|
|000016c0| 4d 65 6e 75 2c 6b 43 6c | 6f 73 65 49 74 65 6d 29 |Menu,kCl|oseItem)|
|000016d0| 3b 0d 09 44 69 73 61 62 | 6c 65 49 74 65 6d 28 74 |;..Disab|leItem(t|
|000016e0| 68 65 4d 65 6e 75 2c 6b | 53 61 76 65 49 74 65 6d |heMenu,k|SaveItem|
|000016f0| 29 3b 0d 09 44 69 73 61 | 62 6c 65 49 74 65 6d 28 |);..Disa|bleItem(|
|00001700| 74 68 65 4d 65 6e 75 2c | 6b 53 61 76 65 41 73 49 |theMenu,|kSaveAsI|
|00001710| 74 65 6d 29 3b 0d 09 44 | 69 73 61 62 6c 65 49 74 |tem);..D|isableIt|
|00001720| 65 6d 28 74 68 65 4d 65 | 6e 75 2c 6b 50 61 67 65 |em(theMe|nu,kPage|
|00001730| 53 65 74 75 70 49 74 65 | 6d 29 3b 0d 09 44 69 73 |SetupIte|m);..Dis|
|00001740| 61 62 6c 65 49 74 65 6d | 28 74 68 65 4d 65 6e 75 |ableItem|(theMenu|
|00001750| 2c 6b 50 72 69 6e 74 49 | 74 65 6d 29 3b 0d 09 0d |,kPrintI|tem);...|
|00001760| 09 74 68 65 4d 65 6e 75 | 20 3d 20 47 65 74 4d 48 |.theMenu| = GetMH|
|00001770| 61 6e 64 6c 65 28 6b 45 | 64 69 74 4d 65 6e 75 29 |andle(kE|ditMenu)|
|00001780| 3b 0d 09 45 6e 61 62 6c | 65 41 6c 6c 4d 65 6e 75 |;..Enabl|eAllMenu|
|00001790| 49 74 65 6d 73 28 74 68 | 65 4d 65 6e 75 29 3b 0d |Items(th|eMenu);.|
|000017a0| 09 44 69 73 61 62 6c 65 | 49 74 65 6d 28 74 68 65 |.Disable|Item(the|
|000017b0| 4d 65 6e 75 2c 6b 55 6e | 64 6f 49 74 65 6d 29 3b |Menu,kUn|doItem);|
|000017c0| 0d 09 44 69 73 61 62 6c | 65 49 74 65 6d 28 74 68 |..Disabl|eItem(th|
|000017d0| 65 4d 65 6e 75 2c 6b 43 | 75 74 49 74 65 6d 29 3b |eMenu,kC|utItem);|
|000017e0| 0d 09 44 69 73 61 62 6c | 65 49 74 65 6d 28 74 68 |..Disabl|eItem(th|
|000017f0| 65 4d 65 6e 75 2c 6b 43 | 6f 70 79 49 74 65 6d 29 |eMenu,kC|opyItem)|
|00001800| 3b 0d 09 44 69 73 61 62 | 6c 65 49 74 65 6d 28 74 |;..Disab|leItem(t|
|00001810| 68 65 4d 65 6e 75 2c 6b | 50 61 73 74 65 49 74 65 |heMenu,k|PasteIte|
|00001820| 6d 29 3b 0d 09 44 69 73 | 61 62 6c 65 49 74 65 6d |m);..Dis|ableItem|
|00001830| 28 74 68 65 4d 65 6e 75 | 2c 6b 43 6c 65 61 72 49 |(theMenu|,kClearI|
|00001840| 74 65 6d 29 3b 0d 09 44 | 69 73 61 62 6c 65 49 74 |tem);..D|isableIt|
|00001850| 65 6d 28 74 68 65 4d 65 | 6e 75 2c 6b 53 65 6c 65 |em(theMe|nu,kSele|
|00001860| 63 74 41 6c 6c 49 74 65 | 6d 29 3b 0d 09 0d 09 74 |ctAllIte|m);....t|
|00001870| 68 65 4d 65 6e 75 20 3d | 20 47 65 74 4d 48 61 6e |heMenu =| GetMHan|
|00001880| 64 6c 65 28 6b 4d 61 69 | 6c 4d 65 6e 75 29 3b 0d |dle(kMai|lMenu);.|
|00001890| 09 45 6e 61 62 6c 65 41 | 6c 6c 4d 65 6e 75 49 74 |.EnableA|llMenuIt|
|000018a0| 65 6d 73 28 74 68 65 4d | 65 6e 75 29 3b 0d 09 44 |ems(theM|enu);..D|
|000018b0| 69 73 61 62 6c 65 49 74 | 65 6d 28 74 68 65 4d 65 |isableIt|em(theMe|
|000018c0| 6e 75 2c 6b 41 64 64 52 | 65 6d 4d 61 69 6c 49 74 |nu,kAddR|emMailIt|
|000018d0| 65 6d 29 3b 0d 09 44 69 | 73 61 62 6c 65 49 74 65 |em);..Di|sableIte|
|000018e0| 6d 28 74 68 65 4d 65 6e | 75 2c 6b 53 65 6e 64 49 |m(theMen|u,kSendI|
|000018f0| 74 65 6d 29 3b 0d 09 44 | 69 73 61 62 6c 65 49 74 |tem);..D|isableIt|
|00001900| 65 6d 28 74 68 65 4d 65 | 6e 75 2c 6b 52 65 70 6c |em(theMe|nu,kRepl|
|00001910| 79 49 74 65 6d 29 3b 0d | 09 44 69 73 61 62 6c 65 |yItem);.|.Disable|
|00001920| 49 74 65 6d 28 74 68 65 | 4d 65 6e 75 2c 6b 52 65 |Item(the|Menu,kRe|
|00001930| 70 6c 79 54 6f 41 6c 6c | 49 74 65 6d 29 3b 0d 09 |plyToAll|Item);..|
|00001940| 44 69 73 61 62 6c 65 49 | 74 65 6d 28 74 68 65 4d |DisableI|tem(theM|
|00001950| 65 6e 75 2c 6b 46 6f 72 | 77 61 72 64 49 74 65 6d |enu,kFor|wardItem|
|00001960| 29 3b 0d 09 44 69 73 61 | 62 6c 65 49 74 65 6d 28 |);..Disa|bleItem(|
|00001970| 74 68 65 4d 65 6e 75 2c | 6b 54 61 67 4c 65 74 74 |theMenu,|kTagLett|
|00001980| 65 72 49 74 65 6d 29 3b | 0d 0d 09 74 68 65 4d 65 |erItem);|...theMe|
|00001990| 6e 75 20 3d 20 47 65 74 | 4d 48 61 6e 64 6c 65 28 |nu = Get|MHandle(|
|000019a0| 6b 53 69 67 6e 4d 65 6e | 75 29 3b 0d 09 44 69 73 |kSignMen|u);..Dis|
|000019b0| 61 62 6c 65 49 74 65 6d | 28 74 68 65 4d 65 6e 75 |ableItem|(theMenu|
|000019c0| 2c 30 29 3b 0d 7d 0d 0d | 0d 2f 2a 20 73 65 74 73 |,0);.}..|./* sets|
|000019d0| 20 75 70 20 74 68 65 20 | 75 6e 64 6f 20 63 6f 6d | up the |undo com|
|000019e0| 6d 61 6e 64 20 2a 2f 0d | 0d 76 6f 69 64 20 53 65 |mand */.|.void Se|
|000019f0| 74 55 6e 64 6f 43 6f 6d | 6d 61 6e 64 28 57 69 6e |tUndoCom|mand(Win|
|00001a00| 64 6f 77 50 74 72 20 77 | 69 6e 64 6f 77 2c 57 49 |dowPtr w|indow,WI|
|00001a10| 6e 66 6f 50 74 72 20 69 | 6e 66 6f 50 74 72 2c 63 |nfoPtr i|nfoPtr,c|
|00001a20| 6f 6e 73 74 20 53 68 61 | 70 65 4c 69 73 74 20 2a |onst Sha|peList *|
|00001a30| 63 6f 6d 6d 61 6e 64 29 | 0d 7b 0d 09 67 43 61 6e |command)|.{..gCan|
|00001a40| 55 6e 64 6f 20 3d 20 74 | 72 75 65 3b 0d 09 67 48 |Undo = t|rue;..gH|
|00001a50| 61 73 55 6e 64 6f 20 3d | 20 66 61 6c 73 65 3b 0d |asUndo =| false;.|
|00001a60| 09 67 55 6e 64 6f 43 6f | 6d 6d 61 6e 64 2e 77 69 |.gUndoCo|mmand.wi|
|00001a70| 6e 64 6f 77 20 3d 20 77 | 69 6e 64 6f 77 3b 0d 09 |ndow = w|indow;..|
|00001a80| 67 55 6e 64 6f 43 6f 6d | 6d 61 6e 64 2e 74 68 65 |gUndoCom|mand.the|
|00001a90| 53 68 61 70 65 20 3d 20 | 2a 63 6f 6d 6d 61 6e 64 |Shape = |*command|
|00001aa0| 3b 0d 09 67 55 6e 64 6f | 43 6f 6d 6d 61 6e 64 2e |;..gUndo|Command.|
|00001ab0| 77 69 6e 64 6f 77 52 65 | 66 43 6f 75 6e 74 20 3d |windowRe|fCount =|
|00001ac0| 20 69 6e 66 6f 50 74 72 | 2d 3e 72 65 66 43 6f 75 | infoPtr|->refCou|
|00001ad0| 6e 74 3b 0d 7d 0d 0d 0d | 2f 2a 20 63 6c 65 61 72 |nt;.}...|/* clear|
|00001ae0| 73 20 74 68 65 20 75 6e | 64 6f 20 63 6f 6d 6d 61 |s the un|do comma|
|00001af0| 6e 64 20 2a 2f 0d 0d 76 | 6f 69 64 20 43 6c 65 61 |nd */..v|oid Clea|
|00001b00| 72 41 70 70 55 6e 64 6f | 28 76 6f 69 64 29 0d 7b |rAppUndo|(void).{|
|00001b10| 0d 09 67 43 61 6e 55 6e | 64 6f 20 3d 20 66 61 6c |..gCanUn|do = fal|
|00001b20| 73 65 3b 0d 09 67 48 61 | 73 55 6e 64 6f 20 3d 20 |se;..gHa|sUndo = |
|00001b30| 66 61 6c 73 65 3b 0d 7d | 0d 0d 0d 2f 2a 20 73 65 |false;.}|.../* se|
|00001b40| 74 73 20 74 68 65 20 75 | 6e 64 6f 20 73 74 72 69 |ts the u|ndo stri|
|00001b50| 6e 67 20 74 6f 20 74 68 | 65 20 61 70 70 72 6f 70 |ng to th|e approp|
|00001b60| 72 69 61 74 65 20 63 6f | 6d 6d 61 6e 64 2c 20 69 |riate co|mmand, i|
|00001b70| 66 20 61 70 70 6c 69 63 | 61 62 6c 65 20 2a 2f 0d |f applic|able */.|
|00001b80| 0d 42 6f 6f 6c 65 61 6e | 20 53 65 74 75 70 41 70 |.Boolean| SetupAp|
|00001b90| 70 55 6e 64 6f 28 76 6f | 69 64 29 0d 7b 0d 09 69 |pUndo(vo|id).{..i|
|00001ba0| 66 20 28 67 43 61 6e 55 | 6e 64 6f 29 0d 09 09 72 |f (gCanU|ndo)...r|
|00001bb0| 65 74 75 72 6e 20 53 65 | 74 55 6e 64 6f 53 74 72 |eturn Se|tUndoStr|
|00001bc0| 69 6e 67 28 67 55 6e 64 | 6f 43 6f 6d 6d 61 6e 64 |ing(gUnd|oCommand|
|00001bd0| 2e 74 68 65 53 68 61 70 | 65 2e 73 68 61 70 65 54 |.theShap|e.shapeT|
|00001be0| 79 70 65 2c 67 48 61 73 | 55 6e 64 6f 29 3b 0d 09 |ype,gHas|Undo);..|
|00001bf0| 65 6c 73 65 0d 09 09 72 | 65 74 75 72 6e 20 53 65 |else...r|eturn Se|
|00001c00| 74 55 6e 64 6f 53 74 72 | 69 6e 67 28 30 2c 66 61 |tUndoStr|ing(0,fa|
|00001c10| 6c 73 65 29 3b 0d 7d 0d | 0d 0d 2f 2a 20 73 65 74 |lse);.}.|../* set|
|00001c20| 73 20 74 68 65 20 75 6e | 64 6f 20 73 74 72 69 6e |s the un|do strin|
|00001c30| 67 20 74 6f 20 74 68 65 | 20 61 70 70 72 6f 70 72 |g to the| appropr|
|00001c40| 69 61 74 65 20 63 6f 6d | 6d 61 6e 64 20 2a 2f 0d |iate com|mand */.|
|00001c50| 0d 42 6f 6f 6c 65 61 6e | 20 53 65 74 55 6e 64 6f |.Boolean| SetUndo|
|00001c60| 53 74 72 69 6e 67 28 73 | 68 6f 72 74 20 63 6f 6d |String(s|hort com|
|00001c70| 6d 61 6e 64 49 44 2c 42 | 6f 6f 6c 65 61 6e 20 72 |mandID,B|oolean r|
|00001c80| 65 64 6f 46 6c 61 67 29 | 0d 7b 0d 09 53 74 72 32 |edoFlag)|.{..Str2|
|00001c90| 35 35 20 75 6e 64 6f 53 | 74 72 69 6e 67 3b 0d 09 |55 undoS|tring;..|
|00001ca0| 4d 65 6e 75 48 61 6e 64 | 6c 65 20 74 68 65 4d 65 |MenuHand|le theMe|
|00001cb0| 6e 75 3b 0d 09 57 49 6e | 66 6f 48 6e 64 6c 20 69 |nu;..WIn|foHndl i|
|00001cc0| 6e 66 6f 48 6e 64 6c 3b | 0d 09 0d 09 69 66 20 28 |nfoHndl;|....if (|
|00001cd0| 72 65 64 6f 46 6c 61 67 | 29 20 7b 0d 09 09 73 77 |redoFlag|) {...sw|
|00001ce0| 69 74 63 68 20 28 63 6f | 6d 6d 61 6e 64 49 44 29 |itch (co|mmandID)|
|00001cf0| 20 7b 0d 09 09 09 63 61 | 73 65 20 6b 4c 69 6e 65 | {....ca|se kLine|
|00001d00| 53 68 61 70 65 3a 0d 09 | 09 09 09 47 65 74 52 65 |Shape:..|...GetRe|
|00001d10| 73 53 74 72 69 6e 67 28 | 75 6e 64 6f 53 74 72 69 |sString(|undoStri|
|00001d20| 6e 67 2c 6b 52 65 64 6f | 4c 69 6e 65 49 44 2c 6b |ng,kRedo|LineID,k|
|00001d30| 52 65 64 6f 4c 69 6e 65 | 29 3b 0d 09 09 09 09 62 |RedoLine|);.....b|
|00001d40| 72 65 61 6b 3b 0d 09 09 | 09 63 61 73 65 20 6b 52 |reak;...|.case kR|
|00001d50| 65 63 74 53 68 61 70 65 | 3a 0d 09 09 09 09 47 65 |ectShape|:.....Ge|
|00001d60| 74 52 65 73 53 74 72 69 | 6e 67 28 75 6e 64 6f 53 |tResStri|ng(undoS|
|00001d70| 74 72 69 6e 67 2c 6b 52 | 65 64 6f 52 65 63 74 49 |tring,kR|edoRectI|
|00001d80| 44 2c 6b 52 65 64 6f 52 | 65 63 74 29 3b 0d 09 09 |D,kRedoR|ect);...|
|00001d90| 09 09 62 72 65 61 6b 3b | 0d 09 09 09 63 61 73 65 |..break;|....case|
|00001da0| 20 6b 52 6f 75 6e 64 52 | 65 63 74 53 68 61 70 65 | kRoundR|ectShape|
|00001db0| 3a 0d 09 09 09 09 47 65 | 74 52 65 73 53 74 72 69 |:.....Ge|tResStri|
|00001dc0| 6e 67 28 75 6e 64 6f 53 | 74 72 69 6e 67 2c 6b 52 |ng(undoS|tring,kR|
|00001dd0| 65 64 6f 52 6f 75 6e 64 | 52 65 63 74 49 44 2c 6b |edoRound|RectID,k|
|00001de0| 52 65 64 6f 52 6f 75 6e | 64 52 65 63 74 29 3b 0d |RedoRoun|dRect);.|
|00001df0| 09 09 09 09 62 72 65 61 | 6b 3b 0d 09 09 09 63 61 |....brea|k;....ca|
|00001e00| 73 65 20 6b 4f 76 61 6c | 53 68 61 70 65 3a 0d 09 |se kOval|Shape:..|
|00001e10| 09 09 09 47 65 74 52 65 | 73 53 74 72 69 6e 67 28 |...GetRe|sString(|
|00001e20| 75 6e 64 6f 53 74 72 69 | 6e 67 2c 6b 52 65 64 6f |undoStri|ng,kRedo|
|00001e30| 4f 76 61 6c 49 44 2c 6b | 52 65 64 6f 4f 76 61 6c |OvalID,k|RedoOval|
|00001e40| 29 3b 0d 09 09 09 09 62 | 72 65 61 6b 3b 0d 09 09 |);.....b|reak;...|
|00001e50| 7d 0d 09 7d 0d 09 65 6c | 73 65 20 7b 0d 09 09 73 |}..}..el|se {...s|
|00001e60| 77 69 74 63 68 20 28 63 | 6f 6d 6d 61 6e 64 49 44 |witch (c|ommandID|
|00001e70| 29 20 7b 0d 09 09 09 63 | 61 73 65 20 30 3a 0d 09 |) {....c|ase 0:..|
|00001e80| 09 09 09 47 65 74 52 65 | 73 53 74 72 69 6e 67 28 |...GetRe|sString(|
|00001e90| 75 6e 64 6f 53 74 72 69 | 6e 67 2c 6b 55 6e 64 6f |undoStri|ng,kUndo|
|00001ea0| 53 74 72 69 6e 67 49 44 | 2c 6b 55 6e 64 6f 53 74 |StringID|,kUndoSt|
|00001eb0| 72 69 6e 67 29 3b 0d 09 | 09 09 09 62 72 65 61 6b |ring);..|...break|
|00001ec0| 3b 0d 09 09 09 63 61 73 | 65 20 6b 4c 69 6e 65 53 |;....cas|e kLineS|
|00001ed0| 68 61 70 65 3a 0d 09 09 | 09 09 47 65 74 52 65 73 |hape:...|..GetRes|
|00001ee0| 53 74 72 69 6e 67 28 75 | 6e 64 6f 53 74 72 69 6e |String(u|ndoStrin|
|00001ef0| 67 2c 6b 55 6e 64 6f 4c | 69 6e 65 49 44 2c 6b 55 |g,kUndoL|ineID,kU|
|00001f00| 6e 64 6f 4c 69 6e 65 29 | 3b 0d 09 09 09 09 62 72 |ndoLine)|;.....br|
|00001f10| 65 61 6b 3b 0d 09 09 09 | 63 61 73 65 20 6b 52 65 |eak;....|case kRe|
|00001f20| 63 74 53 68 61 70 65 3a | 0d 09 09 09 09 47 65 74 |ctShape:|.....Get|
|00001f30| 52 65 73 53 74 72 69 6e | 67 28 75 6e 64 6f 53 74 |ResStrin|g(undoSt|
|00001f40| 72 69 6e 67 2c 6b 55 6e | 64 6f 52 65 63 74 49 44 |ring,kUn|doRectID|
|00001f50| 2c 6b 55 6e 64 6f 52 65 | 63 74 29 3b 0d 09 09 09 |,kUndoRe|ct);....|
|00001f60| 09 62 72 65 61 6b 3b 0d | 09 09 09 63 61 73 65 20 |.break;.|...case |
|00001f70| 6b 52 6f 75 6e 64 52 65 | 63 74 53 68 61 70 65 3a |kRoundRe|ctShape:|
|00001f80| 0d 09 09 09 09 47 65 74 | 52 65 73 53 74 72 69 6e |.....Get|ResStrin|
|00001f90| 67 28 75 6e 64 6f 53 74 | 72 69 6e 67 2c 6b 55 6e |g(undoSt|ring,kUn|
|00001fa0| 64 6f 52 6f 75 6e 64 52 | 65 63 74 49 44 2c 6b 55 |doRoundR|ectID,kU|
|00001fb0| 6e 64 6f 52 6f 75 6e 64 | 52 65 63 74 29 3b 0d 09 |ndoRound|Rect);..|
|00001fc0| 09 09 09 62 72 65 61 6b | 3b 0d 09 09 09 63 61 73 |...break|;....cas|
|00001fd0| 65 20 6b 4f 76 61 6c 53 | 68 61 70 65 3a 0d 09 09 |e kOvalS|hape:...|
|00001fe0| 09 09 47 65 74 52 65 73 | 53 74 72 69 6e 67 28 75 |..GetRes|String(u|
|00001ff0| 6e 64 6f 53 74 72 69 6e | 67 2c 6b 55 6e 64 6f 4f |ndoStrin|g,kUndoO|
|00002000| 76 61 6c 49 44 2c 6b 55 | 6e 64 6f 4f 76 61 6c 29 |valID,kU|ndoOval)|
|00002010| 3b 0d 09 09 09 09 62 72 | 65 61 6b 3b 0d 09 09 7d |;.....br|eak;...}|
|00002020| 0d 09 7d 0d 09 0d 09 74 | 68 65 4d 65 6e 75 20 3d |..}....t|heMenu =|
|00002030| 20 47 65 74 4d 48 61 6e | 64 6c 65 28 6b 45 64 69 | GetMHan|dle(kEdi|
|00002040| 74 4d 65 6e 75 29 3b 0d | 09 53 65 74 49 74 65 6d |tMenu);.|.SetItem|
|00002050| 28 74 68 65 4d 65 6e 75 | 2c 6b 55 6e 64 6f 49 74 |(theMenu|,kUndoIt|
|00002060| 65 6d 2c 75 6e 64 6f 53 | 74 72 69 6e 67 29 3b 0d |em,undoS|tring);.|
|00002070| 0d 09 69 66 20 28 4d 79 | 46 72 6f 6e 74 57 69 6e |..if (My|FrontWin|
|00002080| 64 6f 77 28 29 29 0d 09 | 09 69 6e 66 6f 48 6e 64 |dow())..|.infoHnd|
|00002090| 6c 20 3d 20 47 65 74 57 | 69 6e 64 6f 77 49 6e 66 |l = GetW|indowInf|
|000020a0| 6f 28 4d 79 46 72 6f 6e | 74 57 69 6e 64 6f 77 28 |o(MyFron|tWindow(|
|000020b0| 29 29 3b 0d 09 0d 09 69 | 66 20 28 67 43 61 6e 55 |));....i|f (gCanU|
|000020c0| 6e 64 6f 20 26 26 20 4d | 79 46 72 6f 6e 74 57 69 |ndo && M|yFrontWi|
|000020d0| 6e 64 6f 77 28 29 20 26 | 26 20 28 28 2a 2a 69 6e |ndow() &|& ((**in|
|000020e0| 66 6f 48 6e 64 6c 29 2e | 72 65 66 43 6f 75 6e 74 |foHndl).|refCount|
|000020f0| 3d 3d 67 55 6e 64 6f 43 | 6f 6d 6d 61 6e 64 2e 77 |==gUndoC|ommand.w|
|00002100| 69 6e 64 6f 77 52 65 66 | 43 6f 75 6e 74 29 20 26 |indowRef|Count) &|
|00002110| 26 0d 09 09 09 63 6f 6d | 6d 61 6e 64 49 44 21 3d |&....com|mandID!=|
|00002120| 30 29 20 7b 0d 09 09 45 | 6e 61 62 6c 65 49 74 65 |0) {...E|nableIte|
|00002130| 6d 28 74 68 65 4d 65 6e | 75 2c 6b 55 6e 64 6f 49 |m(theMen|u,kUndoI|
|00002140| 74 65 6d 29 3b 0d 09 09 | 72 65 74 75 72 6e 20 74 |tem);...|return t|
|00002150| 72 75 65 3b 0d 09 7d 0d | 09 65 6c 73 65 20 7b 0d |rue;..}.|.else {.|
|00002160| 09 09 44 69 73 61 62 6c | 65 49 74 65 6d 28 74 68 |..Disabl|eItem(th|
|00002170| 65 4d 65 6e 75 2c 6b 55 | 6e 64 6f 49 74 65 6d 29 |eMenu,kU|ndoItem)|
|00002180| 3b 0d 09 09 72 65 74 75 | 72 6e 20 66 61 6c 73 65 |;...retu|rn false|
|00002190| 3b 0d 09 7d 0d 7d 0d 0d | 0d 2f 2a 20 72 65 61 64 |;..}.}..|./* read|
|000021a0| 20 6f 75 72 20 70 72 65 | 66 73 20 67 6c 6f 62 61 | our pre|fs globa|
|000021b0| 6c 20 66 72 6f 6d 20 64 | 69 73 6b 20 2a 2f 0d 0d |l from d|isk */..|
|000021c0| 76 6f 69 64 20 52 65 61 | 64 50 72 65 66 73 28 76 |void Rea|dPrefs(v|
|000021d0| 6f 69 64 29 0d 7b 0d 09 | 46 53 53 70 65 63 20 70 |oid).{..|FSSpec p|
|000021e0| 72 65 66 73 53 70 65 63 | 3b 0d 09 73 68 6f 72 74 |refsSpec|;..short|
|000021f0| 20 72 65 66 4e 75 6d 3b | 0d 09 6c 6f 6e 67 20 63 | refNum;|..long c|
|00002200| 6f 75 6e 74 3b 0d 09 4f | 53 45 72 72 20 65 72 72 |ount;..O|SErr err|
|00002210| 3b 0d 09 0d 09 72 65 66 | 4e 75 6d 20 3d 20 30 3b |;....ref|Num = 0;|
|00002220| 0d 09 0d 09 47 65 74 50 | 72 65 66 73 46 6f 6c 64 |....GetP|refsFold|
|00002230| 65 72 28 26 70 72 65 66 | 73 53 70 65 63 29 3b 0d |er(&pref|sSpec);.|
|00002240| 09 65 72 72 20 3d 20 46 | 53 70 4f 70 65 6e 44 46 |.err = F|SpOpenDF|
|00002250| 28 26 70 72 65 66 73 53 | 70 65 63 2c 66 73 52 64 |(&prefsS|pec,fsRd|
|00002260| 50 65 72 6d 2c 26 72 65 | 66 4e 75 6d 29 3b 0d 09 |Perm,&re|fNum);..|
|00002270| 69 66 20 28 65 72 72 21 | 3d 6e 6f 45 72 72 29 20 |if (err!|=noErr) |
|00002280| 7b 0d 09 09 65 72 72 20 | 3d 20 46 53 70 43 72 65 |{...err |= FSpCre|
|00002290| 61 74 65 28 26 70 72 65 | 66 73 53 70 65 63 2c 6b |ate(&pre|fsSpec,k|
|000022a0| 41 70 70 43 72 65 61 74 | 6f 72 2c 6b 50 72 65 66 |AppCreat|or,kPref|
|000022b0| 73 54 79 70 65 2c 73 6d | 52 6f 6d 61 6e 29 3b 0d |sType,sm|Roman);.|
|000022c0| 09 09 69 66 20 28 65 72 | 72 3d 3d 6e 6f 45 72 72 |..if (er|r==noErr|
|000022d0| 29 0d 09 09 09 65 72 72 | 20 3d 20 46 53 70 4f 70 |)....err| = FSpOp|
|000022e0| 65 6e 44 46 28 26 70 72 | 65 66 73 53 70 65 63 2c |enDF(&pr|efsSpec,|
|000022f0| 66 73 52 64 50 65 72 6d | 2c 26 72 65 66 4e 75 6d |fsRdPerm|,&refNum|
|00002300| 29 3b 0d 09 7d 0d 09 0d | 09 69 66 20 28 65 72 72 |);..}...|.if (err|
|00002310| 3d 3d 6e 6f 45 72 72 29 | 20 7b 0d 09 09 63 6f 75 |==noErr)| {...cou|
|00002320| 6e 74 20 3d 20 73 69 7a | 65 6f 66 28 4d 79 50 72 |nt = siz|eof(MyPr|
|00002330| 65 66 65 72 65 6e 63 65 | 73 29 3b 0d 09 09 65 72 |eference|s);...er|
|00002340| 72 20 3d 20 46 53 52 65 | 61 64 28 72 65 66 4e 75 |r = FSRe|ad(refNu|
|00002350| 6d 2c 26 63 6f 75 6e 74 | 2c 26 67 50 72 65 66 65 |m,&count|,&gPrefe|
|00002360| 72 65 6e 63 65 73 29 3b | 0d 09 09 69 66 20 28 65 |rences);|...if (e|
|00002370| 72 72 3d 3d 6e 6f 45 72 | 72 20 26 26 20 67 50 72 |rr==noEr|r && gPr|
|00002380| 65 66 65 72 65 6e 63 65 | 73 2e 76 65 72 73 69 6f |eference|s.versio|
|00002390| 6e 21 3d 6b 50 72 65 66 | 73 56 65 72 73 69 6f 6e |n!=kPref|sVersion|
|000023a0| 29 0d 09 09 09 65 72 72 | 20 3d 20 2d 31 3b 0d 09 |)....err| = -1;..|
|000023b0| 7d 0d 09 0d 09 69 66 20 | 28 65 72 72 21 3d 6e 6f |}....if |(err!=no|
|000023c0| 45 72 72 29 20 7b 0d 09 | 0d 09 09 2f 2f 20 73 65 |Err) {..|...// se|
|000023d0| 74 20 64 65 66 61 75 6c | 74 20 70 72 65 66 65 72 |t defaul|t prefer|
|000023e0| 65 6e 63 65 73 0d 09 09 | 0d 09 09 67 50 72 65 66 |ences...|...gPref|
|000023f0| 65 72 65 6e 63 65 73 2e | 76 65 72 73 69 6f 6e 20 |erences.|version |
|00002400| 3d 20 6b 50 72 65 66 73 | 56 65 72 73 69 6f 6e 3b |= kPrefs|Version;|
|00002410| 0d 09 09 67 50 72 65 66 | 65 72 65 6e 63 65 73 2e |...gPref|erences.|
|00002420| 73 65 6e 64 4f 70 74 69 | 6f 6e 73 2e 73 69 67 6e |sendOpti|ons.sign|
|00002430| 57 68 65 6e 53 65 6e 74 | 20 3d 20 66 61 6c 73 65 |WhenSent| = false|
|00002440| 3b 0d 09 09 67 50 72 65 | 66 65 72 65 6e 63 65 73 |;...gPre|ferences|
|00002450| 2e 73 65 6e 64 4f 70 74 | 69 6f 6e 73 2e 70 72 69 |.sendOpt|ions.pri|
|00002460| 6f 72 69 74 79 20 3d 20 | 6b 49 50 4d 4e 6f 72 6d |ority = |kIPMNorm|
|00002470| 61 6c 50 72 69 6f 72 69 | 74 79 3b 0d 09 09 67 50 |alPriori|ty;...gP|
|00002480| 72 65 66 65 72 65 6e 63 | 65 73 2e 63 6c 6f 73 65 |referenc|es.close|
|00002490| 4f 70 74 69 6f 6e 73 2e | 6d 6f 76 65 54 6f 54 72 |Options.|moveToTr|
|000024a0| 61 73 68 20 3d 20 66 61 | 6c 73 65 3b 0d 09 09 67 |ash = fa|lse;...g|
|000024b0| 50 72 65 66 65 72 65 6e | 63 65 73 2e 63 6c 6f 73 |Preferen|ces.clos|
|000024c0| 65 4f 70 74 69 6f 6e 73 | 2e 61 64 64 54 61 67 20 |eOptions|.addTag |
|000024d0| 3d 20 66 61 6c 73 65 3b | 0d 09 09 67 50 72 65 66 |= false;|...gPref|
|000024e0| 65 72 65 6e 63 65 73 2e | 63 6c 6f 73 65 4f 70 74 |erences.|closeOpt|
|000024f0| 69 6f 6e 73 2e 74 61 67 | 2e 64 61 74 61 4c 65 6e |ions.tag|.dataLen|
|00002500| 67 74 68 20 3d 20 30 3b | 0d 09 09 67 50 72 65 66 |gth = 0;|...gPref|
|00002510| 65 72 65 6e 63 65 73 2e | 73 65 6e 64 46 6f 72 6d |erences.|sendForm|
|00002520| 61 74 2e 77 68 69 63 68 | 46 6f 72 6d 61 74 73 20 |at.which|Formats |
|00002530| 3d 20 6b 53 4d 50 4e 61 | 74 69 76 65 4d 61 73 6b |= kSMPNa|tiveMask|
|00002540| 20 7c 20 6b 53 4d 50 53 | 74 61 6e 64 61 72 64 49 | | kSMPS|tandardI|
|00002550| 6e 74 65 72 63 68 61 6e | 67 65 4d 61 73 6b 3b 0d |nterchan|geMask;.|
|00002560| 09 09 67 50 72 65 66 65 | 72 65 6e 63 65 73 2e 73 |..gPrefe|rences.s|
|00002570| 65 6e 64 46 6f 72 6d 61 | 74 2e 77 68 69 63 68 4e |endForma|t.whichN|
|00002580| 61 74 69 76 65 46 6f 72 | 6d 61 74 20 3d 20 30 3b |ativeFor|mat = 0;|
|00002590| 0d 09 09 67 50 72 65 66 | 65 72 65 6e 63 65 73 2e |...gPref|erences.|
|000025a0| 63 6c 6f 73 65 4f 6e 53 | 65 6e 64 20 3d 20 66 61 |closeOnS|end = fa|
|000025b0| 6c 73 65 3b 0d 09 09 67 | 50 72 65 66 65 72 65 6e |lse;...g|Preferen|
|000025c0| 63 65 73 2e 63 6c 6f 73 | 65 4f 70 74 69 6f 6e 73 |ces.clos|eOptions|
|000025d0| 44 69 61 6c 6f 67 20 3d | 20 74 72 75 65 3b 0d 09 |Dialog =| true;..|
|000025e0| 09 67 50 72 65 66 65 72 | 65 6e 63 65 73 2e 65 78 |.gPrefer|ences.ex|
|000025f0| 70 61 6e 64 4f 6e 43 72 | 65 61 74 65 20 3d 20 74 |pandOnCr|eate = t|
|00002600| 72 75 65 3b 0d 09 09 67 | 50 72 65 66 65 72 65 6e |rue;...g|Preferen|
|00002610| 63 65 73 2e 65 78 70 61 | 6e 64 4f 6e 4f 70 65 6e |ces.expa|ndOnOpen|
|00002620| 20 3d 20 66 61 6c 73 65 | 3b 0d 09 7d 0d 09 0d 09 | = false|;..}....|
|00002630| 69 66 20 28 72 65 66 4e | 75 6d 21 3d 30 29 0d 09 |if (refN|um!=0)..|
|00002640| 09 46 53 43 6c 6f 73 65 | 28 72 65 66 4e 75 6d 29 |.FSClose|(refNum)|
|00002650| 3b 0d 7d 0d 0d 0d 2f 2a | 20 77 72 69 74 65 20 6f |;.}.../*| write o|
|00002660| 75 72 20 70 72 65 66 73 | 20 67 6c 6f 62 61 6c 20 |ur prefs| global |
|00002670| 74 6f 20 64 69 73 6b 20 | 2a 2f 0d 0d 76 6f 69 64 |to disk |*/..void|
|00002680| 20 57 72 69 74 65 50 72 | 65 66 73 28 76 6f 69 64 | WritePr|efs(void|
|00002690| 29 0d 7b 0d 09 46 53 53 | 70 65 63 20 70 72 65 66 |).{..FSS|pec pref|
|000026a0| 73 53 70 65 63 3b 0d 09 | 73 68 6f 72 74 20 72 65 |sSpec;..|short re|
|000026b0| 66 4e 75 6d 3b 0d 09 6c | 6f 6e 67 20 63 6f 75 6e |fNum;..l|ong coun|
|000026c0| 74 3b 0d 09 4f 53 45 72 | 72 20 65 72 72 3b 0d 09 |t;..OSEr|r err;..|
|000026d0| 0d 09 47 65 74 50 72 65 | 66 73 46 6f 6c 64 65 72 |..GetPre|fsFolder|
|000026e0| 28 26 70 72 65 66 73 53 | 70 65 63 29 3b 0d 09 0d |(&prefsS|pec);...|
|000026f0| 09 72 65 66 4e 75 6d 20 | 3d 20 30 3b 0d 09 0d 09 |.refNum |= 0;....|
|00002700| 65 72 72 20 3d 20 46 53 | 70 4f 70 65 6e 44 46 28 |err = FS|pOpenDF(|
|00002710| 26 70 72 65 66 73 53 70 | 65 63 2c 66 73 52 64 57 |&prefsSp|ec,fsRdW|
|00002720| 72 50 65 72 6d 2c 26 72 | 65 66 4e 75 6d 29 3b 0d |rPerm,&r|efNum);.|
|00002730| 09 69 66 20 28 65 72 72 | 21 3d 6e 6f 45 72 72 29 |.if (err|!=noErr)|
|00002740| 20 7b 0d 09 09 65 72 72 | 20 3d 20 46 53 70 43 72 | {...err| = FSpCr|
|00002750| 65 61 74 65 28 26 70 72 | 65 66 73 53 70 65 63 2c |eate(&pr|efsSpec,|
|00002760| 6b 41 70 70 43 72 65 61 | 74 6f 72 2c 6b 50 72 65 |kAppCrea|tor,kPre|
|00002770| 66 73 54 79 70 65 2c 73 | 6d 52 6f 6d 61 6e 29 3b |fsType,s|mRoman);|
|00002780| 0d 09 09 69 66 20 28 65 | 72 72 3d 3d 6e 6f 45 72 |...if (e|rr==noEr|
|00002790| 72 29 0d 09 09 09 65 72 | 72 20 3d 20 46 53 70 4f |r)....er|r = FSpO|
|000027a0| 70 65 6e 44 46 28 26 70 | 72 65 66 73 53 70 65 63 |penDF(&p|refsSpec|
|000027b0| 2c 66 73 52 64 57 72 50 | 65 72 6d 2c 26 72 65 66 |,fsRdWrP|erm,&ref|
|000027c0| 4e 75 6d 29 3b 0d 09 7d | 0d 0d 09 69 66 20 28 65 |Num);..}|...if (e|
|000027d0| 72 72 3d 3d 6e 6f 45 72 | 72 29 20 7b 0d 09 09 63 |rr==noEr|r) {...c|
|000027e0| 6f 75 6e 74 20 20 3d 20 | 73 69 7a 65 6f 66 28 4d |ount = |sizeof(M|
|000027f0| 79 50 72 65 66 65 72 65 | 6e 63 65 73 29 3b 0d 09 |yPrefere|nces);..|
|00002800| 09 65 72 72 20 3d 20 46 | 53 57 72 69 74 65 28 72 |.err = F|SWrite(r|
|00002810| 65 66 4e 75 6d 2c 26 63 | 6f 75 6e 74 2c 26 67 50 |efNum,&c|ount,&gP|
|00002820| 72 65 66 65 72 65 6e 63 | 65 73 29 3b 0d 09 7d 0d |referenc|es);..}.|
|00002830| 09 0d 09 69 66 20 28 72 | 65 66 4e 75 6d 21 3d 30 |...if (r|efNum!=0|
|00002840| 29 0d 09 09 46 53 43 6c | 6f 73 65 28 72 65 66 4e |)...FSCl|ose(refN|
|00002850| 75 6d 29 3b 0d 7d 0d 0d | 0d 2f 2a 20 67 65 74 20 |um);.}..|./* get |
|00002860| 74 68 65 20 66 6f 6c 64 | 65 72 20 74 68 65 20 70 |the fold|er the p|
|00002870| 72 65 66 73 20 66 69 6c | 65 20 69 73 20 69 6e 20 |refs fil|e is in |
|00002880| 2a 2f 0d 0d 76 6f 69 64 | 20 47 65 74 50 72 65 66 |*/..void| GetPref|
|00002890| 73 46 6f 6c 64 65 72 28 | 46 53 53 70 65 63 20 2a |sFolder(|FSSpec *|
|000028a0| 66 53 70 65 63 29 0d 7b | 0d 09 6c 6f 6e 67 20 67 |fSpec).{|..long g|
|000028b0| 65 73 74 52 65 73 70 6f | 6e 73 65 3b 0d 09 53 79 |estRespo|nse;..Sy|
|000028c0| 73 45 6e 76 52 65 63 20 | 73 79 73 45 6e 76 3b 0d |sEnvRec |sysEnv;.|
|000028d0| 09 57 44 50 42 52 65 63 | 20 70 42 6c 6f 63 6b 3b |.WDPBRec| pBlock;|
|000028e0| 0d 09 53 74 72 32 35 35 | 20 66 4e 61 6d 65 3b 0d |..Str255| fName;.|
|000028f0| 09 4f 53 45 72 72 20 65 | 72 72 3b 0d 09 0d 09 65 |.OSErr e|rr;....e|
|00002900| 72 72 20 3d 20 2d 31 3b | 0d 09 0d 09 2f 2f 20 74 |rr = -1;|....// t|
|00002910| 68 65 20 6e 65 77 20 73 | 79 73 74 65 6d 20 37 20 |he new s|ystem 7 |
|00002920| 77 61 79 0d 09 0d 09 69 | 66 20 28 54 72 61 70 41 |way....i|f (TrapA|
|00002930| 76 61 69 6c 61 62 6c 65 | 28 5f 47 65 73 74 61 6c |vailable|(_Gestal|
|00002940| 74 29 20 26 26 20 0d 09 | 09 28 47 65 73 74 61 6c |t) && ..|.(Gestal|
|00002950| 74 28 67 65 73 74 61 6c | 74 46 69 6e 64 46 6f 6c |t(gestal|tFindFol|
|00002960| 64 65 72 41 74 74 72 2c | 26 67 65 73 74 52 65 73 |derAttr,|&gestRes|
|00002970| 70 6f 6e 73 65 29 3d 3d | 6e 6f 45 72 72 29 20 26 |ponse)==|noErr) &|
|00002980| 26 0d 09 09 28 67 65 73 | 74 52 65 73 70 6f 6e 73 |&...(ges|tRespons|
|00002990| 65 20 26 26 20 28 31 3c | 3c 67 65 73 74 61 6c 74 |e && (1<|<gestalt|
|000029a0| 46 69 6e 64 46 6f 6c 64 | 65 72 50 72 65 73 65 6e |FindFold|erPresen|
|000029b0| 74 29 29 29 20 7b 0d 09 | 09 09 65 72 72 20 3d 20 |t))) {..|..err = |
|000029c0| 46 69 6e 64 46 6f 6c 64 | 65 72 28 6b 4f 6e 53 79 |FindFold|er(kOnSy|
|000029d0| 73 74 65 6d 44 69 73 6b | 2c 6b 50 72 65 66 65 72 |stemDisk|,kPrefer|
|000029e0| 65 6e 63 65 73 46 6f 6c | 64 65 72 54 79 70 65 2c |encesFol|derType,|
|000029f0| 66 61 6c 73 65 2c 26 66 | 53 70 65 63 2d 3e 76 52 |false,&f|Spec->vR|
|00002a00| 65 66 4e 75 6d 2c 0d 09 | 09 09 09 09 09 09 26 66 |efNum,..|......&f|
|00002a10| 53 70 65 63 2d 3e 70 61 | 72 49 44 29 3b 0d 09 7d |Spec->pa|rID);..}|
|00002a20| 0d 0d 09 2f 2f 20 74 68 | 65 20 6f 6c 64 20 73 79 |...// th|e old sy|
|00002a30| 73 74 65 6d 20 36 20 77 | 61 79 0d 09 0d 09 69 66 |stem 6 w|ay....if|
|00002a40| 20 28 65 72 72 21 3d 6e | 6f 45 72 72 29 20 7b 0d | (err!=n|oErr) {.|
|00002a50| 09 09 53 79 73 45 6e 76 | 69 72 6f 6e 73 28 31 2c |..SysEnv|irons(1,|
|00002a60| 26 73 79 73 45 6e 76 29 | 3b 0d 09 09 66 4e 61 6d |&sysEnv)|;...fNam|
|00002a70| 65 5b 30 5d 20 3d 20 30 | 3b 0d 09 09 70 42 6c 6f |e[0] = 0|;...pBlo|
|00002a80| 63 6b 2e 69 6f 56 52 65 | 66 4e 75 6d 20 3d 20 73 |ck.ioVRe|fNum = s|
|00002a90| 79 73 45 6e 76 2e 73 79 | 73 56 52 65 66 4e 75 6d |ysEnv.sy|sVRefNum|
|00002aa0| 3b 0d 09 09 70 42 6c 6f | 63 6b 2e 69 6f 4e 61 6d |;...pBlo|ck.ioNam|
|00002ab0| 65 50 74 72 20 3d 20 66 | 4e 61 6d 65 3b 0d 09 09 |ePtr = f|Name;...|
|00002ac0| 70 42 6c 6f 63 6b 2e 69 | 6f 57 44 49 6e 64 65 78 |pBlock.i|oWDIndex|
|00002ad0| 20 3d 20 30 3b 0d 09 09 | 70 42 6c 6f 63 6b 2e 69 | = 0;...|pBlock.i|
|00002ae0| 6f 57 44 50 72 6f 63 49 | 44 20 3d 20 30 3b 0d 09 |oWDProcI|D = 0;..|
|00002af0| 09 70 42 6c 6f 63 6b 2e | 69 6f 57 44 56 52 65 66 |.pBlock.|ioWDVRef|
|00002b00| 4e 75 6d 20 3d 20 30 3b | 0d 09 09 65 72 72 20 3d |Num = 0;|...err =|
|00002b10| 20 50 42 47 65 74 57 44 | 49 6e 66 6f 28 26 70 42 | PBGetWD|Info(&pB|
|00002b20| 6c 6f 63 6b 2c 66 61 6c | 73 65 29 3b 0d 09 09 69 |lock,fal|se);...i|
|00002b30| 66 20 28 65 72 72 21 3d | 6e 6f 45 72 72 29 20 7b |f (err!=|noErr) {|
|00002b40| 0d 09 09 09 66 53 70 65 | 63 2d 3e 76 52 65 66 4e |....fSpe|c->vRefN|
|00002b50| 75 6d 20 3d 20 2d 31 3b | 0d 09 09 09 66 53 70 65 |um = -1;|....fSpe|
|00002b60| 63 2d 3e 70 61 72 49 44 | 20 3d 20 66 73 52 74 44 |c->parID| = fsRtD|
|00002b70| 69 72 49 44 3b 0d 09 09 | 7d 0d 09 7d 0d 09 0d 09 |irID;...|}..}....|
|00002b80| 47 65 74 52 65 73 53 74 | 72 69 6e 67 28 66 53 70 |GetResSt|ring(fSp|
|00002b90| 65 63 2d 3e 6e 61 6d 65 | 2c 6b 50 72 65 66 73 46 |ec->name|,kPrefsF|
|00002ba0| 69 6c 65 49 44 2c 6b 50 | 72 65 66 73 46 69 6c 65 |ileID,kP|refsFile|
|00002bb0| 29 3b 0d 7d 0d 0d 0d 23 | 64 65 66 69 6e 65 09 6b |);.}...#|define.k|
|00002bc0| 42 75 74 74 6f 6e 46 72 | 61 6d 65 49 6e 73 65 74 |ButtonFr|ameInset|
|00002bd0| 09 2d 34 0d 23 64 65 66 | 69 6e 65 09 6b 42 75 74 |.-4.#def|ine.kBut|
|00002be0| 74 6f 6e 46 72 61 6d 65 | 53 69 7a 65 09 33 0d 23 |tonFrame|Size.3.#|
|00002bf0| 64 65 66 69 6e 65 09 6b | 43 6e 74 72 41 63 74 69 |define.k|CntrActi|
|00002c00| 76 61 74 65 09 09 30 0d | 23 64 65 66 69 6e 65 09 |vate..0.|#define.|
|00002c10| 6b 43 6f 6c 6f 72 50 6f | 72 74 4d 61 73 6b 09 09 |kColorPo|rtMask..|
|00002c20| 30 78 63 30 30 30 0d 23 | 64 65 66 69 6e 65 09 6b |0xc000.#|define.k|
|00002c30| 41 63 74 69 76 61 74 65 | 43 6f 6e 74 72 6f 6c 09 |Activate|Control.|
|00002c40| 30 0d 0d 2f 2a 20 64 72 | 61 77 20 6f 75 74 6c 69 |0../* dr|aw outli|
|00002c50| 6e 65 20 66 6f 72 20 64 | 65 66 61 75 6c 74 20 62 |ne for d|efault b|
|00002c60| 75 74 74 6f 6e 20 2a 2f | 0d 0d 76 6f 69 64 20 4d |utton */|..void M|
|00002c70| 79 44 72 61 77 44 65 66 | 61 75 6c 74 42 75 74 74 |yDrawDef|aultButt|
|00002c80| 6f 6e 4f 75 74 6c 69 6e | 65 28 44 69 61 6c 6f 67 |onOutlin|e(Dialog|
|00002c90| 50 74 72 20 74 68 65 44 | 69 61 6c 6f 67 2c 73 68 |Ptr theD|ialog,sh|
|00002ca0| 6f 72 74 20 74 68 65 49 | 74 65 6d 29 0d 7b 0d 09 |ort theI|tem).{..|
|00002cb0| 73 68 6f 72 74 20 69 74 | 65 6d 54 79 70 65 3b 0d |short it|emType;.|
|00002cc0| 09 52 65 63 74 20 69 74 | 65 6d 52 65 63 74 3b 0d |.Rect it|emRect;.|
|00002cd0| 09 43 6f 6e 74 72 6f 6c | 48 61 6e 64 6c 65 20 69 |.Control|Handle i|
|00002ce0| 74 65 6d 48 61 6e 64 6c | 65 3b 0d 09 50 65 6e 53 |temHandl|e;..PenS|
|00002cf0| 74 61 74 65 20 63 75 72 | 50 65 6e 3b 0d 09 73 68 |tate cur|Pen;..sh|
|00002d00| 6f 72 74 20 62 75 74 74 | 6f 6e 4f 76 61 6c 3b 0d |ort butt|onOval;.|
|00002d10| 09 52 47 42 43 6f 6c 6f | 72 20 66 67 53 61 76 65 |.RGBColo|r fgSave|
|00002d20| 43 6f 6c 6f 72 2c 62 67 | 43 6f 6c 6f 72 2c 6e 65 |Color,bg|Color,ne|
|00002d30| 77 46 47 43 6f 6c 6f 72 | 3b 0d 09 42 6f 6f 6c 65 |wFGColor|;..Boole|
|00002d40| 61 6e 20 6e 65 77 47 72 | 61 79 3b 0d 09 57 69 6e |an newGr|ay;..Win|
|00002d50| 64 6f 77 50 74 72 20 6f | 6c 64 50 6f 72 74 3b 0d |dowPtr o|ldPort;.|
|00002d60| 09 42 6f 6f 6c 65 61 6e | 20 69 73 43 6f 6c 6f 72 |.Boolean| isColor|
|00002d70| 3b 0d 09 47 44 48 61 6e | 64 6c 65 20 74 61 72 67 |;..GDHan|dle targ|
|00002d80| 65 74 44 65 76 69 63 65 | 3b 0d 09 0d 09 2f 2f 20 |etDevice|;....// |
|00002d90| 67 65 74 20 74 68 65 20 | 64 65 66 61 75 6c 74 20 |get the |default |
|00002da0| 62 75 74 74 6f 6e 20 61 | 6e 64 20 64 72 61 77 20 |button a|nd draw |
|00002db0| 61 20 62 6f 6c 64 20 62 | 6f 72 64 65 72 20 61 72 |a bold b|order ar|
|00002dc0| 6f 75 6e 64 20 69 74 0d | 09 0d 09 47 65 74 44 49 |ound it.|...GetDI|
|00002dd0| 74 65 6d 28 74 68 65 44 | 69 61 6c 6f 67 2c 74 68 |tem(theD|ialog,th|
|00002de0| 65 49 74 65 6d 2c 26 69 | 74 65 6d 54 79 70 65 2c |eItem,&i|temType,|
|00002df0| 28 48 61 6e 64 6c 65 20 | 2a 29 26 69 74 65 6d 48 |(Handle |*)&itemH|
|00002e00| 61 6e 64 6c 65 2c 26 69 | 74 65 6d 52 65 63 74 29 |andle,&i|temRect)|
|00002e10| 3b 0d 09 47 65 74 50 6f | 72 74 28 26 6f 6c 64 50 |;..GetPo|rt(&oldP|
|00002e20| 6f 72 74 29 3b 0d 09 53 | 65 74 50 6f 72 74 28 28 |ort);..S|etPort((|
|00002e30| 2a 2a 69 74 65 6d 48 61 | 6e 64 6c 65 29 2e 63 6f |**itemHa|ndle).co|
|00002e40| 6e 74 72 6c 4f 77 6e 65 | 72 29 3b 0d 09 47 65 74 |ntrlOwne|r);..Get|
|00002e50| 50 65 6e 53 74 61 74 65 | 28 26 63 75 72 50 65 6e |PenState|(&curPen|
|00002e60| 29 3b 0d 0d 09 50 65 6e | 4e 6f 72 6d 61 6c 28 29 |);...Pen|Normal()|
|00002e70| 3b 0d 09 49 6e 73 65 74 | 52 65 63 74 28 26 69 74 |;..Inset|Rect(&it|
|00002e80| 65 6d 52 65 63 74 2c 6b | 42 75 74 74 6f 6e 46 72 |emRect,k|ButtonFr|
|00002e90| 61 6d 65 49 6e 73 65 74 | 2c 6b 42 75 74 74 6f 6e |ameInset|,kButton|
|00002ea0| 46 72 61 6d 65 49 6e 73 | 65 74 29 3b 0d 09 46 72 |FrameIns|et);..Fr|
|00002eb0| 61 6d 65 52 6f 75 6e 64 | 52 65 63 74 28 26 69 74 |ameRound|Rect(&it|
|00002ec0| 65 6d 52 65 63 74 2c 31 | 36 2c 31 36 29 3b 0d 0d |emRect,1|6,16);..|
|00002ed0| 09 62 75 74 74 6f 6e 4f | 76 61 6c 20 3d 20 28 28 |.buttonO|val = ((|
|00002ee0| 69 74 65 6d 52 65 63 74 | 2e 62 6f 74 74 6f 6d 2d |itemRect|.bottom-|
|00002ef0| 69 74 65 6d 52 65 63 74 | 2e 74 6f 70 29 2f 32 29 |itemRect|.top)/2)|
|00002f00| 20 2b 20 32 3b 0d 09 69 | 66 20 28 28 28 43 47 72 | + 2;..i|f (((CGr|
|00002f10| 61 66 50 74 72 29 28 28 | 2a 2a 69 74 65 6d 48 61 |afPtr)((|**itemHa|
|00002f20| 6e 64 6c 65 29 2e 63 6f | 6e 74 72 6c 4f 77 6e 65 |ndle).co|ntrlOwne|
|00002f30| 72 29 29 2d 3e 70 6f 72 | 74 56 65 72 73 69 6f 6e |r))->por|tVersion|
|00002f40| 20 26 20 6b 43 6f 6c 6f | 72 50 6f 72 74 4d 61 73 | & kColo|rPortMas|
|00002f50| 6b 29 0d 09 09 69 73 43 | 6f 6c 6f 72 20 3d 20 74 |k)...isC|olor = t|
|00002f60| 72 75 65 3b 0d 09 65 6c | 73 65 0d 09 09 69 73 43 |rue;..el|se...isC|
|00002f70| 6f 6c 6f 72 20 3d 20 66 | 61 6c 73 65 3b 0d 09 0d |olor = f|alse;...|
|00002f80| 09 69 66 20 28 28 2a 2a | 69 74 65 6d 48 61 6e 64 |.if ((**|itemHand|
|00002f90| 6c 65 29 2e 63 6f 6e 74 | 72 6c 48 69 6c 69 74 65 |le).cont|rlHilite|
|00002fa0| 20 21 3d 20 6b 41 63 74 | 69 76 61 74 65 43 6f 6e | != kAct|ivateCon|
|00002fb0| 74 72 6f 6c 29 20 7b 09 | 2f 2f 20 63 6f 6e 74 72 |trol) {.|// contr|
|00002fc0| 6f 6c 20 69 73 20 64 69 | 6d 6d 65 64 2c 20 73 6f |ol is di|mmed, so|
|00002fd0| 20 64 72 61 77 20 67 72 | 61 79 0d 09 09 6e 65 77 | draw gr|ay...new|
|00002fe0| 47 72 61 79 20 3d 20 66 | 61 6c 73 65 3b 0d 09 09 |Gray = f|alse;...|
|00002ff0| 69 66 20 28 69 73 43 6f | 6c 6f 72 29 20 7b 0d 09 |if (isCo|lor) {..|
|00003000| 09 09 47 65 74 42 61 63 | 6b 43 6f 6c 6f 72 28 26 |..GetBac|kColor(&|
|00003010| 62 67 43 6f 6c 6f 72 29 | 3b 0d 09 09 09 47 65 74 |bgColor)|;....Get|
|00003020| 46 6f 72 65 43 6f 6c 6f | 72 28 26 66 67 53 61 76 |ForeColo|r(&fgSav|
|00003030| 65 43 6f 6c 6f 72 29 3b | 0d 09 09 09 6e 65 77 46 |eColor);|....newF|
|00003040| 47 43 6f 6c 6f 72 20 3d | 20 66 67 53 61 76 65 43 |GColor =| fgSaveC|
|00003050| 6f 6c 6f 72 3b 0d 09 09 | 09 74 61 72 67 65 74 44 |olor;...|.targetD|
|00003060| 65 76 69 63 65 20 3d 20 | 4d 79 47 65 74 44 65 76 |evice = |MyGetDev|
|00003070| 69 63 65 46 72 6f 6d 52 | 65 63 74 28 26 28 2a 2a |iceFromR|ect(&(**|
|00003080| 69 74 65 6d 48 61 6e 64 | 6c 65 29 2e 63 6f 6e 74 |itemHand|le).cont|
|00003090| 72 6c 52 65 63 74 29 3b | 0d 09 09 09 6e 65 77 47 |rlRect);|....newG|
|000030a0| 72 61 79 20 3d 20 47 65 | 74 47 72 61 79 28 74 61 |ray = Ge|tGray(ta|
|000030b0| 72 67 65 74 44 65 76 69 | 63 65 2c 26 62 67 43 6f |rgetDevi|ce,&bgCo|
|000030c0| 6c 6f 72 2c 26 6e 65 77 | 46 47 43 6f 6c 6f 72 29 |lor,&new|FGColor)|
|000030d0| 3b 0d 09 09 7d 0d 09 09 | 69 66 20 28 6e 65 77 47 |;...}...|if (newG|
|000030e0| 72 61 79 29 0d 09 09 09 | 52 47 42 46 6f 72 65 43 |ray)....|RGBForeC|
|000030f0| 6f 6c 6f 72 28 26 6e 65 | 77 46 47 43 6f 6c 6f 72 |olor(&ne|wFGColor|
|00003100| 29 3b 0d 09 09 65 6c 73 | 65 0d 09 09 09 23 69 66 |);...els|e....#if|
|00003110| 64 65 66 20 64 61 6e 67 | 65 72 6f 75 73 50 61 74 |def dang|erousPat|
|00003120| 74 65 72 6e 0d 09 09 09 | 50 65 6e 50 61 74 28 71 |tern....|PenPat(q|
|00003130| 64 2e 67 72 61 79 29 3b | 0d 09 09 09 23 65 6c 73 |d.gray);|....#els|
|00003140| 65 0d 09 09 09 50 65 6e | 50 61 74 28 26 71 64 2e |e....Pen|Pat(&qd.|
|00003150| 67 72 61 79 29 3b 0d 09 | 09 09 23 65 6e 64 69 66 |gray);..|..#endif|
|00003160| 0d 09 09 50 65 6e 53 69 | 7a 65 28 6b 42 75 74 74 |...PenSi|ze(kButt|
|00003170| 6f 6e 46 72 61 6d 65 53 | 69 7a 65 2c 6b 42 75 74 |onFrameS|ize,kBut|
|00003180| 74 6f 6e 46 72 61 6d 65 | 53 69 7a 65 29 3b 0d 09 |tonFrame|Size);..|
|00003190| 09 46 72 61 6d 65 52 6f | 75 6e 64 52 65 63 74 28 |.FrameRo|undRect(|
|000031a0| 26 69 74 65 6d 52 65 63 | 74 2c 62 75 74 74 6f 6e |&itemRec|t,button|
|000031b0| 4f 76 61 6c 2c 62 75 74 | 74 6f 6e 4f 76 61 6c 29 |Oval,but|tonOval)|
|000031c0| 3b 0d 09 09 69 66 20 28 | 69 73 43 6f 6c 6f 72 29 |;...if (|isColor)|
|000031d0| 0d 09 09 09 52 47 42 46 | 6f 72 65 43 6f 6c 6f 72 |....RGBF|oreColor|
|000031e0| 28 26 66 67 53 61 76 65 | 43 6f 6c 6f 72 29 3b 0d |(&fgSave|Color);.|
|000031f0| 09 7d 0d 09 65 6c 73 65 | 20 7b 0d 09 09 23 69 66 |.}..else| {...#if|
|00003200| 64 65 66 20 64 61 6e 67 | 65 72 6f 75 73 50 61 74 |def dang|erousPat|
|00003210| 74 65 72 6e 0d 09 09 50 | 65 6e 50 61 74 28 71 64 |tern...P|enPat(qd|
|00003220| 2e 62 6c 61 63 6b 29 3b | 0d 09 09 23 65 6c 73 65 |.black);|...#else|
|00003230| 0d 09 09 50 65 6e 50 61 | 74 28 26 71 64 2e 62 6c |...PenPa|t(&qd.bl|
|00003240| 61 63 6b 29 3b 0d 09 09 | 23 65 6e 64 69 66 0d 09 |ack);...|#endif..|
|00003250| 09 50 65 6e 53 69 7a 65 | 28 6b 42 75 74 74 6f 6e |.PenSize|(kButton|
|00003260| 46 72 61 6d 65 53 69 7a | 65 2c 6b 42 75 74 74 6f |FrameSiz|e,kButto|
|00003270| 6e 46 72 61 6d 65 53 69 | 7a 65 29 3b 0d 09 09 46 |nFrameSi|ze);...F|
|00003280| 72 61 6d 65 52 6f 75 6e | 64 52 65 63 74 28 26 69 |rameRoun|dRect(&i|
|00003290| 74 65 6d 52 65 63 74 2c | 62 75 74 74 6f 6e 4f 76 |temRect,|buttonOv|
|000032a0| 61 6c 2c 62 75 74 74 6f | 6e 4f 76 61 6c 29 3b 0d |al,butto|nOval);.|
|000032b0| 09 7d 0d 09 0d 09 53 65 | 74 50 65 6e 53 74 61 74 |.}....Se|tPenStat|
|000032c0| 65 28 26 63 75 72 50 65 | 6e 29 3b 0d 09 53 65 74 |e(&curPe|n);..Set|
|000032d0| 50 6f 72 74 28 6f 6c 64 | 50 6f 72 74 29 3b 0d 7d |Port(old|Port);.}|
|000032e0| 0d 0d 0d 47 44 48 61 6e | 64 6c 65 20 4d 79 47 65 |...GDHan|dle MyGe|
|000032f0| 74 44 65 76 69 63 65 46 | 72 6f 6d 52 65 63 74 28 |tDeviceF|romRect(|
|00003300| 52 65 63 74 20 2a 6c 6f | 63 61 6c 52 65 63 74 29 |Rect *lo|calRect)|
|00003310| 0d 7b 0d 09 47 44 48 61 | 6e 64 6c 65 20 64 65 76 |.{..GDHa|ndle dev|
|00003320| 69 63 65 3b 0d 09 50 6f | 69 6e 74 20 77 43 65 6e |ice;..Po|int wCen|
|00003330| 74 65 72 3b 0d 09 0d 09 | 77 43 65 6e 74 65 72 2e |ter;....|wCenter.|
|00003340| 76 20 3d 20 6c 6f 63 61 | 6c 52 65 63 74 2d 3e 62 |v = loca|lRect->b|
|00003350| 6f 74 74 6f 6d 2d 6c 6f | 63 61 6c 52 65 63 74 2d |ottom-lo|calRect-|
|00003360| 3e 74 6f 70 3b 0d 09 77 | 43 65 6e 74 65 72 2e 68 |>top;..w|Center.h|
|00003370| 20 3d 20 6c 6f 63 61 6c | 52 65 63 74 2d 3e 72 69 | = local|Rect->ri|
|00003380| 67 68 74 2d 6c 6f 63 61 | 6c 52 65 63 74 2d 3e 6c |ght-loca|lRect->l|
|00003390| 65 66 74 3b 0d 09 4c 6f | 63 61 6c 54 6f 47 6c 6f |eft;..Lo|calToGlo|
|000033a0| 62 61 6c 28 26 77 43 65 | 6e 74 65 72 29 3b 0d 09 |bal(&wCe|nter);..|
|000033b0| 0d 09 64 65 76 69 63 65 | 20 3d 20 47 65 74 44 65 |..device| = GetDe|
|000033c0| 76 69 63 65 4c 69 73 74 | 28 29 3b 0d 09 77 68 69 |viceList|();..whi|
|000033d0| 6c 65 20 28 64 65 76 69 | 63 65 29 20 7b 0d 09 09 |le (devi|ce) {...|
|000033e0| 69 66 20 28 50 74 49 6e | 52 65 63 74 28 77 43 65 |if (PtIn|Rect(wCe|
|000033f0| 6e 74 65 72 2c 26 28 2a | 2a 64 65 76 69 63 65 29 |nter,&(*|*device)|
|00003400| 2e 67 64 52 65 63 74 29 | 29 0d 09 09 09 72 65 74 |.gdRect)|)....ret|
|00003410| 75 72 6e 20 64 65 76 69 | 63 65 3b 0d 09 09 64 65 |urn devi|ce;...de|
|00003420| 76 69 63 65 20 3d 20 47 | 65 74 4e 65 78 74 44 65 |vice = G|etNextDe|
|00003430| 76 69 63 65 28 64 65 76 | 69 63 65 29 3b 0d 09 7d |vice(dev|ice);..}|
|00003440| 0d 09 0d 09 72 65 74 75 | 72 6e 20 47 65 74 4d 61 |....retu|rn GetMa|
|00003450| 69 6e 44 65 76 69 63 65 | 28 29 3b 0d 7d 0d 00 00 |inDevice|();.}...|
|00003460| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003470| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003480| 00 00 01 00 00 00 01 6e | 00 00 00 6e 00 00 00 3e |.......n|...n...>|
|00003490| 0d 73 74 72 75 63 74 20 | 49 6e 74 36 34 42 69 74 |.struct |Int64Bit|
|000034a0| 20 7b 0d 20 20 20 20 6c | 6f 6e 67 20 68 69 4c 6f | {. l|ong hiLo|
|000034b0| 07 75 74 69 6c 73 2e 63 | 02 00 00 00 54 45 58 54 |.utils.c|....TEXT|
|000034c0| 4d 50 53 20 01 00 00 78 | 01 20 00 00 00 00 18 1d |MPS ...x|. ......|
|000034d0| 00 00 54 45 58 54 4d 50 | 53 20 01 00 00 78 01 20 |..TEXTMP|S ...x. |
|000034e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000034f0| 00 00 a5 3e d1 b8 00 00 | 33 de 00 00 01 ac 73 0d |...>....|3.....s.|
|00003500| 65 78 74 65 72 6e 20 22 | 43 22 20 7b 0d 23 65 6e |extern "|C" {.#en|
|00003510| 64 69 66 0d 70 61 73 63 | 61 6c 20 46 69 78 65 64 |dif.pasc|al Fixed|
|00003520| 20 46 69 78 52 61 74 69 | 6f 28 73 68 6f 72 74 20 | FixRati|o(short |
|00003530| 6e 75 6d 65 72 2c 73 68 | 6f 72 74 20 64 65 6e 6f |numer,sh|ort deno|
|00003540| 6d 29 0d 20 20 20 20 3d | 20 30 78 41 38 36 39 3b |m). =| 0xA869;|
|00003550| 20 0d 70 61 73 63 61 6c | 20 46 69 78 65 64 20 46 | .pascal| Fixed F|
|00003560| 69 78 4d 75 6c 28 46 69 | 78 65 64 20 61 2c 46 69 |ixMul(Fi|xed a,Fi|
|00003570| 78 65 64 20 62 29 0d 20 | 20 20 20 3d 20 30 78 41 |xed b). | = 0xA|
|00003580| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 2d 2d 2d |...H..Mo|naco.---|
|00003590| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000035a0| 2d 2d 2d 2d 2d 2d 00 06 | 00 04 00 47 00 15 02 7e |------..|...G...~|
|000035b0| 04 52 00 47 00 15 02 7e | 04 52 a8 62 fe 26 00 00 |.R.G...~|.R.b.&..|
|000035c0| 02 82 00 00 02 82 00 00 | 00 00 01 00 00 00 00 1e |........|........|
|000035d0| 00 47 00 15 02 7e 04 52 | 00 47 00 15 02 7e 04 52 |.G...~.R|.G...~.R|
|000035e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000035f0| 01 00 00 00 01 6e 00 00 | 00 6e 00 00 00 3e 00 e3 |.....n..|.n...>..|
|00003600| 6e c8 0e b2 00 00 00 1c | 00 3e 00 00 4d 50 53 52 |n.......|.>..MPSR|
|00003610| 00 01 00 0a 03 ed ff ff | 00 00 00 00 00 00 00 00 |........|........|
|00003620| 03 f0 ff ff 00 00 00 4c | 00 e9 6a 54 00 00 00 00 |.......L|..jT....|
|00003630| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003640| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003660| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003670| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+