Teach Windows build and installer about new _symtable module/DLL.
[python/dscho.git] / Mac / Demo / applescript / Disk_Copy / Standard_Suite.py
blob1211ec114c8f93d914a5395bcb4c287d4e738640
1 """Suite Standard Suite: Common terms for most applications
2 Level 1, version 1
4 Generated from Macintosh HD:Hulpprogramma's:Disk Copy
5 AETE/AEUT resource version 1/0, language 0, script 0
6 """
8 import aetools
9 import MacOS
11 _code = 'Core'
13 class Standard_Suite_Events:
15 _argmap_save = {
16 '_in' : 'kfil',
17 'using_format' : 'SvAs',
18 'checksum_verification' : 'VChk',
19 'signature_verification' : 'VSig',
20 'image_signing' : 'SImg',
21 'leave_image_mounted' : 'Moun',
22 'percent_free_space' : 'Slop',
23 'logical_blocks' : 'Blks',
24 'zeroing' : 'Zero',
27 def save(self, _object, _attributes={}, **_arguments):
28 """save: Save an object
29 Required argument: the source object
30 Keyword argument _in: the target object
31 Keyword argument using_format: the format for the target
32 Keyword argument checksum_verification: Should the checksum be verified before saving?
33 Keyword argument signature_verification: Should the DigiSign� signature be verified before saving?
34 Keyword argument image_signing: Should the image be signed?
35 Keyword argument leave_image_mounted: Should the image be mounted after saving?
36 Keyword argument percent_free_space: percent free space to reserve (for image folder operation, 0-255%)
37 Keyword argument logical_blocks: number of logical blocks in the image (for image folder operation)
38 Keyword argument zeroing: Should all the blocks in the image be set to zeros? (for image folder operation)
39 Keyword argument _attributes: AppleEvent attribute dictionary
40 Returns: the result of the save operation
41 """
42 _code = 'core'
43 _subcode = 'save'
45 aetools.keysubst(_arguments, self._argmap_save)
46 _arguments['----'] = _object
48 aetools.enumsubst(_arguments, 'kfil', _Enum_obj_)
49 aetools.enumsubst(_arguments, 'SvAs', _Enum_SvAs)
50 aetools.enumsubst(_arguments, 'VChk', _Enum_bool)
51 aetools.enumsubst(_arguments, 'VSig', _Enum_bool)
52 aetools.enumsubst(_arguments, 'SImg', _Enum_bool)
53 aetools.enumsubst(_arguments, 'Moun', _Enum_bool)
54 aetools.enumsubst(_arguments, 'Slop', _Enum_long)
55 aetools.enumsubst(_arguments, 'Blks', _Enum_long)
56 aetools.enumsubst(_arguments, 'Zero', _Enum_bool)
58 _reply, _arguments, _attributes = self.send(_code, _subcode,
59 _arguments, _attributes)
60 if _arguments.has_key('errn'):
61 raise aetools.Error, aetools.decodeerror(_arguments)
62 # XXXX Optionally decode result
63 if _arguments.has_key('----'):
64 return _arguments['----']
66 def do_script(self, _object, _attributes={}, **_arguments):
67 """do script: Execute an attached script located in the folder "Scripts"
68 Required argument: the script to be executed
69 Keyword argument _attributes: AppleEvent attribute dictionary
70 """
71 _code = 'core'
72 _subcode = 'dosc'
74 if _arguments: raise TypeError, 'No optional args expected'
75 _arguments['----'] = _object
78 _reply, _arguments, _attributes = self.send(_code, _subcode,
79 _arguments, _attributes)
80 if _arguments.has_key('errn'):
81 raise aetools.Error, aetools.decodeerror(_arguments)
82 # XXXX Optionally decode result
83 if _arguments.has_key('----'):
84 return _arguments['----']
87 class application(aetools.ComponentItem):
88 """application - The Disk Copy application """
89 want = 'capp'
90 class version(aetools.NProperty):
91 """version - the version of this application """
92 which = 'vers'
93 want = 'vers'
94 class name(aetools.NProperty):
95 """name - the name of this application """
96 which = 'pnam'
97 want = 'TEXT'
98 class comment(aetools.NProperty):
99 """comment - the comment associated with the application """
100 which = 'comt'
101 want = 'TEXT'
102 class driver_version(aetools.NProperty):
103 """driver version - the version of the disk image driver """
104 which = 'dVer'
105 want = 'vers'
106 class nonejectable_mode(aetools.NProperty):
107 """nonejectable mode - Should mounted images be non-ejectable? """
108 which = 'otto'
109 want = 'bool'
110 class save_log_file(aetools.NProperty):
111 """save log file - Should the log file be saved on disk? """
112 which = 'PSaL'
113 want = 'bool'
114 class use_speech(aetools.NProperty):
115 """use speech - Should Disk Copy use spoken feedback? """
116 which = 'PTlk'
117 want = 'bool'
118 class smart_Save_As(aetools.NProperty):
119 """smart Save As - Should the Save As... dialog box automatically go to the right folder? """
120 which = 'PSSP'
121 want = 'bool'
122 class checksum_verification(aetools.NProperty):
123 """checksum verification - Should image checksums be verified? """
124 which = 'PVeC'
125 want = 'bool'
126 class signature_verification(aetools.NProperty):
127 """signature verification - Should digital signatures be verified? """
128 which = 'PVeS'
129 want = 'bool'
130 class exclude_DiskScripts(aetools.NProperty):
131 """exclude DiskScripts - Should images referenced in DiskScripts/DiskSets be excluded from verification? """
132 which = 'PExD'
133 want = 'bool'
134 class exclude_remote_images(aetools.NProperty):
135 """exclude remote images - Should images that are located on network volumes be excluded from verification? """
136 which = 'PExR'
137 want = 'bool'
138 class image_signing(aetools.NProperty):
139 """image signing - Should images be signed with a digital signature? """
140 which = 'PSiI'
141 want = 'bool'
142 class leave_image_mounted(aetools.NProperty):
143 """leave image mounted - Should images be mounted after they are created? """
144 which = 'PMoA'
145 want = 'bool'
146 class erase_confirmation(aetools.NProperty):
147 """erase confirmation - Should the user be required to confirm commands that erase disks? """
148 which = 'PCoE'
149 want = 'bool'
150 class zeroing(aetools.NProperty):
151 """zeroing - Should all blocks of a new image be set to zero? """
152 which = 'PZeB'
153 want = 'bool'
154 class default_create_size(aetools.NProperty):
155 """default create size - the default size for a new image, in blocks (512 bytes per block) """
156 which = 'PDeS'
157 want = 'long'
158 class default_create_name(aetools.NProperty):
159 """default create name - the default volume name for a new image """
160 which = 'PDeN'
161 want = 'TEXT'
162 class make_multiple_floppies(aetools.NProperty):
163 """make multiple floppies - Should the user be prompted to make multiple floppy disk images at a time? """
164 which = 'PBuM'
165 want = 'bool'
166 class auto_image_upon_insert(aetools.NProperty):
167 """auto image upon insert - Should a newly-inserted disk automatically be processed into an image? """
168 which = 'Paim'
169 want = 'bool'
170 class eject_after_auto_image(aetools.NProperty):
171 """eject after auto image - Should auto-imaged disks be ejected afterwards? """
172 which = 'Pejc'
173 want = 'bool'
174 class auto_copy_upon_floppy_insert(aetools.NProperty):
175 """auto copy upon floppy insert - Instead of auto-imaging, should newly-inserted floppy disks be copied? """
176 which = 'Pcpf'
177 want = 'bool'
178 class volume_suffix(aetools.NProperty):
179 """volume suffix - the default volume name suffix """
180 which = 'PDiE'
181 want = 'TEXT'
182 class image_suffix(aetools.NProperty):
183 """image suffix - the default image name suffix """
184 which = 'PImE'
185 want = 'TEXT'
186 class default_file_system(aetools.NProperty):
187 """default file system - the default file system type for new blank images """
188 which = 'Pfsy'
189 want = 'Fsys'
190 class default_image_format(aetools.NProperty):
191 """default image format - the default image file format """
192 which = 'Pdfm'
193 want = 'SvAs'
195 class disk(aetools.ComponentItem):
196 """disk - A mounted volume """
197 want = 'Disk'
199 name = name
201 comment = comment
202 class locked(aetools.NProperty):
203 """locked - Is the disk locked? """
204 which = 'islk'
205 want = 'bool'
206 class creation_date(aetools.NProperty):
207 """creation date - the creation date of disk """
208 which = 'ascd'
209 want = 'ldt '
210 class modification_date(aetools.NProperty):
211 """modification date - the modification date of disk """
212 which = 'asmo'
213 want = 'ldt '
214 class crc32_checksum(aetools.NProperty):
215 """crc32 checksum - the crc-32 checksum of the disk """
216 which = 'Xcrc'
217 want = 'TEXT'
218 class disk_copy_4_2e_2_checksum(aetools.NProperty):
219 """disk copy 4.2 checksum - the Disk Copy 4.2 checksum of the disk """
220 which = 'Xc42'
221 want = 'TEXT'
222 class block_count(aetools.NProperty):
223 """block count - the number of blocks on disk """
224 which = 'Xblk'
225 want = 'long'
226 class file_system(aetools.NProperty):
227 """file system - the file system used on disk """
228 which = 'Xfsi'
229 want = 'TEXT'
231 class folder(aetools.ComponentItem):
232 """folder - A folder or directory on a disk """
233 want = 'Fold'
235 name = name
237 comment = comment
239 creation_date = creation_date
241 modification_date = modification_date
243 class disk_image(aetools.ComponentItem):
244 """disk image - A disk image file """
245 want = 'DImg'
247 name = name
249 comment = comment
251 locked = locked
253 creation_date = creation_date
255 modification_date = modification_date
256 class file_format(aetools.NProperty):
257 """file format - the format of the disk image file """
258 which = 'Ifmt'
259 want = 'TEXT'
260 class signed(aetools.NProperty):
261 """signed - Does the disk image have a DigiSign� signature? """
262 which = 'Isin'
263 want = 'bool'
264 class compressed(aetools.NProperty):
265 """compressed - Is the disk image compressed? """
266 which = 'Icom'
267 want = 'bool'
268 class segmented(aetools.NProperty):
269 """segmented - Is the disk image segmented? """
270 which = 'Iseg'
271 want = 'bool'
272 class segments(aetools.NProperty):
273 """segments - a list of references to other segments that make up a complete image """
274 which = 'Isg#'
275 want = 'fss '
276 class disk_name(aetools.NProperty):
277 """disk name - the name of the disk this image represents """
278 which = 'Idnm'
279 want = 'TEXT'
281 crc32_checksum = crc32_checksum
283 disk_copy_4_2e_2_checksum = disk_copy_4_2e_2_checksum
285 block_count = block_count
287 file_system = file_system
288 class data_fork_size(aetools.NProperty):
289 """data fork size - the size (in bytes) of the data fork of the disk image """
290 which = 'Idfk'
291 want = 'long'
292 class resource_fork_size(aetools.NProperty):
293 """resource fork size - the size (in bytes) of the resource fork of the disk image """
294 which = 'Irfk'
295 want = 'long'
297 class Save_reply_record(aetools.ComponentItem):
298 """Save reply record - Result from the save operation """
299 want = 'cpyR'
300 class resulting_target_object(aetools.NProperty):
301 """resulting target object - a reference to the target object after it has been saved """
302 which = 'rcpO'
303 want = 'obj '
304 class copy_type(aetools.NProperty):
305 """copy type - the way in which the target object was saved """
306 which = 'rcpT'
307 want = 'rcpT'
308 application._propdict = {
309 'version' : version,
310 'name' : name,
311 'comment' : comment,
312 'driver_version' : driver_version,
313 'nonejectable_mode' : nonejectable_mode,
314 'save_log_file' : save_log_file,
315 'use_speech' : use_speech,
316 'smart_Save_As' : smart_Save_As,
317 'checksum_verification' : checksum_verification,
318 'signature_verification' : signature_verification,
319 'exclude_DiskScripts' : exclude_DiskScripts,
320 'exclude_remote_images' : exclude_remote_images,
321 'image_signing' : image_signing,
322 'leave_image_mounted' : leave_image_mounted,
323 'erase_confirmation' : erase_confirmation,
324 'zeroing' : zeroing,
325 'default_create_size' : default_create_size,
326 'default_create_name' : default_create_name,
327 'make_multiple_floppies' : make_multiple_floppies,
328 'auto_image_upon_insert' : auto_image_upon_insert,
329 'eject_after_auto_image' : eject_after_auto_image,
330 'auto_copy_upon_floppy_insert' : auto_copy_upon_floppy_insert,
331 'volume_suffix' : volume_suffix,
332 'image_suffix' : image_suffix,
333 'default_file_system' : default_file_system,
334 'default_image_format' : default_image_format,
336 application._elemdict = {
338 disk._propdict = {
339 'name' : name,
340 'comment' : comment,
341 'locked' : locked,
342 'creation_date' : creation_date,
343 'modification_date' : modification_date,
344 'crc32_checksum' : crc32_checksum,
345 'disk_copy_4_2e_2_checksum' : disk_copy_4_2e_2_checksum,
346 'block_count' : block_count,
347 'file_system' : file_system,
349 disk._elemdict = {
351 folder._propdict = {
352 'name' : name,
353 'comment' : comment,
354 'creation_date' : creation_date,
355 'modification_date' : modification_date,
357 folder._elemdict = {
359 disk_image._propdict = {
360 'name' : name,
361 'comment' : comment,
362 'locked' : locked,
363 'creation_date' : creation_date,
364 'modification_date' : modification_date,
365 'file_format' : file_format,
366 'signed' : signed,
367 'compressed' : compressed,
368 'segmented' : segmented,
369 'segments' : segments,
370 'disk_name' : disk_name,
371 'crc32_checksum' : crc32_checksum,
372 'disk_copy_4_2e_2_checksum' : disk_copy_4_2e_2_checksum,
373 'block_count' : block_count,
374 'file_system' : file_system,
375 'data_fork_size' : data_fork_size,
376 'resource_fork_size' : resource_fork_size,
378 disk_image._elemdict = {
380 Save_reply_record._propdict = {
381 'resulting_target_object' : resulting_target_object,
382 'copy_type' : copy_type,
384 Save_reply_record._elemdict = {
386 _Enum_UIAc = {
387 'never_interact' : 'eNvr', # Don¹t allow any interaction at all
388 'interact_with_self' : 'eInS', # Only allow interaction from internal events
389 'interact_with_local' : 'eInL', # Allow interaction from any event originating on this machine
390 'interact_with_all' : 'eInA', # Allow interaction from network events
393 _Enum_SvAs = {
394 'NDIF_RW' : 'RdWr', # read/write NDIF disk image
395 'NDIF_RO' : 'Rdxx', # read-only NDIF disk image
396 'NDIF_Compressed' : 'ROCo', # compressed NDIF disk image
397 'Disk_Copy_4_2e_2' : 'DC42', # Disk Copy 4.2 disk image
400 _Enum_rcpT = {
401 'block_disk_copy' : 'cpBl', # block-by-block disk-level copy
402 'files_and_file_ID_copy' : 'cpID', # all files including desktop databases and file ID¹s
403 'files_and_desktop_info' : 'cpDT', # all files and most desktop information
404 'files_only' : 'cpFI', # all files but no desktop information
405 'disk_image_conversion' : 'cpCV', # disk image format conversion
406 'disk_image_creation' : 'cpCR', # disk image creation
409 _Enum_long = None # XXXX enum long not found!!
410 _Enum_bool = None # XXXX enum bool not found!!
411 _Enum_obj_ = None # XXXX enum obj not found!!
414 # Indices of types declared in this module
416 _classdeclarations = {
417 'DImg' : disk_image,
418 'capp' : application,
419 'Disk' : disk,
420 'Fold' : folder,
421 'cpyR' : Save_reply_record,
424 _propdeclarations = {
425 'Xcrc' : crc32_checksum,
426 'PDeS' : default_create_size,
427 'Idnm' : disk_name,
428 'PSSP' : smart_Save_As,
429 'Pcpf' : auto_copy_upon_floppy_insert,
430 'pnam' : name,
431 'Isin' : signed,
432 'otto' : nonejectable_mode,
433 'PExD' : exclude_DiskScripts,
434 'Iseg' : segmented,
435 'islk' : locked,
436 'asmo' : modification_date,
437 'PTlk' : use_speech,
438 'Pfsy' : default_file_system,
439 'PVeC' : checksum_verification,
440 'Xc42' : disk_copy_4_2e_2_checksum,
441 'rcpO' : resulting_target_object,
442 'Paim' : auto_image_upon_insert,
443 'comt' : comment,
444 'PCoE' : erase_confirmation,
445 'dVer' : driver_version,
446 'PDeN' : default_create_name,
447 'PBuM' : make_multiple_floppies,
448 'rcpT' : copy_type,
449 'PDiE' : volume_suffix,
450 'Ifmt' : file_format,
451 'Pdfm' : default_image_format,
452 'ascd' : creation_date,
453 'Pejc' : eject_after_auto_image,
454 'PZeB' : zeroing,
455 'PExR' : exclude_remote_images,
456 'PImE' : image_suffix,
457 'PVeS' : signature_verification,
458 'PSaL' : save_log_file,
459 'Xblk' : block_count,
460 'PMoA' : leave_image_mounted,
461 'Isg#' : segments,
462 'Irfk' : resource_fork_size,
463 'Icom' : compressed,
464 'Xfsi' : file_system,
465 'Idfk' : data_fork_size,
466 'vers' : version,
467 'PSiI' : image_signing,
470 _compdeclarations = {
473 _enumdeclarations = {
474 'SvAs' : _Enum_SvAs,
475 'UIAc' : _Enum_UIAc,
476 'rcpT' : _Enum_rcpT,