408 |
414 |
409 "Modified: / 7.9.1998 / 18:20:26 / cg" |
415 "Modified: / 7.9.1998 / 18:20:26 / cg" |
410 ! ! |
416 ! ! |
411 |
417 |
412 !ImageEditor class methodsFor:'image specs'! |
418 !ImageEditor class methodsFor:'image specs'! |
|
419 |
|
420 copyIcon |
|
421 "This resource specification was automatically generated |
|
422 by the ImageEditor of ST/X." |
|
423 |
|
424 "Do not manually edit this!! If it is corrupted, |
|
425 the ImageEditor may not be able to read the specification." |
|
426 |
|
427 " |
|
428 self copyIcon inspect |
|
429 ImageEditor openOnClass:self andSelector:#copyIcon |
|
430 Icon flushCachedIcons |
|
431 " |
|
432 |
|
433 <resource: #image> |
|
434 |
|
435 ^Icon |
|
436 constantNamed:#'ImageEditor class copyIcon' |
|
437 ifAbsentPut:[(Depth2Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@** @@J)UUTB*Z*)@*&**PJ)**$B*Z*)@*&**PJ)**$@@Z*)@@F**P@AUUT@@@@@@b') ; colorMapFromArray:#[0 0 0 0 0 128 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@C? O>@??3??O?<??3??O?<??3??@_<A?0@@@@a') ; yourself); yourself] |
|
438 ! |
|
439 |
|
440 fillIcon |
|
441 "This resource specification was automatically generated |
|
442 by the ImageEditor of ST/X." |
|
443 |
|
444 "Do not manually edit this!! If it is corrupted, |
|
445 the ImageEditor may not be able to read the specification." |
|
446 |
|
447 " |
|
448 self fillIcon inspect |
|
449 ImageEditor openOnClass:self andSelector:#fillIcon |
|
450 Icon flushCachedIcons |
|
451 " |
|
452 |
|
453 <resource: #image> |
|
454 |
|
455 ^Icon |
|
456 constantNamed:#'ImageEditor class fillIcon' |
|
457 ifAbsentPut:[(Depth2Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@ @@@@*H@@D*(@@DUUP@EAUU@AAEU@@@@U@@DDA@@@@@@@@PP@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 0 0 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C @Q@BN@I<@?8C?0[?!!G<@O P\@@ D@@@@@@@@@a') ; yourself); yourself] |
|
458 ! |
|
459 |
|
460 fillRectIcon |
|
461 "This resource specification was automatically generated |
|
462 by the ImageEditor of ST/X." |
|
463 |
|
464 "Do not manually edit this!! If it is corrupted, |
|
465 the ImageEditor may not be able to read the specification." |
|
466 |
|
467 " |
|
468 self fillRectIcon inspect |
|
469 ImageEditor openOnClass:self andSelector:#fillRectIcon |
|
470 Icon flushCachedIcons |
|
471 " |
|
472 |
|
473 <resource: #image> |
|
474 |
|
475 ^Icon |
|
476 constantNamed:#'ImageEditor class fillRectIcon' |
|
477 ifAbsentPut:[(Depth1Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@@@@@@@@@@@@D@@@@a') ; colorMapFromArray:#[0 0 0 255 0 0]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a') ; yourself); yourself] |
|
478 ! |
413 |
479 |
414 leftMouseKeyIcon |
480 leftMouseKeyIcon |
415 "This resource specification was automatically generated |
481 "This resource specification was automatically generated |
416 by the ImageEditor of ST/X." |
482 by the ImageEditor of ST/X." |
417 |
483 |
428 ^Icon |
494 ^Icon |
429 constantNamed:#'ImageEditor leftMouseKeyIcon' |
495 constantNamed:#'ImageEditor leftMouseKeyIcon' |
430 ifAbsentPut:[(Depth2Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@EJJ@@AR" @@T((@@@@@@@B** @@**(@@J**@@B** @@**(@@J**@@@**@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 255 0 0 255 255 255]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@?0G? _>A?8G? _>A?8G? _>A?8G? O<@_ @@@b') ; yourself); yourself] |
496 ifAbsentPut:[(Depth2Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@EJJ@@AR" @@T((@@@@@@@B** @@**(@@J**@@B** @@**(@@J**@@@**@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 255 0 0 255 255 255]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@?0G? _>A?8G? _>A?8G? _>A?8G? O<@_ @@@b') ; yourself); yourself] |
431 ! |
497 ! |
432 |
498 |
|
499 pasteIcon |
|
500 "This resource specification was automatically generated |
|
501 by the ImageEditor of ST/X." |
|
502 |
|
503 "Do not manually edit this!! If it is corrupted, |
|
504 the ImageEditor may not be able to read the specification." |
|
505 |
|
506 " |
|
507 self pasteIcon inspect |
|
508 ImageEditor openOnClass:self andSelector:#pasteIcon |
|
509 Icon flushCachedIcons |
|
510 " |
|
511 |
|
512 <resource: #image> |
|
513 |
|
514 ^Icon |
|
515 constantNamed:#'ImageEditor class pasteIcon' |
|
516 ifAbsentPut:[(Depth4Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L@@@@@@AL3@3M&X@@SL0L0A&@@D3LC@@A @AL3@3@FX@@QDPY&Y& |
|
517 @@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a') ; yourself); yourself] |
|
518 ! |
|
519 |
|
520 pasteUnderIcon |
|
521 "This resource specification was automatically generated |
|
522 by the ImageEditor of ST/X." |
|
523 |
|
524 "Do not manually edit this!! If it is corrupted, |
|
525 the ImageEditor may not be able to read the specification." |
|
526 |
|
527 " |
|
528 self pasteUnderIcon inspect |
|
529 ImageEditor openOnClass:self andSelector:#pasteUnderIcon |
|
530 Icon flushCachedIcons |
|
531 " |
|
532 |
|
533 <resource: #image> |
|
534 |
|
535 ^Icon |
|
536 constantNamed:#'ImageEditor class pasteUnderIcon' |
|
537 ifAbsentPut:[(Depth4Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L@@@@@@AL3@3M&X@@SL0L0A&@@D3LC@@A @AL3@3@FX@@QDPY&Y& |
|
538 @@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a') ; yourself); yourself] |
|
539 ! |
|
540 |
|
541 pasteWithMaskIcon |
|
542 "This resource specification was automatically generated |
|
543 by the ImageEditor of ST/X." |
|
544 |
|
545 "Do not manually edit this!! If it is corrupted, |
|
546 the ImageEditor may not be able to read the specification." |
|
547 |
|
548 " |
|
549 self pasteWithMaskIcon inspect |
|
550 ImageEditor openOnClass:self andSelector:#pasteWithMaskIcon |
|
551 Icon flushCachedIcons |
|
552 " |
|
553 |
|
554 <resource: #image> |
|
555 |
|
556 ^Icon |
|
557 constantNamed:#'ImageEditor class pasteWithMaskIcon' |
|
558 ifAbsentPut:[(Depth4Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L@@@@@@AL3@3M&X@@SL0L3A&@@D3LCL0A @AL3@3LFX@@QDPY&Y& |
|
559 @@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a') ; yourself); yourself] |
|
560 ! |
|
561 |
|
562 pointIcon |
|
563 "This resource specification was automatically generated |
|
564 by the ImageEditor of ST/X." |
|
565 |
|
566 "Do not manually edit this!! If it is corrupted, |
|
567 the ImageEditor may not be able to read the specification." |
|
568 |
|
569 " |
|
570 self pointIcon inspect |
|
571 ImageEditor openOnClass:self andSelector:#pointIcon |
|
572 Icon flushCachedIcons |
|
573 " |
|
574 |
|
575 <resource: #image> |
|
576 |
|
577 ^Icon |
|
578 constantNamed:#'ImageEditor class pointIcon' |
|
579 ifAbsentPut:[(Depth1Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@B@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 255 255 255]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@0@G@@8@G@@8@G@@8@G@@X@B@@@@@@@@@a') ; yourself); yourself] |
|
580 ! |
|
581 |
|
582 rectIcon |
|
583 "This resource specification was automatically generated |
|
584 by the ImageEditor of ST/X." |
|
585 |
|
586 "Do not manually edit this!! If it is corrupted, |
|
587 the ImageEditor may not be able to read the specification." |
|
588 |
|
589 " |
|
590 self rectIcon inspect |
|
591 ImageEditor openOnClass:self andSelector:#rectIcon |
|
592 Icon flushCachedIcons |
|
593 " |
|
594 |
|
595 <resource: #image> |
|
596 |
|
597 ^Icon |
|
598 constantNamed:#'ImageEditor class rectIcon' |
|
599 ifAbsentPut:[(Depth1Image new) width: 14; height: 14; photometric:(#palette); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 255 0 0]; mask:((Depth1Image new) width: 14; height: 14; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@C?0HA@ DB@PHA@ DB@PHA@ DC?0@@@@@@@a') ; yourself); yourself] |
|
600 ! |
|
601 |
433 rightMouseKeyIcon |
602 rightMouseKeyIcon |
434 "This resource specification was automatically generated |
603 "This resource specification was automatically generated |
435 by the ImageEditor of ST/X." |
604 by the ImageEditor of ST/X." |
436 |
605 |
437 "Do not manually edit this!! If it is corrupted, |
606 "Do not manually edit this!! If it is corrupted, |
1083 #component: #ImageView |
1278 #component: #ImageView |
1084 ) |
1279 ) |
1085 ) |
1280 ) |
1086 |
1281 |
1087 ) |
1282 ) |
1088 #handles: #(#Any 0.723776 1.0) |
1283 #handles: #(#Any 0.5 1.0) |
1089 ) |
1284 ) |
1090 ) |
1285 ) |
1091 |
1286 |
1092 ) |
1287 ) |
1093 ) |
1288 ) |
1094 #(#ViewSpec |
1289 #(#ViewSpec |
1095 #name: 'view2' |
1290 #name: 'rightView' |
1096 #level: -1 |
|
1097 #component: |
1291 #component: |
1098 #(#SpecCollection |
1292 #(#SpecCollection |
1099 #collection: #( |
1293 #collection: #( |
1100 #(#ArbitraryComponentSpec |
1294 #(#MenuPanelSpec |
1101 #name: 'imageEditView' |
1295 #name: 'ToolBar1' |
1102 #layout: #(#LayoutFrame 2 0.0 2 0.0 -2 1.0 -24 1.0) |
1296 #layout: #(#LayoutFrame 0 0 0 0.0 28 0 0 1.0) |
1103 #hasHorizontalScrollBar: true |
1297 #level: 1 |
1104 #hasVerticalScrollBar: true |
1298 #menu: #toolsMenuToolbar |
1105 #hasBorder: false |
1299 #verticalLayout: true |
1106 #component: #ImageEditView |
1300 #centerItems: true |
|
1301 #textDefault: true |
1107 ) |
1302 ) |
1108 #(#LabelSpec |
1303 #(#ViewSpec |
1109 #name: 'coordLabel' |
1304 #name: 'editingView' |
1110 #layout: #(#LayoutFrame 2 0.0 -22 1 -83 1.0 0 1.0) |
1305 #layout: #(#LayoutFrame 28 0.0 0 0.0 0 1.0 0 1.0) |
1111 #level: -1 |
1306 #level: 1 |
1112 #labelChannel: #imageInfoHolder |
1307 #component: |
1113 #resizeForLabel: false |
1308 #(#SpecCollection |
1114 #adjust: #left |
1309 #collection: #( |
1115 ) |
1310 #(#ArbitraryComponentSpec |
1116 #(#ArrowButtonSpec |
1311 #name: 'imageEditView' |
1117 #name: 'magnifyDownButton' |
1312 #layout: #(#LayoutFrame 2 0.0 2 0.0 -2 1.0 -24 1.0) |
1118 #layout: #(#LayoutFrame -80 1 -22 1 -58 1 0 1) |
1313 #hasHorizontalScrollBar: true |
1119 #activeHelpKey: #magnifyImageDown |
1314 #hasVerticalScrollBar: true |
1120 #model: #doMagnifyDown |
1315 #hasBorder: false |
1121 #enableChannel: #imageIsLoaded |
1316 #component: #ImageEditView |
1122 #isTriggerOnDown: true |
1317 ) |
1123 #direction: #left |
1318 #(#LabelSpec |
1124 ) |
1319 #name: 'coordLabel' |
1125 #(#ArrowButtonSpec |
1320 #layout: #(#LayoutFrame 2 0.0 -22 1 -83 1.0 0 1.0) |
1126 #name: 'magnifyUpButton' |
1321 #level: -1 |
1127 #layout: #(#LayoutFrame -24 1 -22 1 -2 1 0 1) |
1322 #labelChannel: #imageInfoHolder |
1128 #activeHelpKey: #magnifyImageUp |
1323 #resizeForLabel: false |
1129 #model: #doMagnifyUp |
1324 #adjust: #left |
1130 #enableChannel: #imageIsLoaded |
1325 ) |
1131 #isTriggerOnDown: true |
1326 #(#ArrowButtonSpec |
1132 #direction: #right |
1327 #name: 'magnifyDownButton' |
1133 ) |
1328 #layout: #(#LayoutFrame -80 1 -22 1 -58 1 0 1) |
1134 #(#InputFieldSpec |
1329 #activeHelpKey: #magnifyImageDown |
1135 #name: 'magnificationInputField' |
1330 #model: #doMagnifyDown |
1136 #layout: #(#LayoutFrame -57 1 -22 1 -26 1 0 1) |
1331 #enableChannel: #imageIsLoaded |
1137 #activeHelpKey: #magnificationNumber |
1332 #isTriggerOnDown: true |
1138 #enableChannel: #imageIsLoaded |
1333 #direction: #left |
1139 #model: #valueOfMagnification |
1334 ) |
1140 #type: #numberInRange |
1335 #(#ArrowButtonSpec |
1141 #acceptOnReturn: false |
1336 #name: 'magnifyUpButton' |
1142 #acceptOnTab: false |
1337 #layout: #(#LayoutFrame -24 1 -22 1 -2 1 0 1) |
1143 #numChars: 2 |
1338 #activeHelpKey: #magnifyImageUp |
1144 #minValue: 1 |
1339 #model: #doMagnifyUp |
1145 #maxValue: 99 |
1340 #enableChannel: #imageIsLoaded |
1146 #acceptOnPointerLeave: false |
1341 #isTriggerOnDown: true |
|
1342 #direction: #right |
|
1343 ) |
|
1344 #(#InputFieldSpec |
|
1345 #name: 'magnificationInputField' |
|
1346 #layout: #(#LayoutFrame -57 1 -22 1 -26 1 0 1) |
|
1347 #activeHelpKey: #magnificationNumber |
|
1348 #enableChannel: #imageIsLoaded |
|
1349 #model: #valueOfMagnification |
|
1350 #type: #numberInRange |
|
1351 #acceptOnReturn: false |
|
1352 #acceptOnTab: false |
|
1353 #numChars: 2 |
|
1354 #minValue: 1 |
|
1355 #maxValue: 99 |
|
1356 #acceptOnPointerLeave: false |
|
1357 ) |
|
1358 ) |
|
1359 |
|
1360 ) |
1147 ) |
1361 ) |
1148 ) |
1362 ) |
1149 |
1363 |
1150 ) |
1364 ) |
1151 ) |
1365 ) |
1152 ) |
1366 ) |
1153 |
1367 |
1154 ) |
1368 ) |
1155 #handles: #(#Any 0.276 1.0) |
1369 #handles: #(#Any 0.3 1.0) |
1156 ) |
1370 ) |
1157 #(#UISubSpecification |
1371 #(#UISubSpecification |
1158 #name: 'infoBarSubSpec' |
1372 #name: 'infoBarSubSpec' |
1159 #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0) |
1373 #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0) |
1160 #majorKey: #ToolApplicationModel |
1374 #majorKey: #ToolApplicationModel |
1233 |
1447 |
1234 ^ |
1448 ^ |
1235 #(#Menu |
1449 #(#Menu |
1236 #( |
1450 #( |
1237 #(#MenuItem |
1451 #(#MenuItem |
|
1452 #activeHelpKey: #file |
1238 #label: '&File' |
1453 #label: '&File' |
1239 #translateLabel: true |
1454 #translateLabel: true |
1240 #activeHelpKey: #file |
|
1241 #shortcutKeyCharacter: #Cmdf |
|
1242 #submenu: |
1455 #submenu: |
1243 #(#Menu |
1456 #(#Menu |
1244 #( |
1457 #( |
1245 #(#MenuItem |
1458 #(#MenuItem |
|
1459 #activeHelpKey: #fileNewImage |
1246 #label: 'New...' |
1460 #label: 'New...' |
1247 #translateLabel: true |
1461 #itemValue: #doNewImage |
1248 #value: #doNewImage |
1462 #translateLabel: true |
1249 #activeHelpKey: #fileNewImage |
|
1250 ) |
1463 ) |
1251 #(#MenuItem |
1464 #(#MenuItem |
1252 #label: '-' |
1465 #label: '-' |
1253 ) |
1466 ) |
1254 #(#MenuItem |
1467 #(#MenuItem |
|
1468 #activeHelpKey: #fileLoadFromClass |
1255 #label: 'Load...' |
1469 #label: 'Load...' |
1256 #translateLabel: true |
1470 #itemValue: #doLoadFromClass |
1257 #value: #doLoadFromClass |
1471 #translateLabel: true |
1258 #activeHelpKey: #fileLoadFromClass |
1472 ) |
1259 ) |
1473 #(#MenuItem |
1260 #(#MenuItem |
1474 #activeHelpKey: #fileLoadFromFile |
1261 #label: 'Load from File...' |
1475 #label: 'Load from File...' |
1262 #translateLabel: true |
1476 #itemValue: #doLoadFromFile |
1263 #value: #doLoadFromFile |
1477 #translateLabel: true |
1264 #activeHelpKey: #fileLoadFromFile |
1478 ) |
1265 ) |
1479 #(#MenuItem |
1266 #(#MenuItem |
1480 #activeHelpKey: #fileGrabImage |
1267 #label: 'Grab from Screen' |
1481 #label: 'Grab from Screen' |
1268 #translateLabel: true |
1482 #itemValue: #grabScreenImage |
1269 #value: #grabScreenImage |
1483 #translateLabel: true |
1270 #activeHelpKey: #fileGrabImage |
1484 ) |
1271 ) |
1485 #(#MenuItem |
1272 #(#MenuItem |
1486 #enabled: #imageHasNextImage |
1273 #label: 'Next in Sequence' |
1487 #label: 'Next in Sequence' |
1274 #translateLabel: true |
1488 #itemValue: #nextImageInSequence |
1275 #value: #nextImageInSequence |
1489 #translateLabel: true |
1276 #enabled: #imageHasNextImage |
|
1277 ) |
1490 ) |
1278 #(#MenuItem |
1491 #(#MenuItem |
1279 #label: '-' |
1492 #label: '-' |
1280 ) |
1493 ) |
1281 #(#MenuItem |
1494 #(#MenuItem |
1282 #label: 'Save' |
|
1283 #translateLabel: true |
|
1284 #value: #doSaveMethod |
|
1285 #activeHelpKey: #fileSaveMethod |
1495 #activeHelpKey: #fileSaveMethod |
1286 #enabled: #imageIsLoadedAndClassDefined |
1496 #enabled: #imageIsLoadedAndClassDefined |
1287 ) |
1497 #label: 'Save' |
1288 #(#MenuItem |
1498 #itemValue: #doSaveMethod |
1289 #label: 'Save As...' |
1499 #translateLabel: true |
1290 #translateLabel: true |
1500 ) |
1291 #value: #doSaveMethodAs |
1501 #(#MenuItem |
1292 #activeHelpKey: #fileSaveMethodAs |
1502 #activeHelpKey: #fileSaveMethodAs |
1293 #enabled: #imageIsLoaded |
1503 #enabled: #imageIsLoaded |
|
1504 #label: 'Save As...' |
|
1505 #itemValue: #doSaveMethodAs |
|
1506 #translateLabel: true |
1294 ) |
1507 ) |
1295 #(#MenuItem |
1508 #(#MenuItem |
1296 #label: '-' |
1509 #label: '-' |
1297 ) |
1510 ) |
1298 #(#MenuItem |
1511 #(#MenuItem |
1299 #label: 'Save to File...' |
|
1300 #translateLabel: true |
|
1301 #value: #doSaveImageFileAs |
|
1302 #activeHelpKey: #fileSaveAs |
1512 #activeHelpKey: #fileSaveAs |
1303 #enabled: #imageIsLoaded |
1513 #enabled: #imageIsLoaded |
1304 ) |
1514 #label: 'Save to File...' |
1305 #(#MenuItem |
1515 #itemValue: #doSaveImageFileAs |
1306 #label: 'Save Mask to File...' |
1516 #translateLabel: true |
1307 #translateLabel: true |
1517 ) |
1308 #value: #doSaveImageMaskFileAs |
1518 #(#MenuItem |
1309 #activeHelpKey: #fileSaveMaskAs |
1519 #activeHelpKey: #fileSaveMaskAs |
1310 #enabled: #imageIsLoaded |
1520 #enabled: #imageIsLoaded |
1311 ) |
1521 #label: 'Save Mask to File...' |
1312 #(#MenuItem |
1522 #itemValue: #doSaveImageMaskFileAs |
1313 #label: 'Save As Button to File...' |
1523 #translateLabel: true |
1314 #translateLabel: true |
1524 ) |
1315 #value: #doSaveButtonImageToFileAs |
1525 #(#MenuItem |
1316 #activeHelpKey: #fileSaveButtonImageAs |
1526 #activeHelpKey: #fileSaveButtonImageAs |
1317 #enabled: #imageIsLoaded |
1527 #enabled: #imageIsLoaded |
|
1528 #label: 'Save As Button to File...' |
|
1529 #itemValue: #doSaveButtonImageToFileAs |
|
1530 #translateLabel: true |
1318 ) |
1531 ) |
1319 #(#MenuItem |
1532 #(#MenuItem |
1320 #label: '-' |
1533 #label: '-' |
1321 ) |
1534 ) |
1322 #(#MenuItem |
1535 #(#MenuItem |
1323 #label: 'Show storeString' |
|
1324 #translateLabel: true |
|
1325 #value: #doShowStoreString |
|
1326 #activeHelpKey: #fileShowStoreString |
1536 #activeHelpKey: #fileShowStoreString |
1327 #enabled: #imageIsLoaded |
1537 #enabled: #imageIsLoaded |
1328 ) |
1538 #label: 'Show storeString' |
1329 #(#MenuItem |
1539 #itemValue: #doShowStoreString |
1330 #label: 'Edit Mask' |
1540 #translateLabel: true |
1331 #translateLabel: true |
1541 ) |
1332 #value: #doEditMask |
1542 #(#MenuItem |
1333 #activeHelpKey: #fileEditMask |
1543 #activeHelpKey: #fileEditMask |
1334 #enabled: #imageIsLoaded |
1544 #enabled: #imageIsLoaded |
|
1545 #label: 'Edit Mask' |
|
1546 #itemValue: #doEditMask |
|
1547 #translateLabel: true |
1335 ) |
1548 ) |
1336 #(#MenuItem |
1549 #(#MenuItem |
1337 #label: '-' |
1550 #label: '-' |
1338 ) |
1551 ) |
1339 #(#MenuItem |
1552 #(#MenuItem |
1340 #label: 'Print' |
|
1341 #translateLabel: true |
|
1342 #value: #doPrint |
|
1343 #activeHelpKey: #filePrint |
1553 #activeHelpKey: #filePrint |
1344 #enabled: #imageIsLoaded |
1554 #enabled: #imageIsLoaded |
|
1555 #label: 'Print' |
|
1556 #itemValue: #doPrint |
|
1557 #translateLabel: true |
1345 ) |
1558 ) |
1346 #(#MenuItem |
1559 #(#MenuItem |
1347 #label: '-' |
1560 #label: '-' |
1348 ) |
1561 ) |
1349 #(#MenuItem |
1562 #(#MenuItem |
1350 #label: 'Browse Class' |
|
1351 #translateLabel: true |
|
1352 #value: #doBrowseClass |
|
1353 #activeHelpKey: #fileBrowseClass |
1563 #activeHelpKey: #fileBrowseClass |
1354 #enabled: #hasClassDefined |
1564 #enabled: #hasClassDefined |
|
1565 #label: 'Browse Class' |
|
1566 #itemValue: #doBrowseClass |
|
1567 #translateLabel: true |
1355 ) |
1568 ) |
1356 #(#MenuItem |
1569 #(#MenuItem |
1357 #label: '-' |
1570 #label: '-' |
1358 ) |
1571 ) |
1359 #(#MenuItem |
1572 #(#MenuItem |
|
1573 #activeHelpKey: #fileExit |
1360 #label: 'Exit' |
1574 #label: 'Exit' |
1361 #translateLabel: true |
1575 #itemValue: #closeRequest |
1362 #value: #closeRequest |
1576 #translateLabel: true |
1363 #activeHelpKey: #fileExit |
|
1364 ) |
1577 ) |
1365 ) |
1578 ) |
1366 nil |
1579 nil |
1367 nil |
1580 nil |
1368 ) |
1581 ) |
1369 ) |
1582 ) |
1370 #(#MenuItem |
1583 #(#MenuItem |
|
1584 #activeHelpKey: #edit |
|
1585 #enabled: #imageIsLoaded |
1371 #label: 'Edit' |
1586 #label: 'Edit' |
1372 #translateLabel: true |
1587 #translateLabel: true |
1373 #activeHelpKey: #edit |
|
1374 #enabled: #imageIsLoaded |
|
1375 #submenu: |
1588 #submenu: |
1376 #(#Menu |
1589 #(#Menu |
1377 #( |
1590 #( |
1378 #(#MenuItem |
1591 #(#MenuItem |
1379 #label: 'Undo' |
|
1380 #translateLabel: true |
|
1381 #value: #doUndo |
|
1382 #activeHelpKey: #editUndo |
1592 #activeHelpKey: #editUndo |
1383 #enabled: #valueOfCanUndo |
1593 #enabled: #valueOfCanUndo |
|
1594 #label: 'Undo' |
|
1595 #itemValue: #doUndo |
|
1596 #translateLabel: true |
1384 ) |
1597 ) |
1385 #(#MenuItem |
1598 #(#MenuItem |
1386 #label: '-' |
1599 #label: '-' |
1387 ) |
1600 ) |
1388 #(#MenuItem |
1601 #(#MenuItem |
|
1602 #activeHelpKey: #editFlipVertical |
1389 #label: 'Flip - Vertical' |
1603 #label: 'Flip - Vertical' |
1390 #translateLabel: true |
1604 #itemValue: #doFlipVertical |
1391 #value: #doFlipVertical |
1605 #translateLabel: true |
1392 #activeHelpKey: #editFlipVertical |
1606 ) |
1393 ) |
1607 #(#MenuItem |
1394 #(#MenuItem |
1608 #activeHelpKey: #editFlipHorizontal |
1395 #label: 'Flip - Horizontal' |
1609 #label: 'Flip - Horizontal' |
1396 #translateLabel: true |
1610 #itemValue: #doFlipHorizontal |
1397 #value: #doFlipHorizontal |
1611 #translateLabel: true |
1398 #activeHelpKey: #editFlipHorizontal |
|
1399 ) |
1612 ) |
1400 #(#MenuItem |
1613 #(#MenuItem |
1401 #label: '-' |
1614 #label: '-' |
1402 ) |
1615 ) |
1403 #(#MenuItem |
1616 #(#MenuItem |
|
1617 #activeHelpKey: #editResize |
1404 #label: 'Resize...' |
1618 #label: 'Resize...' |
1405 #translateLabel: true |
1619 #itemValue: #doResizeImage |
1406 #value: #doResizeImage |
1620 #translateLabel: true |
1407 #activeHelpKey: #editResize |
1621 ) |
1408 ) |
1622 #(#MenuItem |
1409 #(#MenuItem |
1623 #activeHelpKey: #editMagnifyImage |
1410 #label: 'Magnify...' |
1624 #label: 'Magnify...' |
1411 #translateLabel: true |
1625 #itemValue: #doMagnifyImage |
1412 #value: #doMagnifyImage |
1626 #translateLabel: true |
|
1627 ) |
|
1628 #(#MenuItem |
1413 #activeHelpKey: #editMagnifyImage |
1629 #activeHelpKey: #editMagnifyImage |
1414 ) |
|
1415 #(#MenuItem |
|
1416 #label: 'Magnify By...' |
1630 #label: 'Magnify By...' |
1417 #translateLabel: true |
1631 #itemValue: #doMagnifyImageBy |
1418 #value: #doMagnifyImageBy |
1632 #translateLabel: true |
1419 #activeHelpKey: #editMagnifyImage |
1633 ) |
1420 ) |
1634 #(#MenuItem |
1421 #(#MenuItem |
1635 #activeHelpKey: #editRotate |
1422 #label: 'Rotate...' |
1636 #label: 'Rotate...' |
1423 #translateLabel: true |
1637 #itemValue: #doRotateImage |
1424 #value: #doRotateImage |
1638 #translateLabel: true |
1425 #activeHelpKey: #editRotate |
|
1426 ) |
1639 ) |
1427 #(#MenuItem |
1640 #(#MenuItem |
1428 #label: '-' |
1641 #label: '-' |
1429 ) |
1642 ) |
1430 #(#MenuItem |
1643 #(#MenuItem |
1431 #label: 'Invert' |
1644 #label: 'Invert' |
1432 #translateLabel: true |
1645 #itemValue: #doNegativeImage |
1433 #value: #doNegativeImage |
1646 #translateLabel: true |
1434 ) |
1647 ) |
1435 #(#MenuItem |
1648 #(#MenuItem |
1436 #label: '-' |
1649 #label: '-' |
1437 ) |
1650 ) |
1438 #(#MenuItem |
1651 #(#MenuItem |
1440 #translateLabel: true |
1653 #translateLabel: true |
1441 #submenu: |
1654 #submenu: |
1442 #(#Menu |
1655 #(#Menu |
1443 #( |
1656 #( |
1444 #(#MenuItem |
1657 #(#MenuItem |
|
1658 #activeHelpKey: #cropAll |
1445 #label: 'All' |
1659 #label: 'All' |
|
1660 #itemValue: #doCropAll |
1446 #translateLabel: true |
1661 #translateLabel: true |
1447 #value: #doCropAll |
|
1448 #activeHelpKey: #cropAll |
|
1449 ) |
1662 ) |
1450 #(#MenuItem |
1663 #(#MenuItem |
1451 #label: '-' |
1664 #label: '-' |
1452 ) |
1665 ) |
1453 #(#MenuItem |
1666 #(#MenuItem |
|
1667 #activeHelpKey: #cropLeft |
1454 #label: 'Left' |
1668 #label: 'Left' |
|
1669 #itemValue: #doCropLeft |
1455 #translateLabel: true |
1670 #translateLabel: true |
1456 #value: #doCropLeft |
|
1457 #activeHelpKey: #cropLeft |
|
1458 ) |
1671 ) |
1459 #(#MenuItem |
1672 #(#MenuItem |
|
1673 #activeHelpKey: #cropRight |
1460 #label: 'Right' |
1674 #label: 'Right' |
|
1675 #itemValue: #doCropRight |
1461 #translateLabel: true |
1676 #translateLabel: true |
1462 #value: #doCropRight |
|
1463 #activeHelpKey: #cropRight |
|
1464 ) |
1677 ) |
1465 #(#MenuItem |
1678 #(#MenuItem |
|
1679 #activeHelpKey: #cropTop |
1466 #label: 'Top' |
1680 #label: 'Top' |
|
1681 #itemValue: #doCropTop |
1467 #translateLabel: true |
1682 #translateLabel: true |
1468 #value: #doCropTop |
|
1469 #activeHelpKey: #cropTop |
|
1470 ) |
1683 ) |
1471 #(#MenuItem |
1684 #(#MenuItem |
|
1685 #activeHelpKey: #cropBottom |
1472 #label: 'Bottom' |
1686 #label: 'Bottom' |
|
1687 #itemValue: #doCropBottom |
1473 #translateLabel: true |
1688 #translateLabel: true |
1474 #value: #doCropBottom |
|
1475 #activeHelpKey: #cropBottom |
|
1476 ) |
1689 ) |
1477 #(#MenuItem |
1690 #(#MenuItem |
1478 #label: '-' |
1691 #label: '-' |
1479 ) |
1692 ) |
1480 #(#MenuItem |
1693 #(#MenuItem |
|
1694 #activeHelpKey: #cropManual |
1481 #label: 'Manual...' |
1695 #label: 'Manual...' |
|
1696 #itemValue: #doCropManual |
1482 #translateLabel: true |
1697 #translateLabel: true |
1483 #value: #doCropManual |
|
1484 #activeHelpKey: #cropManual |
|
1485 ) |
1698 ) |
1486 ) |
1699 ) |
1487 nil |
1700 nil |
1488 nil |
1701 nil |
1489 ) |
1702 ) |
1490 ) |
1703 ) |
1491 #(#MenuItem |
1704 #(#MenuItem |
|
1705 #activeHelpKey: #shiftManual |
1492 #label: 'Shift...' |
1706 #label: 'Shift...' |
1493 #translateLabel: true |
1707 #itemValue: #doShiftManual |
1494 #value: #doShiftManual |
1708 #translateLabel: true |
1495 #activeHelpKey: #shiftManual |
1709 ) |
1496 ) |
1710 #(#MenuItem |
1497 #(#MenuItem |
1711 #activeHelpKey: #uncropManual |
1498 #label: 'Ungrop (Add Border)...' |
1712 #label: 'Ungrop (Add Border)...' |
1499 #translateLabel: true |
1713 #itemValue: #doUnCropManual |
1500 #value: #doUnCropManual |
1714 #translateLabel: true |
1501 #activeHelpKey: #uncropManual |
|
1502 ) |
1715 ) |
1503 ) |
1716 ) |
1504 nil |
1717 nil |
1505 nil |
1718 nil |
1506 ) |
1719 ) |
1507 ) |
1720 ) |
1508 #(#MenuItem |
1721 #(#MenuItem |
|
1722 #enabled: #imageIsLoaded |
|
1723 #label: 'Mode' |
|
1724 #translateLabel: true |
|
1725 #submenuChannel: #modeMenu |
|
1726 ) |
|
1727 #(#MenuItem |
|
1728 #activeHelpKey: #colorMap |
|
1729 #enabled: #imageIsLoaded |
1509 #label: 'ColorMap' |
1730 #label: 'ColorMap' |
1510 #translateLabel: true |
1731 #translateLabel: true |
1511 #activeHelpKey: #colorMap |
|
1512 #enabled: #imageIsLoaded |
|
1513 #submenu: |
1732 #submenu: |
1514 #(#Menu |
1733 #(#Menu |
1515 #( |
1734 #( |
1516 #(#MenuItem |
1735 #(#MenuItem |
|
1736 #activeHelpKey: #colorMap8 |
1517 #label: '8-Plane' |
1737 #label: '8-Plane' |
1518 #translateLabel: true |
1738 #itemValue: #colorMapMode: |
1519 #value: #colorMapMode: |
1739 #translateLabel: true |
1520 #activeHelpKey: #colorMap8 |
|
1521 #argument: '8-plane' |
1740 #argument: '8-plane' |
1522 #choice: #colorMapMode |
1741 #choice: #colorMapMode |
1523 #choiceValue: '8-plane' |
1742 #choiceValue: '8-plane' |
1524 ) |
1743 ) |
1525 #(#MenuItem |
1744 #(#MenuItem |
|
1745 #activeHelpKey: #colorMap4 |
1526 #label: '4-Plane' |
1746 #label: '4-Plane' |
1527 #translateLabel: true |
1747 #itemValue: #colorMapMode: |
1528 #value: #colorMapMode: |
1748 #translateLabel: true |
1529 #activeHelpKey: #colorMap4 |
|
1530 #argument: '4-plane' |
1749 #argument: '4-plane' |
1531 #choice: #colorMapMode |
1750 #choice: #colorMapMode |
1532 #choiceValue: '4-plane' |
1751 #choiceValue: '4-plane' |
1533 ) |
1752 ) |
1534 #(#MenuItem |
1753 #(#MenuItem |
|
1754 #activeHelpKey: #colorMap2 |
1535 #label: '2-Plane' |
1755 #label: '2-Plane' |
1536 #translateLabel: true |
1756 #itemValue: #colorMapMode: |
1537 #value: #colorMapMode: |
1757 #translateLabel: true |
1538 #activeHelpKey: #colorMap2 |
|
1539 #argument: '2-plane' |
1758 #argument: '2-plane' |
1540 #choice: #colorMapMode |
1759 #choice: #colorMapMode |
1541 #choiceValue: '2-plane' |
1760 #choiceValue: '2-plane' |
1542 ) |
1761 ) |
1543 #(#MenuItem |
1762 #(#MenuItem |
|
1763 #activeHelpKey: #colorMap1 |
1544 #label: '1-Plane' |
1764 #label: '1-Plane' |
1545 #translateLabel: true |
1765 #itemValue: #colorMapMode: |
1546 #value: #colorMapMode: |
1766 #translateLabel: true |
1547 #activeHelpKey: #colorMap1 |
|
1548 #argument: '1-plane' |
1767 #argument: '1-plane' |
1549 #choice: #colorMapMode |
1768 #choice: #colorMapMode |
1550 #choiceValue: '1-plane' |
1769 #choiceValue: '1-plane' |
1551 ) |
1770 ) |
1552 #(#MenuItem |
1771 #(#MenuItem |
1553 #label: '-' |
1772 #label: '-' |
1554 ) |
1773 ) |
1555 #(#MenuItem |
1774 #(#MenuItem |
|
1775 #activeHelpKey: #colorMap8M |
1556 #label: '8-Plane + Mask' |
1776 #label: '8-Plane + Mask' |
1557 #translateLabel: true |
1777 #itemValue: #colorMapMode: |
1558 #value: #colorMapMode: |
1778 #translateLabel: true |
1559 #activeHelpKey: #colorMap8M |
|
1560 #argument: '8-plane + mask' |
1779 #argument: '8-plane + mask' |
1561 #choice: #colorMapMode |
1780 #choice: #colorMapMode |
1562 #choiceValue: '8-plane + mask' |
1781 #choiceValue: '8-plane + mask' |
1563 ) |
1782 ) |
1564 #(#MenuItem |
1783 #(#MenuItem |
|
1784 #activeHelpKey: #colorMap4M |
1565 #label: '4-Plane + Mask' |
1785 #label: '4-Plane + Mask' |
1566 #translateLabel: true |
1786 #itemValue: #colorMapMode: |
1567 #value: #colorMapMode: |
1787 #translateLabel: true |
1568 #activeHelpKey: #colorMap4M |
|
1569 #argument: '4-plane + mask' |
1788 #argument: '4-plane + mask' |
1570 #choice: #colorMapMode |
1789 #choice: #colorMapMode |
1571 #choiceValue: '4-plane + mask' |
1790 #choiceValue: '4-plane + mask' |
1572 ) |
1791 ) |
1573 #(#MenuItem |
1792 #(#MenuItem |
|
1793 #activeHelpKey: #colorMap2M |
1574 #label: '2-Plane + Mask' |
1794 #label: '2-Plane + Mask' |
1575 #translateLabel: true |
1795 #itemValue: #colorMapMode: |
1576 #value: #colorMapMode: |
1796 #translateLabel: true |
1577 #activeHelpKey: #colorMap2M |
|
1578 #argument: '2-plane + mask' |
1797 #argument: '2-plane + mask' |
1579 #choice: #colorMapMode |
1798 #choice: #colorMapMode |
1580 #choiceValue: '2-plane + mask' |
1799 #choiceValue: '2-plane + mask' |
1581 ) |
1800 ) |
1582 #(#MenuItem |
1801 #(#MenuItem |
|
1802 #activeHelpKey: #colorMap1M |
1583 #label: '1-Plane + Mask' |
1803 #label: '1-Plane + Mask' |
1584 #translateLabel: true |
1804 #itemValue: #colorMapMode: |
1585 #value: #colorMapMode: |
1805 #translateLabel: true |
1586 #activeHelpKey: #colorMap1M |
|
1587 #argument: '1-plane + mask' |
1806 #argument: '1-plane + mask' |
1588 #choice: #colorMapMode |
1807 #choice: #colorMapMode |
1589 #choiceValue: '1-plane + mask' |
1808 #choiceValue: '1-plane + mask' |
1590 ) |
1809 ) |
1591 #(#MenuItem |
1810 #(#MenuItem |
1592 #label: '-' |
1811 #label: '-' |
1593 ) |
1812 ) |
1594 #(#MenuItem |
1813 #(#MenuItem |
1595 #label: 'Compress Colormap' |
|
1596 #translateLabel: true |
|
1597 #value: #compressColorMap |
|
1598 #activeHelpKey: #compressColormap |
1814 #activeHelpKey: #compressColormap |
1599 #enabled: #hasColormap |
1815 #enabled: #hasColormap |
1600 ) |
1816 #label: 'Compress Colormap' |
1601 #(#MenuItem |
1817 #itemValue: #compressColorMap |
|
1818 #translateLabel: true |
|
1819 ) |
|
1820 #(#MenuItem |
|
1821 #enabled: #hasColormap |
1602 #label: 'Sort Colormap' |
1822 #label: 'Sort Colormap' |
1603 #translateLabel: true |
1823 #itemValue: #sortColorMap |
1604 #value: #sortColorMap |
1824 #translateLabel: true |
1605 #enabled: #hasColormap |
|
1606 ) |
1825 ) |
1607 #(#MenuItem |
1826 #(#MenuItem |
1608 #label: 'Reduce Number of Colors...' |
1827 #label: 'Reduce Number of Colors...' |
1609 #translateLabel: true |
1828 #itemValue: #reduceNumberOfColors |
1610 #value: #reduceNumberOfColors |
1829 #translateLabel: true |
1611 ) |
1830 ) |
1612 #(#MenuItem |
1831 #(#MenuItem |
1613 #label: '-' |
1832 #label: '-' |
1614 ) |
1833 ) |
1615 #(#MenuItem |
1834 #(#MenuItem |
1616 #label: 'Make GrayScale' |
1835 #label: 'Make GrayScale' |
1617 #translateLabel: true |
1836 #itemValue: #makeGrayScale |
1618 #value: #makeGrayScale |
1837 #translateLabel: true |
1619 ) |
1838 ) |
1620 #(#MenuItem |
1839 #(#MenuItem |
1621 #label: 'Make Brighter' |
1840 #label: 'Make Brighter' |
1622 #translateLabel: true |
1841 #itemValue: #makeBrighter |
1623 #value: #makeBrighter |
1842 #translateLabel: true |
1624 ) |
1843 ) |
1625 #(#MenuItem |
1844 #(#MenuItem |
1626 #label: 'Make Darker' |
1845 #label: 'Make Darker' |
1627 #translateLabel: true |
1846 #itemValue: #makeDarker |
1628 #value: #makeDarker |
1847 #translateLabel: true |
1629 ) |
1848 ) |
1630 #(#MenuItem |
1849 #(#MenuItem |
1631 #label: 'Make Inverse' |
1850 #label: 'Make Inverse' |
1632 #translateLabel: true |
1851 #itemValue: #makeInverse |
1633 #value: #makeInverse |
1852 #translateLabel: true |
1634 ) |
1853 ) |
1635 #(#MenuItem |
1854 #(#MenuItem |
1636 #label: '-' |
1855 #label: '-' |
1637 ) |
1856 ) |
1638 #(#MenuItem |
1857 #(#MenuItem |
1639 #label: 'Copy Mask' |
|
1640 #translateLabel: true |
|
1641 #value: #copyMask |
|
1642 #activeHelpKey: #copyMask |
1858 #activeHelpKey: #copyMask |
1643 #enabled: #hasMask |
1859 #enabled: #hasMask |
1644 ) |
1860 #label: 'Copy Mask' |
1645 #(#MenuItem |
1861 #itemValue: #copyMask |
1646 #label: 'Paste Mask' |
1862 #translateLabel: true |
1647 #translateLabel: true |
1863 ) |
1648 #value: #pasteMask |
1864 #(#MenuItem |
1649 #activeHelpKey: #pasteMask |
1865 #activeHelpKey: #pasteMask |
1650 #enabled: #hasMask |
1866 #enabled: #hasMask |
|
1867 #label: 'Paste Mask' |
|
1868 #itemValue: #pasteMask |
|
1869 #translateLabel: true |
1651 ) |
1870 ) |
1652 #(#MenuItem |
1871 #(#MenuItem |
1653 #label: 'Clear Masked Pixels' |
1872 #label: 'Clear Masked Pixels' |
1654 #translateLabel: true |
1873 #itemValue: #clearMaskedPixels |
1655 #value: #clearMaskedPixels |
1874 #translateLabel: true |
1656 ) |
1875 ) |
1657 ) |
1876 ) |
1658 nil |
1877 nil |
1659 nil |
1878 nil |
1660 ) |
1879 ) |
1753 |
1972 |
1754 ^ |
1973 ^ |
1755 #(#Menu |
1974 #(#Menu |
1756 #( |
1975 #( |
1757 #(#MenuItem |
1976 #(#MenuItem |
|
1977 #activeHelpKey: #fileNewImage |
1758 #label: 'newImage' |
1978 #label: 'newImage' |
|
1979 #itemValue: #doNewImage |
|
1980 #translateLabel: true |
1759 #isButton: true |
1981 #isButton: true |
1760 #value: #doNewImage |
|
1761 #activeHelpKey: #fileNewImage |
|
1762 #labelImage: #(#ResourceRetriever #Icon #newIcon) |
1982 #labelImage: #(#ResourceRetriever #Icon #newIcon) |
1763 ) |
1983 ) |
1764 #(#MenuItem |
1984 #(#MenuItem |
|
1985 #activeHelpKey: #fileLoadFromClass |
1765 #label: 'loadFromClass' |
1986 #label: 'loadFromClass' |
|
1987 #itemValue: #doLoadFromClass |
|
1988 #translateLabel: true |
1766 #isButton: true |
1989 #isButton: true |
1767 #value: #doLoadFromClass |
|
1768 #activeHelpKey: #fileLoadFromClass |
|
1769 #labelImage: #(#ResourceRetriever #Icon #loadIcon) |
1990 #labelImage: #(#ResourceRetriever #Icon #loadIcon) |
1770 ) |
1991 ) |
1771 #(#MenuItem |
1992 #(#MenuItem |
1772 #label: 'saveMethod' |
|
1773 #isButton: true |
|
1774 #value: #doSaveMethod |
|
1775 #activeHelpKey: #fileSaveMethod |
1993 #activeHelpKey: #fileSaveMethod |
1776 #enabled: #imageIsLoaded |
1994 #enabled: #imageIsLoaded |
|
1995 #label: 'saveMethod' |
|
1996 #itemValue: #doSaveMethod |
|
1997 #translateLabel: true |
|
1998 #isButton: true |
1777 #labelImage: #(#ResourceRetriever #Icon #saveIcon) |
1999 #labelImage: #(#ResourceRetriever #Icon #saveIcon) |
1778 ) |
2000 ) |
1779 #(#MenuItem |
2001 #(#MenuItem |
1780 #label: '' |
2002 #label: '' |
1781 ) |
2003 ) |
1782 #(#MenuItem |
2004 #(#MenuItem |
1783 #label: '' |
2005 #label: '' |
1784 ) |
2006 ) |
1785 #(#MenuItem |
2007 #(#MenuItem |
1786 #label: '' |
2008 #activeHelpKey: #editUndo |
|
2009 #enabled: #valueOfCanUndo |
|
2010 #label: 'Undo' |
|
2011 #itemValue: #doUndo |
|
2012 #translateLabel: true |
|
2013 #isButton: true |
|
2014 #labelImage: #(#ResourceRetriever #ToolbarIconLibrary #undo16x16Icon2) |
1787 ) |
2015 ) |
|
2016 ) |
|
2017 nil |
|
2018 nil |
|
2019 ) |
|
2020 ! |
|
2021 |
|
2022 modeMenu |
|
2023 "This resource specification was automatically generated |
|
2024 by the MenuEditor of ST/X." |
|
2025 |
|
2026 "Do not manually edit this!! If it is corrupted, |
|
2027 the MenuEditor may not be able to read the specification." |
|
2028 |
|
2029 " |
|
2030 MenuEditor new openOnClass:ImageEditor andSelector:#modeMenu |
|
2031 (Menu new fromLiteralArrayEncoding:(ImageEditor modeMenu)) startUp |
|
2032 " |
|
2033 |
|
2034 <resource: #menu> |
|
2035 |
|
2036 ^ |
|
2037 #(#Menu |
|
2038 #( |
1788 #(#MenuItem |
2039 #(#MenuItem |
1789 #label: '' |
|
1790 ) |
|
1791 #(#MenuItem |
|
1792 #label: 'Point' |
|
1793 #activeHelpKey: #drawModePoint |
2040 #activeHelpKey: #drawModePoint |
1794 #enabled: #imageIsLoaded |
2041 #enabled: #imageIsLoaded |
|
2042 #label: 'Point' |
|
2043 #translateLabel: true |
1795 #choice: #editMode |
2044 #choice: #editMode |
1796 #choiceValue: #point |
2045 #choiceValue: #point |
1797 ) |
2046 ) |
1798 #(#MenuItem |
2047 #(#MenuItem |
1799 #label: 'Rect' |
|
1800 #activeHelpKey: #drawModeBox |
2048 #activeHelpKey: #drawModeBox |
1801 #enabled: #imageIsLoaded |
2049 #enabled: #imageIsLoaded |
|
2050 #label: 'Rect' |
|
2051 #translateLabel: true |
1802 #choice: #editMode |
2052 #choice: #editMode |
1803 #choiceValue: #box |
2053 #choiceValue: #box |
1804 ) |
2054 ) |
1805 #(#MenuItem |
2055 #(#MenuItem |
1806 #label: 'FillRect' |
|
1807 #activeHelpKey: #drawModeFilledBox |
2056 #activeHelpKey: #drawModeFilledBox |
1808 #enabled: #imageIsLoaded |
2057 #enabled: #imageIsLoaded |
|
2058 #label: 'FillRect' |
|
2059 #translateLabel: true |
1809 #choice: #editMode |
2060 #choice: #editMode |
1810 #choiceValue: #filledBox |
2061 #choiceValue: #filledBox |
1811 ) |
2062 ) |
1812 #(#MenuItem |
2063 #(#MenuItem |
1813 #label: 'Fill' |
|
1814 #activeHelpKey: #drawModeFill |
2064 #activeHelpKey: #drawModeFill |
1815 #enabled: #imageIsLoaded |
2065 #enabled: #imageIsLoaded |
|
2066 #label: 'Fill' |
|
2067 #translateLabel: true |
1816 #choice: #editMode |
2068 #choice: #editMode |
1817 #choiceValue: #fill |
2069 #choiceValue: #fill |
1818 ) |
2070 ) |
1819 #(#MenuItem |
2071 #(#MenuItem |
1820 #label: 'Copy' |
|
1821 #activeHelpKey: #drawModeCopy |
2072 #activeHelpKey: #drawModeCopy |
1822 #enabled: #imageIsLoaded |
2073 #enabled: #imageIsLoaded |
|
2074 #label: 'Copy' |
|
2075 #translateLabel: true |
1823 #choice: #editMode |
2076 #choice: #editMode |
1824 #choiceValue: #copy |
2077 #choiceValue: #copy |
1825 ) |
2078 ) |
1826 #(#MenuItem |
2079 #(#MenuItem |
1827 #label: 'Paste' |
|
1828 #activeHelpKey: #drawModePaste |
2080 #activeHelpKey: #drawModePaste |
1829 #enabled: #imageIsLoaded |
2081 #enabled: #imageIsLoaded |
|
2082 #label: 'Paste' |
|
2083 #translateLabel: true |
1830 #choice: #editMode |
2084 #choice: #editMode |
1831 #choiceValue: #paste |
2085 #choiceValue: #paste |
1832 ) |
2086 ) |
1833 #(#MenuItem |
2087 #(#MenuItem |
1834 #label: 'Paste Under' |
|
1835 #activeHelpKey: #drawModePasteUnder |
2088 #activeHelpKey: #drawModePasteUnder |
1836 #enabled: #imageIsLoaded |
2089 #enabled: #imageIsLoaded |
|
2090 #label: 'Paste Under' |
|
2091 #translateLabel: true |
1837 #choice: #editMode |
2092 #choice: #editMode |
1838 #choiceValue: #pasteUnder |
2093 #choiceValue: #pasteUnder |
1839 ) |
2094 ) |
1840 #(#MenuItem |
2095 #(#MenuItem |
1841 #label: 'Paste With Mask' |
|
1842 #activeHelpKey: #drawModePasteWithMask |
2096 #activeHelpKey: #drawModePasteWithMask |
1843 #enabled: #imageIsLoaded |
2097 #enabled: #imageIsLoaded |
|
2098 #label: 'Paste With Mask' |
|
2099 #translateLabel: true |
1844 #choice: #editMode |
2100 #choice: #editMode |
1845 #choiceValue: #pasteWithMask |
2101 #choiceValue: #pasteWithMask |
1846 ) |
2102 ) |
1847 #(#MenuItem |
2103 #(#MenuItem |
1848 #label: 'Special' |
|
1849 #activeHelpKey: #drawModeSpecial |
2104 #activeHelpKey: #drawModeSpecial |
1850 #enabled: #imageIsLoaded |
2105 #enabled: #imageIsLoaded |
|
2106 #label: 'Special' |
|
2107 #translateLabel: true |
1851 #choice: #editMode |
2108 #choice: #editMode |
1852 #choiceValue: #specialOperation |
2109 #choiceValue: #specialOperation |
1853 ) |
2110 ) |
1854 ) |
2111 ) |
1855 nil |
2112 nil |
1876 #( |
2133 #( |
1877 #(#MenuItem |
2134 #(#MenuItem |
1878 #label: 'TileMode' |
2135 #label: 'TileMode' |
1879 #translateLabel: true |
2136 #translateLabel: true |
1880 #indication: #tileModeHolder |
2137 #indication: #tileModeHolder |
|
2138 ) |
|
2139 ) |
|
2140 nil |
|
2141 nil |
|
2142 ) |
|
2143 ! |
|
2144 |
|
2145 toolsMenuToolbar |
|
2146 "This resource specification was automatically generated |
|
2147 by the MenuEditor of ST/X." |
|
2148 |
|
2149 "Do not manually edit this!! If it is corrupted, |
|
2150 the MenuEditor may not be able to read the specification." |
|
2151 |
|
2152 " |
|
2153 MenuEditor new openOnClass:ImageEditor andSelector:#toolsMenuToolbar |
|
2154 (Menu new fromLiteralArrayEncoding:(ImageEditor toolsMenuToolbar)) startUp |
|
2155 " |
|
2156 |
|
2157 <resource: #menu> |
|
2158 |
|
2159 ^ |
|
2160 #(#Menu |
|
2161 #( |
|
2162 #(#MenuItem |
|
2163 #activeHelpKey: #drawModePoint |
|
2164 #enabled: #imageIsLoaded |
|
2165 #label: 'Point' |
|
2166 #translateLabel: true |
|
2167 #isButton: true |
|
2168 #labelImage: #(#ResourceRetriever #ImageEditor #pointIcon) |
|
2169 #choice: #editMode |
|
2170 #choiceValue: #point |
|
2171 ) |
|
2172 #(#MenuItem |
|
2173 #activeHelpKey: #drawModeBox |
|
2174 #enabled: #imageIsLoaded |
|
2175 #label: 'Rect' |
|
2176 #translateLabel: true |
|
2177 #isButton: true |
|
2178 #labelImage: #(#ResourceRetriever #ImageEditor #rectIcon) |
|
2179 #choice: #editMode |
|
2180 #choiceValue: #box |
|
2181 ) |
|
2182 #(#MenuItem |
|
2183 #activeHelpKey: #drawModeFilledBox |
|
2184 #enabled: #imageIsLoaded |
|
2185 #label: 'FillRect' |
|
2186 #translateLabel: true |
|
2187 #isButton: true |
|
2188 #labelImage: #(#ResourceRetriever #ImageEditor #fillRectIcon) |
|
2189 #choice: #editMode |
|
2190 #choiceValue: #filledBox |
|
2191 ) |
|
2192 #(#MenuItem |
|
2193 #activeHelpKey: #drawModeFill |
|
2194 #enabled: #imageIsLoaded |
|
2195 #label: 'Fill' |
|
2196 #translateLabel: true |
|
2197 #isButton: true |
|
2198 #labelImage: #(#ResourceRetriever #ImageEditor #fillIcon) |
|
2199 #choice: #editMode |
|
2200 #choiceValue: #fill |
|
2201 ) |
|
2202 #(#MenuItem |
|
2203 #activeHelpKey: #drawModeCopy |
|
2204 #enabled: #imageIsLoaded |
|
2205 #label: 'Copy' |
|
2206 #translateLabel: true |
|
2207 #isButton: true |
|
2208 #labelImage: #(#ResourceRetriever #ImageEditor #copyIcon) |
|
2209 #choice: #editMode |
|
2210 #choiceValue: #copy |
|
2211 ) |
|
2212 #(#MenuItem |
|
2213 #activeHelpKey: #drawModePaste |
|
2214 #enabled: #imageIsLoaded |
|
2215 #label: 'Paste' |
|
2216 #translateLabel: true |
|
2217 #isButton: true |
|
2218 #labelImage: #(#ResourceRetriever #ImageEditor #pasteIcon) |
|
2219 #choice: #editMode |
|
2220 #choiceValue: #paste |
|
2221 ) |
|
2222 #(#MenuItem |
|
2223 #activeHelpKey: #drawModePasteUnder |
|
2224 #enabled: #imageIsLoaded |
|
2225 #label: 'Paste Under' |
|
2226 #translateLabel: true |
|
2227 #isButton: true |
|
2228 #labelImage: #(#ResourceRetriever #ImageEditor #pasteUnderIcon) |
|
2229 #choice: #editMode |
|
2230 #choiceValue: #pasteUnder |
|
2231 ) |
|
2232 #(#MenuItem |
|
2233 #activeHelpKey: #drawModePasteWithMask |
|
2234 #enabled: #imageIsLoaded |
|
2235 #label: 'Paste With Mask' |
|
2236 #translateLabel: true |
|
2237 #isButton: true |
|
2238 #labelImage: #(#ResourceRetriever #ImageEditor #pasteWithMaskIcon) |
|
2239 #choice: #editMode |
|
2240 #choiceValue: #pasteWithMask |
|
2241 ) |
|
2242 #(#MenuItem |
|
2243 #activeHelpKey: #drawModeSpecial |
|
2244 #enabled: #imageIsLoaded |
|
2245 #label: 'Special' |
|
2246 #translateLabel: true |
|
2247 #isButton: true |
|
2248 #labelImage: #(#ResourceRetriever #ImageEditor #specialIcon) |
|
2249 #choice: #editMode |
|
2250 #choiceValue: #specialOperation |
1881 ) |
2251 ) |
1882 ) |
2252 ) |
1883 nil |
2253 nil |
1884 nil |
2254 nil |
1885 ) |
2255 ) |
3712 ! |
4082 ! |
3713 |
4083 |
3714 doNewImage |
4084 doNewImage |
3715 "opens a dialog with choices of size and color map for creating a new image" |
4085 "opens a dialog with choices of size and color map for creating a new image" |
3716 |
4086 |
3717 |aspects width height cMap imageClass image szString| |
4087 |aspects width height cMapString cMap imageClass image szString| |
3718 |
|
3719 |
4088 |
3720 aspects := IdentityDictionary new |
4089 aspects := IdentityDictionary new |
3721 at:#listOfSizes put: self class listOfDefaultSizes asValue; |
4090 at:#listOfSizes put: self class listOfDefaultSizes asValue; |
3722 at:#listOfColorMaps put: self class listOfColorMaps keys asSortedCollection asValue; |
4091 at:#listOfColorMaps put: self class listOfColorMaps keys asSortedCollection asValue; |
3723 at:#selectionOfSize put: self class listOfDefaultSizes first copy asValue; |
4092 at:#selectionOfSize put: (LastSizeString ? self class listOfDefaultSizes first copy) asValue; |
3724 at:#selectionOfColorMap put: self class listOfColorMaps keys asSortedCollection first asValue; |
4093 at:#selectionOfColorMap put: (LastColormapMode ? self class listOfColorMaps keys asSortedCollection first) asValue; |
3725 yourself. |
4094 yourself. |
3726 |
4095 |
3727 (self openDialogInterface:#dialogSpecForNewImage withBindings:aspects) |
4096 (self openDialogInterface:#dialogSpecForNewImage withBindings:aspects) |
3728 ifTrue:[ |
4097 ifTrue:[ |
3729 szString := (aspects at:#selectionOfSize) value. |
4098 szString := (aspects at:#selectionOfSize) value. |
3730 width := 128 min: (Integer readFromString: (szString upTo: $x) onError:[24]). |
4099 width := 128 min: (Integer readFromString: (szString upTo: $x) onError:[24]). |
3731 height := 128 min: (Integer readFromString: (szString copy reverse upTo: $x) reverse onError:[24]). |
4100 height := 128 min: (Integer readFromString: (szString copy reverse upTo: $x) reverse onError:[24]). |
3732 |
4101 |
|
4102 cMapString := (aspects at:#selectionOfColorMap) value. |
3733 cMap := (self class listOfColorMaps at: (colorMapMode value: (aspects at:#selectionOfColorMap) value) value). |
4103 cMap := (self class listOfColorMaps at: (colorMapMode value: (aspects at:#selectionOfColorMap) value) value). |
3734 imageClass := Image implementorForDepth: ((cMap size log: 2) asInteger). |
4104 imageClass := Image implementorForDepth: ((cMap size log: 2) asInteger). |
3735 image := imageClass width: width height: height fromArray: (ByteArray new: width*height). |
4105 image := imageClass width: width height: height fromArray: (ByteArray new: width*height). |
|
4106 |
|
4107 LastSizeString := szString. |
|
4108 LastColormapMode := cMapString. |
3736 |
4109 |
3737 (colorMapMode value endsWith: 'mask') |
4110 (colorMapMode value endsWith: 'mask') |
3738 ifTrue: |
4111 ifTrue: |
3739 [ |
4112 [ |
3740 image mask: (Depth1Image width: width height: height depth: 1 fromArray: (ByteArray new: width*height)) clearMaskedPixels |
4113 image mask: (Depth1Image width: width height: height depth: 1 fromArray: (ByteArray new: width*height)) clearMaskedPixels |