ProcessMonitorV2.st
changeset 15753 cb4ef7cdc7f1
parent 15396 e344d3ab7af0
child 15756 9f212f4609db
equal deleted inserted replaced
15752:72c6ed3fe931 15753:cb4ef7cdc7f1
   261     "
   261     "
   262 
   262 
   263     <resource: #image>
   263     <resource: #image>
   264 
   264 
   265     ^Icon
   265     ^Icon
   266         constantNamed:'ProcessMonitorV2 class defaultIcon'
   266 	constantNamed:'ProcessMonitorV2 class defaultIcon'
   267         ifAbsentPut:[(Depth1Image new) width: 32; height: 32; photometric:(#whiteIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
   267 	ifAbsentPut:[(Depth1Image new) width: 32; height: 32; photometric:(#whiteIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
   268 @@@@@G????9@@@@BP@@@@$O?>@I@@@@BP??8@$@@@@IC?? BP@@@@$@@@@I@@@@BP@@@@$M,@@IC[@@BP@@@@$@@@@I@@@@BP@@@@$@@@@I@@@@BP@@@@$@@
   268 @@@@@G????9@@@@BP@@@@$O?>@I@@@@BP??8@$@@@@IC?? BP@@@@$@@@@I@@@@BP@@@@$M,@@IC[@@BP@@@@$@@@@I@@@@BP@@@@$@@@@I@@@@BP@@@@$@@
   269 @@I????>@@@@@CLX7L0*)QDPJ*TQDCL%FH #IQADH*TPQBJX7Y b') ; yourself]
   269 @@I????>@@@@@CLX7L0*)QDPJ*TQDCL%FH #IQADH*TPQBJX7Y b') ; yourself]
   270 !
   270 !
   271 
   271 
   272 detailsMenuIconDown
   272 detailsMenuIconDown
   277      the ImageEditor may not be able to read the specification."
   277      the ImageEditor may not be able to read the specification."
   278     "
   278     "
   279      self detailsMenuIconDown inspect
   279      self detailsMenuIconDown inspect
   280      ImageEditor openOnClass:self andSelector:#detailsMenuIconDown
   280      ImageEditor openOnClass:self andSelector:#detailsMenuIconDown
   281      Icon flushCachedIcons"
   281      Icon flushCachedIcons"
   282     
   282 
   283     ^ Icon constantNamed:#'ProcessMonitorV2 class detailsMenuIconDown'
   283     ^ Icon constantNamed:#'ProcessMonitorV2 class detailsMenuIconDown'
   284         ifAbsentPut:[
   284 	ifAbsentPut:[
   285             (Depth1Image new)
   285 	    (Depth1Image new)
   286                 width:7;
   286 		width:7;
   287                 height:5;
   287 		height:5;
   288                 photometric:(#palette);
   288 		photometric:(#palette);
   289                 bitsPerSample:(#( 1 ));
   289 		bitsPerSample:(#( 1 ));
   290                 samplesPerPixel:(1);
   290 		samplesPerPixel:(1);
   291                 bits:(ByteArray fromPackedString:'@@@@@@@b');
   291 		bits:(ByteArray fromPackedString:'@@@@@@@b');
   292                 colorMapFromArray:#[ 0 0 0 255 255 255 ];
   292 		colorMapFromArray:#[ 0 0 0 255 255 255 ];
   293                 mask:((ImageMask new)
   293 		mask:((ImageMask new)
   294                             width:7;
   294 			    width:7;
   295                             height:5;
   295 			    height:5;
   296                             bits:(ByteArray fromPackedString:'@A@(UJ(b');
   296 			    bits:(ByteArray fromPackedString:'@A@(UJ(b');
   297                             yourself);
   297 			    yourself);
   298                 yourself
   298 		yourself
   299         ]
   299 	]
   300 !
   300 !
   301 
   301 
   302 detailsMenuIconUp
   302 detailsMenuIconUp
   303     <resource: #image>
   303     <resource: #image>
   304     "This resource specification was automatically generated
   304     "This resource specification was automatically generated
   307      the ImageEditor may not be able to read the specification."
   307      the ImageEditor may not be able to read the specification."
   308     "
   308     "
   309      self detailsMenuIconUp inspect
   309      self detailsMenuIconUp inspect
   310      ImageEditor openOnClass:self andSelector:#detailsMenuIconUp
   310      ImageEditor openOnClass:self andSelector:#detailsMenuIconUp
   311      Icon flushCachedIcons"
   311      Icon flushCachedIcons"
   312     
   312 
   313     ^ Icon constantNamed:#'ProcessMonitorV2 class detailsMenuIconUp'
   313     ^ Icon constantNamed:#'ProcessMonitorV2 class detailsMenuIconUp'
   314         ifAbsentPut:[
   314 	ifAbsentPut:[
   315             (Depth1Image new)
   315 	    (Depth1Image new)
   316                 width:7;
   316 		width:7;
   317                 height:5;
   317 		height:5;
   318                 photometric:(#palette);
   318 		photometric:(#palette);
   319                 bitsPerSample:(#( 1 ));
   319 		bitsPerSample:(#( 1 ));
   320                 samplesPerPixel:(1);
   320 		samplesPerPixel:(1);
   321                 bits:(ByteArray fromPackedString:'@@@@@@@b');
   321 		bits:(ByteArray fromPackedString:'@@@@@@@b');
   322                 colorMapFromArray:#[ 0 0 0 255 255 255 ];
   322 		colorMapFromArray:#[ 0 0 0 255 255 255 ];
   323                 mask:((ImageMask new)
   323 		mask:((ImageMask new)
   324                             width:7;
   324 			    width:7;
   325                             height:5;
   325 			    height:5;
   326                             bits:(ByteArray fromPackedString:'*%P(D@@b');
   326 			    bits:(ByteArray fromPackedString:'*%P(D@@b');
   327                             yourself);
   327 			    yourself);
   328                 yourself
   328 		yourself
   329         ]
   329 	]
   330 !
   330 !
   331 
   331 
   332 process22x22Icon
   332 process22x22Icon
   333     <resource: #image>
   333     <resource: #image>
   334     "This resource specification was automatically generated
   334     "This resource specification was automatically generated
   337      the ImageEditor may not be able to read the specification."
   337      the ImageEditor may not be able to read the specification."
   338     "
   338     "
   339      self process22x22Icon inspect
   339      self process22x22Icon inspect
   340      ImageEditor openOnClass:self andSelector:#process22x22Icon
   340      ImageEditor openOnClass:self andSelector:#process22x22Icon
   341      Icon flushCachedIcons"
   341      Icon flushCachedIcons"
   342     
   342 
   343     ^ Icon constantNamed:#'ProcessMonitorV2 class process22x22Icon'
   343     ^ Icon constantNamed:#'ProcessMonitorV2 class process22x22Icon'
   344         ifAbsentPut:[
   344 	ifAbsentPut:[
   345             (Depth8Image new)
   345 	    (Depth8Image new)
   346                 width:22;
   346 		width:22;
   347                 height:22;
   347 		height:22;
   348                 photometric:(#palette);
   348 		photometric:(#palette);
   349                 bitsPerSample:(#( 8 ));
   349 		bitsPerSample:(#( 8 ));
   350                 samplesPerPixel:(1);
   350 		samplesPerPixel:(1);
   351                 bits:(ByteArray 
   351 		bits:(ByteArray
   352                             fromPackedString:'
   352 			    fromPackedString:'
   353 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   353 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   354 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   354 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   355 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XHB@@@@@@@@@@@A0\FA T@@@TFA XH@@@@@@@@@@@@@@@G
   355 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XHB@@@@@@@@@@@A0\FA T@@@TFA XH@@@@@@@@@@@@@@@G
   356 A XFAPTFA XH@@@@@@@@@@@@@@@@APXFA XFA XFB@@@@@@@@@@@@@@@APXHA0XFA XFAPXH@@@@@@@@@@@@@@\H@@@EA XG@@@GB@@@@@@@@@@@@@@@@@@@
   356 A XFAPTFA XH@@@@@@@@@@@@@@@@APXFA XFA XFB@@@@@@@@@@@@@@@APXHA0XFA XFAPXH@@@@@@@@@@@@@@\H@@@EA XG@@@GB@@@@@@@@@@@@@@@@@@@
   357 @@TH@@@@@@@@@@@@@@@@@@@@@@@@@@@EB@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   357 @@TH@@@@@@@@@@@@@@@@@@@@@@@@@@@EB@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   358 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   358 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   359                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   359 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   360                 mask:((ImageMask new)
   360 		mask:((ImageMask new)
   361                             width:22;
   361 			    width:22;
   362                             height:22;
   362 			    height:22;
   363                             bits:(ByteArray 
   363 			    bits:(ByteArray
   364                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C?<@C?<@G?>@G?>@COL@@O@@@F@@@@@@@@@@@@@@');
   364 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C?<@C?<@G?>@G?>@COL@@O@@@F@@@@@@@@@@@@@@');
   365                             yourself);
   365 			    yourself);
   366                 yourself
   366 		yourself
   367         ]
   367 	]
   368 !
   368 !
   369 
   369 
   370 processAbort22x22Icon
   370 processAbort22x22Icon
   371     <resource: #image>
   371     <resource: #image>
   372     "This resource specification was automatically generated
   372     "This resource specification was automatically generated
   375      the ImageEditor may not be able to read the specification."
   375      the ImageEditor may not be able to read the specification."
   376     "
   376     "
   377      self processAbort22x22Icon inspect
   377      self processAbort22x22Icon inspect
   378      ImageEditor openOnClass:self andSelector:#processAbort22x22Icon
   378      ImageEditor openOnClass:self andSelector:#processAbort22x22Icon
   379      Icon flushCachedIcons"
   379      Icon flushCachedIcons"
   380     
   380 
   381     ^ Icon constantNamed:#'ProcessMonitorV2 class processAbort22x22Icon'
   381     ^ Icon constantNamed:#'ProcessMonitorV2 class processAbort22x22Icon'
   382         ifAbsentPut:[
   382 	ifAbsentPut:[
   383             (Depth8Image new)
   383 	    (Depth8Image new)
   384                 width:22;
   384 		width:22;
   385                 height:22;
   385 		height:22;
   386                 photometric:(#palette);
   386 		photometric:(#palette);
   387                 bitsPerSample:(#[ 8 ]);
   387 		bitsPerSample:(#[ 8 ]);
   388                 samplesPerPixel:(1);
   388 		samplesPerPixel:(1);
   389                 bits:(ByteArray 
   389 		bits:(ByteArray
   390                             fromPackedString:'
   390 			    fromPackedString:'
   391 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E@ @@@@@@@@@@@@@@@@@@@@@@@@@@APH@@@@@@@@@@@@@@@@@
   391 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E@ @@@@@@@@@@@@@@@@@@@@@@@@@@APH@@@@@@@@@@@@@@@@@
   392 @@@BAP@@APLC@P@@APH@@@@@@@@@@@@@@PLEAPLC@0LEAPLA@@@@@@@@@@@@@@@B@0LC@0LC@0LA@@@@@@@@@@@@@@@@APLC@ DB@0LC@ @@@@@@@@@@@@@@
   392 @@@BAP@@APLC@P@@APH@@@@@@@@@@@@@@PLEAPLC@0LEAPLA@@@@@@@@@@@@@@@B@0LC@0LC@0LA@@@@@@@@@@@@@@@@APLC@ DB@0LC@ @@@@@@@@@@@@@@
   393 APLC@ D@@@TC@0LB@@@@@@@@@@@EAPLC@0D@@@@@APLC@0TB@@@@@@@@@PDC@0LB@@@@@@TC@0LA@P@@@@@@@@@@@ HC@0T@@@TC@0LA@@TE@@@@@@@@@@@B
   393 APLC@ D@@@TC@0LB@@@@@@@@@@@EAPLC@0D@@@@@APLC@0TB@@@@@@@@@PDC@0LB@@@@@@TC@0LA@P@@@@@@@@@@@ HC@0T@@@TC@0LA@@TE@@@@@@@@@@@B
   394 @0LCAPTC@0LA@@TFA TE@@@@@@@@APLC@0LC@0LC@PTFA@PFAP@@@@@@APLA@ LC@0LCAPTFA@PDA@XE@@@@@@HA@@@E@0LB@@TFA@PDA@PFA @@@@@@@@TE
   394 @0LCAPTC@0LA@@TFA TE@@@@@@@@APLC@0LC@0LC@PTFA@PFAP@@@@@@APLA@ LC@0LCAPTFA@PDA@XE@@@@@@HA@@@E@0LB@@TFA@PDA@PFA @@@@@@@@TE
   395 @@TA@@@EA XDA@PFAPT@@@@@@@@EA TE@P@@APTEA PDA @@@@@@@@@@@@TFAP@@@@TEA PDA T@@@@@@@@@@@@@A XEAPTFA PDA@X@@@@@@@@@@@@@@@TF
   395 @@TA@@@EA XDA@PFAPT@@@@@@@@EA TE@P@@APTEA PDA @@@@@@@@@@@@TFAP@@@@TEA PDA T@@@@@@@@@@@@@A XEAPTFA PDA@X@@@@@@@@@@@@@@@TF
   396 A XFA@PDA XE@@@@@@@@@@@@@@@@APTFA XFA TE@@@@@@@a');
   396 A XFA@PDA XE@@@@@@@@@@@@@@@@APTFA XFA TE@@@@@@@a');
   397                 colorMapFromArray:#[ 0 0 0 127 127 127 161 161 165 194 194 194 255 0 0 255 255 255 192 0 0 ];
   397 		colorMapFromArray:#[ 0 0 0 127 127 127 161 161 165 194 194 194 255 0 0 255 255 255 192 0 0 ];
   398                 mask:((ImageMask new)
   398 		mask:((ImageMask new)
   399                             width:22;
   399 			    width:22;
   400                             height:22;
   400 			    height:22;
   401                             bits:(ByteArray 
   401 			    bits:(ByteArray
   402                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O?? C??8C??8G??<G??<C?_<@?_0@^_0@O? @O? @G?@');
   402 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O?? C??8C??8G??<G??<C?_<@?_0@^_0@O? @O? @G?@');
   403                             yourself);
   403 			    yourself);
   404                 yourself
   404 		yourself
   405         ]
   405 	]
   406 !
   406 !
   407 
   407 
   408 processDebug22x22Icon
   408 processDebug22x22Icon
   409     <resource: #image>
   409     <resource: #image>
   410     "This resource specification was automatically generated
   410     "This resource specification was automatically generated
   413      the ImageEditor may not be able to read the specification."
   413      the ImageEditor may not be able to read the specification."
   414     "
   414     "
   415      self processDebug22x22Icon inspect
   415      self processDebug22x22Icon inspect
   416      ImageEditor openOnClass:self andSelector:#processDebug22x22Icon
   416      ImageEditor openOnClass:self andSelector:#processDebug22x22Icon
   417      Icon flushCachedIcons"
   417      Icon flushCachedIcons"
   418     
   418 
   419     ^ Icon constantNamed:#'ProcessMonitorV2 class processDebug22x22Icon'
   419     ^ Icon constantNamed:#'ProcessMonitorV2 class processDebug22x22Icon'
   420         ifAbsentPut:[
   420 	ifAbsentPut:[
   421             (Depth8Image new)
   421 	    (Depth8Image new)
   422                 width:22;
   422 		width:22;
   423                 height:22;
   423 		height:22;
   424                 photometric:(#palette);
   424 		photometric:(#palette);
   425                 bitsPerSample:(#( 8 ));
   425 		bitsPerSample:(#( 8 ));
   426                 samplesPerPixel:(1);
   426 		samplesPerPixel:(1);
   427                 bits:(ByteArray 
   427 		bits:(ByteArray
   428                             fromPackedString:'
   428 			    fromPackedString:'
   429 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@0@@@@@@@@@@@@@@@@@@@@@@@@@@A L@@@@@@@@@@@@@@@@@
   429 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@0@@@@@@@@@@@@@@@@@@@@@@@@@@A L@@@@@@@@@@@@@@@@@
   430 @@@CA @@A PD@P@@A L@@@@@@@@@@@@@@PPFA PDA@PFA PA@@@@@@@@@@@@@@@CA@PD@@@DA@PA@@@@@@@@@@@@@@@@A P@@0DC@@@D@0@@@@@@@@@@@@@@
   430 @@@CA @@A PD@P@@A L@@@@@@@@@@@@@@PPFA PDA@PFA PA@@@@@@@@@@@@@@@CA@PD@@@DA@PA@@@@@@@@@@@@@@@@A P@@0DC@@@D@0@@@@@@@@@@@@@@
   431 A PD@0@@@@X@@@@@@@@@@@@@@@@FA PDA@D@@@@@@@HB@ HB@ @@@@@@@PDDA@@@@@@@@ HBAPTEAPTB@@@@@@@@@0@B@ @B@ HEAPTEAPTEAPH@@@@@@@HB
   431 A PD@0@@@@X@@@@@@@@@@@@@@@@FA PDA@D@@@@@@@HB@ HB@ @@@@@@@PDDA@@@@@@@@ HBAPTEAPTB@@@@@@@@@0@B@ @B@ HEAPTEAPTEAPH@@@@@@@HB
   432 APTE@@HEAPTEAPTEAPTE@ @@@@@B@ TEAP@BAPTEAPTEAPTEAPH@@@@@@@HEAPT@@@@@@@@@@@@@@@@@@@@@@@HBAPTE@@HBAPTEAPTEAPTE@ @@@@@@@ HE
   432 APTE@@HEAPTEAPTEAPTE@ @@@@@B@ TEAP@BAPTEAPTEAPTEAPH@@@@@@@HEAPT@@@@@@@@@@@@@@@@@@@@@@@HBAPTE@@HBAPTEAPTEAPTE@ @@@@@@@ HE
   433 @ @B@ HEAPTEAPTE@ H@@@@@@@@@@@@@@@HB@ HB@ HB@ @@@@@@@@@@@@@@@@@@@@@B@ HB@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   433 @ @B@ HEAPTEAPTE@ H@@@@@@@@@@@@@@@HB@ HB@ HB@ @@@@@@@@@@@@@@@@@@@@@B@ HB@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   434 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   434 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   435                 colorMapFromArray:#[ 0 0 0 127 127 127 128 0 0 161 161 165 194 194 194 255 0 0 255 255 255 ];
   435 		colorMapFromArray:#[ 0 0 0 127 127 127 128 0 0 161 161 165 194 194 194 255 0 0 255 255 255 ];
   436                 mask:((ImageMask new)
   436 		mask:((ImageMask new)
   437                             width:22;
   437 			    width:22;
   438                             height:22;
   438 			    height:22;
   439                             bits:(ByteArray 
   439 			    bits:(ByteArray
   440                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?= C??XO?? _=?0_??8O??<???<C??<G??<???<_??<@??8@G?0@L? @Q#X@FA ');
   440 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?= C??XO?? _=?0_??8O??<???<C??<G??<???<_??<@??8@G?0@L? @Q#X@FA ');
   441                             yourself);
   441 			    yourself);
   442                 yourself
   442 		yourself
   443         ]
   443 	]
   444 !
   444 !
   445 
   445 
   446 processInspect22x22Icon
   446 processInspect22x22Icon
   447     <resource: #image>
   447     <resource: #image>
   448     "This resource specification was automatically generated
   448     "This resource specification was automatically generated
   451      the ImageEditor may not be able to read the specification."
   451      the ImageEditor may not be able to read the specification."
   452     "
   452     "
   453      self processInspect22x22Icon inspect
   453      self processInspect22x22Icon inspect
   454      ImageEditor openOnClass:self andSelector:#processInspect22x22Icon
   454      ImageEditor openOnClass:self andSelector:#processInspect22x22Icon
   455      Icon flushCachedIcons"
   455      Icon flushCachedIcons"
   456     
   456 
   457     ^ Icon constantNamed:#'ProcessMonitorV2 class processInspect22x22Icon'
   457     ^ Icon constantNamed:#'ProcessMonitorV2 class processInspect22x22Icon'
   458         ifAbsentPut:[
   458 	ifAbsentPut:[
   459             (Depth8Image new)
   459 	    (Depth8Image new)
   460                 width:22;
   460 		width:22;
   461                 height:22;
   461 		height:22;
   462                 photometric:(#palette);
   462 		photometric:(#palette);
   463                 bitsPerSample:(#( 8 ));
   463 		bitsPerSample:(#( 8 ));
   464                 samplesPerPixel:(1);
   464 		samplesPerPixel:(1);
   465                 bits:(ByteArray 
   465 		bits:(ByteArray
   466                             fromPackedString:'
   466 			    fromPackedString:'
   467 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   467 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   468 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA @@@@XH@@@@@@@@@@@@@@@@APXF@@@BCPH@@@@@@@@@@@@@@@@@
   468 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA @@@@XH@@@@@@@@@@@@@@@@APXF@@@BCPH@@@@@@@@@@@@@@@@@
   469 APXF@@0MCP4MCP0@@@@@@@@@@@@EAPXFA @MCPTEAP4M@@TG@@@@@@@@B@ FA @BCPTEAP4MCPH@B@@@@@@@@@@@A0\@CP4EAP4MCP4M@@@@@@@@@@@@@@@G
   469 APXF@@0MCP4MCP0@@@@@@@@@@@@EAPXFA @MCPTEAP4M@@TG@@@@@@@@B@ FA @BCPTEAP4MCPH@B@@@@@@@@@@@A0\@CP4EAP4MCP4M@@@@@@@@@@@@@@@G
   470 @@HMAP4MCP4M@ @@@@@@@@@@@@@@APX@CP4MCP4MCP@@@@@@@@@@@@@@APXH@@0MCP4MCP0@BP@@@@@@@@@@@@\H@@@@@@HM@ @@@ @@@@@@@@@@@@@@@@@@
   470 @@HMAP4MCP4M@ @@@@@@@@@@@@@@APX@CP4MCP4MCP@@@@@@@@@@@@@@APXH@@0MCP4MCP0@BP@@@@@@@@@@@@\H@@@@@@HM@ @@@ @@@@@@@@@@@@@@@@@@
   471 @@T@@@@@B @K@0@@@@@@@@@@@@@@@@@EB@@@@@@@C ,C@@@@@@@@@@@@@@@@@@@@@@@@@@@NB0L@@@@@@@@@@@@@@@@@@@@@@@@@@@8K@0@@@@@@@@@@@@@@
   471 @@T@@@@@B @K@0@@@@@@@@@@@@@@@@@EB@@@@@@@C ,C@@@@@@@@@@@@@@@@@@@@@@@@@@@NB0L@@@@@@@@@@@@@@@@@@@@@@@@@@@8K@0@@@@@@@@@@@@@@
   472 @@@@@@@@@@@@C ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   472 @@@@@@@@@@@@C ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   473                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 120 120 120 0 64 64 88 88 88 80 80 80 200 200 200 48 48 48 ];
   473 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 120 120 120 0 64 64 88 88 88 80 80 80 200 200 200 48 48 48 ];
   474                 mask:((ImageMask new)
   474 		mask:((ImageMask new)
   475                             width:22;
   475 			    width:22;
   476                             height:22;
   476 			    height:22;
   477                             bits:(ByteArray 
   477 			    bits:(ByteArray
   478                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_?? _?? O??@C?>@C?<@G?>@G??@CO/ @OG0@FC8@@A<@@@<@@@X');
   478 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_?? _?? O??@C?>@C?<@G?>@G??@CO/ @OG0@FC8@@A<@@@<@@@X');
   479                             yourself);
   479 			    yourself);
   480                 yourself
   480 		yourself
   481         ]
   481 	]
   482 !
   482 !
   483 
   483 
   484 processLowerPrio22x22Icon
   484 processLowerPrio22x22Icon
   485     <resource: #image>
   485     <resource: #image>
   486     "This resource specification was automatically generated
   486     "This resource specification was automatically generated
   489      the ImageEditor may not be able to read the specification."
   489      the ImageEditor may not be able to read the specification."
   490     "
   490     "
   491      self processLowerPrio22x22Icon inspect
   491      self processLowerPrio22x22Icon inspect
   492      ImageEditor openOnClass:self andSelector:#processLowerPrio22x22Icon
   492      ImageEditor openOnClass:self andSelector:#processLowerPrio22x22Icon
   493      Icon flushCachedIcons"
   493      Icon flushCachedIcons"
   494     
   494 
   495     ^ Icon constantNamed:#'ProcessMonitorV2 class processLowerPrio22x22Icon'
   495     ^ Icon constantNamed:#'ProcessMonitorV2 class processLowerPrio22x22Icon'
   496         ifAbsentPut:[
   496 	ifAbsentPut:[
   497             (Depth8Image new)
   497 	    (Depth8Image new)
   498                 width:22;
   498 		width:22;
   499                 height:22;
   499 		height:22;
   500                 photometric:(#palette);
   500 		photometric:(#palette);
   501                 bitsPerSample:(#( 8 ));
   501 		bitsPerSample:(#( 8 ));
   502                 samplesPerPixel:(1);
   502 		samplesPerPixel:(1);
   503                 bits:(ByteArray 
   503 		bits:(ByteArray
   504                             fromPackedString:'
   504 			    fromPackedString:'
   505 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   505 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   506 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   506 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   507 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TEAPTEAPTE@@@@@@@@A0\FA T@@@TFAP@@@@@@AP@@@@@@@@@G
   507 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TEAPTEAPTE@@@@@@@@A0\FA T@@@TFAP@@@@@@AP@@@@@@@@@G
   508 A XFAPTFA T@@@@@@@T@@@@@@@@@APXFA XFA XE@@@@@@@E@@@@@@@@APXHA0XFA XFAP@@@@@@AP@@@@@@@@\H@@@EA XEAPT@@@@@@@TEAP@@@@@@@@@@
   508 A XFAPTFA T@@@@@@@T@@@@@@@@@APXFA XFA XE@@@@@@@E@@@@@@@@APXHA0XFA XFAP@@@@@@AP@@@@@@@@\H@@@EA XEAPT@@@@@@@TEAP@@@@@@@@@@
   509 @@THAP@@@@@@@@@@@@T@@@@@@@@@@@@EB@@E@@@@@@@@@@T@@@@@@@@@@@@@@@@@@@T@@@@@@@T@@@@@@@@@@@@@@@@@@@@@AP@@@@T@@@@@@@@@@@@@@@@@
   509 @@THAP@@@@@@@@@@@@T@@@@@@@@@@@@EB@@E@@@@@@@@@@T@@@@@@@@@@@@@@@@@@@T@@@@@@@T@@@@@@@@@@@@@@@@@@@@@AP@@@@T@@@@@@@@@@@@@@@@@
   510 @@@@@@@E@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@@@@@@@a');
   510 @@@@@@@E@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@@@@@@@a');
   511                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   511 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   512                 mask:((ImageMask new)
   512 		mask:((ImageMask new)
   513                             width:22;
   513 			    width:22;
   514                             height:22;
   514 			    height:22;
   515                             bits:(ByteArray 
   515 			    bits:(ByteArray
   516                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9?0O??0C??0C??0G??0G??<CO?<@O?8@F_0@@O @@G@@@B@');
   516 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9?0O??0C??0C??0G??0G??<CO?<@O?8@F_0@@O @@G@@@B@');
   517                             yourself);
   517 			    yourself);
   518                 yourself
   518 		yourself
   519         ]
   519 	]
   520 !
   520 !
   521 
   521 
   522 processRaisePrio22x22Icon
   522 processRaisePrio22x22Icon
   523     <resource: #image>
   523     <resource: #image>
   524     "This resource specification was automatically generated
   524     "This resource specification was automatically generated
   527      the ImageEditor may not be able to read the specification."
   527      the ImageEditor may not be able to read the specification."
   528     "
   528     "
   529      self processRaisePrio22x22Icon inspect
   529      self processRaisePrio22x22Icon inspect
   530      ImageEditor openOnClass:self andSelector:#processRaisePrio22x22Icon
   530      ImageEditor openOnClass:self andSelector:#processRaisePrio22x22Icon
   531      Icon flushCachedIcons"
   531      Icon flushCachedIcons"
   532     
   532 
   533     ^ Icon constantNamed:#'ProcessMonitorV2 class processRaisePrio22x22Icon'
   533     ^ Icon constantNamed:#'ProcessMonitorV2 class processRaisePrio22x22Icon'
   534         ifAbsentPut:[
   534 	ifAbsentPut:[
   535             (Depth8Image new)
   535 	    (Depth8Image new)
   536                 width:22;
   536 		width:22;
   537                 height:22;
   537 		height:22;
   538                 photometric:(#palette);
   538 		photometric:(#palette);
   539                 bitsPerSample:(#( 8 ));
   539 		bitsPerSample:(#( 8 ));
   540                 samplesPerPixel:(1);
   540 		samplesPerPixel:(1);
   541                 bits:(ByteArray 
   541 		bits:(ByteArray
   542                             fromPackedString:'
   542 			    fromPackedString:'
   543 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   543 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   544 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   544 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   545 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XEB@@@@@@@@@@@A0\FA T@@@TFA XE@@T@@@@@@@@@@@@G
   545 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XEB@@@@@@@@@@@A0\FA T@@@TFA XE@@T@@@@@@@@@@@@G
   546 A XFAPTFA XE@@@@AP@@@@@@@@@@APXFA XFA XE@@@@@@@E@@@@@@@@APXHA0XFA XE@@@@@@@@@@T@@@@@@@\H@@@EA XE@@@@@@@@@@@@AP@@@@@@@@@@
   546 A XFAPTFA XE@@@@AP@@@@@@@@@@APXFA XFA XE@@@@@@@E@@@@@@@@APXHA0XFA XE@@@@@@@@@@T@@@@@@@\H@@@EA XE@@@@@@@@@@@@AP@@@@@@@@@@
   547 @@THAPTE@@@@@@@EAPT@@@@@@@@@@@@EB@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@T@@@@@@@T@@@@@@@@@@@@@@@@@@@@E@@@@@@@E@@@@@@@@@@@@@@@@
   547 @@THAPTE@@@@@@@EAPT@@@@@@@@@@@@EB@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@T@@@@@@@T@@@@@@@@@@@@@@@@@@@@E@@@@@@@E@@@@@@@@@@@@@@@@
   548 @@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@TEAPTEAPT@@@@a');
   548 @@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@TEAPTEAPT@@@@a');
   549                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   549 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   550                 mask:((ImageMask new)
   550 		mask:((ImageMask new)
   551                             width:22;
   551 			    width:22;
   552                             height:22;
   552 			    height:22;
   553                             bits:(ByteArray 
   553 			    bits:(ByteArray
   554                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C?? C??0G??8G??<CO?<@O_0@F_0@@_0@@_0@@_0');
   554 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C?? C??0G??8G??<CO?<@O_0@F_0@@_0@@_0@@_0');
   555                             yourself);
   555 			    yourself);
   556                 yourself
   556 		yourself
   557         ]
   557 	]
   558 !
   558 !
   559 
   559 
   560 processRestart22x22Icon
   560 processRestart22x22Icon
   561     <resource: #image>
   561     <resource: #image>
   562     "This resource specification was automatically generated
   562     "This resource specification was automatically generated
   565      the ImageEditor may not be able to read the specification."
   565      the ImageEditor may not be able to read the specification."
   566     "
   566     "
   567      self processRestart22x22Icon inspect
   567      self processRestart22x22Icon inspect
   568      ImageEditor openOnClass:self andSelector:#processRestart22x22Icon
   568      ImageEditor openOnClass:self andSelector:#processRestart22x22Icon
   569      Icon flushCachedIcons"
   569      Icon flushCachedIcons"
   570     
   570 
   571     ^ Icon constantNamed:#'ProcessMonitorV2 class processRestart22x22Icon'
   571     ^ Icon constantNamed:#'ProcessMonitorV2 class processRestart22x22Icon'
   572         ifAbsentPut:[
   572 	ifAbsentPut:[
   573             (Depth8Image new)
   573 	    (Depth8Image new)
   574                 width:22;
   574 		width:22;
   575                 height:22;
   575 		height:22;
   576                 photometric:(#palette);
   576 		photometric:(#palette);
   577                 bitsPerSample:(#( 8 ));
   577 		bitsPerSample:(#( 8 ));
   578                 samplesPerPixel:(1);
   578 		samplesPerPixel:(1);
   579                 bits:(ByteArray 
   579 		bits:(ByteArray
   580                             fromPackedString:'
   580 			    fromPackedString:'
   581 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@GAP@@@@@@@@@@@@@@@@@@@@@@@@@@A0T@@@@@@@@@@@@@@@@@
   581 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@GAP@@@@@@@@@@@@@@@@@@@@@@@@@@A0T@@@@@@@@@@@@@@@@@
   582 @@@EA0@@A0XFA@@@A0T@@@@@@@@@@@@@A@XGA0XFA XGA0XD@@@@@@@@@@@@@@@EA XFA XF@@@@@@@@@@@@@@@@@@@@A0XFAPP@@@LC@0@@@P@@@@@@@@@@
   582 @@@EA0@@A0XFA@@@A0T@@@@@@@@@@@@@A@XGA0XFA XGA0XD@@@@@@@@@@@@@@@EA XFA XF@@@@@@@@@@@@@@@@@@@@A0XFAPP@@@LC@0@@@P@@@@@@@@@@
   583 A0XFAPP@@0LC@0@E@@@@@@@@@@@GA0XFA P@@@LC@0@FA \@@@@@@@@@A@PFA XE@@LC@0@FA XD@@@@@@@@@@@@APTFA @C@0L@A XD@@@@@@@@@@@@@@@E
   583 A0XFAPP@@0LC@0@E@@@@@@@@@@@GA0XFA P@@@LC@0@FA \@@@@@@@@@A@PFA XE@@LC@0@FA XD@@@@@@@@@@@@APTFA @C@0L@A XD@@@@@@@@@@@@@@@E
   584 @@LC@0LC@0L@@@@@@@@@@@@@@@@@A0X@@0LC@0L@@@@@@@@@@@@@@@@@A0XDAP@C@0L@@@@@@@@@@@@@@@@@@@TD@@@@@@L@@@@@@@@@@@@@@@@@@@@@@@@@
   584 @@LC@0LC@0L@@@@@@@@@@@@@@@@@A0X@@0LC@0L@@@@@@@@@@@@@@@@@A0XDAP@C@0L@@@@@@@@@@@@@@@@@@@TD@@@@@@L@@@@@@@@@@@@@@@@@@@@@@@@@
   585 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   585 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   586 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   586 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   587                 colorMapFromArray:#[ 0 0 0 0 64 0 0 128 0 0 192 0 127 127 127 161 161 165 194 194 194 255 255 255 ];
   587 		colorMapFromArray:#[ 0 0 0 0 64 0 0 128 0 0 192 0 127 127 127 161 161 165 194 194 194 255 255 255 ];
   588                 mask:((ImageMask new)
   588 		mask:((ImageMask new)
   589                             width:22;
   589 			    width:22;
   590                             height:22;
   590 			    height:22;
   591                             bits:(ByteArray 
   591 			    bits:(ByteArray
   592                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?>@C?? O??0_?>P_?>HO?<@C?= C?30G?''8G7/<CCO0@PC0@HG @L_ @G?@@A<@');
   592 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?>@C?? O??0_?>P_?>HO?<@C?= C?30G?''8G7/<CCO0@PC0@HG @L_ @G?@@A<@');
   593                             yourself);
   593 			    yourself);
   594                 yourself
   594 		yourself
   595         ]
   595 	]
   596 !
   596 !
   597 
   597 
   598 processResume22x22Icon
   598 processResume22x22Icon
   599     <resource: #image>
   599     <resource: #image>
   600     "This resource specification was automatically generated
   600     "This resource specification was automatically generated
   603      the ImageEditor may not be able to read the specification."
   603      the ImageEditor may not be able to read the specification."
   604     "
   604     "
   605      self processResume22x22Icon inspect
   605      self processResume22x22Icon inspect
   606      ImageEditor openOnClass:self andSelector:#processResume22x22Icon
   606      ImageEditor openOnClass:self andSelector:#processResume22x22Icon
   607      Icon flushCachedIcons"
   607      Icon flushCachedIcons"
   608     
   608 
   609     ^ Icon constantNamed:#'ProcessMonitorV2 class processResume22x22Icon'
   609     ^ Icon constantNamed:#'ProcessMonitorV2 class processResume22x22Icon'
   610         ifAbsentPut:[
   610 	ifAbsentPut:[
   611             (Depth8Image new)
   611 	    (Depth8Image new)
   612                 width:22;
   612 		width:22;
   613                 height:22;
   613 		height:22;
   614                 photometric:(#palette);
   614 		photometric:(#palette);
   615                 bitsPerSample:(#( 8 ));
   615 		bitsPerSample:(#( 8 ));
   616                 samplesPerPixel:(1);
   616 		samplesPerPixel:(1);
   617                 bits:(ByteArray 
   617 		bits:(ByteArray
   618                             fromPackedString:'
   618 			    fromPackedString:'
   619 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   619 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   620 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   620 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   621 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TE@@THB@@@@@@@@@@@A0\FA T@@@TFAP@@AP@@@@@@@@@@@@@G
   621 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TE@@THB@@@@@@@@@@@A0\FA T@@@TFAP@@AP@@@@@@@@@@@@@G
   622 A XFAPTFA T@@@@E@@@@@@@@@@@@APXFA XFA XE@@@@@@T@@@@@@@@@APXHA0XFA XFAP@@@@@@AP@@@@@@@@\H@@@EA XG@@T@@@@@@@@E@@@@@@@@@@@@
   622 A XFAPTFA T@@@@E@@@@@@@@@@@@APXFA XFA XE@@@@@@T@@@@@@@@@APXHA0XFA XFAP@@@@@@AP@@@@@@@@\H@@@EA XG@@T@@@@@@@@E@@@@@@@@@@@@
   623 @@TH@@@E@@@@@@@@AP@@@@@@@@@@@@@EB@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@T@@@@@AP@@@@@@@@@@@@@@@@@@@@@E@@@@AP@@@@@@@@@@@@@@@@@@
   623 @@TH@@@E@@@@@@@@AP@@@@@@@@@@@@@EB@@@AP@@@@@@AP@@@@@@@@@@@@@@@@@@@@T@@@@@AP@@@@@@@@@@@@@@@@@@@@@E@@@@AP@@@@@@@@@@@@@@@@@@
   624 @@@@AP@@AP@@@@@@@@@@@@@@@@@@@@@@@@T@AP@@@@@@@@@a');
   624 @@@@AP@@AP@@@@@@@@@@@@@@@@@@@@@@@@T@AP@@@@@@@@@a');
   625                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   625 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   626                 mask:((ImageMask new)
   626 		mask:((ImageMask new)
   627                             width:22;
   627 			    width:22;
   628                             height:22;
   628 			    height:22;
   629                             bits:(ByteArray 
   629 			    bits:(ByteArray
   630                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C??@C?? G??0G??8CO_8@O_0@F_ @@_@@@^@@@\@');
   630 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C??@C?? G??0G??8CO_8@O_0@F_ @@_@@@^@@@\@');
   631                             yourself);
   631 			    yourself);
   632                 yourself
   632 		yourself
   633         ]
   633 	]
   634 !
   634 !
   635 
   635 
   636 processStop22x22Icon
   636 processStop22x22Icon
   637     <resource: #image>
   637     <resource: #image>
   638     "This resource specification was automatically generated
   638     "This resource specification was automatically generated
   641      the ImageEditor may not be able to read the specification."
   641      the ImageEditor may not be able to read the specification."
   642     "
   642     "
   643      self processStop22x22Icon inspect
   643      self processStop22x22Icon inspect
   644      ImageEditor openOnClass:self andSelector:#processStop22x22Icon
   644      ImageEditor openOnClass:self andSelector:#processStop22x22Icon
   645      Icon flushCachedIcons"
   645      Icon flushCachedIcons"
   646     
   646 
   647     ^ Icon constantNamed:#'ProcessMonitorV2 class processStop22x22Icon'
   647     ^ Icon constantNamed:#'ProcessMonitorV2 class processStop22x22Icon'
   648         ifAbsentPut:[
   648 	ifAbsentPut:[
   649             (Depth8Image new)
   649 	    (Depth8Image new)
   650                 width:22;
   650 		width:22;
   651                 height:22;
   651 		height:22;
   652                 photometric:(#palette);
   652 		photometric:(#palette);
   653                 bitsPerSample:(#( 8 ));
   653 		bitsPerSample:(#( 8 ));
   654                 samplesPerPixel:(1);
   654 		samplesPerPixel:(1);
   655                 bits:(ByteArray 
   655 		bits:(ByteArray
   656                             fromPackedString:'
   656 			    fromPackedString:'
   657 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   657 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   658 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   658 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   659 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XHB@@@@@@@@@@@A0\FA T@@@TFA XH@@@@@@@@@@@@@@@G
   659 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@@@@@TFA XHB@@@@@@@@@@@A0\FA T@@@TFA XH@@@@@@@@@@@@@@@G
   660 A XFAPTFAPTEAPTEAPTEAP@@@@@@APXFA XFA T@@@@EAP@@@@T@@@@@APXHA0XFA XE@@@@APT@@@@E@@@@@@\H@@@EA XGAP@@@@TE@@@@AP@@@@@@@@@@
   660 A XFAPTFAPTEAPTEAPTEAP@@@@@@APXFA XFA T@@@@EAP@@@@T@@@@@APXHA0XFA XE@@@@APT@@@@E@@@@@@\H@@@EA XGAP@@@@TE@@@@AP@@@@@@@@@@
   661 @@TH@@T@@@@EAP@@@@T@@@@@@@@@@@@EB@@E@@@@APT@@@@E@@@@@@@@@@@@@@@@AP@@@@TE@@@@AP@@@@@@@@@@@@@@@@T@@@@EAP@@@@T@@@@@@@@@@@@@
   661 @@TH@@T@@@@EAP@@@@T@@@@@@@@@@@@EB@@E@@@@APT@@@@E@@@@@@@@@@@@@@@@AP@@@@TE@@@@AP@@@@@@@@@@@@@@@@T@@@@EAP@@@@T@@@@@@@@@@@@@
   662 @@@E@@@@APT@@@@E@@@@@@@@@@@@@@@@APTEAPTEAPTEAP@a');
   662 @@@E@@@@APT@@@@E@@@@@@@@@@@@@@@@APTEAPTEAPTEAP@a');
   663                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   663 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   664                 mask:((ImageMask new)
   664 		mask:((ImageMask new)
   665                             width:22;
   665 			    width:22;
   666                             height:22;
   666 			    height:22;
   667                             bits:(ByteArray 
   667 			    bits:(ByteArray
   668                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C??<C??<G??<G??<CO?<@O?<@F?<@@?<@@?<@@?<');
   668 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _9? O??@C??<C??<G??<G??<CO?<@O?<@F?<@@?<@@?<@@?<');
   669                             yourself);
   669 			    yourself);
   670                 yourself
   670 		yourself
   671         ]
   671 	]
   672 !
   672 !
   673 
   673 
   674 processSuspend22x22Icon
   674 processSuspend22x22Icon
   675     <resource: #image>
   675     <resource: #image>
   676     "This resource specification was automatically generated
   676     "This resource specification was automatically generated
   679      the ImageEditor may not be able to read the specification."
   679      the ImageEditor may not be able to read the specification."
   680     "
   680     "
   681      self processSuspend22x22Icon inspect
   681      self processSuspend22x22Icon inspect
   682      ImageEditor openOnClass:self andSelector:#processSuspend22x22Icon
   682      ImageEditor openOnClass:self andSelector:#processSuspend22x22Icon
   683      Icon flushCachedIcons"
   683      Icon flushCachedIcons"
   684     
   684 
   685     ^ Icon constantNamed:#'ProcessMonitorV2 class processSuspend22x22Icon'
   685     ^ Icon constantNamed:#'ProcessMonitorV2 class processSuspend22x22Icon'
   686         ifAbsentPut:[
   686 	ifAbsentPut:[
   687             (Depth8Image new)
   687 	    (Depth8Image new)
   688                 width:22;
   688 		width:22;
   689                 height:22;
   689 		height:22;
   690                 photometric:(#palette);
   690 		photometric:(#palette);
   691                 bitsPerSample:(#( 8 ));
   691 		bitsPerSample:(#( 8 ));
   692                 samplesPerPixel:(1);
   692 		samplesPerPixel:(1);
   693                 bits:(ByteArray 
   693 		bits:(ByteArray
   694                             fromPackedString:'
   694 			    fromPackedString:'
   695 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   695 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   696 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   696 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   697 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@TEAPTEAPTEAPTEAPT@@@@@A0\FA TEAPTEAPTEAPTEAPTE@@@@@@@G
   697 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TG@@@@@@@@B@ FA XG@@TEAPTEAPTEAPTEAPT@@@@@A0\FA TEAPTEAPTEAPTEAPTE@@@@@@@G
   698 A XFAPTE@@@@@@@@@@@EAP@@@@@@APXFA TEAP@@@@@@@@@@APT@@@@@APXHA0XEAPT@@@@@@@@@@@TE@@@@@@\H@@@EAPTE@@@@@@@@@@@EAP@@@@@@@@@@
   698 A XFAPTE@@@@@@@@@@@EAP@@@@@@APXFA TEAP@@@@@@@@@@APT@@@@@APXHA0XEAPT@@@@@@@@@@@TE@@@@@@\H@@@EAPTE@@@@@@@@@@@EAP@@@@@@@@@@
   699 @@TEAP@@@@@@@@@@APT@@@@@@@@@@@@EAPT@@@@@@@@@@@TE@@@@@@@@@@@@APTE@@@@@@@@@@@EAP@@@@@@@@@@@@TEAP@@@@@@@@@@APT@@@@@@@@@@@@E
   699 @@TEAP@@@@@@@@@@APT@@@@@@@@@@@@EAPT@@@@@@@@@@@TE@@@@@@@@@@@@APTE@@@@@@@@@@@EAP@@@@@@@@@@@@TEAP@@@@@@@@@@APT@@@@@@@@@@@@E
   700 APTEAPTEAPTEAPTE@@@@@@@@@@@@APTEAPTEAPTEAPTEAP@a');
   700 APTEAPTEAPTEAPTE@@@@@@@@@@@@APTEAPTEAPTEAPTEAP@a');
   701                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   701 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 ];
   702                 mask:((ImageMask new)
   702 		mask:((ImageMask new)
   703                             width:22;
   703 			    width:22;
   704                             height:22;
   704 			    height:22;
   705                             bits:(ByteArray 
   705 			    bits:(ByteArray
   706                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _??<O??<C??<C??<G??<G??<CO?<@O?<@G?<@G?<@G?<@G?<');
   706 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _??<O??<C??<C??<G??<G??<CO?<@O?<@G?<@G?<@G?<@G?<');
   707                             yourself);
   707 			    yourself);
   708                 yourself
   708 		yourself
   709         ]
   709 	]
   710 !
   710 !
   711 
   711 
   712 processTerminate22x22Icon
   712 processTerminate22x22Icon
   713     <resource: #image>
   713     <resource: #image>
   714     "This resource specification was automatically generated
   714     "This resource specification was automatically generated
   717      the ImageEditor may not be able to read the specification."
   717      the ImageEditor may not be able to read the specification."
   718     "
   718     "
   719      self processTerminate22x22Icon inspect
   719      self processTerminate22x22Icon inspect
   720      ImageEditor openOnClass:self andSelector:#processTerminate22x22Icon
   720      ImageEditor openOnClass:self andSelector:#processTerminate22x22Icon
   721      Icon flushCachedIcons"
   721      Icon flushCachedIcons"
   722     
   722 
   723     ^ Icon constantNamed:#'ProcessMonitorV2 class processTerminate22x22Icon'
   723     ^ Icon constantNamed:#'ProcessMonitorV2 class processTerminate22x22Icon'
   724         ifAbsentPut:[
   724 	ifAbsentPut:[
   725             (Depth8Image new)
   725 	    (Depth8Image new)
   726                 width:22;
   726 		width:22;
   727                 height:22;
   727 		height:22;
   728                 photometric:(#palette);
   728 		photometric:(#palette);
   729                 bitsPerSample:(#( 8 ));
   729 		bitsPerSample:(#( 8 ));
   730                 samplesPerPixel:(1);
   730 		samplesPerPixel:(1);
   731                 bits:(ByteArray 
   731 		bits:(ByteArray
   732                             fromPackedString:'
   732 			    fromPackedString:'
   733 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   733 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EA0@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@
   734 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   734 @@@GAP@@APXFB@@@AP\@@@@@@@@@@@@@B@XEAPXFA XEAPXH@@@@@@@@@@@@@@@GA XFA XFA XH@@@@@@@@@@@@@@@@APXFA0 GA XFA0@@@@@@@@@@@@@@
   735 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TGC@@@@@@@B@ FA XG@@@LC@TFA XHC@,K@@@@@@@@A0\FA TLB0,LC@XHC@,KBP@@@@@@@@@G
   735 APXFA0 @@@TFA XG@@@@@@@@@@@EAPXFA  @@@@@APXFA TGC@@@@@@@B@ FA XG@@@LC@TFA XHC@,K@@@@@@@@A0\FA TLB0,LC@XHC@,KBP@@@@@@@@@G
   736 A XFAPTJB0,LB0,KBP@@@@@@@@@@APXFA XFA (KB0,KBP@@@@@@@@@@APXHA0XFA XFC@,KC@@@@@@@@@@@@@\H@@@EA XGC@,KB00@@@@@@@@@@@@@@@@@
   736 A XFAPTJB0,LB0,KBP@@@@@@@@@@APXFA XFA (KB0,KBP@@@@@@@@@@APXHA0XFA XFC@,KC@@@@@@@@@@@@@\H@@@EA XGC@,KB00@@@@@@@@@@@@@@@@@
   737 @@THC@,I@@(KC@@@@@@@@@@@@@@@@@@EB@0I@@@@B ,@@@@@@@@@@@@@@@@@@@0K@@@@@@@JB0@@@@@@@@@@@@@@@@@LBP@@@@@@@@,@@@@@@@@@@@@@@@@@
   737 @@THC@,I@@(KC@@@@@@@@@@@@@@@@@@EB@0I@@@@B ,@@@@@@@@@@@@@@@@@@@0K@@@@@@@JB0@@@@@@@@@@@@@@@@@LBP@@@@@@@@,@@@@@@@@@@@@@@@@@
   738 C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   738 C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   739                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 64 0 0 128 0 0 192 0 0 255 0 0 ];
   739 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 64 0 0 128 0 0 192 0 0 255 0 0 ];
   740                 mask:((ImageMask new)
   740 		mask:((ImageMask new)
   741                             width:22;
   741 			    width:22;
   742                             height:22;
   742 			    height:22;
   743                             bits:(ByteArray 
   743 			    bits:(ByteArray
   744                                         fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _;?0O??0C?? C??@G?>@G?>@CO?@@O#@@GA @C@ @B@@@@@@');
   744 					fromPackedString:'@@@@@F@@@O@@COL@G?>@G?>@C?<@C?<@O??@_9? _;?0O??0C?? C??@G?>@G?>@CO?@@O#@@GA @C@ @B@@@@@@');
   745                             yourself);
   745 			    yourself);
   746                 yourself
   746 		yourself
   747         ]
   747 	]
   748 !
   748 !
   749 
   749 
   750 processTerminateGroup22x22Icon
   750 processTerminateGroup22x22Icon
   751     <resource: #image>
   751     <resource: #image>
   752     "This resource specification was automatically generated
   752     "This resource specification was automatically generated
   755      the ImageEditor may not be able to read the specification."
   755      the ImageEditor may not be able to read the specification."
   756     "
   756     "
   757      self processTerminateGroup22x22Icon inspect
   757      self processTerminateGroup22x22Icon inspect
   758      ImageEditor openOnClass:self andSelector:#processTerminateGroup22x22Icon
   758      ImageEditor openOnClass:self andSelector:#processTerminateGroup22x22Icon
   759      Icon flushCachedIcons"
   759      Icon flushCachedIcons"
   760     
   760 
   761     ^ Icon 
   761     ^ Icon
   762         constantNamed:#'ProcessMonitorV2 class processTerminateGroup22x22Icon'
   762 	constantNamed:#'ProcessMonitorV2 class processTerminateGroup22x22Icon'
   763         ifAbsentPut:[
   763 	ifAbsentPut:[
   764             (Depth8Image new)
   764 	    (Depth8Image new)
   765                 width:22;
   765 		width:22;
   766                 height:22;
   766 		height:22;
   767                 photometric:(#palette);
   767 		photometric:(#palette);
   768                 bitsPerSample:(#( 8 ));
   768 		bitsPerSample:(#( 8 ));
   769                 samplesPerPixel:(1);
   769 		samplesPerPixel:(1);
   770                 bits:(ByteArray 
   770 		bits:(ByteArray
   771                             fromPackedString:'
   771 			    fromPackedString:'
   772 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@@@@@@@@@@@TG@@@@@@@@@@@@@@@@@@@@A0T@@@TFA  @@@TG@@@@@@@@@@@@
   772 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AP\@@@@@@@@@@@@@@@@@@@@@@@@@@@TG@@@@@@@@@@@@@@@@@@@@A0T@@@TFA  @@@TG@@@@@@@@@@@@
   773 @@ FAPTF@@@FAPTFB@@@@@@@@@@@@@@@A0XF@@TG@@XFB@@@@@@@@@@@@@@@@@@FA @EA0@FA @@@@@@@@@@@@@@@@\E@@@EA XH@@@EA0@@@@@@@@@@AP@H
   773 @@ FAPTF@@@FAPTFB@@@@@@@@@@@@@@@A0XF@@TG@@XFB@@@@@@@@@@@@@@@@@@FA @EA0@FA @@@@@@@@@@@@@@@@\E@@@EA XH@@@EA0@@@@@@@@@@AP@H
   774 A TEA XFA TEA  @A0@@@@@@@@ H@@\FA XFA XFA  @B@ @@@@@@@@@@@@EA XGB@\FA XG@@@@@@@L@@@@@@@EA XGB@@@AP0LA \@@@@LB0,@@@TEA XF
   774 A TEA XFA TEA  @A0@@@@@@@@ H@@\FA XFA XFA  @B@ @@@@@@@@@@@@EA XGB@\FA XG@@@@@@@L@@@@@@@EA XGB@@@AP0LA \@@@@LB0,@@@TEA XF
   775 B@@FA 0KB00LAP\LB0,I@@@HB@XFA \@A X@AP(KB00KB0,I@@@@@@@GA0XFAP@@APXFB ,KB0,I@@@@@@@@@@\FA XEAPXFA  LB0,L@@@@@@@@@@@EA XF
   775 B@@FA 0KB00LAP\LB0,I@@@HB@XFA \@A X@AP(KB00KB0,I@@@@@@@GA0XFAP@@APXFB ,KB0,I@@@@@@@@@@\FA XEAPXFA  LB0,L@@@@@@@@@@@EA XF
   776 A XFA XLB0,KC@@@@@@@@@@EA  GA XFA XLB0$@B ,L@@@@@@@@A0 @@@TFA \@C@$H@@@JB0@@@@@@@@@@@@@@AP @C@,@@@@@@@(K@@@@@@@@@@@@@@TH
   776 A XFA XLB0,KC@@@@@@@@@@EA  GA XFA XLB0$@B ,L@@@@@@@@A0 @@@TFA \@C@$H@@@JB0@@@@@@@@@@@@@@AP @C@,@@@@@@@(K@@@@@@@@@@@@@@TH
   777 @@0I@@@@@@@@B0@@@@@@@@@@@@@@@@@L@@@@@@@@@@@@@@@a');
   777 @@0I@@@@@@@@B0@@@@@@@@@@@@@@@@@L@@@@@@@@@@@@@@@a');
   778                 colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 64 0 0 128 0 0 192 0 0 255 0 0 ];
   778 		colorMapFromArray:#[ 0 0 0 128 128 128 160 160 160 195 195 195 220 220 220 255 255 255 194 194 194 161 161 165 127 127 127 64 0 0 128 0 0 192 0 0 255 0 0 ];
   779                 mask:((ImageMask new)
   779 		mask:((ImageMask new)
   780                             width:22;
   780 			    width:22;
   781                             height:22;
   781 			    height:22;
   782                             bits:(ByteArray 
   782 			    bits:(ByteArray
   783                                         fromPackedString:'@L@@@^@@F^X@O?<@O?<@G?8@G?8@_?>@???@???@_?>P_?>8???8???0_?? G??@G??@O?? O?= F_80@_ P@M@@');
   783 					fromPackedString:'@L@@@^@@F^X@O?<@O?<@G?8@G?8@_?>@???@???@_?>P_?>8???8???0_?? G??@G??@O?? O?= F_80@_ P@M@@');
   784                             yourself);
   784 			    yourself);
   785                 yourself
   785 		yourself
   786         ]
   786 	]
   787 !
   787 !
   788 
   788 
   789 raiseWindow22x22Icon
   789 raiseWindow22x22Icon
   790     <resource: #image>
   790     <resource: #image>
   791     "This resource specification was automatically generated
   791     "This resource specification was automatically generated
   794      the ImageEditor may not be able to read the specification."
   794      the ImageEditor may not be able to read the specification."
   795     "
   795     "
   796      self raiseWindow22x22Icon inspect
   796      self raiseWindow22x22Icon inspect
   797      ImageEditor openOnClass:self andSelector:#raiseWindow22x22Icon
   797      ImageEditor openOnClass:self andSelector:#raiseWindow22x22Icon
   798      Icon flushCachedIcons"
   798      Icon flushCachedIcons"
   799     
   799 
   800     ^ Icon constantNamed:'ProcessMonitorV2 class raiseWindow22x22Icon'
   800     ^ Icon constantNamed:'ProcessMonitorV2 class raiseWindow22x22Icon'
   801         ifAbsentPut:[
   801 	ifAbsentPut:[
   802             (Depth8Image new)
   802 	    (Depth8Image new)
   803                 width:22;
   803 		width:22;
   804                 height:22;
   804 		height:22;
   805                 photometric:(#palette);
   805 		photometric:(#palette);
   806                 bitsPerSample:(#[ 8 ]);
   806 		bitsPerSample:(#[ 8 ]);
   807                 samplesPerPixel:(1);
   807 		samplesPerPixel:(1);
   808                 bits:(ByteArray 
   808 		bits:(ByteArray
   809                             fromPackedString:'
   809 			    fromPackedString:'
   810 @@@.K"8.K"8.K"8.K"8.K"8.K"8.K @@@@@@@ HB@ HB@ HB@ HB@ HB@B8@@@@@@@H+J2,+J2,+J2,+J2,+@ @.@@@@@@@BJ2,+J2,+J2,+J2,+J2 @K @@
   810 @@@.K"8.K"8.K"8.K"8.K"8.K"8.K @@@@@@@ HB@ HB@ HB@ HB@ HB@B8@@@@@@@H+J2,+J2,+J2,+J2,+@ @.@@@@@@@BJ2,+J2,+J2,+J2,+J2 @K @@
   811 @ HB@ HB@ HB@ HB@ HBJ2,"@B8@@@HB@ HB@ HB@ HB@ HB@",EF @.@@@B@ HB@ HB@ HB@ HB@" EHQ(@K @@@ HB@ HB@ HB@ HB@ H"AR$(@B8@@@H+
   811 @ HB@ HB@ HB@ HB@ HBJ2,"@B8@@@HB@ HB@ HB@ HB@ HB@",EF @.@@@B@ HB@ HB@ HB@ HB@" EHQ(@K @@@ HB@ HB@ HB@ HB@ H"AR$(@B8@@@H+
   812 J2,+J2,+J2,+J2,!!JBD''J@@.@@@BJ2,+J2,+J2,+J2,+HR !!I2 @K @@@",+J2,+J2,+J2,+J2\(HRL @B8@@@H+J2,+J2,+J2,+J2,''JBT#H@@.@@@BJ2,+
   812 J2,+J2,+J2,+J2,!!JBD''J@@.@@@BJ2,+J2,+J2,+J2,+HR !!I2 @K @@@",+J2,+J2,+J2,+J2\(HRL @B8@@@H+J2,+J2,+J2,+J2,''JBT#H@@.@@@BJ2,+
   813 J2,+J2,+J2,EI2 ''A"@@K @@@",+J2,+J2,+J2,EARL I0X @B8@@@H+J2,+J2,+J2,EAR$#HB\FH@@.@@@BJ2,+J2,+J2,EAR$)A"@F@2@@K @@@",+J2,+
   813 J2,+J2,+J2,EI2 ''A"@@K @@@",+J2,+J2,+J2,EARL I0X @B8@@@H+J2,+J2,+J2,EAR$#HB\FH@@.@@@BJ2,+J2,+J2,EAR$)A"@F@2@@K @@@",+J2,+
   814 J2,EAR$)HPX HB@Y@B8@@@H+J2,+J2,EAPT)HRDFH@@@@@@.@@@BJ2,EJR$)HRD!!CB\''@2@@@@@@K @@DRPGA2<^D@,KJ!!<-JB@Y@@@@@B8@@@@@@@@@@@@@
   814 J2,EAR$)HPX HB@Y@B8@@@H+J2,+J2,EAPT)HRDFH@@@@@@.@@@BJ2,EJR$)HRD!!CB\''@2@@@@@@K @@DRPGA2<^D@,KJ!!<-JB@Y@@@@@B8@@@@@@@@@@@@@
   815 @@@@@@@@@@@@@@@.@@@@@@@@@@@@@@@@@@@@@@@@K"8.K @a');
   815 @@@@@@@@@@@@@@@.@@@@@@@@@@@@@@@@@@@@@@@@K"8.K @a');
   816                 colorMapFromArray:#[ 160 200 248 175 200 248 0 48 168 208 208 224 207 216 240 240 240 248 223 216 224 80 136 208 240 232 240 175 208 248 176 208 248 64 112 192 239 232 232 255 248 176 255 248 24 255 248 152 79 120 192 48 120 208 159 192 248 255 248 88 160 192 248 255 248 48 255 248 96 144 184 248 240 144 24 15 56 160 63 88 176 191 216 248 240 208 24 255 248 136 79 120 200 63 104 184 48 80 176 239 232 240 31 72 176 223 216 232 80 144 208 224 224 240 255 248 200 224 224 232 48 88 176 240 240 240 64 104 184 255 248 248 47 112 208 63 96 184 236 233 216 79 128 200 ];
   816 		colorMapFromArray:#[ 160 200 248 175 200 248 0 48 168 208 208 224 207 216 240 240 240 248 223 216 224 80 136 208 240 232 240 175 208 248 176 208 248 64 112 192 239 232 232 255 248 176 255 248 24 255 248 152 79 120 192 48 120 208 159 192 248 255 248 88 160 192 248 255 248 48 255 248 96 144 184 248 240 144 24 15 56 160 63 88 176 191 216 248 240 208 24 255 248 136 79 120 200 63 104 184 48 80 176 239 232 240 31 72 176 223 216 232 80 144 208 224 224 240 255 248 200 224 224 232 48 88 176 240 240 240 64 104 184 255 248 248 47 112 208 63 96 184 236 233 216 79 128 200 ];
   817                 mask:((ImageMask new)
   817 		mask:((ImageMask new)
   818                             width:22;
   818 			    width:22;
   819                             height:22;
   819 			    height:22;
   820                             bits:(ByteArray 
   820 			    bits:(ByteArray
   821                                         fromPackedString:'@@@@A??0A??0A??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O?>@O?>@O?>@@@@@@@@@');
   821 					fromPackedString:'@@@@A??0A??0A??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O??0O?>@O?>@O?>@@@@@@@@@');
   822                             yourself);
   822 			    yourself);
   823                 yourself
   823 		yourself
   824         ]
   824 	]
   825 !
   825 !
   826 
   826 
   827 terminateGroupIcon
   827 terminateGroupIcon
   828     <resource: #image>
   828     <resource: #image>
   829     "This resource specification was automatically generated
   829     "This resource specification was automatically generated
   832      the ImageEditor may not be able to read the specification."
   832      the ImageEditor may not be able to read the specification."
   833     "
   833     "
   834      self terminateGroupIcon inspect
   834      self terminateGroupIcon inspect
   835      ImageEditor openOnClass:self andSelector:#terminateGroupIcon
   835      ImageEditor openOnClass:self andSelector:#terminateGroupIcon
   836      Icon flushCachedIcons"
   836      Icon flushCachedIcons"
   837     
   837 
   838     ^ Icon constantNamed:#'ProcessMonitorV2 class terminateGroupIcon'
   838     ^ Icon constantNamed:#'ProcessMonitorV2 class terminateGroupIcon'
   839         ifAbsentPut:[
   839 	ifAbsentPut:[
   840             (Depth8Image new)
   840 	    (Depth8Image new)
   841                 width:22;
   841 		width:22;
   842                 height:20;
   842 		height:20;
   843                 photometric:(#palette);
   843 		photometric:(#palette);
   844                 bitsPerSample:(#( 8 ));
   844 		bitsPerSample:(#( 8 ));
   845                 samplesPerPixel:(1);
   845 		samplesPerPixel:(1);
   846                 bits:(ByteArray 
   846 		bits:(ByteArray
   847                             fromPackedString:'
   847 			    fromPackedString:'
   848 @PDA@PXJB (JB (JB (JB TE@PDA@PDA@PXJB (JB (JB (JB (JA0TA@PD@@PXJB (JB (JB (JB (JB (JA D@@@HDB (J@ HJB (JB PDA@(JB X@@@@@
   848 @PDA@PXJB (JB (JB (JB TE@PDA@PDA@PXJB (JB (JB (JB (JA0TA@PD@@PXJB (JB (JB (JB (JB (JA D@@@HDB (J@ HJB (JB PDA@(JB X@@@@@
   849 @P\G@PDAA (JB XA@PDFA XA@@@@A DA@PDA@PXJB (F@PDA@PDA@PX@A \A@PD@@@@@@@@@A DJ@@@@@@@@@@XJB DA@@,KB0,K@@@A@@,KB0,KB0@AA XF
   849 @P\G@PDAA (JB XA@PDFA XA@@@@A DA@PDA@PXJB (F@PDA@PDA@PX@A \A@PD@@@@@@@@@A DJ@@@@@@@@@@XJB DA@@,KB0,K@@@A@@,KB0,KB0@AA XF
   850 B (@B0,KB0,@@@,KB0,KB0@A@PDA@PXJB @KB0,KB0,KB0,KB0@A@PDA@PXJB (J@@,KB0,KB0,KB0@A@PD@@PXJB (JB (@B0,KB0,KB0@JA D@@@HDB (J
   850 B (@B0,KB0,@@@,KB0,KB0@A@PDA@PXJB @KB0,KB0,KB0,KB0@A@PDA@PXJB (J@@,KB0,KB0,KB0@A@PD@@PXJB (JB (@B0,KB0,KB0@JA D@@@HDB (J
   851 @ HJB @KB0,KB0@JB X@@@@@@P\G@PDAA @KB0,KB0,K@@XA@@@@@@DA@PDA@P@KB0,KB0,KB0,@@P@@@@@A@PDA@P@KB0,KB0@KB0,KB0@@@@@@@@DA@P@K
   851 @ HJB @KB0,KB0@JB X@@@@@@P\G@PDAA @KB0,KB0,K@@XA@@@@@@DA@PDA@P@KB0,KB0,KB0,@@P@@@@@A@PDA@P@KB0,KB0@KB0,KB0@@@@@@@@DA@P@K
   852 B0,KB0@@@@,KB0,K@@@@@@@@@@@KB0,KB0@A@@@@B0,KB0,@@@@@@@@@@@@@@@@A@P@@@@@@@@@@@@@@@@@@@@@@@@DA@P@@@@@@@@@@@@@b');
   852 B0,KB0@@@@,KB0,K@@@@@@@@@@@KB0,KB0@A@@@@B0,KB0,@@@@@@@@@@@@@@@@A@P@@@@@@@@@@@@@@@@@@@@@@@@DA@P@@@@@@@@@@@@@b');
   853                 colorMapFromArray:#[ 0 0 0 48 48 48 56 59 56 64 68 64 88 92 88 128 128 128 160 160 160 192 192 192 216 219 216 239 244 239 248 252 248 160 0 0 ];
   853 		colorMapFromArray:#[ 0 0 0 48 48 48 56 59 56 64 68 64 88 92 88 128 128 128 160 160 160 192 192 192 216 219 216 239 244 239 248 252 248 160 0 0 ];
   854                 mask:((ImageMask new)
   854 		mask:((ImageMask new)
   855                             width:22;
   855 			    width:22;
   856                             height:20;
   856 			    height:20;
   857                             bits:(ByteArray 
   857 			    bits:(ByteArray
   858                                         fromPackedString:'???<???<_??8_??0O??0_??8???<???<???<???<???<_??8_??0O??0O??0O??0G?/8A?''<A?#<@G@@');
   858 					fromPackedString:'???<???<_??8_??0O??0_??8???<???<???<???<???<_??8_??0O??0O??0O??0G?/8A?''<A?#<@G@@');
   859                             yourself);
   859 			    yourself);
   860                 yourself
   860 		yourself
   861         ]
   861 	]
   862 !
   862 !
   863 
   863 
   864 terminateIcon
   864 terminateIcon
   865     <resource: #image>
   865     <resource: #image>
   866     "This resource specification was automatically generated
   866     "This resource specification was automatically generated
   869      the ImageEditor may not be able to read the specification."
   869      the ImageEditor may not be able to read the specification."
   870     "
   870     "
   871      self terminateIcon inspect
   871      self terminateIcon inspect
   872      ImageEditor openOnClass:self andSelector:#terminateIcon
   872      ImageEditor openOnClass:self andSelector:#terminateIcon
   873      Icon flushCachedIcons"
   873      Icon flushCachedIcons"
   874     
   874 
   875     ^ Icon constantNamed:#'ProcessMonitorV2 class terminateIcon'
   875     ^ Icon constantNamed:#'ProcessMonitorV2 class terminateIcon'
   876         ifAbsentPut:[
   876 	ifAbsentPut:[
   877             (Depth8Image new)
   877 	    (Depth8Image new)
   878                 width:16;
   878 		width:16;
   879                 height:16;
   879 		height:16;
   880                 photometric:(#palette);
   880 		photometric:(#palette);
   881                 bitsPerSample:(#( 8 ));
   881 		bitsPerSample:(#( 8 ));
   882                 samplesPerPixel:(1);
   882 		samplesPerPixel:(1);
   883                 bits:(ByteArray 
   883 		bits:(ByteArray
   884                             fromPackedString:'
   884 			    fromPackedString:'
   885 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@@@@@@@@@LC@@@@@@@C@ H@@@@@@@LB@ LC@@@C@ H@@@@@@@@@@@DB@ LB
   885 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@@@@@@@@@LC@@@@@@@C@ H@@@@@@@LB@ LC@@@C@ H@@@@@@@@@@@DB@ LB
   886 @ H@@@@@@@@@@@@@@PHB@ H@@@@@@@@@@@@@@@@C@ HC@@@@@@@@@@@@@@@C@ HB@0@@@@@@@@@@@@@C@ @@@PHC@@@@@@@@@@@@@0@@@@@A@ @@@@@@@@@@
   886 @ H@@@@@@@@@@@@@@PHB@ H@@@@@@@@@@@@@@@@C@ HC@@@@@@@@@@@@@@@C@ HB@0@@@@@@@@@@@@@C@ @@@PHC@@@@@@@@@@@@@0@@@@@A@ @@@@@@@@@@
   887 @0H@@@@@@@DB@@@@@@@@@@L@@@@@@@@@@ @@@@@@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   887 @0H@@@@@@@DB@@@@@@@@@@L@@@@@@@@@@ @@@@@@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
   888                 colorMapFromArray:#[ 64 0 0 128 0 0 192 0 0 255 0 0 ];
   888 		colorMapFromArray:#[ 64 0 0 128 0 0 192 0 0 255 0 0 ];
   889                 mask:((ImageMask new)
   889 		mask:((ImageMask new)
   890                             width:16;
   890 			    width:16;
   891                             height:16;
   891 			    height:16;
   892                             bits:(ByteArray 
   892 			    bits:(ByteArray
   893                                         fromPackedString:'@@@@@@@HCA0_O@_8@?@A8@O A7@FL@0XC@ H@@@@@@@b');
   893 					fromPackedString:'@@@@@@@HCA0_O@_8@?@A8@O A7@FL@0XC@ H@@@@@@@b');
   894                             yourself);
   894 			    yourself);
   895                 yourself
   895 		yourself
   896         ]
   896 	]
   897 !
   897 !
   898 
   898 
   899 viewDetailsIcon
   899 viewDetailsIcon
   900     <resource: #image>
   900     <resource: #image>
   901     "This resource specification was automatically generated
   901     "This resource specification was automatically generated
   904      the ImageEditor may not be able to read the specification."
   904      the ImageEditor may not be able to read the specification."
   905     "
   905     "
   906      self viewDetailsIcon inspect
   906      self viewDetailsIcon inspect
   907      ImageEditor openOnClass:self andSelector:#viewDetailsIcon
   907      ImageEditor openOnClass:self andSelector:#viewDetailsIcon
   908      Icon flushCachedIcons"
   908      Icon flushCachedIcons"
   909     
   909 
   910     ^ Icon constantNamed:#'ProcessMonitorV2 class viewDetailsIcon'
   910     ^ Icon constantNamed:#'ProcessMonitorV2 class viewDetailsIcon'
   911         ifAbsentPut:[
   911 	ifAbsentPut:[
   912             (Depth1Image new)
   912 	    (Depth1Image new)
   913                 width:16;
   913 		width:16;
   914                 height:16;
   914 		height:16;
   915                 photometric:(#palette);
   915 		photometric:(#palette);
   916                 bitsPerSample:(#( 1 ));
   916 		bitsPerSample:(#( 1 ));
   917                 samplesPerPixel:(1);
   917 		samplesPerPixel:(1);
   918                 bits:(ByteArray 
   918 		bits:(ByteArray
   919                             fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b');
   919 			    fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b');
   920                 colorMapFromArray:#[ 0 0 0 255 255 255 ];
   920 		colorMapFromArray:#[ 0 0 0 255 255 255 ];
   921                 mask:((ImageMask new)
   921 		mask:((ImageMask new)
   922                             width:16;
   922 			    width:16;
   923                             height:16;
   923 			    height:16;
   924                             bits:(ByteArray 
   924 			    bits:(ByteArray
   925                                         fromPackedString:'@@@@@@@@]+X@@@@@]+X@@@@@]+X@@@@@]+X@@@@@@@@b');
   925 					fromPackedString:'@@@@@@@@]+X@@@@@]+X@@@@@]+X@@@@@]+X@@@@@@@@b');
   926                             yourself);
   926 			    yourself);
   927                 yourself
   927 		yourself
   928         ]
   928 	]
   929 ! !
   929 ! !
   930 
   930 
   931 !ProcessMonitorV2 class methodsFor:'interface specs'!
   931 !ProcessMonitorV2 class methodsFor:'interface specs'!
   932 
   932 
   933 windowSpec
   933 windowSpec
   943      ProcessMonitorV2 open
   943      ProcessMonitorV2 open
   944     "
   944     "
   945 
   945 
   946     <resource: #canvas>
   946     <resource: #canvas>
   947 
   947 
   948     ^ 
   948     ^
   949      #(FullSpec
   949      #(FullSpec
   950         name: windowSpec
   950 	name: windowSpec
   951         window: 
   951 	window:
   952        (WindowSpec
   952        (WindowSpec
   953           label: 'ProcessMonitor'
   953 	  label: 'ProcessMonitor'
   954           name: 'ProcessMonitor'
   954 	  name: 'ProcessMonitor'
   955           min: (Point 10 10)
   955 	  min: (Point 10 10)
   956           bounds: (Rectangle 0 0 791 358)
   956 	  bounds: (Rectangle 0 0 791 358)
   957           menu: mainMenu
   957 	  menu: mainMenu
   958           icon: defaultIcon
   958 	  icon: defaultIcon
   959         )
   959 	)
   960         component: 
   960 	component:
   961        (SpecCollection
   961        (SpecCollection
   962           collection: (
   962 	  collection: (
   963            (MenuPanelSpec
   963 	   (MenuPanelSpec
   964               name: 'ToolBar1'
   964 	      name: 'ToolBar1'
   965               layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
   965 	      layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
   966               menu: toolBarMainMenu
   966 	      menu: toolBarMainMenu
   967               textDefault: true
   967 	      textDefault: true
   968             )
   968 	    )
   969            (DataSetSpec
   969 	   (DataSetSpec
   970               name: 'ProcessTable'
   970 	      name: 'ProcessTable'
   971               layout: (LayoutFrame 0 0.0 32 0.0 0 1.0 -23 1)
   971 	      layout: (LayoutFrame 0 0.0 32 0.0 0 1.0 -23 1)
   972               model: selectedProcesses
   972 	      model: selectedProcesses
   973               menu: tableMenu
   973 	      menu: tableMenu
   974               hasHorizontalScrollBar: true
   974 	      hasHorizontalScrollBar: true
   975               hasVerticalScrollBar: true
   975 	      hasVerticalScrollBar: true
   976               dataList: processList
   976 	      dataList: processList
   977               useIndex: false
   977 	      useIndex: false
   978               doubleClickSelector: doubleClickedAt:
   978 	      doubleClickSelector: doubleClickedAt:
   979               columnHolder: tableColumns
   979 	      columnHolder: tableColumns
   980               multipleSelectOk: true
   980 	      multipleSelectOk: true
   981               verticalSpacing: 0
   981 	      verticalSpacing: 0
   982               postBuildCallback: postBuildProcessTable:
   982 	      postBuildCallback: postBuildProcessTable:
   983             )
   983 	    )
   984            (LabelSpec
   984 	   (LabelSpec
   985               label: 'Update Contents Delay (s):'
   985 	      label: 'Update Contents Delay (s):'
   986               name: 'ContentsUpdateLabel'
   986 	      name: 'ContentsUpdateLabel'
   987               layout: (LayoutFrame -593 1 -20 1 -402 1 0 1)
   987 	      layout: (LayoutFrame -593 1 -20 1 -402 1 0 1)
   988               translateLabel: true
   988 	      translateLabel: true
   989               adjust: right
   989 	      adjust: right
   990             )
   990 	    )
   991            (ViewSpec
   991 	   (ViewSpec
   992               name: 'Box1'
   992 	      name: 'Box1'
   993               layout: (LayoutFrame -396 1 -22 1 -306 1 0 1)
   993 	      layout: (LayoutFrame -396 1 -22 1 -306 1 0 1)
   994               level: 0
   994 	      level: 0
   995               component: 
   995 	      component:
   996              (SpecCollection
   996 	     (SpecCollection
   997                 collection: (
   997 		collection: (
   998                  (ArrowButtonSpec
   998 		 (ArrowButtonSpec
   999                     name: 'ArrowButton3'
   999 		    name: 'ArrowButton3'
  1000                     layout: (LayoutFrame 68 0 0 0 89 0 20 0)
  1000 		    layout: (LayoutFrame 68 0 0 0 89 0 20 0)
  1001                     model: increaseupdateContentsDelayTime
  1001 		    model: increaseupdateContentsDelayTime
  1002                     enableChannel: enableIncreaseContentsDelayTime
  1002 		    enableChannel: enableIncreaseContentsDelayTime
  1003                     isTriggerOnDown: true
  1003 		    isTriggerOnDown: true
  1004                     autoRepeat: true
  1004 		    autoRepeat: true
  1005                     actionValue: ''
  1005 		    actionValue: ''
  1006                     direction: up
  1006 		    direction: up
  1007                   )
  1007 		  )
  1008                  (InputFieldSpec
  1008 		 (InputFieldSpec
  1009                     name: 'EntryField2'
  1009 		    name: 'EntryField2'
  1010                     layout: (LayoutFrame 22 0 0 0 66 0 20 0)
  1010 		    layout: (LayoutFrame 22 0 0 0 66 0 20 0)
  1011                     model: updateContentsDelayTime
  1011 		    model: updateContentsDelayTime
  1012                     acceptOnReturn: true
  1012 		    acceptOnReturn: true
  1013                     acceptOnTab: true
  1013 		    acceptOnTab: true
  1014                     acceptOnLostFocus: true
  1014 		    acceptOnLostFocus: true
  1015                     acceptOnPointerLeave: false
  1015 		    acceptOnPointerLeave: false
  1016                   )
  1016 		  )
  1017                  (ArrowButtonSpec
  1017 		 (ArrowButtonSpec
  1018                     name: 'ArrowButton4'
  1018 		    name: 'ArrowButton4'
  1019                     layout: (LayoutFrame 0 0 0 0 20 0 20 0)
  1019 		    layout: (LayoutFrame 0 0 0 0 20 0 20 0)
  1020                     model: decreaseupdateContentsDelayTime
  1020 		    model: decreaseupdateContentsDelayTime
  1021                     enableChannel: enableDecreaseContentsDelayTime
  1021 		    enableChannel: enableDecreaseContentsDelayTime
  1022                     isTriggerOnDown: true
  1022 		    isTriggerOnDown: true
  1023                     autoRepeat: true
  1023 		    autoRepeat: true
  1024                     actionValue: ''
  1024 		    actionValue: ''
  1025                     direction: down
  1025 		    direction: down
  1026                   )
  1026 		  )
  1027                  )
  1027 		 )
  1028                
  1028 
  1029               )
  1029 	      )
  1030             )
  1030 	    )
  1031            (LabelSpec
  1031 	   (LabelSpec
  1032               label: 'Update List Delay (s):'
  1032 	      label: 'Update List Delay (s):'
  1033               name: 'ListUpdateLabel'
  1033 	      name: 'ListUpdateLabel'
  1034               layout: (LayoutFrame -301 1 -20 1 -110 1 0 1)
  1034 	      layout: (LayoutFrame -301 1 -20 1 -110 1 0 1)
  1035               translateLabel: true
  1035 	      translateLabel: true
  1036               adjust: right
  1036 	      adjust: right
  1037             )
  1037 	    )
  1038            (ViewSpec
  1038 	   (ViewSpec
  1039               name: 'Box2'
  1039 	      name: 'Box2'
  1040               layout: (LayoutFrame -103 1 -21 1 0 1 1 1)
  1040 	      layout: (LayoutFrame -103 1 -21 1 0 1 1 1)
  1041               level: 0
  1041 	      level: 0
  1042               component: 
  1042 	      component:
  1043              (SpecCollection
  1043 	     (SpecCollection
  1044                 collection: (
  1044 		collection: (
  1045                  (ArrowButtonSpec
  1045 		 (ArrowButtonSpec
  1046                     name: 'ArrowButton5'
  1046 		    name: 'ArrowButton5'
  1047                     layout: (LayoutFrame 68 0 0 0 89 0 20 0)
  1047 		    layout: (LayoutFrame 68 0 0 0 89 0 20 0)
  1048                     model: increaseupdateListDelayTime
  1048 		    model: increaseupdateListDelayTime
  1049                     enableChannel: enableIncreaseListDelayTime
  1049 		    enableChannel: enableIncreaseListDelayTime
  1050                     isTriggerOnDown: true
  1050 		    isTriggerOnDown: true
  1051                     autoRepeat: true
  1051 		    autoRepeat: true
  1052                     actionValue: ''
  1052 		    actionValue: ''
  1053                     direction: up
  1053 		    direction: up
  1054                   )
  1054 		  )
  1055                  (InputFieldSpec
  1055 		 (InputFieldSpec
  1056                     name: 'EntryField3'
  1056 		    name: 'EntryField3'
  1057                     layout: (LayoutFrame 22 0 0 0 66 0 20 0)
  1057 		    layout: (LayoutFrame 22 0 0 0 66 0 20 0)
  1058                     model: updateListDelayTime
  1058 		    model: updateListDelayTime
  1059                     acceptOnReturn: true
  1059 		    acceptOnReturn: true
  1060                     acceptOnTab: true
  1060 		    acceptOnTab: true
  1061                     acceptOnLostFocus: true
  1061 		    acceptOnLostFocus: true
  1062                     acceptOnPointerLeave: false
  1062 		    acceptOnPointerLeave: false
  1063                   )
  1063 		  )
  1064                  (ArrowButtonSpec
  1064 		 (ArrowButtonSpec
  1065                     name: 'ArrowButton6'
  1065 		    name: 'ArrowButton6'
  1066                     layout: (LayoutFrame 0 0 0 0 20 0 20 0)
  1066 		    layout: (LayoutFrame 0 0 0 0 20 0 20 0)
  1067                     model: decreaseupdateListDelayTime
  1067 		    model: decreaseupdateListDelayTime
  1068                     enableChannel: enableDecreaseListDelayTime
  1068 		    enableChannel: enableDecreaseListDelayTime
  1069                     isTriggerOnDown: true
  1069 		    isTriggerOnDown: true
  1070                     autoRepeat: true
  1070 		    autoRepeat: true
  1071                     actionValue: ''
  1071 		    actionValue: ''
  1072                     direction: down
  1072 		    direction: down
  1073                   )
  1073 		  )
  1074                  )
  1074 		 )
  1075                
  1075 
  1076               )
  1076 	      )
  1077               keepSpaceForOSXResizeHandleH: true
  1077 	      keepSpaceForOSXResizeHandleH: true
  1078             )
  1078 	    )
  1079            )
  1079 	   )
  1080          
  1080 
  1081         )
  1081 	)
  1082       )
  1082       )
  1083 ! !
  1083 ! !
  1084 
  1084 
  1085 !ProcessMonitorV2 class methodsFor:'menu specs'!
  1085 !ProcessMonitorV2 class methodsFor:'menu specs'!
  1086 
  1086 
  1144 
  1144 
  1145     <resource: #menu>
  1145     <resource: #menu>
  1146 
  1146 
  1147     ^
  1147     ^
  1148      #(Menu
  1148      #(Menu
  1149         (
  1149 	(
  1150          (MenuItem
  1150 	 (MenuItem
  1151             enabled: hasSelectionHolder
  1151 	    enabled: hasSelectionHolder
  1152             label: 'Inspect Process'
  1152 	    label: 'Inspect Process'
  1153             itemValue: inspectSelection
  1153 	    itemValue: inspectSelection
  1154             translateLabel: true
  1154 	    translateLabel: true
  1155           )
  1155 	  )
  1156          (MenuItem
  1156 	 (MenuItem
  1157             enabled: hasSelectionWithApplicationProcessHolder
  1157 	    enabled: hasSelectionWithApplicationProcessHolder
  1158             label: 'Inspect Application'
  1158 	    label: 'Inspect Application'
  1159             itemValue: inspectApplication
  1159 	    itemValue: inspectApplication
  1160             translateLabel: true
  1160 	    translateLabel: true
  1161           )
  1161 	  )
  1162          (MenuItem
  1162 	 (MenuItem
  1163             label: '-'
  1163 	    label: '-'
  1164           )
  1164 	  )
  1165          (MenuItem
  1165 	 (MenuItem
  1166             enabled: hasSelectionWithApplicationProcessHolder
  1166 	    enabled: hasSelectionWithApplicationProcessHolder
  1167             label: 'Browse Application'
  1167 	    label: 'Browse Application'
  1168             itemValue: browseApplication
  1168 	    itemValue: browseApplication
  1169             translateLabel: true
  1169 	    translateLabel: true
  1170           )
  1170 	  )
  1171          (MenuItem
  1171 	 (MenuItem
  1172             label: '-'
  1172 	    label: '-'
  1173             isVisible: allowModificationsAndHasDebugger
  1173 	    isVisible: allowModificationsAndHasDebugger
  1174           )
  1174 	  )
  1175          (MenuItem
  1175 	 (MenuItem
  1176             enabled: hasSelectionHolder
  1176 	    enabled: hasSelectionHolder
  1177             label: 'Debug'
  1177 	    label: 'Debug'
  1178             itemValue: debugProcess
  1178 	    itemValue: debugProcess
  1179             translateLabel: true
  1179 	    translateLabel: true
  1180             isVisible: allowModificationsAndHasDebugger
  1180 	    isVisible: allowModificationsAndHasDebugger
  1181           )
  1181 	  )
  1182          )
  1182 	 )
  1183         nil
  1183 	nil
  1184         nil
  1184 	nil
  1185       )
  1185       )
  1186 
  1186 
  1187     "Modified: / 07-06-2007 / 12:49:58 / cg"
  1187     "Modified: / 07-06-2007 / 12:49:58 / cg"
  1188 !
  1188 !
  1189 
  1189 
  1199      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 instrumentationMenu)) startUp
  1199      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 instrumentationMenu)) startUp
  1200     "
  1200     "
  1201 
  1201 
  1202     <resource: #menu>
  1202     <resource: #menu>
  1203 
  1203 
  1204     ^ 
  1204     ^
  1205      #(Menu
  1205      #(Menu
  1206         (
  1206 	(
  1207          (MenuItem
  1207 	 (MenuItem
  1208             enabled: hasSelectionWithEnabledInstrumentationHolder
  1208 	    enabled: hasSelectionWithEnabledInstrumentationHolder
  1209             label: 'Disable'
  1209 	    label: 'Disable'
  1210             itemValue: disableInstrumentation
  1210 	    itemValue: disableInstrumentation
  1211             translateLabel: true
  1211 	    translateLabel: true
  1212           )
  1212 	  )
  1213          (MenuItem
  1213 	 (MenuItem
  1214             enabled: hasSelectionWithDisabledInstrumentationHolder
  1214 	    enabled: hasSelectionWithDisabledInstrumentationHolder
  1215             label: 'Enable'
  1215 	    label: 'Enable'
  1216             itemValue: enableInstrumentation
  1216 	    itemValue: enableInstrumentation
  1217             translateLabel: true
  1217 	    translateLabel: true
  1218           )
  1218 	  )
  1219          )
  1219 	 )
  1220         nil
  1220 	nil
  1221         nil
  1221 	nil
  1222       )
  1222       )
  1223 !
  1223 !
  1224 
  1224 
  1225 mainMenu
  1225 mainMenu
  1226     "This resource specification was automatically generated
  1226     "This resource specification was automatically generated
  1235      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 mainMenu)) startUp
  1235      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 mainMenu)) startUp
  1236     "
  1236     "
  1237 
  1237 
  1238     <resource: #menu>
  1238     <resource: #menu>
  1239 
  1239 
  1240     ^ 
  1240     ^
  1241      #(Menu
  1241      #(Menu
  1242         (
  1242 	(
  1243          (MenuItem
  1243 	 (MenuItem
  1244             label: 'File'
  1244 	    label: 'File'
  1245             translateLabel: true
  1245 	    translateLabel: true
  1246             submenu: 
  1246 	    submenu:
  1247            (Menu
  1247 	   (Menu
  1248               (
  1248 	      (
  1249                (MenuItem
  1249 	       (MenuItem
  1250                   label: 'Start Timeslicing'
  1250 		  label: 'Start Timeslicing'
  1251                   itemValue: startTimeslicing
  1251 		  itemValue: startTimeslicing
  1252                   translateLabel: true
  1252 		  translateLabel: true
  1253                   isVisible: isNotTimeslicing
  1253 		  isVisible: isNotTimeslicing
  1254                 )
  1254 		)
  1255                (MenuItem
  1255 	       (MenuItem
  1256                   label: 'Stop Timeslicing'
  1256 		  label: 'Stop Timeslicing'
  1257                   itemValue: stopTimeslicing
  1257 		  itemValue: stopTimeslicing
  1258                   translateLabel: true
  1258 		  translateLabel: true
  1259                   isVisible: isTimeslicing
  1259 		  isVisible: isTimeslicing
  1260                 )
  1260 		)
  1261                (MenuItem
  1261 	       (MenuItem
  1262                   label: '-'
  1262 		  label: '-'
  1263                 )
  1263 		)
  1264                (MenuItem
  1264 	       (MenuItem
  1265                   label: 'Exit'
  1265 		  label: 'Exit'
  1266                   itemValue: closeRequest
  1266 		  itemValue: closeRequest
  1267                   translateLabel: true
  1267 		  translateLabel: true
  1268                 )
  1268 		)
  1269                )
  1269 	       )
  1270               nil
  1270 	      nil
  1271               nil
  1271 	      nil
  1272             )
  1272 	    )
  1273           )
  1273 	  )
  1274          (MenuItem
  1274 	 (MenuItem
  1275             label: 'Process'
  1275 	    label: 'Process'
  1276             translateLabel: true
  1276 	    translateLabel: true
  1277             isVisible: allowModifications
  1277 	    isVisible: allowModifications
  1278             submenuChannel: processMenu
  1278 	    submenuChannel: processMenu
  1279           )
  1279 	  )
  1280          (MenuItem
  1280 	 (MenuItem
  1281             label: 'Application'
  1281 	    label: 'Application'
  1282             translateLabel: true
  1282 	    translateLabel: true
  1283             submenuChannel: applicationMenu
  1283 	    submenuChannel: applicationMenu
  1284             keepLinkedMenu: true
  1284 	    keepLinkedMenu: true
  1285           )
  1285 	  )
  1286          (MenuItem
  1286 	 (MenuItem
  1287             label: 'Debug'
  1287 	    label: 'Debug'
  1288             translateLabel: true
  1288 	    translateLabel: true
  1289             submenuChannel: debugMenu
  1289 	    submenuChannel: debugMenu
  1290             keepLinkedMenu: true
  1290 	    keepLinkedMenu: true
  1291           )
  1291 	  )
  1292          (MenuItem
  1292 	 (MenuItem
  1293             label: 'Instrumentation'
  1293 	    label: 'Instrumentation'
  1294             translateLabel: true
  1294 	    translateLabel: true
  1295             submenuChannel: instrumentationMenu
  1295 	    submenuChannel: instrumentationMenu
  1296             keepLinkedMenu: true
  1296 	    keepLinkedMenu: true
  1297           )
  1297 	  )
  1298          (MenuItem
  1298 	 (MenuItem
  1299             label: 'View'
  1299 	    label: 'View'
  1300             translateLabel: true
  1300 	    translateLabel: true
  1301             submenuChannel: viewDetailsMenuSpec
  1301 	    submenuChannel: viewDetailsMenuSpec
  1302           )
  1302 	  )
  1303          (MenuItem
  1303 	 (MenuItem
  1304             label: 'MENU_Help'
  1304 	    label: 'MENU_Help'
  1305             startGroup: conditionalRight
  1305 	    startGroup: conditionalRight
  1306             translateLabel: true
  1306 	    translateLabel: true
  1307             submenu: 
  1307 	    submenu:
  1308            (Menu
  1308 	   (Menu
  1309               (
  1309 	      (
  1310                (MenuItem
  1310 	       (MenuItem
  1311                   label: 'Documentation'
  1311 		  label: 'Documentation'
  1312                   itemValue: openDocumentation
  1312 		  itemValue: openDocumentation
  1313                   translateLabel: true
  1313 		  translateLabel: true
  1314                 )
  1314 		)
  1315                (MenuItem
  1315 	       (MenuItem
  1316                   label: '-'
  1316 		  label: '-'
  1317                 )
  1317 		)
  1318                (MenuItem
  1318 	       (MenuItem
  1319                   label: 'About this Application...'
  1319 		  label: 'About this Application...'
  1320                   itemValue: openAboutThisApplication
  1320 		  itemValue: openAboutThisApplication
  1321                   translateLabel: true
  1321 		  translateLabel: true
  1322                 )
  1322 		)
  1323                )
  1323 	       )
  1324               nil
  1324 	      nil
  1325               nil
  1325 	      nil
  1326             )
  1326 	    )
  1327           )
  1327 	  )
  1328          )
  1328 	 )
  1329         nil
  1329 	nil
  1330         nil
  1330 	nil
  1331       )
  1331       )
  1332 !
  1332 !
  1333 
  1333 
  1334 processMenu
  1334 processMenu
  1335     "This resource specification was automatically generated
  1335     "This resource specification was automatically generated
  1344      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 processMenu)) startUp
  1344      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 processMenu)) startUp
  1345     "
  1345     "
  1346 
  1346 
  1347     <resource: #menu>
  1347     <resource: #menu>
  1348 
  1348 
  1349     ^ 
  1349     ^
  1350      #(Menu
  1350      #(Menu
  1351         (
  1351 	(
  1352          (MenuItem
  1352 	 (MenuItem
  1353             enabled: hasSelectionWithStoppedProcessHolder
  1353 	    enabled: hasSelectionWithStoppedProcessHolder
  1354             label: 'Resume'
  1354 	    label: 'Resume'
  1355             itemValue: resumeProcess
  1355 	    itemValue: resumeProcess
  1356           )
  1356 	  )
  1357          (MenuItem
  1357 	 (MenuItem
  1358             enabled: hasSelectionHolder
  1358 	    enabled: hasSelectionHolder
  1359             label: 'Suspend'
  1359 	    label: 'Suspend'
  1360             itemValue: suspendProcess
  1360 	    itemValue: suspendProcess
  1361           )
  1361 	  )
  1362          (MenuItem
  1362 	 (MenuItem
  1363             enabled: hasSelectionHolder
  1363 	    enabled: hasSelectionHolder
  1364             label: 'Stop'
  1364 	    label: 'Stop'
  1365             itemValue: stopProcess
  1365 	    itemValue: stopProcess
  1366           )
  1366 	  )
  1367          (MenuItem
  1367 	 (MenuItem
  1368             label: '-'
  1368 	    label: '-'
  1369           )
  1369 	  )
  1370          (MenuItem
  1370 	 (MenuItem
  1371             enabled: hasSelectionHolder
  1371 	    enabled: hasSelectionHolder
  1372             label: 'Abort'
  1372 	    label: 'Abort'
  1373             itemValue: abortProcess
  1373 	    itemValue: abortProcess
  1374           )
  1374 	  )
  1375          (MenuItem
  1375 	 (MenuItem
  1376             enabled: hasSelectionHolder
  1376 	    enabled: hasSelectionHolder
  1377             label: 'Terminate'
  1377 	    label: 'Terminate'
  1378             itemValue: terminateProcess
  1378 	    itemValue: terminateProcess
  1379           )
  1379 	  )
  1380          (MenuItem
  1380 	 (MenuItem
  1381             enabled: hasSelectionHolder
  1381 	    enabled: hasSelectionHolder
  1382             label: 'Hard Terminate'
  1382 	    label: 'Hard Terminate'
  1383             itemValue: hardTerminateProcess
  1383 	    itemValue: hardTerminateProcess
  1384           )
  1384 	  )
  1385          (MenuItem
  1385 	 (MenuItem
  1386             enabled: hasSelectionHolder
  1386 	    enabled: hasSelectionHolder
  1387             label: 'Terminate Group'
  1387 	    label: 'Terminate Group'
  1388             itemValue: terminateProcessGroup
  1388 	    itemValue: terminateProcessGroup
  1389           )
  1389 	  )
  1390          (MenuItem
  1390 	 (MenuItem
  1391             enabled: selectionRestartable
  1391 	    enabled: selectionRestartable
  1392             label: 'Restart'
  1392 	    label: 'Restart'
  1393             itemValue: restartProcess
  1393 	    itemValue: restartProcess
  1394           )
  1394 	  )
  1395          (MenuItem
  1395 	 (MenuItem
  1396             label: '-'
  1396 	    label: '-'
  1397           )
  1397 	  )
  1398          (MenuItem
  1398 	 (MenuItem
  1399             enabled: hasSelectionHolder
  1399 	    enabled: hasSelectionHolder
  1400             label: 'Raise Prio'
  1400 	    label: 'Raise Prio'
  1401             itemValue: raisePrio
  1401 	    itemValue: raisePrio
  1402           )
  1402 	  )
  1403          (MenuItem
  1403 	 (MenuItem
  1404             enabled: hasSelectionHolder
  1404 	    enabled: hasSelectionHolder
  1405             label: 'Lower Prio'
  1405 	    label: 'Lower Prio'
  1406             itemValue: lowerPrio
  1406 	    itemValue: lowerPrio
  1407           )
  1407 	  )
  1408          (MenuItem
  1408 	 (MenuItem
  1409             enabled: hasSelectionHolder
  1409 	    enabled: hasSelectionHolder
  1410             label: 'Set Prio Range...'
  1410 	    label: 'Set Prio Range...'
  1411             itemValue: setPrioRange
  1411 	    itemValue: setPrioRange
  1412           )
  1412 	  )
  1413          (MenuItem
  1413 	 (MenuItem
  1414             label: '-'
  1414 	    label: '-'
  1415           )
  1415 	  )
  1416          (MenuItem
  1416 	 (MenuItem
  1417             label: 'Find by View'
  1417 	    label: 'Find by View'
  1418             itemValue: findProcessByView
  1418 	    itemValue: findProcessByView
  1419           )
  1419 	  )
  1420          )
  1420 	 )
  1421         nil
  1421 	nil
  1422         nil
  1422 	nil
  1423       )
  1423       )
  1424 !
  1424 !
  1425 
  1425 
  1426 tableMenu
  1426 tableMenu
  1427     "This resource specification was automatically generated
  1427     "This resource specification was automatically generated
  1554      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 toolBarMainMenu)) startUp
  1554      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 toolBarMainMenu)) startUp
  1555     "
  1555     "
  1556 
  1556 
  1557     <resource: #menu>
  1557     <resource: #menu>
  1558 
  1558 
  1559     ^ 
  1559     ^
  1560      #(Menu
  1560      #(Menu
  1561         (
  1561 	(
  1562          (MenuItem
  1562 	 (MenuItem
  1563             activeHelpKey: Inspect
  1563 	    activeHelpKey: Inspect
  1564             enabled: hasSelectionHolder
  1564 	    enabled: hasSelectionHolder
  1565             label: 'Inspect'
  1565 	    label: 'Inspect'
  1566             itemValue: inspectSelection
  1566 	    itemValue: inspectSelection
  1567             isButton: true
  1567 	    isButton: true
  1568             isVisible: allowModifications
  1568 	    isVisible: allowModifications
  1569             labelImage: (ResourceRetriever ProcessMonitorV2 processInspect22x22Icon)
  1569 	    labelImage: (ResourceRetriever ProcessMonitorV2 processInspect22x22Icon)
  1570           )
  1570 	  )
  1571          (MenuItem
  1571 	 (MenuItem
  1572             activeHelpKey: Debug
  1572 	    activeHelpKey: Debug
  1573             enabled: hasSelectionHolder
  1573 	    enabled: hasSelectionHolder
  1574             label: 'Debug'
  1574 	    label: 'Debug'
  1575             itemValue: debugProcess
  1575 	    itemValue: debugProcess
  1576             isButton: true
  1576 	    isButton: true
  1577             isVisible: allowModificationsAndHasDebugger
  1577 	    isVisible: allowModificationsAndHasDebugger
  1578             labelImage: (ResourceRetriever ProcessMonitorV2 processDebug22x22Icon)
  1578 	    labelImage: (ResourceRetriever ProcessMonitorV2 processDebug22x22Icon)
  1579           )
  1579 	  )
  1580          (MenuItem
  1580 	 (MenuItem
  1581             activeHelpKey: RaiseWindow
  1581 	    activeHelpKey: RaiseWindow
  1582             enabled: hasSelectionWithApplicationProcessHolder
  1582 	    enabled: hasSelectionWithApplicationProcessHolder
  1583             label: 'Raise Applications Window'
  1583 	    label: 'Raise Applications Window'
  1584             itemValue: raiseApplicationWindow
  1584 	    itemValue: raiseApplicationWindow
  1585             isButton: true
  1585 	    isButton: true
  1586             labelImage: (ResourceRetriever ProcessMonitorV2 raiseWindow22x22Icon)
  1586 	    labelImage: (ResourceRetriever ProcessMonitorV2 raiseWindow22x22Icon)
  1587           )
  1587 	  )
  1588          (MenuItem
  1588 	 (MenuItem
  1589             label: 'Find Process by View'
  1589 	    label: 'Find Process by View'
  1590             itemValue: findProcessByView
  1590 	    itemValue: findProcessByView
  1591             isButton: true
  1591 	    isButton: true
  1592             labelImage: (ResourceRetriever ToolbarIconLibrary pickWindowIcon)
  1592 	    labelImage: (ResourceRetriever ToolbarIconLibrary pickWindowIcon)
  1593           )
  1593 	  )
  1594          (MenuItem
  1594 	 (MenuItem
  1595             label: '-'
  1595 	    label: '-'
  1596             isVisible: allowModifications
  1596 	    isVisible: allowModifications
  1597           )
  1597 	  )
  1598          (MenuItem
  1598 	 (MenuItem
  1599             activeHelpKey: Resume
  1599 	    activeHelpKey: Resume
  1600             enabled: hasSelectionWithStoppedProcessHolder
  1600 	    enabled: hasSelectionWithStoppedProcessHolder
  1601             label: 'Resume'
  1601 	    label: 'Resume'
  1602             itemValue: resumeProcess
  1602 	    itemValue: resumeProcess
  1603             isButton: true
  1603 	    isButton: true
  1604             isVisible: allowModifications
  1604 	    isVisible: allowModifications
  1605             labelImage: (ResourceRetriever ProcessMonitorV2 processResume22x22Icon)
  1605 	    labelImage: (ResourceRetriever ProcessMonitorV2 processResume22x22Icon)
  1606           )
  1606 	  )
  1607          (MenuItem
  1607 	 (MenuItem
  1608             activeHelpKey: Stop
  1608 	    activeHelpKey: Stop
  1609             enabled: hasSelectionHolder
  1609 	    enabled: hasSelectionHolder
  1610             label: 'Stop'
  1610 	    label: 'Stop'
  1611             itemValue: stopProcess
  1611 	    itemValue: stopProcess
  1612             isButton: true
  1612 	    isButton: true
  1613             isVisible: allowModifications
  1613 	    isVisible: allowModifications
  1614             labelImage: (ResourceRetriever ProcessMonitorV2 processStop22x22Icon)
  1614 	    labelImage: (ResourceRetriever ProcessMonitorV2 processStop22x22Icon)
  1615           )
  1615 	  )
  1616          (MenuItem
  1616 	 (MenuItem
  1617             activeHelpKey: Abort
  1617 	    activeHelpKey: Abort
  1618             enabled: hasSelectionHolder
  1618 	    enabled: hasSelectionHolder
  1619             label: 'Abort'
  1619 	    label: 'Abort'
  1620             itemValue: abortProcess
  1620 	    itemValue: abortProcess
  1621             isButton: true
  1621 	    isButton: true
  1622             isVisible: allowModifications
  1622 	    isVisible: allowModifications
  1623             labelImage: (ResourceRetriever ProcessMonitorV2 processAbort22x22Icon)
  1623 	    labelImage: (ResourceRetriever ProcessMonitorV2 processAbort22x22Icon)
  1624           )
  1624 	  )
  1625          (MenuItem
  1625 	 (MenuItem
  1626             label: '-'
  1626 	    label: '-'
  1627             isVisible: allowModifications
  1627 	    isVisible: allowModifications
  1628           )
  1628 	  )
  1629          (MenuItem
  1629 	 (MenuItem
  1630             activeHelpKey: Terminate
  1630 	    activeHelpKey: Terminate
  1631             enabled: hasSelectionHolder
  1631 	    enabled: hasSelectionHolder
  1632             label: 'Terminate'
  1632 	    label: 'Terminate'
  1633             itemValue: terminateProcess
  1633 	    itemValue: terminateProcess
  1634             isButton: true
  1634 	    isButton: true
  1635             isVisible: allowModifications
  1635 	    isVisible: allowModifications
  1636             labelImage: (ResourceRetriever ProcessMonitorV2 processTerminate22x22Icon)
  1636 	    labelImage: (ResourceRetriever ProcessMonitorV2 processTerminate22x22Icon)
  1637           )
  1637 	  )
  1638          (MenuItem
  1638 	 (MenuItem
  1639             activeHelpKey: #'Terminate Group'
  1639 	    activeHelpKey: #'Terminate Group'
  1640             enabled: hasSelectionHolder
  1640 	    enabled: hasSelectionHolder
  1641             label: 'Terminate Group'
  1641 	    label: 'Terminate Group'
  1642             itemValue: terminateProcessGroup
  1642 	    itemValue: terminateProcessGroup
  1643             isButton: true
  1643 	    isButton: true
  1644             isVisible: allowModifications
  1644 	    isVisible: allowModifications
  1645             labelImage: (ResourceRetriever ProcessMonitorV2 processTerminateGroup22x22Icon)
  1645 	    labelImage: (ResourceRetriever ProcessMonitorV2 processTerminateGroup22x22Icon)
  1646           )
  1646 	  )
  1647          (MenuItem
  1647 	 (MenuItem
  1648             activeHelpKey: Restart
  1648 	    activeHelpKey: Restart
  1649             enabled: selectionRestartable
  1649 	    enabled: selectionRestartable
  1650             label: 'Restart'
  1650 	    label: 'Restart'
  1651             itemValue: restartProcess
  1651 	    itemValue: restartProcess
  1652             isButton: true
  1652 	    isButton: true
  1653             isVisible: allowModifications
  1653 	    isVisible: allowModifications
  1654             labelImage: (ResourceRetriever ProcessMonitorV2 processRestart22x22Icon)
  1654 	    labelImage: (ResourceRetriever ProcessMonitorV2 processRestart22x22Icon)
  1655           )
  1655 	  )
  1656          (MenuItem
  1656 	 (MenuItem
  1657             label: '-'
  1657 	    label: '-'
  1658             isVisible: allowModifications
  1658 	    isVisible: allowModifications
  1659           )
  1659 	  )
  1660          (MenuItem
  1660 	 (MenuItem
  1661             activeHelpKey: #'Lower Prio'
  1661 	    activeHelpKey: #'Lower Prio'
  1662             enabled: hasSelectionHolder
  1662 	    enabled: hasSelectionHolder
  1663             label: 'Lower Prio'
  1663 	    label: 'Lower Prio'
  1664             itemValue: lowerPrio
  1664 	    itemValue: lowerPrio
  1665             isButton: true
  1665 	    isButton: true
  1666             isVisible: allowModifications
  1666 	    isVisible: allowModifications
  1667             labelImage: (ResourceRetriever ProcessMonitorV2 processLowerPrio22x22Icon)
  1667 	    labelImage: (ResourceRetriever ProcessMonitorV2 processLowerPrio22x22Icon)
  1668           )
  1668 	  )
  1669          (MenuItem
  1669 	 (MenuItem
  1670             activeHelpKey: #'Raise Prio'
  1670 	    activeHelpKey: #'Raise Prio'
  1671             enabled: hasSelectionHolder
  1671 	    enabled: hasSelectionHolder
  1672             label: 'Raise Prio'
  1672 	    label: 'Raise Prio'
  1673             itemValue: raisePrio
  1673 	    itemValue: raisePrio
  1674             isButton: true
  1674 	    isButton: true
  1675             isVisible: allowModifications
  1675 	    isVisible: allowModifications
  1676             labelImage: (ResourceRetriever ProcessMonitorV2 processRaisePrio22x22Icon)
  1676 	    labelImage: (ResourceRetriever ProcessMonitorV2 processRaisePrio22x22Icon)
  1677           )
  1677 	  )
  1678          (MenuItem
  1678 	 (MenuItem
  1679             label: ''
  1679 	    label: ''
  1680             isVisible: allowModifications
  1680 	    isVisible: allowModifications
  1681           )
  1681 	  )
  1682          (MenuItem
  1682 	 (MenuItem
  1683             activeHelpKey: #'Update Process List'
  1683 	    activeHelpKey: #'Update Process List'
  1684             label: 'Update'
  1684 	    label: 'Update'
  1685             itemValue: updateList
  1685 	    itemValue: updateList
  1686             isButton: true
  1686 	    isButton: true
  1687             startGroup: right
  1687 	    startGroup: right
  1688             labelImage: (ResourceRetriever ToolbarIconLibrary reloadIcon)
  1688 	    labelImage: (ResourceRetriever ToolbarIconLibrary reloadIcon)
  1689           )
  1689 	  )
  1690          (MenuItem
  1690 	 (MenuItem
  1691             activeHelpKey: Details
  1691 	    activeHelpKey: Details
  1692             label: 'View Details'
  1692 	    label: 'View Details'
  1693             isButton: true
  1693 	    isButton: true
  1694             startGroup: right
  1694 	    startGroup: right
  1695             submenuChannel: viewDetailsMenuSpec
  1695 	    submenuChannel: viewDetailsMenuSpec
  1696             labelImage: (ResourceRetriever ToolbarIconLibrary viewDetailsIcon)
  1696 	    labelImage: (ResourceRetriever ToolbarIconLibrary viewDetailsIcon)
  1697           )
  1697 	  )
  1698          )
  1698 	 )
  1699         nil
  1699 	nil
  1700         nil
  1700 	nil
  1701       )
  1701       )
  1702 !
  1702 !
  1703 
  1703 
  1704 viewDetailsMenuSpec
  1704 viewDetailsMenuSpec
  1705     "This resource specification was automatically generated
  1705     "This resource specification was automatically generated
  1714      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 viewDetailsMenuSpec)) startUp
  1714      (Menu new fromLiteralArrayEncoding:(ProcessMonitorV2 viewDetailsMenuSpec)) startUp
  1715     "
  1715     "
  1716 
  1716 
  1717     <resource: #menu>
  1717     <resource: #menu>
  1718 
  1718 
  1719     ^ 
  1719     ^
  1720      #(Menu
  1720      #(Menu
  1721         (
  1721 	(
  1722          (MenuItem
  1722 	 (MenuItem
  1723             label: 'Id'
  1723 	    label: 'Id'
  1724             hideMenuOnActivated: false
  1724 	    hideMenuOnActivated: false
  1725             indication: showProcessId
  1725 	    indication: showProcessId
  1726           )
  1726 	  )
  1727          (MenuItem
  1727 	 (MenuItem
  1728             label: 'Group'
  1728 	    label: 'Group'
  1729             hideMenuOnActivated: false
  1729 	    hideMenuOnActivated: false
  1730             indication: showGroup
  1730 	    indication: showGroup
  1731           )
  1731 	  )
  1732          (MenuItem
  1732 	 (MenuItem
  1733             label: 'Instrumentation'
  1733 	    label: 'Instrumentation'
  1734             hideMenuOnActivated: false
  1734 	    hideMenuOnActivated: false
  1735             indication: showInstrumentation
  1735 	    indication: showInstrumentation
  1736           )
  1736 	  )
  1737          (MenuItem
  1737 	 (MenuItem
  1738             label: 'State'
  1738 	    label: 'State'
  1739             hideMenuOnActivated: false
  1739 	    hideMenuOnActivated: false
  1740             indication: showState
  1740 	    indication: showState
  1741           )
  1741 	  )
  1742          (MenuItem
  1742 	 (MenuItem
  1743             label: 'Prio'
  1743 	    label: 'Prio'
  1744             hideMenuOnActivated: false
  1744 	    hideMenuOnActivated: false
  1745             indication: showPrio
  1745 	    indication: showPrio
  1746           )
  1746 	  )
  1747          (MenuItem
  1747 	 (MenuItem
  1748             label: 'Used Stack'
  1748 	    label: 'Used Stack'
  1749             hideMenuOnActivated: false
  1749 	    hideMenuOnActivated: false
  1750             indication: showUsedStack
  1750 	    indication: showUsedStack
  1751           )
  1751 	  )
  1752          (MenuItem
  1752 	 (MenuItem
  1753             label: 'Total Stack'
  1753 	    label: 'Total Stack'
  1754             hideMenuOnActivated: false
  1754 	    hideMenuOnActivated: false
  1755             indication: showTotalStack
  1755 	    indication: showTotalStack
  1756           )
  1756 	  )
  1757          (MenuItem
  1757 	 (MenuItem
  1758             label: 'Current-Segment'
  1758 	    label: 'Current-Segment'
  1759             hideMenuOnActivated: false
  1759 	    hideMenuOnActivated: false
  1760             indication: showCurrentSegment
  1760 	    indication: showCurrentSegment
  1761           )
  1761 	  )
  1762          (MenuItem
  1762 	 (MenuItem
  1763             label: 'Switch'
  1763 	    label: 'Switch'
  1764             hideMenuOnActivated: false
  1764 	    hideMenuOnActivated: false
  1765             indication: showSwitch
  1765 	    indication: showSwitch
  1766           )
  1766 	  )
  1767          (MenuItem
  1767 	 (MenuItem
  1768             label: 'Where'
  1768 	    label: 'Where'
  1769             hideMenuOnActivated: false
  1769 	    hideMenuOnActivated: false
  1770             indication: showWhere
  1770 	    indication: showWhere
  1771           )
  1771 	  )
  1772          (MenuItem
  1772 	 (MenuItem
  1773             label: 'Application'
  1773 	    label: 'Application'
  1774             hideMenuOnActivated: false
  1774 	    hideMenuOnActivated: false
  1775             indication: showApplication
  1775 	    indication: showApplication
  1776           )
  1776 	  )
  1777          (MenuItem
  1777 	 (MenuItem
  1778             label: 'Window Title'
  1778 	    label: 'Window Title'
  1779             hideMenuOnActivated: false
  1779 	    hideMenuOnActivated: false
  1780             indication: showWindowTitle
  1780 	    indication: showWindowTitle
  1781           )
  1781 	  )
  1782          (MenuItem
  1782 	 (MenuItem
  1783             label: '-'
  1783 	    label: '-'
  1784           )
  1784 	  )
  1785          (MenuItem
  1785 	 (MenuItem
  1786             label: 'Show Dead Processes'
  1786 	    label: 'Show Dead Processes'
  1787             indication: showDead
  1787 	    indication: showDead
  1788           )
  1788 	  )
  1789          (MenuItem
  1789 	 (MenuItem
  1790             label: '-'
  1790 	    label: '-'
  1791           )
  1791 	  )
  1792          (MenuItem
  1792 	 (MenuItem
  1793             label: 'Update'
  1793 	    label: 'Update'
  1794             itemValue: updateView
  1794 	    itemValue: updateView
  1795           )
  1795 	  )
  1796          )
  1796 	 )
  1797         nil
  1797 	nil
  1798         nil
  1798 	nil
  1799       )
  1799       )
  1800 ! !
  1800 ! !
  1801 
  1801 
  1802 !ProcessMonitorV2 class methodsFor:'tableColumns specs'!
  1802 !ProcessMonitorV2 class methodsFor:'tableColumns specs'!
  1803 
  1803 
  1814 
  1814 
  1815     <resource: #tableColumns>
  1815     <resource: #tableColumns>
  1816 
  1816 
  1817     ^#(
  1817     ^#(
  1818       (DataSetColumnSpec
  1818       (DataSetColumnSpec
  1819          label: 'Id'
  1819 	 label: 'Id'
  1820          id: id
  1820 	 id: id
  1821          activeHelpKeyForLabel: 'processId'
  1821 	 activeHelpKeyForLabel: 'processId'
  1822          labelAlignment: left
  1822 	 labelAlignment: left
  1823          labelButtonType: Button
  1823 	 labelButtonType: Button
  1824          labelActionSelector: sortProcessListBy:
  1824 	 labelActionSelector: sortProcessListBy:
  1825          labelActionArgument: 'idVal'
  1825 	 labelActionArgument: 'idVal'
  1826          width: 45
  1826 	 width: 45
  1827          type: number
  1827 	 type: number
  1828          model: processId
  1828 	 model: processId
  1829          canSelect: false
  1829 	 canSelect: false
  1830          showRowSeparator: false
  1830 	 showRowSeparator: false
  1831          showColSeparator: false
  1831 	 showColSeparator: false
  1832        )
  1832        )
  1833       (DataSetColumnSpec
  1833       (DataSetColumnSpec
  1834          label: 'Group'
  1834 	 label: 'Group'
  1835          id: group
  1835 	 id: group
  1836          activeHelpKeyForLabel: 'processGroup'
  1836 	 activeHelpKeyForLabel: 'processGroup'
  1837          labelAlignment: left
  1837 	 labelAlignment: left
  1838          labelButtonType: Button
  1838 	 labelButtonType: Button
  1839          labelActionSelector: sortProcessListBy:
  1839 	 labelActionSelector: sortProcessListBy:
  1840          labelActionArgument: 'groupVal'
  1840 	 labelActionArgument: 'groupVal'
  1841          width: 45
  1841 	 width: 45
  1842          model: processGroup
  1842 	 model: processGroup
  1843          canSelect: false
  1843 	 canSelect: false
  1844          showRowSeparator: false
  1844 	 showRowSeparator: false
  1845          showColSeparator: false
  1845 	 showColSeparator: false
  1846        )
  1846        )
  1847       (DataSetColumnSpec
  1847       (DataSetColumnSpec
  1848          label: 'Name'
  1848 	 label: 'Name'
  1849          id: name
  1849 	 id: name
  1850          activeHelpKeyForLabel: 'processName'
  1850 	 activeHelpKeyForLabel: 'processName'
  1851          labelAlignment: left
  1851 	 labelAlignment: left
  1852          labelButtonType: Button
  1852 	 labelButtonType: Button
  1853          labelActionSelector: sortProcessListBy:
  1853 	 labelActionSelector: sortProcessListBy:
  1854          labelActionArgument: 'processName'
  1854 	 labelActionArgument: 'processName'
  1855          width: 200
  1855 	 width: 200
  1856          model: processName
  1856 	 model: processName
  1857          canSelect: false
  1857 	 canSelect: false
  1858          showRowSeparator: false
  1858 	 showRowSeparator: false
  1859          showColSeparator: false
  1859 	 showColSeparator: false
  1860        )
  1860        )
  1861       (DataSetColumnSpec
  1861       (DataSetColumnSpec
  1862          label: 'Instr.'
  1862 	 label: 'Instr.'
  1863          id: instrumentation
  1863 	 id: instrumentation
  1864          labelAlignment: left
  1864 	 labelAlignment: left
  1865          width: 50
  1865 	 width: 50
  1866          "/ activeHelpKey: 'processInstrumentation'
  1866 	 "/ activeHelpKey: 'processInstrumentation'
  1867          activeHelpKeyForLabel: 'processInstrumentation'
  1867 	 activeHelpKeyForLabel: 'processInstrumentation'
  1868          labelButtonType: Button
  1868 	 labelButtonType: Button
  1869          labelActionSelector: sortProcessListBy:
  1869 	 labelActionSelector: sortProcessListBy:
  1870          labelActionArgument: 'processInstrumentation'
  1870 	 labelActionArgument: 'processInstrumentation'
  1871          model: processInstrumentation
  1871 	 model: processInstrumentation
  1872          menuFromApplication: false
  1872 	 menuFromApplication: false
  1873          canSelect: false
  1873 	 canSelect: false
  1874          showRowSeparator: false
  1874 	 showRowSeparator: false
  1875          showColSeparator: false
  1875 	 showColSeparator: false
  1876        )
  1876        )
  1877       (DataSetColumnSpec
  1877       (DataSetColumnSpec
  1878          label: ''
  1878 	 label: ''
  1879          id: active
  1879 	 id: active
  1880          "/ activeHelpKey: 'processWasActive'
  1880 	 "/ activeHelpKey: 'processWasActive'
  1881          activeHelpKeyForLabel: 'processWasActive'
  1881 	 activeHelpKeyForLabel: 'processWasActive'
  1882          labelButtonType: Button
  1882 	 labelButtonType: Button
  1883          labelActionSelector: sortProcessListBy:
  1883 	 labelActionSelector: sortProcessListBy:
  1884          labelActionArgument: 'processActive'
  1884 	 labelActionArgument: 'processActive'
  1885          width: 10
  1885 	 width: 10
  1886          height: 5
  1886 	 height: 5
  1887          model: processActive
  1887 	 model: processActive
  1888          menuFromApplication: false
  1888 	 menuFromApplication: false
  1889          canSelect: false
  1889 	 canSelect: false
  1890          showRowSeparator: false
  1890 	 showRowSeparator: false
  1891          showColSeparator: false
  1891 	 showColSeparator: false
  1892        )
  1892        )
  1893       (DataSetColumnSpec
  1893       (DataSetColumnSpec
  1894          label: 'State'
  1894 	 label: 'State'
  1895          id: state
  1895 	 id: state
  1896          labelAlignment: left
  1896 	 labelAlignment: left
  1897          "/ activeHelpKey: 'processState'
  1897 	 "/ activeHelpKey: 'processState'
  1898          activeHelpKeyForLabel: 'processState'
  1898 	 activeHelpKeyForLabel: 'processState'
  1899          labelButtonType: Button
  1899 	 labelButtonType: Button
  1900          labelActionSelector: sortProcessListBy:
  1900 	 labelActionSelector: sortProcessListBy:
  1901          labelActionArgument: 'processState'
  1901 	 labelActionArgument: 'processState'
  1902          width: 100
  1902 	 width: 100
  1903          model: processState
  1903 	 model: processState
  1904          menuFromApplication: false
  1904 	 menuFromApplication: false
  1905          canSelect: false
  1905 	 canSelect: false
  1906          showRowSeparator: false
  1906 	 showRowSeparator: false
  1907          showColSeparator: false
  1907 	 showColSeparator: false
  1908        )
  1908        )
  1909       (DataSetColumnSpec
  1909       (DataSetColumnSpec
  1910          label: 'Prio'
  1910 	 label: 'Prio'
  1911          id: prio
  1911 	 id: prio
  1912          labelAlignment: left
  1912 	 labelAlignment: left
  1913          "/ activeHelpKey: 'processPriority'
  1913 	 "/ activeHelpKey: 'processPriority'
  1914          activeHelpKeyForLabel: 'processPriority'
  1914 	 activeHelpKeyForLabel: 'processPriority'
  1915          labelButtonType: Button
  1915 	 labelButtonType: Button
  1916          labelActionSelector: sortProcessListBy:
  1916 	 labelActionSelector: sortProcessListBy:
  1917          labelActionArgument: 'prioVal'
  1917 	 labelActionArgument: 'prioVal'
  1918          width: 40
  1918 	 width: 40
  1919          model: processPrio
  1919 	 model: processPrio
  1920          menuFromApplication: false
  1920 	 menuFromApplication: false
  1921          canSelect: false
  1921 	 canSelect: false
  1922          showRowSeparator: false
  1922 	 showRowSeparator: false
  1923          showColSeparator: false
  1923 	 showColSeparator: false
  1924        )
  1924        )
  1925       (DataSetColumnSpec
  1925       (DataSetColumnSpec
  1926          label: 'Used Stack'
  1926 	 label: 'Used Stack'
  1927          id: usedStack
  1927 	 id: usedStack
  1928          labelAlignment: left
  1928 	 labelAlignment: left
  1929          "/ activeHelpKey: 'processUsedStack'
  1929 	 "/ activeHelpKey: 'processUsedStack'
  1930          activeHelpKeyForLabel: 'processUsedStack'
  1930 	 activeHelpKeyForLabel: 'processUsedStack'
  1931          labelButtonType: Button
  1931 	 labelButtonType: Button
  1932          labelActionSelector: sortProcessListBy:
  1932 	 labelActionSelector: sortProcessListBy:
  1933          labelActionArgument: 'processUsedStack'
  1933 	 labelActionArgument: 'processUsedStack'
  1934          columnAlignment: right
  1934 	 columnAlignment: right
  1935          width: 75
  1935 	 width: 75
  1936          type: number
  1936 	 type: number
  1937          model: processUsedStack
  1937 	 model: processUsedStack
  1938          menuFromApplication: false
  1938 	 menuFromApplication: false
  1939          canSelect: false
  1939 	 canSelect: false
  1940          showRowSeparator: false
  1940 	 showRowSeparator: false
  1941          showColSeparator: false
  1941 	 showColSeparator: false
  1942        )
  1942        )
  1943       (DataSetColumnSpec
  1943       (DataSetColumnSpec
  1944          label: 'Total Stack'
  1944 	 label: 'Total Stack'
  1945          id: totalStack
  1945 	 id: totalStack
  1946          labelAlignment: left
  1946 	 labelAlignment: left
  1947          "/ activeHelpKey: 'processTotalStack'
  1947 	 "/ activeHelpKey: 'processTotalStack'
  1948          activeHelpKeyForLabel: 'processTotalStack'
  1948 	 activeHelpKeyForLabel: 'processTotalStack'
  1949          labelButtonType: Button
  1949 	 labelButtonType: Button
  1950          labelActionSelector: sortProcessListBy:
  1950 	 labelActionSelector: sortProcessListBy:
  1951          labelActionArgument: 'processTotalStack'
  1951 	 labelActionArgument: 'processTotalStack'
  1952          columnAlignment: right
  1952 	 columnAlignment: right
  1953          width: 75
  1953 	 width: 75
  1954          model: processTotalStack
  1954 	 model: processTotalStack
  1955          menuFromApplication: false
  1955 	 menuFromApplication: false
  1956          canSelect: false
  1956 	 canSelect: false
  1957          showRowSeparator: false
  1957 	 showRowSeparator: false
  1958          showColSeparator: false
  1958 	 showColSeparator: false
  1959        )
  1959        )
  1960       (DataSetColumnSpec
  1960       (DataSetColumnSpec
  1961          label: 'Current-Segment'
  1961 	 label: 'Current-Segment'
  1962          id: currentSegment
  1962 	 id: currentSegment
  1963          activeHelpKeyForLabel: 'processCurrentSegment'
  1963 	 activeHelpKeyForLabel: 'processCurrentSegment'
  1964          labelAlignment: left
  1964 	 labelAlignment: left
  1965          labelButtonType: Button
  1965 	 labelButtonType: Button
  1966          labelActionSelector: sortProcessListBy:
  1966 	 labelActionSelector: sortProcessListBy:
  1967          labelActionArgument: 'processCurrentSegment'
  1967 	 labelActionArgument: 'processCurrentSegment'
  1968          width: 110
  1968 	 width: 110
  1969          model: processCurrentSegment
  1969 	 model: processCurrentSegment
  1970          canSelect: false
  1970 	 canSelect: false
  1971          showRowSeparator: false
  1971 	 showRowSeparator: false
  1972          showColSeparator: false
  1972 	 showColSeparator: false
  1973        )
  1973        )
  1974       (DataSetColumnSpec
  1974       (DataSetColumnSpec
  1975          label: 'Switch'
  1975 	 label: 'Switch'
  1976          id: switch
  1976 	 id: switch
  1977          activeHelpKeyForLabel: 'processSwitch'
  1977 	 activeHelpKeyForLabel: 'processSwitch'
  1978          labelAlignment: left
  1978 	 labelAlignment: left
  1979          labelButtonType: Button
  1979 	 labelButtonType: Button
  1980          labelActionSelector: sortProcessListBy:
  1980 	 labelActionSelector: sortProcessListBy:
  1981          labelActionArgument: 'processSwitch'
  1981 	 labelActionArgument: 'processSwitch'
  1982          columnAlignment: right
  1982 	 columnAlignment: right
  1983          width: 55
  1983 	 width: 55
  1984          type: number
  1984 	 type: number
  1985          model: processSwitch
  1985 	 model: processSwitch
  1986          canSelect: false
  1986 	 canSelect: false
  1987          showRowSeparator: false
  1987 	 showRowSeparator: false
  1988          showColSeparator: false
  1988 	 showColSeparator: false
  1989        )
  1989        )
  1990       (DataSetColumnSpec
  1990       (DataSetColumnSpec
  1991          label: 'Where'
  1991 	 label: 'Where'
  1992          id: where
  1992 	 id: where
  1993          labelAlignment: left
  1993 	 labelAlignment: left
  1994          "/ activeHelpKey: 'processWhere'
  1994 	 "/ activeHelpKey: 'processWhere'
  1995          activeHelpKeyForLabel: 'processWhere'
  1995 	 activeHelpKeyForLabel: 'processWhere'
  1996          labelButtonType: Button
  1996 	 labelButtonType: Button
  1997          labelActionSelector: sortProcessListBy:
  1997 	 labelActionSelector: sortProcessListBy:
  1998          labelActionArgument: 'processWhere'
  1998 	 labelActionArgument: 'processWhere'
  1999          model: processWhere
  1999 	 model: processWhere
  2000          menuFromApplication: false
  2000 	 menuFromApplication: false
  2001          canSelect: false
  2001 	 canSelect: false
  2002          showRowSeparator: false
  2002 	 showRowSeparator: false
  2003          showColSeparator: false
  2003 	 showColSeparator: false
  2004        )
  2004        )
  2005       (DataSetColumnSpec
  2005       (DataSetColumnSpec
  2006          label: 'Application'
  2006 	 label: 'Application'
  2007          id: application
  2007 	 id: application
  2008          labelAlignment: left
  2008 	 labelAlignment: left
  2009          "/ activeHelpKey: 'processApplication'
  2009 	 "/ activeHelpKey: 'processApplication'
  2010          activeHelpKeyForLabel: 'processApplication'
  2010 	 activeHelpKeyForLabel: 'processApplication'
  2011          labelButtonType: Button
  2011 	 labelButtonType: Button
  2012          labelActionSelector: sortProcessListBy:
  2012 	 labelActionSelector: sortProcessListBy:
  2013          labelActionArgument: 'processApplication'
  2013 	 labelActionArgument: 'processApplication'
  2014          model: processApplication
  2014 	 model: processApplication
  2015          menuFromApplication: false
  2015 	 menuFromApplication: false
  2016          canSelect: false
  2016 	 canSelect: false
  2017          showRowSeparator: false
  2017 	 showRowSeparator: false
  2018          showColSeparator: false
  2018 	 showColSeparator: false
  2019        )
  2019        )
  2020       (DataSetColumnSpec
  2020       (DataSetColumnSpec
  2021          label: 'Window Title'
  2021 	 label: 'Window Title'
  2022          id: windowTitle
  2022 	 id: windowTitle
  2023          labelAlignment: left
  2023 	 labelAlignment: left
  2024          "/ activeHelpKey: 'processWindowTitle'
  2024 	 "/ activeHelpKey: 'processWindowTitle'
  2025          activeHelpKeyForLabel: 'processWindowTitle'
  2025 	 activeHelpKeyForLabel: 'processWindowTitle'
  2026          labelButtonType: Button
  2026 	 labelButtonType: Button
  2027          labelActionSelector: sortProcessListBy:
  2027 	 labelActionSelector: sortProcessListBy:
  2028          labelActionArgument: 'processWindowTitle'
  2028 	 labelActionArgument: 'processWindowTitle'
  2029          model: processWindowTitle
  2029 	 model: processWindowTitle
  2030          menuFromApplication: false
  2030 	 menuFromApplication: false
  2031          canSelect: false
  2031 	 canSelect: false
  2032          showRowSeparator: false
  2032 	 showRowSeparator: false
  2033          showColSeparator: false
  2033 	 showColSeparator: false
  2034        )
  2034        )
  2035       )
  2035       )
  2036 ! !
  2036 ! !
  2037 
  2037 
  2038 !ProcessMonitorV2 methodsFor:'accessing'!
  2038 !ProcessMonitorV2 methodsFor:'accessing'!
  2049 
  2049 
  2050 changeSelectionTo:aSelection
  2050 changeSelectionTo:aSelection
  2051     | newSelection |
  2051     | newSelection |
  2052 
  2052 
  2053     aSelection notNil ifTrue:[
  2053     aSelection notNil ifTrue:[
  2054         newSelection := OrderedCollection new.
  2054 	newSelection := OrderedCollection new.
  2055         aSelection do:[:processItem |
  2055 	aSelection do:[:processItem |
  2056             | index |
  2056 	    | index |
  2057 
  2057 
  2058             index := processList findFirst:[:anItem | (anItem processInstance == processItem processInstance)].
  2058 	    index := processList findFirst:[:anItem | (anItem processInstance == processItem processInstance)].
  2059             index ~~ 0 ifTrue:[
  2059 	    index ~~ 0 ifTrue:[
  2060                 newSelection add:(processList at:index).
  2060 		newSelection add:(processList at:index).
  2061             ].
  2061 	    ].
  2062         ].
  2062 	].
  2063         self selectedProcesses value:newSelection
  2063 	self selectedProcesses value:newSelection
  2064     ].
  2064     ].
  2065 !
  2065 !
  2066 
  2066 
  2067 changeSelectionToProcesses:aProcessList
  2067 changeSelectionToProcesses:aProcessList
  2068 
  2068 
  2113      Subclasses may redefine this"
  2113      Subclasses may redefine this"
  2114 
  2114 
  2115     |coll|
  2115     |coll|
  2116 
  2116 
  2117     self showDead value ifTrue:[
  2117     self showDead value ifTrue:[
  2118         coll := Process allSubInstances asOrderedCollection.
  2118 	coll := Process allSubInstances asOrderedCollection.
  2119     ] ifFalse:[
  2119     ] ifFalse:[
  2120         coll := ProcessorScheduler knownProcesses asOrderedCollection.
  2120 	coll := ProcessorScheduler knownProcesses asOrderedCollection.
  2121         coll add:Processor scheduler.
  2121 	coll add:Processor scheduler.
  2122     ].
  2122     ].
  2123     ^ coll
  2123     ^ coll
  2124 !
  2124 !
  2125 
  2125 
  2126 increaseupdateContentsDelayTime
  2126 increaseupdateContentsDelayTime
  2268 
  2268 
  2269 showApplication
  2269 showApplication
  2270     "return/create the 'showApplication' value holder (automatically generated)"
  2270     "return/create the 'showApplication' value holder (automatically generated)"
  2271 
  2271 
  2272     showApplication isNil ifTrue:[
  2272     showApplication isNil ifTrue:[
  2273         showApplication := false asValue.
  2273 	showApplication := false asValue.
  2274         showApplication onChangeSend:#viewedColumnsChanged to:self
  2274 	showApplication onChangeSend:#viewedColumnsChanged to:self
  2275     ].
  2275     ].
  2276     ^ showApplication
  2276     ^ showApplication
  2277 
  2277 
  2278     "Created: / 17-08-2011 / 10:46:56 / cg"
  2278     "Created: / 17-08-2011 / 10:46:56 / cg"
  2279 !
  2279 !
  2300 
  2300 
  2301 showInstrumentation
  2301 showInstrumentation
  2302     "return/create the 'showInstrumentation' value holder (automatically generated)"
  2302     "return/create the 'showInstrumentation' value holder (automatically generated)"
  2303 
  2303 
  2304     showInstrumentation isNil ifTrue:[
  2304     showInstrumentation isNil ifTrue:[
  2305         showInstrumentation := true asValue.
  2305 	showInstrumentation := true asValue.
  2306         showInstrumentation onChangeSend:#viewedColumnsChanged to:self
  2306 	showInstrumentation onChangeSend:#viewedColumnsChanged to:self
  2307     ].
  2307     ].
  2308     ^ showInstrumentation
  2308     ^ showInstrumentation
  2309 
  2309 
  2310     "Created: / 17-08-2011 / 10:46:27 / cg"
  2310     "Created: / 17-08-2011 / 10:46:27 / cg"
  2311 !
  2311 !
  2381 
  2381 
  2382 showWindowTitle
  2382 showWindowTitle
  2383     "return/create the 'showWindowTitle' value holder (automatically generated)"
  2383     "return/create the 'showWindowTitle' value holder (automatically generated)"
  2384 
  2384 
  2385     showWindowTitle isNil ifTrue:[
  2385     showWindowTitle isNil ifTrue:[
  2386         showWindowTitle := false asValue.
  2386 	showWindowTitle := false asValue.
  2387         showWindowTitle onChangeSend:#viewedColumnsChanged to:self
  2387 	showWindowTitle onChangeSend:#viewedColumnsChanged to:self
  2388     ].
  2388     ].
  2389     ^ showWindowTitle
  2389     ^ showWindowTitle
  2390 
  2390 
  2391     "Created: / 17-08-2011 / 10:46:47 / cg"
  2391     "Created: / 17-08-2011 / 10:46:47 / cg"
  2392 ! !
  2392 ! !
  2401     ^ allowModifications
  2401     ^ allowModifications
  2402 !
  2402 !
  2403 
  2403 
  2404 allowModificationsAndHasDebugger
  2404 allowModificationsAndHasDebugger
  2405     ^ BlockValue
  2405     ^ BlockValue
  2406         forLogical:(self allowModifications)
  2406 	forLogical:(self allowModifications)
  2407         and:[ Debugger notNil ]
  2407 	and:[ Debugger notNil ]
  2408 !
  2408 !
  2409 
  2409 
  2410 enableDecreaseContentsDelayTime
  2410 enableDecreaseContentsDelayTime
  2411 
  2411 
  2412     enableDecreaseContentsDelayTime isNil ifTrue:[
  2412     enableDecreaseContentsDelayTime isNil ifTrue:[
  2543     hasSelection := self hasSelection.
  2543     hasSelection := self hasSelection.
  2544 
  2544 
  2545     hasSelectionHolder value:hasSelection.
  2545     hasSelectionHolder value:hasSelection.
  2546 
  2546 
  2547     hasSelection ifFalse:[
  2547     hasSelection ifFalse:[
  2548         self selectionRestartable value:false.
  2548 	self selectionRestartable value:false.
  2549         hasSelectionWithStoppedProcessHolder value:false.
  2549 	hasSelectionWithStoppedProcessHolder value:false.
  2550         hasSelectionWithApplicationProcessHolder value:false.
  2550 	hasSelectionWithApplicationProcessHolder value:false.
  2551         hasSelectionWithGUIProcessHolder value:false.
  2551 	hasSelectionWithGUIProcessHolder value:false.
  2552         hasSelectionWithEnabledInstrumentationHolder value:false.
  2552 	hasSelectionWithEnabledInstrumentationHolder value:false.
  2553         hasSelectionWithDisabledInstrumentationHolder value:false.
  2553 	hasSelectionWithDisabledInstrumentationHolder value:false.
  2554         ^ self
  2554 	^ self
  2555     ].
  2555     ].
  2556 
  2556 
  2557     hasSelectionWithStoppedProcessHolder value:self hasSelectionWithStoppedProcess.
  2557     hasSelectionWithStoppedProcessHolder value:self hasSelectionWithStoppedProcess.
  2558     hasSelectionWithApplicationProcessHolder value:self hasSelectionWithApplicationProcess.
  2558     hasSelectionWithApplicationProcessHolder value:self hasSelectionWithApplicationProcess.
  2559     hasSelectionWithGUIProcessHolder value:self hasSelectionWithGUIProcess.
  2559     hasSelectionWithGUIProcessHolder value:self hasSelectionWithGUIProcess.
  2560     hasSelectionWithEnabledInstrumentationHolder value:self hasSelectionWithEnabledInstrumentation.
  2560     hasSelectionWithEnabledInstrumentationHolder value:self hasSelectionWithEnabledInstrumentation.
  2561     hasSelectionWithDisabledInstrumentationHolder value:self hasSelectionWithDisabledInstrumentation.
  2561     hasSelectionWithDisabledInstrumentationHolder value:self hasSelectionWithDisabledInstrumentation.
  2562 
  2562 
  2563     allRestartable := true.
  2563     allRestartable := true.
  2564     self selectedProcessesDo:[:p |
  2564     self selectedProcessesDo:[:p |
  2565         p isRestartable ifFalse:[
  2565 	p isRestartable ifFalse:[
  2566             allRestartable := false
  2566 	    allRestartable := false
  2567         ].
  2567 	].
  2568     ].
  2568     ].
  2569     self selectionRestartable value:allRestartable.
  2569     self selectionRestartable value:allRestartable.
  2570     ^ self.
  2570     ^ self.
  2571 
  2571 
  2572     "Modified: / 17-08-2011 / 11:41:32 / cg"
  2572     "Modified: / 17-08-2011 / 11:41:32 / cg"
  2597     | columns buffer locCurrentSortOrder currentSortOrderColumn currentSortOrderReverse oldSelection sel|
  2597     | columns buffer locCurrentSortOrder currentSortOrderColumn currentSortOrderReverse oldSelection sel|
  2598 
  2598 
  2599     "/ remember the selected processes
  2599     "/ remember the selected processes
  2600     sel := self selectedProcesses value.
  2600     sel := self selectedProcesses value.
  2601     sel notNil ifTrue:[
  2601     sel notNil ifTrue:[
  2602         oldSelection := OrderedCollection new.
  2602 	oldSelection := OrderedCollection new.
  2603         sel do:[:proItem|
  2603 	sel do:[:proItem|
  2604             |process|
  2604 	    |process|
  2605 
  2605 
  2606             (process := proItem processInstance) notNil ifTrue:[
  2606 	    (process := proItem processInstance) notNil ifTrue:[
  2607                 oldSelection add:process
  2607 		oldSelection add:process
  2608             ].
  2608 	    ].
  2609         ].
  2609 	].
  2610     ].
  2610     ].
  2611 "/    Transcript showCR:'oldSelection on catch in viewedColumnsChanged', (oldSelection isNil ifTrue:['nil'] ifFalse:[oldSelection first printString]).
  2611 "/    Transcript showCR:'oldSelection on catch in viewedColumnsChanged', (oldSelection isNil ifTrue:['nil'] ifFalse:[oldSelection first printString]).
  2612     columns := OrderedCollection new.
  2612     columns := OrderedCollection new.
  2613     self class tableColumns do:[:el|
  2613     self class tableColumns do:[:el|
  2614         columns add:(DataSetColumnSpec decodeFromLiteralArray:el).
  2614 	columns add:(DataSetColumnSpec decodeFromLiteralArray:el).
  2615     ].
  2615     ].
  2616     buffer := columns copy.
  2616     buffer := columns copy.
  2617     locCurrentSortOrder := self currentSortOrder value.
  2617     locCurrentSortOrder := self currentSortOrder value.
  2618     currentSortOrderColumn := locCurrentSortOrder at:#column ifAbsent:nil.
  2618     currentSortOrderColumn := locCurrentSortOrder at:#column ifAbsent:nil.
  2619     currentSortOrderReverse := locCurrentSortOrder at:#reverse ifAbsent:nil.
  2619     currentSortOrderReverse := locCurrentSortOrder at:#reverse ifAbsent:nil.
  2620     buffer do:[:col |
  2620     buffer do:[:col |
  2621         | id |
  2621 	| id |
  2622         id := col id.
  2622 	id := col id.
  2623         id notNil ifTrue:[
  2623 	id notNil ifTrue:[
  2624             (col labelActionArgument notNil and:[col labelActionArgument asSymbol == currentSortOrderColumn]) ifTrue:[
  2624 	    (col labelActionArgument notNil and:[col labelActionArgument asSymbol == currentSortOrderColumn]) ifTrue:[
  2625                 | label icon|
  2625 		| label icon|
  2626                 label := col label.
  2626 		label := col label.
  2627                 icon := currentSortOrderReverse ifTrue:[self class detailsMenuIconDown] ifFalse:[self class detailsMenuIconUp].
  2627 		icon := currentSortOrderReverse ifTrue:[self class detailsMenuIconDown] ifFalse:[self class detailsMenuIconUp].
  2628                 col label:(LabelAndIcon label:label icon:icon).
  2628 		col label:(LabelAndIcon label:label icon:icon).
  2629             ].
  2629 	    ].
  2630             #(
  2630 	    #(
  2631                 ( #id             #showProcessId)
  2631 		( #id             #showProcessId)
  2632                 ( #group          #showGroup)
  2632 		( #group          #showGroup)
  2633                 ( #prio           #showPrio)
  2633 		( #prio           #showPrio)
  2634                 ( #currentSegment #showCurrentSegment)
  2634 		( #currentSegment #showCurrentSegment)
  2635                 ( #state          #showState)
  2635 		( #state          #showState)
  2636                 ( #switch         #showSwitch)
  2636 		( #switch         #showSwitch)
  2637                 ( #totalStack     #showTotalStack)
  2637 		( #totalStack     #showTotalStack)
  2638                 ( #usedStack      #showUsedStack)
  2638 		( #usedStack      #showUsedStack)
  2639                 ( #where          #showWhere)
  2639 		( #where          #showWhere)
  2640                 ( #application    #showApplication)
  2640 		( #application    #showApplication)
  2641                 ( #windowTitle    #showWindowTitle)
  2641 		( #windowTitle    #showWindowTitle)
  2642                 ( #instrumentation #showInstrumentation)
  2642 		( #instrumentation #showInstrumentation)
  2643             ) pairsDo:[:colName :holderAccessorSelector |
  2643 	    ) pairsDo:[:colName :holderAccessorSelector |
  2644                 (id == colName and:[(self perform:holderAccessorSelector) value not]) ifTrue:[
  2644 		(id == colName and:[(self perform:holderAccessorSelector) value not]) ifTrue:[
  2645                     columns remove:col.
  2645 		    columns remove:col.
  2646                 ]
  2646 		]
  2647             ]
  2647 	    ]
  2648         ]
  2648 	]
  2649     ].
  2649     ].
  2650     updateSema critical:[
  2650     updateSema critical:[
  2651         self tableColumns value:columns.
  2651 	self tableColumns value:columns.
  2652 "/        self updateTable:nil.
  2652 "/        self updateTable:nil.
  2653 "/        Transcript showCR:'oldSelection on set in viewedColumnsChanged', (oldSelection isNil ifTrue:['nil'] ifFalse:[oldSelection first printString]).
  2653 "/        Transcript showCR:'oldSelection on set in viewedColumnsChanged', (oldSelection isNil ifTrue:['nil'] ifFalse:[oldSelection first printString]).
  2654         self changeSelectionToProcesses:oldSelection.
  2654 	self changeSelectionToProcesses:oldSelection.
  2655     ].
  2655     ].
  2656 
  2656 
  2657     "Modified: / 17-08-2011 / 11:11:21 / cg"
  2657     "Modified: / 17-08-2011 / 11:11:21 / cg"
  2658 ! !
  2658 ! !
  2659 
  2659 
  2666     <resource: #keyboard (#InspectIt )>
  2666     <resource: #keyboard (#InspectIt )>
  2667 
  2667 
  2668     |focusView key rawKey|
  2668     |focusView key rawKey|
  2669 
  2669 
  2670     anEvent isKeyPressEvent ifTrue:[
  2670     anEvent isKeyPressEvent ifTrue:[
  2671         focusView := anEvent targetView.
  2671 	focusView := anEvent targetView.
  2672         key := anEvent key.
  2672 	key := anEvent key.
  2673         rawKey := anEvent rawKey.
  2673 	rawKey := anEvent rawKey.
  2674 
  2674 
  2675         (focusView == processList) ifTrue:[
  2675 	(focusView == processList) ifTrue:[
  2676             key == #InspectIt ifTrue:[
  2676 	    key == #InspectIt ifTrue:[
  2677                 self inspectSelection.
  2677 		self inspectSelection.
  2678                 ^ true.
  2678 		^ true.
  2679             ].
  2679 	    ].
  2680         ]
  2680 	]
  2681     ].
  2681     ].
  2682     ^ false
  2682     ^ false
  2683 ! !
  2683 ! !
  2684 
  2684 
  2685 !ProcessMonitorV2 methodsFor:'initialization & release'!
  2685 !ProcessMonitorV2 methodsFor:'initialization & release'!
  2714     listUpdateDelay := 5.0.
  2714     listUpdateDelay := 5.0.
  2715 
  2715 
  2716     "/ event mode is no longer used;
  2716     "/ event mode is no longer used;
  2717     "/ this event support may vanish
  2717     "/ this event support may vanish
  2718     Processor isPureEventDriven ifTrue:[
  2718     Processor isPureEventDriven ifTrue:[
  2719         updateBlock := [self updateStatus:nil].
  2719 	updateBlock := [self updateStatus:nil].
  2720         listUpdateBlock := [self updateList].
  2720 	listUpdateBlock := [self updateList].
  2721     ].
  2721     ].
  2722 
  2722 
  2723     "Modified: / 17-08-2011 / 11:39:13 / cg"
  2723     "Modified: / 17-08-2011 / 11:39:13 / cg"
  2724 !
  2724 !
  2725 
  2725 
  2793 
  2793 
  2794     |v wg p item|
  2794     |v wg p item|
  2795 
  2795 
  2796     v := Screen current viewFromUser.
  2796     v := Screen current viewFromUser.
  2797     v notNil ifTrue:[
  2797     v notNil ifTrue:[
  2798         (wg := v windowGroup) notNil ifTrue:[
  2798 	(wg := v windowGroup) notNil ifTrue:[
  2799             (p := wg process) notNil ifTrue:[
  2799 	    (p := wg process) notNil ifTrue:[
  2800                 item := processList detect:[:i | i processId = p id] ifNone:nil.
  2800 		item := processList detect:[:i | i processId = p id] ifNone:nil.
  2801                 item notNil ifTrue:[
  2801 		item notNil ifTrue:[
  2802                     self selectedProcesses value:(Array with:item)
  2802 		    self selectedProcesses value:(Array with:item)
  2803                 ]
  2803 		]
  2804             ].
  2804 	    ].
  2805         ]
  2805 	]
  2806     ].
  2806     ].
  2807 !
  2807 !
  2808 
  2808 
  2809 hardTerminateProcess
  2809 hardTerminateProcess
  2810     "hard terminate the selected process"
  2810     "hard terminate the selected process"
  2850 
  2850 
  2851 restartProcess
  2851 restartProcess
  2852     "restarts the selected process"
  2852     "restarts the selected process"
  2853 
  2853 
  2854     self selectedProcessesDo:[:p |
  2854     self selectedProcessesDo:[:p |
  2855         p restart.
  2855 	p restart.
  2856     ].
  2856     ].
  2857     self updateList.
  2857     self updateList.
  2858 
  2858 
  2859     "Modified: / 07-06-2007 / 12:39:04 / cg"
  2859     "Modified: / 07-06-2007 / 12:39:04 / cg"
  2860 !
  2860 !
  2869     "set a prio-range the selected processes priority"
  2869     "set a prio-range the selected processes priority"
  2870 
  2870 
  2871     |rangeString range|
  2871     |rangeString range|
  2872 
  2872 
  2873     [
  2873     [
  2874         rangeString := Dialog 
  2874 	rangeString := Dialog
  2875                             request:'Priority Range (min to: max)'
  2875 			    request:'Priority Range (min to: max)'
  2876                             initialAnswer:'7 to: 8'.
  2876 			    initialAnswer:'7 to: 8'.
  2877         rangeString isNil ifTrue:[
  2877 	rangeString isNil ifTrue:[
  2878             ^ self  "aborted"
  2878 	    ^ self  "aborted"
  2879         ].
  2879 	].
  2880         range := Interval readFrom:rangeString onError:nil.
  2880 	range := Interval readFrom:rangeString onError:nil.
  2881     ] doWhile:[range isNil].
  2881     ] doWhile:[range isNil].
  2882 
  2882 
  2883     self selectedProcessesDo:[:p |
  2883     self selectedProcessesDo:[:p |
  2884        p priorityRange:range
  2884        p priorityRange:range
  2885     ].
  2885     ].
  2886     self updateList.
  2886     self updateList.
  2887 !
  2887 !
  2888 
  2888 
  2889 startTimeslicing
  2889 startTimeslicing
  2890     Processor isTimeSlicing ifFalse:[
  2890     Processor isTimeSlicing ifFalse:[
  2891         Processor startTimeSlicing.
  2891 	Processor startTimeSlicing.
  2892     ].
  2892     ].
  2893 
  2893 
  2894     "Created: / 03-11-2011 / 21:26:27 / cg"
  2894     "Created: / 03-11-2011 / 21:26:27 / cg"
  2895 !
  2895 !
  2896 
  2896 
  2900     self selectedProcessesSend:#stop
  2900     self selectedProcessesSend:#stop
  2901 !
  2901 !
  2902 
  2902 
  2903 stopTimeslicing
  2903 stopTimeslicing
  2904     Processor isTimeSlicing ifTrue:[
  2904     Processor isTimeSlicing ifTrue:[
  2905         Processor stopTimeSlicing.
  2905 	Processor stopTimeSlicing.
  2906     ].
  2906     ].
  2907 
  2907 
  2908     "Created: / 03-11-2011 / 21:26:40 / cg"
  2908     "Created: / 03-11-2011 / 21:26:40 / cg"
  2909 !
  2909 !
  2910 
  2910 
  3099 getApplicationFor:aProcess
  3099 getApplicationFor:aProcess
  3100     |wg app|
  3100     |wg app|
  3101 
  3101 
  3102     wg := self windowGroupOfProcess:aProcess.
  3102     wg := self windowGroupOfProcess:aProcess.
  3103     wg notNil ifTrue:[
  3103     wg notNil ifTrue:[
  3104         (app := wg application) notNil ifTrue:[
  3104 	(app := wg application) notNil ifTrue:[
  3105             ^ app.
  3105 	    ^ app.
  3106         ].
  3106 	].
  3107     ].
  3107     ].
  3108     ^ nil.
  3108     ^ nil.
  3109 
  3109 
  3110     "Created: / 17-08-2011 / 11:12:13 / cg"
  3110     "Created: / 17-08-2011 / 11:12:13 / cg"
  3111 !
  3111 !
  3112 
  3112 
  3113 getApplicationStringFor:aProcess
  3113 getApplicationStringFor:aProcess
  3114     |app|
  3114     |app|
  3115 
  3115 
  3116     (app := self getApplicationFor:aProcess) notNil ifTrue:[
  3116     (app := self getApplicationFor:aProcess) notNil ifTrue:[
  3117         ^ app class name.
  3117 	^ app class name.
  3118     ].
  3118     ].
  3119     ^ ''.
  3119     ^ ''.
  3120 
  3120 
  3121     "Created: / 17-08-2011 / 10:58:50 / cg"
  3121     "Created: / 17-08-2011 / 10:58:50 / cg"
  3122 !
  3122 !
  3123 
  3123 
  3124 getCurrentSegmentStringFor:con
  3124 getCurrentSegmentStringFor:con
  3125     | contextCount c sender|
  3125     | contextCount c sender|
  3126 
  3126 
  3127     con notNil ifTrue:[
  3127     con notNil ifTrue:[
  3128         contextCount := 1.
  3128 	contextCount := 1.
  3129         c := con.
  3129 	c := con.
  3130         [(sender := c sender) notNil] whileTrue:[
  3130 	[(sender := c sender) notNil] whileTrue:[
  3131             c := sender.
  3131 	    c := sender.
  3132             contextCount := contextCount + 1.
  3132 	    contextCount := contextCount + 1.
  3133         ].
  3133 	].
  3134         ^ (((ObjectMemory addressOf:con) printStringRadix:16),
  3134 	^ (((ObjectMemory addressOf:con) printStringRadix:16),
  3135            ' .. ',
  3135 	   ' .. ',
  3136            ((ObjectMemory addressOf:c) printStringRadix:16)).
  3136 	   ((ObjectMemory addressOf:c) printStringRadix:16)).
  3137     ].
  3137     ].
  3138     ^ ''
  3138     ^ ''
  3139 
  3139 
  3140     "Modified (format): / 17-08-2011 / 10:57:23 / cg"
  3140     "Modified (format): / 17-08-2011 / 10:57:23 / cg"
  3141 !
  3141 !
  3143 getGroupStringFor:aProcess
  3143 getGroupStringFor:aProcess
  3144     |gId|
  3144     |gId|
  3145 
  3145 
  3146     gId := aProcess processGroupId.
  3146     gId := aProcess processGroupId.
  3147     ((gId == aProcess id) or:[gId isNil]) ifTrue:[
  3147     ((gId == aProcess id) or:[gId isNil]) ifTrue:[
  3148         "/ a group leader
  3148 	"/ a group leader
  3149         ^ '-'.
  3149 	^ '-'.
  3150     ] ifFalse:[
  3150     ] ifFalse:[
  3151         ^ gId.
  3151 	^ gId.
  3152     ].
  3152     ].
  3153 
  3153 
  3154     "Modified (format): / 17-08-2011 / 10:57:33 / cg"
  3154     "Modified (format): / 17-08-2011 / 10:57:33 / cg"
  3155 !
  3155 !
  3156 
  3156 
  3157 getInstrumentationStringFor:aProcess
  3157 getInstrumentationStringFor:aProcess
  3158     ^ (InstrumentationContext forProcess:aProcess) isNil
  3158     ^ (InstrumentationContext forProcess:aProcess) isNil
  3159         ifTrue:['']
  3159 	ifTrue:['']
  3160         ifFalse:['Y']
  3160 	ifFalse:['Y']
  3161 
  3161 
  3162     "Created: / 17-08-2011 / 11:04:14 / cg"
  3162     "Created: / 17-08-2011 / 11:04:14 / cg"
  3163 !
  3163 !
  3164 
  3164 
  3165 getPrioStringFor:aProcess
  3165 getPrioStringFor:aProcess
  3166     |prioRange|
  3166     |prioRange|
  3167 
  3167 
  3168     Processor supportDynamicPriorities ifTrue:[
  3168     Processor supportDynamicPriorities ifTrue:[
  3169         (prioRange := aProcess priorityRange) isNil ifTrue:[
  3169 	(prioRange := aProcess priorityRange) isNil ifTrue:[
  3170             ^ aProcess priority asString.
  3170 	    ^ aProcess priority asString.
  3171         ] ifFalse:[
  3171 	] ifFalse:[
  3172             ^ (aProcess priority asString,
  3172 	    ^ (aProcess priority asString,
  3173                     ' [',
  3173 		    ' [',
  3174                     prioRange start printString,
  3174 		    prioRange start printString,
  3175                     '..',
  3175 		    '..',
  3176                     prioRange stop printString,
  3176 		    prioRange stop printString,
  3177                     ']').
  3177 		    ']').
  3178         ].
  3178 	].
  3179     ].
  3179     ].
  3180     ^ ''
  3180     ^ ''
  3181 
  3181 
  3182     "Modified (format): / 17-08-2011 / 10:57:36 / cg"
  3182     "Modified (format): / 17-08-2011 / 10:57:36 / cg"
  3183 !
  3183 !
  3184 
  3184 
  3185 getTotalStackStringFor:aProcess
  3185 getTotalStackStringFor:aProcess
  3186     | tStackSize noOfSegs |
  3186     | tStackSize noOfSegs |
  3187 
  3187 
  3188     aProcess id == 0 ifTrue:[
  3188     aProcess id == 0 ifTrue:[
  3189         ^ 'unlimited'.
  3189 	^ 'unlimited'.
  3190     ].
  3190     ].
  3191     ((tStackSize := aProcess totalStackSize) notNil 
  3191     ((tStackSize := aProcess totalStackSize) notNil
  3192     and:[ (noOfSegs := aProcess numberOfStackSegments) notNil ]) ifTrue:[
  3192     and:[ (noOfSegs := aProcess numberOfStackSegments) notNil ]) ifTrue:[
  3193         ^ (tStackSize printString),' (',(noOfSegs printString),')'
  3193 	^ (tStackSize printString),' (',(noOfSegs printString),')'
  3194     ].
  3194     ].
  3195     ^ ''
  3195     ^ ''
  3196 
  3196 
  3197     "Modified: / 17-08-2011 / 10:56:17 / cg"
  3197     "Modified: / 17-08-2011 / 10:56:17 / cg"
  3198 !
  3198 !
  3204      a higher level waiter, such as a semaphore wait, a shared queue wait etc."
  3204      a higher level waiter, such as a semaphore wait, a shared queue wait etc."
  3205 
  3205 
  3206     |c found skipping rs rc r sel|
  3206     |c found skipping rs rc r sel|
  3207 
  3207 
  3208     con notNil ifTrue:[
  3208     con notNil ifTrue:[
  3209         c := con.
  3209 	c := con.
  3210         found := false.
  3210 	found := false.
  3211         isRunning ifFalse:[
  3211 	isRunning ifFalse:[
  3212             "/ search for a semaphore-wait in the top 10 contexts
  3212 	    "/ search for a semaphore-wait in the top 10 contexts
  3213             1 to:10 do:[:n |
  3213 	    1 to:10 do:[:n |
  3214                 found ifFalse:[
  3214 		found ifFalse:[
  3215                     c notNil ifTrue:[
  3215 		    c notNil ifTrue:[
  3216                         (c receiver class == Semaphore) ifTrue:[
  3216 			(c receiver class == Semaphore) ifTrue:[
  3217                             (sel := c selector) == #wait ifTrue:[
  3217 			    (sel := c selector) == #wait ifTrue:[
  3218                                 found := true.
  3218 				found := true.
  3219                             ].
  3219 			    ].
  3220                             sel == #waitWithTimeout: ifTrue:[
  3220 			    sel == #waitWithTimeout: ifTrue:[
  3221                                 found := true.
  3221 				found := true.
  3222                             ].
  3222 			    ].
  3223                             sel == #waitWithTimeoutMs: ifTrue:[
  3223 			    sel == #waitWithTimeoutMs: ifTrue:[
  3224                                 found := true.
  3224 				found := true.
  3225                             ].
  3225 			    ].
  3226                         ].
  3226 			].
  3227                         c := c sender.
  3227 			c := c sender.
  3228                     ]
  3228 		    ]
  3229                 ]
  3229 		]
  3230             ].
  3230 	    ].
  3231         ].
  3231 	].
  3232         found ifFalse:[
  3232 	found ifFalse:[
  3233             "/ search for a non-processor, non-process
  3233 	    "/ search for a non-processor, non-process
  3234             "/ receiver in the top 10 contexts
  3234 	    "/ receiver in the top 10 contexts
  3235             c := con.
  3235 	    c := con.
  3236             1 to:10 do:[:n |
  3236 	    1 to:10 do:[:n |
  3237                 found ifFalse:[
  3237 		found ifFalse:[
  3238                     c notNil ifTrue:[
  3238 		    c notNil ifTrue:[
  3239                         ((r := c receiver) ~~ Processor and:[ r class ~~ Process ]) ifTrue:[
  3239 			((r := c receiver) ~~ Processor and:[ r class ~~ Process ]) ifTrue:[
  3240                             found := true.
  3240 			    found := true.
  3241                         ] ifFalse:[
  3241 			] ifFalse:[
  3242                             c := c sender.
  3242 			    c := c sender.
  3243                         ]
  3243 			]
  3244                     ]
  3244 		    ]
  3245                 ]
  3245 		]
  3246             ]
  3246 	    ]
  3247         ].
  3247 	].
  3248 
  3248 
  3249         "/ skip, until an interesting context is found.
  3249 	"/ skip, until an interesting context is found.
  3250         "/ This skips intermediate contexts, which lead
  3250 	"/ This skips intermediate contexts, which lead
  3251         "/ to the sema-wait (for example, unwind blocks, delay-stuff etc.)
  3251 	"/ to the sema-wait (for example, unwind blocks, delay-stuff etc.)
  3252         found ifFalse:[
  3252 	found ifFalse:[
  3253             c := con
  3253 	    c := con
  3254         ].
  3254 	].
  3255         skipping := true.
  3255 	skipping := true.
  3256         [ skipping ] whileTrue:[
  3256 	[ skipping ] whileTrue:[
  3257             skipping := false.
  3257 	    skipping := false.
  3258             (c notNil and:[ (r := c receiver) == Delay or:[ r class == Delay ] ]) ifTrue:[
  3258 	    (c notNil and:[ (r := c receiver) == Delay or:[ r class == Delay ] ]) ifTrue:[
  3259                 c := c sender.
  3259 		c := c sender.
  3260                 skipping := true.
  3260 		skipping := true.
  3261             ].
  3261 	    ].
  3262             (c notNil and:[ (r := c receiver) == Semaphore or:[ r class == Semaphore ] ]) ifTrue:[
  3262 	    (c notNil and:[ (r := c receiver) == Semaphore or:[ r class == Semaphore ] ]) ifTrue:[
  3263                 c := c sender.
  3263 		c := c sender.
  3264                 skipping := true.
  3264 		skipping := true.
  3265             ].
  3265 	    ].
  3266             [
  3266 	    [
  3267                 c notNil 
  3267 		c notNil
  3268                     and:[ c receiver isBlock 
  3268 		    and:[ c receiver isBlock
  3269                     and:[ ((sel := c selector) startsWith:'value')
  3269 		    and:[ ((sel := c selector) startsWith:'value')
  3270                           or:[ sel = 'doWhile:' 
  3270 			  or:[ sel = 'doWhile:'
  3271                           or:[ sel = 'doUntil:' 
  3271 			  or:[ sel = 'doUntil:'
  3272                           or:[ sel = 'ensure:' ]]]]]
  3272 			  or:[ sel = 'ensure:' ]]]]]
  3273             ] whileTrue:[
  3273 	    ] whileTrue:[
  3274                 c := c sender.
  3274 		c := c sender.
  3275                 skipping := true.
  3275 		skipping := true.
  3276             ].
  3276 	    ].
  3277             [
  3277 	    [
  3278                 c notNil
  3278 		c notNil
  3279                     and:[ c receiver == OperatingSystem 
  3279 		    and:[ c receiver == OperatingSystem
  3280                     and:[ c selector == #unblockInterrupts ] ]
  3280 		    and:[ c selector == #unblockInterrupts ] ]
  3281             ] whileTrue:[
  3281 	    ] whileTrue:[
  3282                 c := c sender.
  3282 		c := c sender.
  3283                 skipping := true.
  3283 		skipping := true.
  3284             ].
  3284 	    ].
  3285             [
  3285 	    [
  3286                 c notNil 
  3286 		c notNil
  3287                     and:[ c isBlockContext ]
  3287 		    and:[ c isBlockContext ]
  3288             ] whileTrue:[
  3288 	    ] whileTrue:[
  3289                 c := c home.
  3289 		c := c home.
  3290                 skipping := true.
  3290 		skipping := true.
  3291             ].
  3291 	    ].
  3292         ].
  3292 	].
  3293         c notNil ifTrue:[
  3293 	c notNil ifTrue:[
  3294             sel := c selector.
  3294 	    sel := c selector.
  3295             sel isNil ifTrue:[
  3295 	    sel isNil ifTrue:[
  3296                 sel := '* unknown *'
  3296 		sel := '* unknown *'
  3297             ].
  3297 	    ].
  3298             r := c receiver.
  3298 	    r := c receiver.
  3299             rc := r class.
  3299 	    rc := r class.
  3300             rs := rc name.
  3300 	    rs := rc name.
  3301             (rc == SharedQueue
  3301 	    (rc == SharedQueue
  3302             or:[rc == RecursionLock]) ifTrue:[
  3302 	    or:[rc == RecursionLock]) ifTrue:[
  3303                 rs := rs , ' (', (r identityHash bitShift:-12) hexPrintString,') '.
  3303 		rs := rs , ' (', (r identityHash bitShift:-12) hexPrintString,') '.
  3304             ].
  3304 	    ].
  3305             ^ (rs , '>>' , sel).
  3305 	    ^ (rs , '>>' , sel).
  3306         ]
  3306 	]
  3307     ].
  3307     ].
  3308     ^ ''
  3308     ^ ''
  3309 
  3309 
  3310     "Created: / 28-02-2012 / 11:48:22 / cg"
  3310     "Created: / 28-02-2012 / 11:48:22 / cg"
  3311 !
  3311 !
  3317      a higher level waiter, such as a semaphore wait, a shared queue wait etc."
  3317      a higher level waiter, such as a semaphore wait, a shared queue wait etc."
  3318 
  3318 
  3319     |c found skipping rs rc r sel|
  3319     |c found skipping rs rc r sel|
  3320 
  3320 
  3321     con notNil ifTrue:[
  3321     con notNil ifTrue:[
  3322         c := con.
  3322 	c := con.
  3323         found := false.
  3323 	found := false.
  3324         isRunning ifFalse:[
  3324 	isRunning ifFalse:[
  3325             "/ search for a semaphore-wait in the top 10 contexts
  3325 	    "/ search for a semaphore-wait in the top 10 contexts
  3326             1 to:10 do:[:n |
  3326 	    1 to:10 do:[:n |
  3327                 found ifFalse:[
  3327 		found ifFalse:[
  3328                     c notNil ifTrue:[
  3328 		    c notNil ifTrue:[
  3329                         (c receiver class == Semaphore) ifTrue:[
  3329 			(c receiver class == Semaphore) ifTrue:[
  3330                             c selector == #wait ifTrue:[
  3330 			    c selector == #wait ifTrue:[
  3331                                 found := true.
  3331 				found := true.
  3332                             ].
  3332 			    ].
  3333                             c selector == #waitWithTimeout: ifTrue:[
  3333 			    c selector == #waitWithTimeout: ifTrue:[
  3334                                 found := true.
  3334 				found := true.
  3335                             ].
  3335 			    ].
  3336                             c selector == #waitWithTimeoutMs: ifTrue:[
  3336 			    c selector == #waitWithTimeoutMs: ifTrue:[
  3337                                 found := true.
  3337 				found := true.
  3338                             ].
  3338 			    ].
  3339                        ].
  3339 		       ].
  3340                         c := c sender.
  3340 			c := c sender.
  3341                     ]
  3341 		    ]
  3342                 ]
  3342 		]
  3343             ].
  3343 	    ].
  3344         ].
  3344 	].
  3345         found ifFalse:[
  3345 	found ifFalse:[
  3346             "/ search for a non-processor, non-process
  3346 	    "/ search for a non-processor, non-process
  3347             "/ receiver in the top 10 contexts
  3347 	    "/ receiver in the top 10 contexts
  3348             c := con.
  3348 	    c := con.
  3349             1 to:10 do:[:n |
  3349 	    1 to:10 do:[:n |
  3350                 found ifFalse:[
  3350 		found ifFalse:[
  3351                     c notNil ifTrue:[
  3351 		    c notNil ifTrue:[
  3352                         ((r := c receiver) ~~ Processor and:[ r class ~~ Process ]) ifTrue:[
  3352 			((r := c receiver) ~~ Processor and:[ r class ~~ Process ]) ifTrue:[
  3353                             found := true.
  3353 			    found := true.
  3354                         ] ifFalse:[
  3354 			] ifFalse:[
  3355                             c := c sender.
  3355 			    c := c sender.
  3356                         ]
  3356 			]
  3357                     ]
  3357 		    ]
  3358                 ]
  3358 		]
  3359             ]
  3359 	    ]
  3360         ].
  3360 	].
  3361 
  3361 
  3362         "/ skip, until an interesting context is found.
  3362 	"/ skip, until an interesting context is found.
  3363         "/ This skips intermediate contexts, which lead
  3363 	"/ This skips intermediate contexts, which lead
  3364         "/ to the sema-wait (for example, unwind blocks, delay-stuff etc.)
  3364 	"/ to the sema-wait (for example, unwind blocks, delay-stuff etc.)
  3365         found ifFalse:[
  3365 	found ifFalse:[
  3366             c := con
  3366 	    c := con
  3367         ].
  3367 	].
  3368         skipping := true.
  3368 	skipping := true.
  3369         [ skipping ] whileTrue:[
  3369 	[ skipping ] whileTrue:[
  3370             skipping := false.
  3370 	    skipping := false.
  3371             (c notNil and:[ c receiver == Delay or:[ c receiver class == Delay ] ]) ifTrue:[
  3371 	    (c notNil and:[ c receiver == Delay or:[ c receiver class == Delay ] ]) ifTrue:[
  3372                 c := c sender.
  3372 		c := c sender.
  3373                 skipping := true.
  3373 		skipping := true.
  3374             ].
  3374 	    ].
  3375             (c notNil and:[ c receiver == Semaphore or:[ c receiver class == Semaphore ] ]) ifTrue:[
  3375 	    (c notNil and:[ c receiver == Semaphore or:[ c receiver class == Semaphore ] ]) ifTrue:[
  3376                 c := c sender.
  3376 		c := c sender.
  3377                 skipping := true.
  3377 		skipping := true.
  3378             ].
  3378 	    ].
  3379             [
  3379 	    [
  3380                 c notNil 
  3380 		c notNil
  3381                     and:[ c receiver isBlock 
  3381 		    and:[ c receiver isBlock
  3382                     and:[ (c selector startsWith:'value')
  3382 		    and:[ (c selector startsWith:'value')
  3383                           or:[ c selector = 'doWhile:' 
  3383 			  or:[ c selector = 'doWhile:'
  3384                           or:[ c selector = 'doUntil:' 
  3384 			  or:[ c selector = 'doUntil:'
  3385                           or:[ c selector = 'ensure:' ]]]]]
  3385 			  or:[ c selector = 'ensure:' ]]]]]
  3386             ] whileTrue:[
  3386 	    ] whileTrue:[
  3387                 c := c sender.
  3387 		c := c sender.
  3388                 skipping := true.
  3388 		skipping := true.
  3389             ].
  3389 	    ].
  3390             [
  3390 	    [
  3391                 c notNil
  3391 		c notNil
  3392                     and:[ c receiver == OperatingSystem and:[ c selector == #unblockInterrupts ] ]
  3392 		    and:[ c receiver == OperatingSystem and:[ c selector == #unblockInterrupts ] ]
  3393             ] whileTrue:[
  3393 	    ] whileTrue:[
  3394                 c := c sender.
  3394 		c := c sender.
  3395                 skipping := true.
  3395 		skipping := true.
  3396             ].
  3396 	    ].
  3397             [
  3397 	    [
  3398                 c notNil and:[ c isBlockContext ]
  3398 		c notNil and:[ c isBlockContext ]
  3399             ] whileTrue:[
  3399 	    ] whileTrue:[
  3400                 c := c home.
  3400 		c := c home.
  3401                 skipping := true.
  3401 		skipping := true.
  3402             ].
  3402 	    ].
  3403         ].
  3403 	].
  3404         c notNil ifTrue:[
  3404 	c notNil ifTrue:[
  3405             sel := c selector.
  3405 	    sel := c selector.
  3406             sel isNil ifTrue:[
  3406 	    sel isNil ifTrue:[
  3407                 sel := '* unknown *'
  3407 		sel := '* unknown *'
  3408             ].
  3408 	    ].
  3409             r := c receiver.
  3409 	    r := c receiver.
  3410             rc := r class.
  3410 	    rc := r class.
  3411             rs := rc name.
  3411 	    rs := rc name.
  3412             (rc == SharedQueue
  3412 	    (rc == SharedQueue
  3413             or:[rc == RecursionLock]) ifTrue:[
  3413 	    or:[rc == RecursionLock]) ifTrue:[
  3414                 rs := rs , ' (', (r identityHash bitShift:-12) hexPrintString,') '.
  3414 		rs := rs , ' (', (r identityHash bitShift:-12) hexPrintString,') '.
  3415             ].
  3415 	    ].
  3416             ^ (rs , '>>' , sel).
  3416 	    ^ (rs , '>>' , sel).
  3417         ]
  3417 	]
  3418     ].
  3418     ].
  3419     ^ ''
  3419     ^ ''
  3420 
  3420 
  3421     "Modified: / 28-02-2012 / 11:43:30 / cg"
  3421     "Modified: / 28-02-2012 / 11:43:30 / cg"
  3422 !
  3422 !
  3424 getWindowTitleFor:aProcess
  3424 getWindowTitleFor:aProcess
  3425     |wg topViews|
  3425     |wg topViews|
  3426 
  3426 
  3427     wg := self windowGroupOfProcess:aProcess.
  3427     wg := self windowGroupOfProcess:aProcess.
  3428     wg notNil ifTrue:[
  3428     wg notNil ifTrue:[
  3429         (topViews := wg topViews) notEmptyOrNil ifTrue:[
  3429 	(topViews := wg topViews) notEmptyOrNil ifTrue:[
  3430             ^ '"',topViews first label,'"'.
  3430 	    ^ '"',topViews first label,'"'.
  3431         ].
  3431 	].
  3432     ].
  3432     ].
  3433     ^ ''.
  3433     ^ ''.
  3434 
  3434 
  3435     "Created: / 17-08-2011 / 11:01:21 / cg"
  3435     "Created: / 17-08-2011 / 11:01:21 / cg"
  3436 ! !
  3436 ! !
  3491 fillItemInformationIn:processItem
  3491 fillItemInformationIn:processItem
  3492     |state stateColor running con aProcess|
  3492     |state stateColor running con aProcess|
  3493 
  3493 
  3494     aProcess := processItem processInstance.
  3494     aProcess := processItem processInstance.
  3495     aProcess isNil ifTrue:[
  3495     aProcess isNil ifTrue:[
  3496         ^ self.
  3496 	^ self.
  3497     ].
  3497     ].
  3498 
  3498 
  3499     processItem processId:aProcess id.
  3499     processItem processId:aProcess id.
  3500     processItem idVal:aProcess id ? -1.
  3500     processItem idVal:aProcess id ? -1.
  3501 
  3501 
  3505     processItem processName:aProcess name ? ''.
  3505     processItem processName:aProcess name ? ''.
  3506 
  3506 
  3507     state := aProcess state.
  3507     state := aProcess state.
  3508     running := (state == #run and:[aProcess == Processor interruptedProcess]).
  3508     running := (state == #run and:[aProcess == Processor interruptedProcess]).
  3509 
  3509 
  3510     stateColor := (state == #run) 
  3510     stateColor := (state == #run)
  3511                         ifTrue:[ Color green darkened ]
  3511 			ifTrue:[ Color green darkened ]
  3512                         ifFalse:[
  3512 			ifFalse:[
  3513                             (state == #debug or:[state == #stopped])
  3513 			    (state == #debug or:[state == #stopped])
  3514                                 ifTrue:[ Color red ]
  3514 				ifTrue:[ Color red ]
  3515                                 ifFalse:[ Color black ]].
  3515 				ifFalse:[ Color black ]].
  3516 
  3516 
  3517     processItem processState:(state asString colorizeAllWith:stateColor).
  3517     processItem processState:(state asString colorizeAllWith:stateColor).
  3518     processItem processActive:(self getActiveStringFor:aProcess running:running).
  3518     processItem processActive:(self getActiveStringFor:aProcess running:running).
  3519 
  3519 
  3520 "/    processItem processBlocked:(aProcess interruptsDisabled).
  3520 "/    processItem processBlocked:(aProcess interruptsDisabled).
  3524     processItem processUsedStack:aProcess usedStackSize.
  3524     processItem processUsedStack:aProcess usedStackSize.
  3525     processItem processTotalStack:(self getTotalStackStringFor:aProcess).
  3525     processItem processTotalStack:(self getTotalStackStringFor:aProcess).
  3526 
  3526 
  3527     con := aProcess suspendedContext.
  3527     con := aProcess suspendedContext.
  3528     con isNil ifTrue:[
  3528     con isNil ifTrue:[
  3529         aProcess == Processor activeProcess ifTrue:[
  3529 	aProcess == Processor activeProcess ifTrue:[
  3530             con := thisContext
  3530 	    con := thisContext
  3531         ]
  3531 	]
  3532     ].
  3532     ].
  3533     showWhere value ifTrue:[
  3533     showWhere value ifTrue:[
  3534         processItem processWhere:(self getWhereStringFor:con running:running).
  3534 	processItem processWhere:(self getWhereStringFor:con running:running).
  3535     ].
  3535     ].
  3536     processItem processCurrentSegment:(self getCurrentSegmentStringFor:con).
  3536     processItem processCurrentSegment:(self getCurrentSegmentStringFor:con).
  3537     processItem processSwitch:(aProcess numberOfStackBoundaryHits).
  3537     processItem processSwitch:(aProcess numberOfStackBoundaryHits).
  3538     showApplication value ifTrue:[
  3538     showApplication value ifTrue:[
  3539         processItem processApplication:(self getApplicationStringFor:aProcess)
  3539 	processItem processApplication:(self getApplicationStringFor:aProcess)
  3540     ].
  3540     ].
  3541     showWindowTitle value ifTrue:[
  3541     showWindowTitle value ifTrue:[
  3542         processItem processWindowTitle:(self getWindowTitleFor:aProcess)
  3542 	processItem processWindowTitle:(self getWindowTitleFor:aProcess)
  3543     ].
  3543     ].
  3544     showInstrumentation value ifTrue:[
  3544     showInstrumentation value ifTrue:[
  3545         processItem processInstrumentation:(self getInstrumentationStringFor:aProcess)
  3545 	processItem processInstrumentation:(self getInstrumentationStringFor:aProcess)
  3546     ].
  3546     ].
  3547 
  3547 
  3548     "Modified: / 17-08-2011 / 11:04:32 / cg"
  3548     "Modified: / 17-08-2011 / 11:04:32 / cg"
  3549 !
  3549 !
  3550 
  3550 
  3555     self fillItemInformationIn:processItem
  3555     self fillItemInformationIn:processItem
  3556 !
  3556 !
  3557 
  3557 
  3558 startUpdateProcess
  3558 startUpdateProcess
  3559     updateBlock notNil ifTrue:[
  3559     updateBlock notNil ifTrue:[
  3560         Processor addTimedBlock:updateBlock afterSeconds:self scaledUpdateContentsDelayTime.
  3560 	Processor addTimedBlock:updateBlock afterSeconds:self scaledUpdateContentsDelayTime.
  3561         Processor addTimedBlock:listUpdateBlock afterSeconds:self scaledUpdateListDelayTime.
  3561 	Processor addTimedBlock:listUpdateBlock afterSeconds:self scaledUpdateListDelayTime.
  3562     ] ifFalse:[
  3562     ] ifFalse:[
  3563         "after a restart, updateProcess is a dead process"
  3563 	"after a restart, updateProcess is a dead process"
  3564         self assert:(updateProcess isNil or:[updateProcess isDead]).
  3564 	self assert:(updateProcess isNil or:[updateProcess isDead]).
  3565 
  3565 
  3566         updateProcess := [
  3566 	updateProcess := [
  3567             [
  3567 	    [
  3568                 |id cnt myDelay|
  3568 		|id cnt myDelay|
  3569 
  3569 
  3570                 myDelay := Delay forSeconds:self scaledUpdateContentsDelayTime.
  3570 		myDelay := Delay forSeconds:self scaledUpdateContentsDelayTime.
  3571 
  3571 
  3572                 "
  3572 		"
  3573                  every updateDelay (0.5), we look which process runs;
  3573 		 every updateDelay (0.5), we look which process runs;
  3574                  every half second, the status is updated.
  3574 		 every half second, the status is updated.
  3575                  every listUpdateDelay (5s), the list of processes is
  3575 		 every listUpdateDelay (5s), the list of processes is
  3576                  built up again
  3576 		 built up again
  3577                 "
  3577 		"
  3578                 [true] whileTrue:[
  3578 		[true] whileTrue:[
  3579                     myDelay delay:self scaledUpdateContentsDelayTime * 1000.
  3579 		    myDelay delay:self scaledUpdateContentsDelayTime * 1000.
  3580                     ((self scaledUpdateListDelayTime // self scaledUpdateContentsDelayTime) max:2) - 1 timesRepeat:[
  3580 		    ((self scaledUpdateListDelayTime // self scaledUpdateContentsDelayTime) max:2) - 1 timesRepeat:[
  3581                         myDelay wait.
  3581 			myDelay wait.
  3582                         self updateStatus:nil.
  3582 			self updateStatus:nil.
  3583                     ].
  3583 		    ].
  3584                     myDelay wait.
  3584 		    myDelay wait.
  3585                     self updateList.
  3585 		    self updateList.
  3586                 ]
  3586 		]
  3587             ] ifCurtailed:[
  3587 	    ] ifCurtailed:[
  3588                 updateProcess := nil
  3588 		updateProcess := nil
  3589             ]
  3589 	    ]
  3590         ]  forkAt:(Processor userSchedulingPriority + 1).
  3590 	]  forkAt:(Processor userSchedulingPriority + 1).
  3591         updateProcess name:'monitor [' ,
  3591 	updateProcess name:'monitor [' ,
  3592                            Processor activeProcess id printString ,
  3592 			   Processor activeProcess id printString ,
  3593                            '] update'.
  3593 			   '] update'.
  3594         "
  3594 	"
  3595          raise my own priority
  3595 	 raise my own priority
  3596         "
  3596 	"
  3597         Processor activeProcess priority:(Processor userSchedulingPriority + 2)
  3597 	Processor activeProcess priority:(Processor userSchedulingPriority + 2)
  3598     ].
  3598     ].
  3599 !
  3599 !
  3600 
  3600 
  3601 updateChangedItem:oldItem newItem:newItem atIndex:index
  3601 updateChangedItem:oldItem newItem:newItem atIndex:index
  3602     | colIdx newValue |
  3602     | colIdx newValue |
  3607     oldItem processInstanceIndexInWeakArray:newItem processInstanceIndexInWeakArray.
  3607     oldItem processInstanceIndexInWeakArray:newItem processInstanceIndexInWeakArray.
  3608 
  3608 
  3609     "/ ID
  3609     "/ ID
  3610 
  3610 
  3611     oldItem processId ~= (newValue := newItem processId) ifTrue:[
  3611     oldItem processId ~= (newValue := newItem processId) ifTrue:[
  3612         oldItem processId:newValue.
  3612 	oldItem processId:newValue.
  3613         processTable invalidateRowAt:index colAt:colIdx.
  3613 	processTable invalidateRowAt:index colAt:colIdx.
  3614     ].
  3614     ].
  3615 
  3615 
  3616     #(
  3616     #(
  3617         ( showGroup     processGroup        processGroup: )
  3617 	( showGroup     processGroup        processGroup: )
  3618         ( true          processName         processName: )
  3618 	( true          processName         processName: )
  3619         ( showInstrumentation     processInstrumentation        processInstrumentation: )
  3619 	( showInstrumentation     processInstrumentation        processInstrumentation: )
  3620         ( true          processActive       processActive: )
  3620 	( true          processActive       processActive: )
  3621         ( showState     processState        processState: )
  3621 	( showState     processState        processState: )
  3622         ( showPrio      processPrio         processPrio: )
  3622 	( showPrio      processPrio         processPrio: )
  3623         ( showUsedStack processUsedStack    processUsedStack: )
  3623 	( showUsedStack processUsedStack    processUsedStack: )
  3624         ( showTotalStack processTotalStack  processTotalStack: )
  3624 	( showTotalStack processTotalStack  processTotalStack: )
  3625         ( showCurrentSegment processCurrentSegment processCurrentSegment: )
  3625 	( showCurrentSegment processCurrentSegment processCurrentSegment: )
  3626         ( showSwitch    processSwitch       processSwitch: )
  3626 	( showSwitch    processSwitch       processSwitch: )
  3627         ( showWhere     processWhere        processWhere: )
  3627 	( showWhere     processWhere        processWhere: )
  3628         ( showApplication     processApplication        processApplication: )
  3628 	( showApplication     processApplication        processApplication: )
  3629         ( showWindowTitle     processWindowTitle        processWindowTitle: )
  3629 	( showWindowTitle     processWindowTitle        processWindowTitle: )
  3630 
  3630 
  3631     ) do:[:eachAspect |
  3631     ) do:[:eachAspect |
  3632         |showHolder showHolderValue colValueGetter colValueSetter|
  3632 	|showHolder showHolderValue colValueGetter colValueSetter|
  3633 
  3633 
  3634         showHolder := eachAspect at:1.
  3634 	showHolder := eachAspect at:1.
  3635         colValueGetter := eachAspect at:2.
  3635 	colValueGetter := eachAspect at:2.
  3636         colValueSetter := eachAspect at:3.
  3636 	colValueSetter := eachAspect at:3.
  3637 
  3637 
  3638         showHolderValue := (showHolder == true) or:[ (self perform:showHolder) value ].
  3638 	showHolderValue := (showHolder == true) or:[ (self perform:showHolder) value ].
  3639         showHolderValue ifTrue:[
  3639 	showHolderValue ifTrue:[
  3640             colIdx := colIdx + 1.
  3640 	    colIdx := colIdx + 1.
  3641             (oldItem perform:colValueGetter) ~= (newValue := (newItem perform:colValueGetter)) ifTrue:[
  3641 	    (oldItem perform:colValueGetter) ~= (newValue := (newItem perform:colValueGetter)) ifTrue:[
  3642                 oldItem perform:colValueSetter with:newValue.
  3642 		oldItem perform:colValueSetter with:newValue.
  3643                 processTable invalidateRowAt:index colAt:colIdx.
  3643 		processTable invalidateRowAt:index colAt:colIdx.
  3644             ].
  3644 	    ].
  3645         ].
  3645 	].
  3646     ].
  3646     ].
  3647 
  3647 
  3648 "/    "/ GROUP
  3648 "/    "/ GROUP
  3649 "/    self showGroup value ifTrue:[
  3649 "/    self showGroup value ifTrue:[
  3650 "/        colIdx := colIdx + 1.
  3650 "/        colIdx := colIdx + 1.
  3738 updateList
  3738 updateList
  3739 
  3739 
  3740     |newList|
  3740     |newList|
  3741 
  3741 
  3742     processTable shown ifTrue:[
  3742     processTable shown ifTrue:[
  3743         newList := self getProcessList.
  3743 	newList := self getProcessList.
  3744         visibleBlock notNil ifTrue:[
  3744 	visibleBlock notNil ifTrue:[
  3745             newList := newList select:visibleBlock
  3745 	    newList := newList select:visibleBlock
  3746         ].
  3746 	].
  3747         self updateStatus:newList.
  3747 	self updateStatus:newList.
  3748     ].
  3748     ].
  3749     updateBlock notNil ifTrue:[
  3749     updateBlock notNil ifTrue:[
  3750         Processor removeTimedBlock:listUpdateBlock.
  3750 	Processor removeTimedBlock:listUpdateBlock.
  3751         Processor addTimedBlock:listUpdateBlock afterSeconds:self scaledUpdateListDelayTime.
  3751 	Processor addTimedBlock:listUpdateBlock afterSeconds:self scaledUpdateListDelayTime.
  3752     ].
  3752     ].
  3753 !
  3753 !
  3754 
  3754 
  3755 updateStatus:newProcessList
  3755 updateStatus:newProcessList
  3756 
  3756 
  3815 	    "/ remove dead processes if not shown
  3815 	    "/ remove dead processes if not shown
  3816 	    newList := OrderedCollection new.
  3816 	    newList := OrderedCollection new.
  3817 	    weakProcessList := WeakArray withAll:newProcessList.
  3817 	    weakProcessList := WeakArray withAll:newProcessList.
  3818 	    weakProcessList keysAndValuesDo:[:indexInWeakArray :procOrNilOrZero |
  3818 	    weakProcessList keysAndValuesDo:[:indexInWeakArray :procOrNilOrZero |
  3819 		"/ in a weakarray, dead entries are 0
  3819 		"/ in a weakarray, dead entries are 0
  3820 		(procOrNilOrZero notNil and:[procOrNilOrZero ~~ 0]) ifTrue:[
  3820 		(procOrNilOrZero notNil and:[procOrNilOrZero class ~~ SmallInteger]) ifTrue:[
  3821 		    (procOrNilOrZero isDead not or:[self showDead value]) ifTrue:[
  3821 		    (procOrNilOrZero isDead not or:[self showDead value]) ifTrue:[
  3822 			| processItem |
  3822 			| processItem |
  3823 			processItem := ProcessItem new.
  3823 			processItem := ProcessItem new.
  3824 			self fillItemInformationIn:processItem with:procOrNilOrZero inArray:weakProcessList atIndex:indexInWeakArray.
  3824 			self fillItemInformationIn:processItem with:procOrNilOrZero inArray:weakProcessList atIndex:indexInWeakArray.
  3825 			newList add:processItem.
  3825 			newList add:processItem.
  4069 !ProcessMonitorV2::ProcessItem methodsFor:'printing'!
  4069 !ProcessMonitorV2::ProcessItem methodsFor:'printing'!
  4070 
  4070 
  4071 printOn:aStream
  4071 printOn:aStream
  4072     (self processName ? '') printOn:aStream.
  4072     (self processName ? '') printOn:aStream.
  4073     aStream nextPut:$[.
  4073     aStream nextPut:$[.
  4074     (self processId ? '') printOn:aStream. 
  4074     (self processId ? '') printOn:aStream.
  4075     aStream nextPut:$].
  4075     aStream nextPut:$].
  4076 ! !
  4076 ! !
  4077 
  4077 
  4078 !ProcessMonitorV2 class methodsFor:'documentation'!
  4078 !ProcessMonitorV2 class methodsFor:'documentation'!
  4079 
  4079 
  4080 version
  4080 version
  4081     ^ '$Header: /cvs/stx/stx/libtool/ProcessMonitorV2.st,v 1.73 2015-02-24 11:48:56 cg Exp $'
  4081     ^ '$Header$'
  4082 !
  4082 !
  4083 
  4083 
  4084 version_CVS
  4084 version_CVS
  4085     ^ '$Header: /cvs/stx/stx/libtool/ProcessMonitorV2.st,v 1.73 2015-02-24 11:48:56 cg Exp $'
  4085     ^ '$Header$'
  4086 ! !
  4086 ! !
  4087 
  4087