Merged 90f5185cb746 and a7c09789affb (branch default - CVS HEAD) jv
authorJan Vrany <jan.vrany@fit.cvut.cz>
Thu, 01 Aug 2013 10:27:56 +0100
branchjv
changeset 13289 cc75e3cd0362
parent 13255 90f5185cb746 (current diff)
parent 13267 a7c09789affb (diff)
child 13290 e29f304e0da7
Merged 90f5185cb746 and a7c09789affb (branch default - CVS HEAD)
AbstractFileBrowser.st
AbstractLauncherApplication.st
AbstractSettingsApplication.st
ApplicationBuilder.st
BookmarkList.st
CVSSourceCodeManagementSettingsAppl.st
DataBaseSourceCodeManagementSettingsAppl.st
DebugView.st
DirectoryTreeBrowser.st
FileBasedSourceCodeManagementSettingsAppl.st
FileDialog.st
GitSourceCodeManagementSettingsAppl.st
InspectorView.st
MercurialSourceCodeManagementSettingsAppl.st
PerforceSourceCodeManagementSettingsAppl.st
StoreSourceCodeManagementSettingsAppl.st
TerminalApplication.st
Tools__BreakpointService.st
Tools__ChangeSetDiffList.st
Tools__CodeHighlightingService.st
Tools__Inspector2.st
Tools__NewSystemBrowser.st
Tools__TestRunner2.st
resources/de.rs
--- a/.hgtags	Sun Jul 28 11:38:21 2013 +0100
+++ b/.hgtags	Thu Aug 01 10:27:56 2013 +0100
@@ -8,12 +8,10 @@
 136ee82663fb4768cae91bde1a499b9d83bfad4d rel2_10_8_5
 165da720693d3aa09b58c216d9031e316a9c82a3 rel3_4_3_1
 1adbdbbef6efc3f1cae90e02bbd4d3a2216bba11 rel2_10_8_6_last_before_vmData_change
-214639c7834e9719c8dc68bde4dd0d044326848f stable
 220adc5a966fbea5cf7240f98f8c929276239c58 balla
 22e0a2969ab2326928f4ce90dec4827a4d0dd2bf expecco_1_7_0rc5
 2707b35f964ca3bb3a769a369e7f2211ba059270 stable_expecco_sel
 2a4222b491ab4d84b2f47eb0ad076c98efe53ea2 expecco_2_2_5
-2c9e9dc1b880e4bcd016987ead6691a6a48328d4 expecco_2_5_1
 36540512da66279fe8fb5bdf209d65d251a9ada8 expecco_1_9_1_iX
 399d8af7610109b64e2232db0ce43cde3dd1fc58 expecco_2_5_0
 3c7e853977b7e8a73370be10877ca1c93482cbcb expecco_1_3_4
@@ -48,7 +46,9 @@
 b407d6ab29da8f079cbe8f9cd2430630786f720f expecco_1_7_1rc2
 b407d6ab29da8f079cbe8f9cd2430630786f720f expecco_1_7_1rc3
 b407d6ab29da8f079cbe8f9cd2430630786f720f expecco_1_7_1rc4
+b5d14f6283e8f90e58cf6b96982a26379d795299 stable
 b68ba5310493e1bf7956bb5e75309b4b5d33dd68 expecco_1_6_0
+b829a3ce56bf0c45546667f6e147ab6bdf1b8c8d expecco_2_5_1
 c6afed1e4bfa09e6c3b209679925ad74eb761af9 expecco_1_7_0rc8
 c955fe2bbcb582ea2c89428707d2a181ecde2f92 stx_6_2_2
 d42566f1a9ba30ece3b2ddea3ac312dfc6802e45 rel5_2_8
--- a/AbstractFileBrowser.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/AbstractFileBrowser.st	Thu Aug 01 10:27:56 2013 +0100
@@ -4470,7 +4470,7 @@
 
     filenameDir := self getDirWithoutFileName:filename.
     filenameDir isNil ifTrue:[^ false ].
-    filenameDir isWritable ifFalse:[^ false].
+    filenameDir isWritableDirectory ifFalse:[^ false].
 
     filenameDirString := filenameDir asString.
 
@@ -9321,11 +9321,11 @@
 !AbstractFileBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.534 2013-07-05 14:03:07 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.535 2013-07-29 14:07:06 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.534 2013-07-05 14:03:07 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.535 2013-07-29 14:07:06 stefan Exp $'
 !
 
 version_HG
--- a/AbstractLauncherApplication.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/AbstractLauncherApplication.st	Thu Aug 01 10:27:56 2013 +0100
@@ -4900,9 +4900,7 @@
                                    makeExecutableForAll.
                             ]
                         ].
-                        (fn isDirectory
-                        and:[fn isReadable
-                        and:[fn isWritable]]) ifTrue:[
+                        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
                             AbstractSourceCodeManager cacheDirectoryName:(sourceCacheDir value).
                         ] ifFalse:[
                             self warn:'Invalid sourceCache directory.'
@@ -7055,11 +7053,11 @@
 !AbstractLauncherApplication class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.438 2013-07-09 20:48:17 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.439 2013-07-29 14:08:38 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.438 2013-07-09 20:48:17 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.439 2013-07-29 14:08:38 stefan Exp $'
 !
 
 version_HG
@@ -7068,6 +7066,6 @@
 !
 
 version_SVN
-    ^ '$Id: AbstractLauncherApplication.st,v 1.438 2013-07-09 20:48:17 cg Exp $'
+    ^ '$Id: AbstractLauncherApplication.st,v 1.439 2013-07-29 14:08:38 stefan Exp $'
 ! !
 
--- a/AbstractSettingsApplication.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/AbstractSettingsApplication.st	Thu Aug 01 10:27:56 2013 +0100
@@ -13805,7 +13805,7 @@
 'After checkout, keep the sourcefile in a local file (to avoid repeated checkout of the same file)'
 
 #useLocalSources
-'If present, use the local source files (from the development system''s tree).\If checkout fails, these will always be tried as second chance'
+'If present, use the local source files (from the development system''s tree),\making source access much faster if you have a slow repository access.\If checked, you should NOT check out new sources on the shell level into those sourcefiles,\otherwise, the browser may show corrupt source text.\\If checkout fails, these will always be tried as second chance.'
 
 #useManager
 'Enable source code management.\If off, all queries for sourcecode are resolved by local files (offline operation)'
@@ -14033,7 +14033,7 @@
                                         (ActionButtonSpec
                                            label: 'Test'
                                            name: 'Button2'
-                                           layout: (LayoutFrame -80 1 -22 1 0 1 0 1)
+                                           layout: (LayoutFrame -90 1 -22 1 0 1 0 1)
                                            activeHelpKey: checkPerPackageManager
                                            translateLabel: true
                                            model: actionTest
@@ -14464,63 +14464,61 @@
     currentUserPrefs keepMethodSourceCode:(self keepMethodSource value).
 
     (self hasManager and:[self useManager value]) ifTrue:[
-	manager ~~ self selectedManager ifTrue:[
-	    manager := nil.
-	].
-
-	manager isNil ifTrue:[
-	    manager := self selectedManager.
-	    manager isNil ifTrue:[
-		manager := self availableManagers first.
-	    ].
-	].
-	Smalltalk at:#SourceCodeManager put:manager.
-
-	manager notNil ifTrue:[
-	    | nm fn|
-
-	    nm := self sourceCacheDir value.
-	    nm notEmptyOrNil ifTrue:[
-		(fn := nm asFilename) exists ifFalse:[
-		    (self confirm:('CVS cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
-			fn recursiveMakeDirectory;
-			   makeReadableForAll;
-			   makeWritableForAll;
-			   makeExecutableForAll.
-		    ]
-		].
-		(fn isDirectory
-		and:[fn isReadable
-		and:[fn isWritable]]) ifTrue:[
-		    AbstractSourceCodeManager cacheDirectoryName:nm.
-		] ifFalse:[
-		    self warn:'Invalid sourceCache directory.'
-		]
-	    ].
-	].
-
-	AbstractSourceCodeManager
-	    managerPerMatchingModuleDefinitions:
-		managerPerMatchingModule asOrderedCollection.
-
-	self availableManagers do:[:eachManager |
-	    |infoPerModule|
-
-	    modules := rootsPerModule select:[:entry | entry first == eachManager].
-	    infoPerModule := Dictionary new.
-	    modules keysAndValuesDo:[:module :entry |
-		entry first == eachManager ifTrue:[
-		    infoPerModule at:module put:(entry second).
-		].
-	    ].
-	    eachManager repositoryInfoPerModule:infoPerModule.
-	].
-
-	self sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
-
-	DebugView newDebugger. "/ ???
+        manager ~~ self selectedManager ifTrue:[
+            manager := nil.
+        ].
+
+        manager isNil ifTrue:[
+            manager := self selectedManager.
+            manager isNil ifTrue:[
+                manager := self availableManagers first.
+            ].
+        ].
+        Smalltalk at:#SourceCodeManager put:manager.
+
+        manager notNil ifTrue:[
+            | nm fn|
+
+            nm := self sourceCacheDir value.
+            nm notEmptyOrNil ifTrue:[
+                (fn := nm asFilename) exists ifFalse:[
+                    (self confirm:('CVS cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
+                        fn recursiveMakeDirectory; 
+                           makeReadableForAll;
+                           makeWritableForAll;
+                           makeExecutableForAll.
+                    ]
+                ].
+                (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
+                    AbstractSourceCodeManager cacheDirectoryName:nm.
+                ] ifFalse:[
+                    self warn:'Invalid sourceCache directory.'
+                ]
+            ].
+        ].
+
+        AbstractSourceCodeManager 
+            managerPerMatchingModuleDefinitions:
+                managerPerMatchingModule asOrderedCollection.
+
+        self availableManagers do:[:eachManager |
+            |infoPerModule|
+
+            modules := rootsPerModule select:[:entry | entry first == eachManager].
+            infoPerModule := Dictionary new.
+            modules keysAndValuesDo:[:module :entry | 
+                entry first == eachManager ifTrue:[
+                    infoPerModule at:module put:(entry second).
+                ].
+            ].
+            eachManager repositoryInfoPerModule:infoPerModule.
+        ].
+
+        self sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
+
+        DebugView newDebugger. "/ ???
     ] ifFalse:[
-	Smalltalk at:#SourceCodeManager put:nil
+        Smalltalk at:#SourceCodeManager put:nil
     ].
 
     self acceptChannel value.
@@ -14919,44 +14917,44 @@
     nm isEmptyOrNil ifTrue:[^ self].
 
     (fn := nm asFilename) exists ifFalse:[
-	(self confirm:(resources
-			    stringWithCRs:'SourceCache directory "%1" does not exist.\Create ?'
-			    with:nm)
-	) ifFalse:[
-	    self sourceCacheDir value:previousDir.
-	    ^ self.
-	].
-	fn
-	    recursiveMakeDirectory;
-	    makeReadableForAll;
-	    makeWritableForAll;
-	    makeExecutableForAll.
-	^ self.
+        (self confirm:(resources 
+                            stringWithCRs:'SourceCache directory "%1" does not exist.\Create ?'
+                            with:nm)
+        ) ifFalse:[
+            self sourceCacheDir value:previousDir.
+            ^ self.
+        ].
+        fn 
+            recursiveMakeDirectory; 
+            makeReadableForAll;
+            makeWritableForAll;
+            makeExecutableForAll.
+        ^ self.
     ].
 
     (fn isDirectory) ifFalse:[
-	self warn:(resources
-			    stringWithCRs:'Not a directory: "%1"'
-			    with:nm).
-	self sourceCacheDir value:previousDir.
-	^ self.
-    ].
-
-    (fn isReadable and:[fn isWritable]) ifFalse:[
-	(self confirm:(resources
-			    stringWithCRs:'SourceCache directory "%1" is not both readable and writable.\Change ?'
-			    with:nm)
-	) ifFalse:[
-	    self sourceCacheDir value:previousDir.
-	    ^ self.
-	].
-	fn
-	    makeReadableForAll;
-	    makeWritableForAll;
-	    makeExecutableForAll.
+        self warn:(resources 
+                            stringWithCRs:'Not a directory: "%1"'
+                            with:nm).
+        self sourceCacheDir value:previousDir.
+        ^ self.
+    ].
+
+    (fn isWritableDirectory and:[fn isReadable]) ifFalse:[
+        (self confirm:(resources 
+                            stringWithCRs:'SourceCache directory "%1" is not both readable and writable.\Change ?'
+                            with:nm)
+        ) ifFalse:[
+            self sourceCacheDir value:previousDir.
+            ^ self.
+        ].
+        fn
+            makeReadableForAll;
+            makeWritableForAll;
+            makeExecutableForAll.
     ].
 "/    (fn isReadableForAll and:[fn isWritableForAll]) ifFalse:[
-"/        (self confirm:(resources
+"/        (self confirm:(resources 
 "/                            stringWithCRs:'SourceCache directory "%1" is not both readable and writable for other users.\Change ?'
 "/                            with:nm)
 "/        ) ifTrue:[
@@ -15842,6 +15840,8 @@
 
     self at:methodArg.        "/ a message
     self fooBarBaz:methodVar. "/ a bad message
+    self halt.                "/ a debug message
+    Error raise.              "/ an error
     methodVar := Array new:1.
     instVar := 1234.          "/ side effect
     ClassVar := instVar.      "/ side effect
@@ -18707,11 +18707,11 @@
 !AbstractSettingsApplication class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.482 2013-07-19 19:41:10 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.486 2013-07-29 14:09:03 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.482 2013-07-19 19:41:10 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.486 2013-07-29 14:09:03 stefan Exp $'
 !
 
 version_HG
--- a/ApplicationBuilder.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/ApplicationBuilder.st	Thu Aug 01 10:27:56 2013 +0100
@@ -21,12 +21,7 @@
 ApplicationBuilder class instanceVariableNames:'aspects'
 
 "
- The following class instance variables are inherited by this class:
-
-	ToolApplicationModel - history fileHistory clipboard settings showingHelp instances
-	ApplicationModel - ClassResources
-	Model - 
-	Object - 
+ No other class instance variables are inherited by this class.
 "
 !
 
@@ -1365,7 +1360,7 @@
 
 ! !
 
-!ApplicationBuilder methodsFor:'startup / release'!
+!ApplicationBuilder methodsFor:'startup & release'!
 
 closeRequest
     "close request; before closing stop the running build, then release the dependents of all aspects"
@@ -1388,7 +1383,7 @@
 !ApplicationBuilder class methodsFor:'documentation'!
 
 version
-    ^ '$Id: ApplicationBuilder.st 7854 2012-01-30 17:49:41Z vranyj1 $'
+    ^ '$Header: /cvs/stx/stx/libtool/ApplicationBuilder.st,v 1.10 2013-07-30 05:57:02 cg Exp $'
 !
 
 version_HG
--- a/BookmarkList.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/BookmarkList.st	Thu Aug 01 10:27:56 2013 +0100
@@ -375,13 +375,11 @@
 !BookmarkList methodsFor:'loading / saving'!
 
 save
-
-    | f |
+    |f|
 
-    (fileName notNil and:
-        [(f := fileName asFilename) exists not or:
-            [f isWritable]]) 
-                ifTrue:[self saveOn: fileName].
+    (fileName notNil 
+        and:[ (f := fileName asFilename) exists not or:[ f isWritable ] ]) 
+            ifTrue:[ self saveOn:fileName ].
 
     "Created: / 23-05-2011 / 16:38:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
@@ -408,7 +406,7 @@
 !BookmarkList class methodsFor:'documentation'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/BookmarkList.st,v 1.5 2012-10-21 00:15:49 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/BookmarkList.st,v 1.6 2013-07-29 14:08:33 stefan Exp $'
 !
 
 version_HG
@@ -417,6 +415,6 @@
 !
 
 version_SVN
-    ^ '§Id§'
+    ^ '$Id: BookmarkList.st,v 1.6 2013-07-29 14:08:33 stefan Exp $'
 ! !
 
--- a/CVSSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/CVSSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -692,9 +692,7 @@
                    makeExecutableForAll.
             ]
         ].
-        (fn isDirectory
-        and:[fn isReadable
-        and:[fn isWritable]]) ifTrue:[
+        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
             CVSSourceCodeManager cacheDirectoryName:nm.
         ] ifFalse:[
             self warn:'Invalid sourceCache directory.'
@@ -1142,11 +1140,11 @@
 !CVSSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/CVSSourceCodeManagementSettingsAppl.st,v 1.31 2013-05-07 16:58:28 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/CVSSourceCodeManagementSettingsAppl.st,v 1.32 2013-07-29 14:08:14 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/CVSSourceCodeManagementSettingsAppl.st,v 1.31 2013-05-07 16:58:28 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/CVSSourceCodeManagementSettingsAppl.st,v 1.32 2013-07-29 14:08:14 stefan Exp $'
 !
 
 version_HG
--- a/DataBaseSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/DataBaseSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -592,7 +592,7 @@
         ^ false.
     ].
 
-    (fn isReadable and:[fn isWritable]) ifFalse:[
+    (fn isWritableDirectory and:[fn isReadable]) ifFalse:[
         (self confirm:(resources 
                             stringWithCRs:'Directory "%1" is not both readable and writable.\Change ?'
                             with:nm)
@@ -603,7 +603,7 @@
             makeReadableForAll;
             makeWritableForAll;
             makeExecutableForAll.
-        (fn isReadable and:[fn isWritable]) ifFalse:[
+        (fn isWritableDirectory and:[fn isReadable]) ifFalse:[
             self warn:(resources 
                                 stringWithCRs:'Directory "%1" cannot be made both readable and writable.'
                                 with:nm).
@@ -686,11 +686,11 @@
 !DataBaseSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/DataBaseSourceCodeManagementSettingsAppl.st,v 1.14 2012-03-16 11:17:07 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DataBaseSourceCodeManagementSettingsAppl.st,v 1.15 2013-07-29 14:08:55 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/DataBaseSourceCodeManagementSettingsAppl.st,v 1.14 2012-03-16 11:17:07 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DataBaseSourceCodeManagementSettingsAppl.st,v 1.15 2013-07-29 14:08:55 stefan Exp $'
 !
 
 version_HG
--- a/DebugView.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/DebugView.st	Thu Aug 01 10:27:56 2013 +0100
@@ -722,14 +722,6 @@
             label: '-'
           )
          (MenuItem
-            enabled: canAddBreakpoint
-            label: 'Add Breakpoint'
-            itemValue: addBreakpoint
-          )
-         (MenuItem
-            label: '-'
-          )
-         (MenuItem
             label: 'Ignore this Halt/BreakPoint'
             submenu: 
            (Menu
@@ -831,10 +823,18 @@
             label: '-'
           )
          (MenuItem
+            enabled: canAddBreakpoint
+            label: 'Add Breakpoint'
+            itemValue: addBreakpoint
+          )
+         (MenuItem
             label: 'Manage Breakpoints'
             itemValue: openBreakPointBrowser
           )
          (MenuItem
+            label: '-'
+          )
+         (MenuItem
             label: 'Allow Halt in Debugger'
             itemValue: allowBreakPointsInDebugger:
             indication: allowBreakPointsInDebugger
@@ -3631,10 +3631,11 @@
                                 ifTrue:[
                                     anyStepBlocks := true.
                                 ] ifFalse:[
-                                    (where methodHome receiver isBlock
+                                    (where methodHome notNil
+                                    and:[where methodHome receiver isBlock
                                     and:[(where methodHome receiver isKindOf:Block)
                                     and:[where methodHome receiver homeMethod == steppedContext method
-                                         "where methodHome receiver home == steppedContext"]])
+                                         "where methodHome receiver home == steppedContext"]]])
                                     ifTrue:[
                                         anyStepBlocks := true.
                                     ]
@@ -6361,7 +6362,7 @@
 !
 
 isCached
-    "tell wether we are a cached debugger"
+    "tell whether we are a cached debugger"
 
     CachedExclusive == self ifTrue:[
         ^ true.
@@ -6372,7 +6373,8 @@
 
     ^ false.
 
-    "Created: 10.7.1997 / 15:22:43 / stefan"
+    "Created: / 10-07-1997 / 15:22:43 / stefan"
+    "Modified (comment): / 27-07-2013 / 15:38:47 / cg"
 !
 
 uncacheMyself
@@ -8606,11 +8608,11 @@
 !DebugView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.606 2013-07-28 11:52:27 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.606 2013-07-28 11:52:27 cg Exp $'
 !
 
 version_HG
@@ -8619,7 +8621,7 @@
 !
 
 version_SVN
-    ^ '$Id: DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
+    ^ '$Id: DebugView.st,v 1.606 2013-07-28 11:52:27 cg Exp $'
 ! !
 
 
--- a/DirectoryTreeBrowser.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/DirectoryTreeBrowser.st	Thu Aug 01 10:27:56 2013 +0100
@@ -981,7 +981,7 @@
         anItem isDirectory ifTrue:[
             anItem makeIconGray:true.
             anItem changed:#icon.
-            (anItem notNil and:[anItem isDirectory and:[anItem isWritable]]) ifTrue:[
+            (anItem notNil and:[anItem isWritableDirectory]) ifTrue:[
                 self 
                     setupAutoExpandItemTimedBlock:
                         [
@@ -1396,11 +1396,11 @@
 !DirectoryTreeBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.124 2013-07-10 10:14:03 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.125 2013-07-29 14:08:21 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.124 2013-07-10 10:14:03 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.125 2013-07-29 14:08:21 stefan Exp $'
 !
 
 version_HG
--- a/FileBasedSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/FileBasedSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -375,7 +375,7 @@
 !FileBasedSourceCodeManagementSettingsAppl class methodsFor:'others'!
 
 version_FileRepository
-    ^ '§Path: stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st, Version: 1§'
+    ^ '$Path: stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st, Version: 1$'
 ! !
 
 !FileBasedSourceCodeManagementSettingsAppl class methodsFor:'queries'!
@@ -601,7 +601,7 @@
         ^ false.
     ].
 
-    (fn isReadable and:[fn isWritable]) ifFalse:[
+    (fn isWritableDirectory and:[fn isReadable]) ifFalse:[
         (self confirm:(resources 
                             stringWithCRs:'Directory "%1" is not both readable and writable.\Change ?'
                             with:nm)
@@ -612,7 +612,7 @@
             makeReadableForAll;
             makeWritableForAll;
             makeExecutableForAll.
-        (fn isReadable and:[fn isWritable]) ifFalse:[
+        (fn isWritableDirectory and:[fn isReadable]) ifFalse:[
             self warn:(resources 
                                 stringWithCRs:'Directory "%1" cannot be made both readable and writable.'
                                 with:nm).
@@ -682,11 +682,11 @@
 !FileBasedSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st,v 1.14 2012-08-09 08:44:23 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st,v 1.15 2013-07-29 14:08:27 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st,v 1.14 2012-08-09 08:44:23 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileBasedSourceCodeManagementSettingsAppl.st,v 1.15 2013-07-29 14:08:27 stefan Exp $'
 !
 
 version_HG
--- a/FileDialog.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/FileDialog.st	Thu Aug 01 10:27:56 2013 +0100
@@ -1927,7 +1927,6 @@
 !
 
 directoryMenu
-self halt.
     ^ treeBrowser directoryMenu
 !
 
@@ -2076,11 +2075,11 @@
 !FileDialog class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.130 2013-07-24 21:01:27 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.130 2013-07-24 21:01:27 cg Exp $'
 !
 
 version_HG
@@ -2089,6 +2088,6 @@
 !
 
 version_SVN
-    ^ '$Id: FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
+    ^ '$Id: FileDialog.st,v 1.130 2013-07-24 21:01:27 cg Exp $'
 ! !
 
--- a/GitSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/GitSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -830,9 +830,7 @@
                    makeExecutableForAll.
             ]
         ].
-        (fn isDirectory
-        and:[fn isReadable
-        and:[fn isWritable]]) ifTrue:[
+        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
             GitSourceCodeManager cacheDirectoryName:nm.
         ] ifFalse:[
             self warn:'Invalid sourceCache directory.'
@@ -1217,11 +1215,11 @@
 !GitSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/GitSourceCodeManagementSettingsAppl.st,v 1.9 2012-08-09 08:59:17 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/GitSourceCodeManagementSettingsAppl.st,v 1.10 2013-07-29 14:08:10 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/GitSourceCodeManagementSettingsAppl.st,v 1.9 2012-08-09 08:59:17 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/GitSourceCodeManagementSettingsAppl.st,v 1.10 2013-07-29 14:08:10 stefan Exp $'
 !
 
 version_HG
--- a/InspectorView.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/InspectorView.st	Thu Aug 01 10:27:56 2013 +0100
@@ -526,7 +526,30 @@
         ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@ LC@ D@@@@@@@@@@@@DAPXFA0 IA@@@@@@@@@@JB0XLC@0L
 CP8J@@@@@@@@@ XOCA@PDA@QD @@@@@@@@LGC00PD1PNEQX@@@@@@@@CE1 LC@0MEQ$V@@@@@@@@@!!PTCA@PDAXZF0@@@@@@@@(QC 0PGA$]F!!8@@@@@@@@@
-G10LDA(ZF"@@@@@@@@@@@@@JF1XVF18@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 200 120 145 208 64 109 208 16 96 208 96 128 208 0 87 248 0 103 248 0 88 240 0 85 200 0 68 200 120 146 208 0 72 250 255 248 184 192 189 160 0 52 248 8 100 135 144 128 144 0 60 128 16 63 208 8 83 184 0 77 128 0 53 88 0 37 216 0 75 224 0 78 96 0 25 64 0 27 120 16 59 120 0 50 64 0 12 160 72 102 208 96 143 136 32 60]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+G10\GA(ZF"@@@@@@@@@@@@@JF1XVF18@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 200 120 145 208 64 109 208 16 96 208 96 128 208 0 87 248 0 103 248 0 88 240 0 85 200 0 68 200 120 146 208 0 72 250 255 248 184 192 189 160 0 52 248 8 100 135 144 128 144 0 60 128 16 63 208 8 83 184 0 77 128 0 53 88 0 37 216 0 75 224 0 78 96 0 25 64 0 27 120 16 59 120 0 50 64 0 12 160 72 102 208 96 143 136 32 60]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+!
+
+imageFor_falseHolder
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self imageFor_falseHolder inspect
+     ImageEditor openOnClass:self andSelector:#imageFor_falseHolder
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'InspectorView imageFor_falseHolder'
+        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+H"H"H @@@@@@@@@@H"H"H"H"H"H@@@@@@@@@@BH"H"H"H @@@@@@@@@@@@@@@BH"H"H@@@@A@ LC@ D@@@@"H"H"@@@DAPXFA0 IA@@@H"H"H @JB0XLC@0L
+CP8J@BH"H"H@@ XOCA@PDA@QD @"H"H"@@LGC00PD1PNEQX@H"H"H @CE1 LC@0MEQ$V@BH"H"H@@!!PTCA@PDAXZF0@"H"H"@@(QC 0PGA$]F!!8@H"H"H @@
+G10\GA(ZF"@@@BH"H"H@@@@JF1XVF18@@@@"H"H"@@@@@@@@@@@@@@@@H"H"H"H"@@@@@@@@@@@"H"H"H"H"H @@@@@@@@@@H"H"H @a') ; colorMapFromArray:#[0 0 0 200 120 145 208 64 109 208 16 96 208 96 128 208 0 87 248 0 103 248 0 88 240 0 85 200 0 68 200 120 146 208 0 72 250 255 248 184 192 189 160 0 52 248 8 100 135 144 128 144 0 60 128 16 63 208 8 83 184 0 77 128 0 53 88 0 37 216 0 75 224 0 78 96 0 25 64 0 27 120 16 59 120 0 50 64 0 12 160 72 102 208 96 143 136 32 60 226 226 226 60 59 55]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
 !
 
 imageFor_floats
@@ -645,8 +668,30 @@
     ^Icon
         constantNamed:'InspectorView imageFor_nil2'
         ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
-"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"G]7]8"H"H"GQDP3BH"H"GQCL3NP"H"H]CL3L6BH"H!!4L3L3TH"H"GP3L3L "H"H\3L3M1BH"H!!3L3M:DH"H"H
-B*,QDH"H"H"@@@@H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H b') ; colorMapFromArray:#[0 0 0 74 74 0 94 99 0 240 240 240 255 255 255 132 132 0 143 148 0 142 131 128 226 226 226 151 156 0 107 107 0 87 90 0]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"G]7]8"H"H"GQDSLBH"H"GQL3L2P"H"H]L3L3FBH"H!!43L3LTH"H"GSL3L0 "H"H_L3L11BH"H!!<3L1:DH"H"H
+B*,QDH"H"H"@@@@H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H b') ; colorMapFromArray:#[0 0 0 74 74 0 94 99 0 240 240 240 255 255 255 132 132 0 143 148 0 142 131 128 226 226 226 151 156 0 107 107 0 87 90 0 230 230 230]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+!
+
+imageFor_nilHolder
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self imageFor_nilHolder inspect
+     ImageEditor openOnClass:self andSelector:#imageFor_nilHolder
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'InspectorView imageFor_nilHolder'
+        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+3L2H"H"H3L3L3H"H"H#L3L2H"H"H"H#L3H"G]7]8"L3L"GQDS]BH3L2GQM7]6P#L3H]M7]7VBL3L!!47]7]TH3L2GS]7]4 #L3H_]7]51BL3L!!=7]5:DH3L2H
+B*,QDH#L3H"@@@@H"L3L"H"H"H"H3L3L"H"H"L3L3L2H"H"H3L0b') ; colorMapFromArray:#[0 0 0 74 74 0 94 99 0 240 240 240 255 255 255 132 132 0 143 148 0 142 131 128 226 226 226 151 156 0 107 107 0 87 90 0 60 59 55 230 230 230]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
 !
 
 imageFor_others
@@ -667,8 +712,30 @@
     ^Icon
         constantNamed:'InspectorView imageFor_others'
         ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
-H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H#L3L2H"H"H#&Y%U@"H"H#&U=WV0H"H"NU=WUK@"H"H9=WUE,BH"H#%VVES H"H"MTTU =@"H"H5TUD:4BH"H"
-B*3]4BH"H"H @@@BH"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"Hb') ; colorMapFromArray:#[0 0 0 168 174 0 228 226 230 144 132 130 188 190 0 240 240 240 220 222 0 228 232 0 176 182 0 255 255 255 108 108 0 152 156 0 88 90 0 76 74 0 96 100 0 255 252 50]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.5UUU[.;.;.5****B;.;.5*-;\) .;.;V-;\6VB;.;-Z;\*ZXK.;.5+Z*J$0.;.;V)**!!QB;.;-Z):]TDK.;.;
+ADHQDK.;.;.0@@@K.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;,b') ; colorMapFromArray:#[0 0 0 76 74 0 88 90 0 96 100 0 108 108 0 144 132 130 152 156 0 168 174 0 176 182 0 188 190 0 220 222 0 228 226 230 228 232 0 240 240 240 255 252 50]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+!
+
+imageFor_othersHolder
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self imageFor_othersHolder inspect
+     ImageEditor openOnClass:self andSelector:#imageFor_othersHolder
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'InspectorView imageFor_othersHolder'
+        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+&Y%&Y&Y&&Y&Y&VY&Y&ZY&Y%&Y&Y&Y&ZY&VY#L3L6Y)&YY#DQDQA&&Y%#DX:DGPZY&VLX:D!!]A)&YX1:DEQ4F&Y%#FAGAV0ZY&VLUDQ0?A)&YX1E1\2<F&Y%&
+@"+?<FZY&VY @@@FY)&YY&Y&Y&Y&&Y&YY&Y&Y)&Y&Y%&Y&Y&&Y$b') ; colorMapFromArray:#[0 0 0 220 222 0 108 108 0 144 132 130 228 232 0 188 190 0 228 226 230 168 174 0 240 240 240 60 59 55 88 90 0 96 100 0 176 182 0 152 156 0 255 252 50 76 74 0]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
 !
 
 imageFor_sequenceableCollections
@@ -759,8 +826,31 @@
         constantNamed:'InspectorView imageFor_true'
         ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(MB@ MB @@@@@@@@@@@@:K#@0F2(\N @@@@@@@@@-H0$IBP$I
-A18-@@@@@@@@MC@GI@$$IBP9HP@@@@@@@B@[J3DIIB0^K3 @@@@@@@@ MRT5BRP^K1<8@@@@@@@@MB0,I $$K2\"JP@@@@@@@B49G#$IIA<]H#H@@@@@@@@@
+A18-@@@@@@@@MC@$I@$$IBP9HP@@@@@@@B@[J20IIB0^K3 @@@@@@@@ MRT,BRP^K1<8@@@@@@@@MB0,I $$K2\"JP@@@@@@@B49G#$IIA<]H#H@@@@@@@@@
 M#L3NBH"H#\@@@@@@@@@@@@-JS 8JSH@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 98 255 0 75 198 0 25 74 0 57 156 0 34 99 0 92 206 16 60 132 16 31 74 0 79 206 0 128 131 142 88 231 0 70 189 0 38 90 0 148 198 123 57 115 16 92 239 0 103 255 8 76 189 0 154 198 123 85 214 0 53 132 0 106 255 0 138 255 49 107 156 74 44 115 0 119 206 66 85 222 0 142 206 99 68 139 33 33 90 0 57 148 0 135 206 99]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
+!
+
+imageFor_trueHolder
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self imageFor_trueHolder inspect
+     ImageEditor openOnClass:self andSelector:#imageFor_trueHolder
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'InspectorView imageFor_trueHolder'
+        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
+N3,;N0@@@@@@@@@@N3,;N3,;N3,@@@@@@@@@@C,;N3,;N0@@@@@@@@@@@@@@@C,;N3,@@@@(MB@ MB @@@@;N3,;@@@:K#@0F2(\N @@N3,;N0@-H0$IBP$I
+A18-@C,;N3,@MC@$I@$$IBP9HP@;N3,;@B@[J20IIB0^K3 @N3,;N0@ MRT,BRP^K1<8@C,;N3,@MB0,I $$K2\"JP@;N3,;@B49G#$IIA<]H#H@N3,;N0@@
+M#L3NBH"H#\@@C,;N3,@@@@-JS 8JSH@@@@;N3,;@@@@@@@@@@@@@@@@N3,;N3,;@@@@@@@@@@@;N3,;N3,;N0@@@@@@@@@@N3,;N0@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 98 255 0 75 198 0 25 74 0 57 156 0 34 99 0 92 206 16 60 132 16 31 74 0 79 206 0 128 131 142 88 231 0 70 189 0 38 90 0 148 198 123 57 115 16 92 239 0 103 255 8 76 189 0 154 198 123 85 214 0 53 132 0 106 255 0 138 255 49 107 156 74 44 115 0 119 206 66 85 222 0 142 206 99 68 139 33 33 90 0 57 148 0 135 206 99 60 59 55]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
 ! !
 
 !InspectorView class methodsFor:'queries-plugin'!
@@ -2342,6 +2432,8 @@
 !
 
 iconForValue: anObject
+    |value|
+
     anObject isNil ifTrue:[
         ^ self class imageFor_nil
     ].
@@ -2392,6 +2484,17 @@
     anObject isColor ifTrue:[
         ^ self class imageFor_colors
     ].
+    anObject isValueModel ifTrue:[
+        Error handle:[:ex |
+        ] do:[
+            value := anObject value.
+            value == true ifTrue:[^ self class imageFor_trueHolder].
+            value == false ifTrue:[^ self class imageFor_falseHolder].
+            value == nil ifTrue:[^ self class imageFor_nilHolder].
+            ^ self class imageFor_othersHolder
+        ].
+    ].
+
     ^ self class imageFor_others
 
     "Created: / 16-05-2012 / 17:58:20 / cg"
@@ -2575,9 +2678,9 @@
 !
 
 defaultLabel
-    ^ 'InstVars & Pseudo Slots'
-
-    "Modified: / 05-02-2011 / 14:06:26 / cg"
+    ^ 'Inst & Pseudo Slots'
+
+    "Modified: / 30-07-2013 / 09:40:52 / cg"
 !
 
 derivedFieldNames
@@ -3585,11 +3688,11 @@
 !InspectorView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.319 2013-07-16 18:01:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.321 2013-07-30 07:45:25 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.319 2013-07-16 18:01:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.321 2013-07-30 07:45:25 cg Exp $'
 !
 
 version_HG
--- a/MercurialSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/MercurialSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -870,9 +870,7 @@
                    makeExecutableForAll.
             ]
         ].
-        (fn isDirectory
-        and:[fn isReadable
-        and:[fn isWritable]]) ifTrue:[
+        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
             MercurialSourceCodeManager cacheDirectoryName:nm.
         ] ifFalse:[
             self warn:'Invalid sourceCache directory.'
@@ -1245,11 +1243,11 @@
 !MercurialSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/MercurialSourceCodeManagementSettingsAppl.st,v 1.19 2012-08-09 08:59:22 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/MercurialSourceCodeManagementSettingsAppl.st,v 1.20 2013-07-29 14:08:17 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/MercurialSourceCodeManagementSettingsAppl.st,v 1.19 2012-08-09 08:59:22 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/MercurialSourceCodeManagementSettingsAppl.st,v 1.20 2013-07-29 14:08:17 stefan Exp $'
 !
 
 version_HG
--- a/PerforceSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/PerforceSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -637,9 +637,7 @@
                        makeExecutableForAll.
                 ]
             ].
-            (fn isDirectory
-            and:[fn isReadable
-            and:[fn isWritable]]) ifTrue:[
+            (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
                 PerforceSourceCodeManager cacheDirectoryName:nm.
             ] ifFalse:[
                 self warn:'Invalid sourceCache directory.'
@@ -1333,11 +1331,11 @@
 !PerforceSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/PerforceSourceCodeManagementSettingsAppl.st,v 1.25 2012-07-19 15:27:52 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/PerforceSourceCodeManagementSettingsAppl.st,v 1.26 2013-07-29 14:08:30 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/PerforceSourceCodeManagementSettingsAppl.st,v 1.25 2012-07-19 15:27:52 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/PerforceSourceCodeManagementSettingsAppl.st,v 1.26 2013-07-29 14:08:30 stefan Exp $'
 !
 
 version_HG
@@ -1346,6 +1344,6 @@
 !
 
 version_SVN
-    ^ '§Id§'
+    ^ '$Id: PerforceSourceCodeManagementSettingsAppl.st,v 1.26 2013-07-29 14:08:30 stefan Exp $'
 ! !
 
--- a/StoreSourceCodeManagementSettingsAppl.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/StoreSourceCodeManagementSettingsAppl.st	Thu Aug 01 10:27:56 2013 +0100
@@ -561,9 +561,7 @@
                    makeExecutableForAll.
             ]
         ].
-        (fn isDirectory
-        and:[fn isReadable
-        and:[fn isWritable]]) ifTrue:[
+        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
             StoreSourceCodeManager cacheDirectoryName:nm.
         ] ifFalse:[
             self warn:'Invalid sourceCache directory.'
@@ -1144,11 +1142,11 @@
 !StoreSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.19 2012-07-24 14:02:02 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.20 2013-07-29 14:08:24 stefan Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.19 2012-07-24 14:02:02 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.20 2013-07-29 14:08:24 stefan Exp $'
 !
 
 version_HG
@@ -1157,6 +1155,6 @@
 !
 
 version_SVN
-    ^ '§Id§'
+    ^ '$Id: StoreSourceCodeManagementSettingsAppl.st,v 1.20 2013-07-29 14:08:24 stefan Exp $'
 ! !
 
--- a/TerminalApplication.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/TerminalApplication.st	Thu Aug 01 10:27:56 2013 +0100
@@ -12,7 +12,7 @@
 "{ Package: 'stx:libtool' }"
 
 MultiViewToolApplication subclass:#TerminalApplication
-	instanceVariableNames:'initialDirectory'
+	instanceVariableNames:'initialDirectory keepAlive keepAliveProcess'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'Interface-Smalltalk'
@@ -170,6 +170,17 @@
                   label: 'Green'
                   itemValue: setGreenDisplayMode
                 )
+               (MenuItem
+                  label: 'Red'
+                  itemValue: setRedDisplayMode
+                )
+               (MenuItem
+                  label: '-'
+                )
+               (MenuItem
+                  label: 'Ignore Text Color Commands'
+                  indication: noColors:
+                )
                )
               nil
               nil
@@ -245,6 +256,17 @@
                   label: '-'
                 )
                (MenuItem
+                  label: 'Send "~." (ssh/telnet quit)'
+                  itemValue: doSendTildeStop
+                )
+               (MenuItem
+                  label: 'Keep Connection Alive'
+                  indication: keepSSHConnectionAliveHolder
+                )
+               (MenuItem
+                  label: '-'
+                )
+               (MenuItem
                   label: 'Reset Terminal'
                   itemValue: doReset
                 )
@@ -279,6 +301,8 @@
         nil
         nil
       )
+
+    "Modified: / 30-07-2013 / 11:01:18 / cg"
 !
 
 tabMenu
@@ -344,6 +368,18 @@
     "
 ! !
 
+!TerminalApplication methodsFor:'aspects'!
+
+keepSSHConnectionAliveHolder
+    keepAlive isNil ifTrue:[
+        keepAlive := false asValue.
+        keepAlive onChangeSend:#keepSSHConnectionAliveHolderChanged to:self.
+    ].
+    ^ keepAlive
+
+    "Created: / 30-07-2013 / 07:51:59 / cg"
+! !
+
 !TerminalApplication methodsFor:'menu-actions'!
 
 addWorkspace
@@ -394,6 +430,22 @@
     self selectedWorkspacesTextView doSendKillSignal.
 !
 
+doSendTildeStop
+    self selectedWorkspacesTextView send:'~.'.
+
+    "Created: / 29-07-2013 / 18:20:36 / cg"
+!
+
+keepSSHConnectionAliveHolderChanged
+    keepAlive value ifTrue:[
+        self startKeepAliveProcess
+    ] ifFalse:[
+        self stopKeepAliveProcess
+    ]
+
+    "Created: / 30-07-2013 / 07:53:12 / cg"
+!
+
 menuPlayback
     |file suff|
 
@@ -406,6 +458,14 @@
     ]
 !
 
+noColors
+    ^ self selectedWorkspacesTextView noColors
+!
+
+noColors:aBoolean
+    self selectedWorkspacesTextView noColors:aBoolean.
+!
+
 openDocumentation
     "opens the documentation file"
 
@@ -434,6 +494,10 @@
     self selectedWorkspacesTextView setNormalDisplayMode.
 !
 
+setRedDisplayMode
+    self selectedWorkspacesTextView setRedDisplayMode.
+!
+
 setReverseDisplayMode
     self selectedWorkspacesTextView setReverseDisplayMode.
 ! !
@@ -442,10 +506,58 @@
 
 isModifiedWorkspace:aView
     ^ false
+!
+
+startKeepAliveProcess
+    "keep alive, by sending a return from time to time.
+     Raise to top, if connection is lost"
+
+    keepAliveProcess isNil ifTrue:[
+        keepAliveProcess :=
+            [
+                [true] whileTrue:[
+                    self selectedWorkspacesTextView sendCR:''.
+                    Delay waitForSeconds:30.
+                ].
+            ] newProcess.
+        keepAliveProcess resume.
+    ].
+
+    "Created: / 30-07-2013 / 09:14:36 / cg"
+!
+
+stopKeepAliveProcess
+    |p|
+
+    (p := keepAliveProcess) notNil ifTrue:[
+        keepAliveProcess := nil.
+        p terminate
+    ].
+
+    "Created: / 30-07-2013 / 09:15:05 / cg"
 ! !
 
 !TerminalApplication methodsFor:'startup'!
 
+startShellInSelectedWindow
+    |vt|
+
+    vt := self selectedWorkspacesTextView.
+    (vt notNil and:[vt superView realized]) ifFalse:[
+        self window sensor pushUserEvent:#startShellInSelectedWindow for:self.
+        ^ self.
+    ].
+
+    vt startShellIn:initialDirectory.
+    vt shellTerminateAction:[self shellFinishedInWorkspace:vt].
+    vt masterWindow:(self window).  "/ to change window title
+
+    "Modified: / 07-04-2011 / 09:03:55 / cg"
+    "Modified: / 03-04-2012 / 10:31:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!TerminalApplication methodsFor:'startup & release'!
+
 initialDirectory:aDirectory
     initialDirectory := aDirectory
 !
@@ -465,34 +577,28 @@
     super postOpenWith:aBuilder
 !
 
+release
+    self stopKeepAliveProcess.
+    super release.
+
+    "Created: / 30-07-2013 / 07:54:16 / cg"
+!
+
 shellFinishedInWorkspace:aView
     "/ vt backgroundColor:(Color red).
     aView 
         cr; 
         nextPutLine:('>> shell terminated.' asText allBold colorizeAllWith:Color red).
-!
-
-startShellInSelectedWindow
-    |vt|
-
-    vt := self selectedWorkspacesTextView.
-    (vt notNil and:[vt superView realized]) ifFalse:[
-        self window sensor pushUserEvent:#startShellInSelectedWindow for:self.
-        ^ self.
-    ].
-
-    vt startShellIn:initialDirectory.
-    vt shellTerminateAction:[self shellFinishedInWorkspace:vt].
-    vt masterWindow:(self window).  "/ to change window title
-
-    "Modified: / 07-04-2011 / 09:03:55 / cg"
-    "Modified: / 03-04-2012 / 10:31:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !TerminalApplication class methodsFor:'documentation'!
 
+version
+    ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.19 2013-07-30 09:02:01 cg Exp $'
+!
+
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.13 2013-07-23 21:08:55 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.19 2013-07-30 09:02:01 cg Exp $'
 !
 
 version_HG
--- a/Tools__BreakpointService.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__BreakpointService.st	Thu Aug 01 10:27:56 2013 +0100
@@ -109,9 +109,10 @@
 updateBreakPointsFor:aMethod
     |methodsBreakPoints|
 
+    "/ Transcript show:'update breakpoints for method: '; showCR:aMethod.
     aMethod notNil ifTrue:[
         aMethod literalsDo:[:eachLiteral |
-            eachLiteral class == Breakpoint ifTrue:[
+            (eachLiteral isKindOf:Breakpoint) ifTrue:[
                 methodsBreakPoints isNil ifTrue:[
                     methodsBreakPoints := OrderedCollection new.
                 ].
@@ -536,14 +537,14 @@
 !BreakpointService class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.36 2013-07-24 09:50:26 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.36 2013-07-24 09:50:26 cg Exp $'
 !
 
 version_SVN
-    ^ '$Id: Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
+    ^ '$Id: Tools__BreakpointService.st,v 1.36 2013-07-24 09:50:26 cg Exp $'
 ! !
 
--- a/Tools__ChangeSetDiffList.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__ChangeSetDiffList.st	Thu Aug 01 10:27:56 2013 +0100
@@ -500,32 +500,25 @@
 updateList
     "Superclass Tools::BrowserList says that I am responsible to implement this method"
     
-    | newDiffs oldList newList anyNew |
-    oldList := self listHolder value ? #().
-    oldList do: [:entry|entry model removeDependent: self].
+    | newDiffs newList |
+    self listHolder value ? #() do: [:entry|entry model removeDependent: self].
 
     newDiffs := self inGeneratorHolder value ? #().
     (newDiffs isKindOf: ChangeSetDiffComponent) ifTrue:
         [newDiffs := newDiffs diffs].
-
     newDiffs := self filterList: newDiffs.
-    newList := OrderedCollection new:16.    
-    anyNew := false.
-    newDiffs do:[:item|
-        (self shouldDisplayDiff: item) ifTrue:[
-            | entry |
+    newList := OrderedCollection new.    
+    newDiffs do:
+        [:item|
+        newList add:(ListEntry model: item application: self).
+        item addDependent: self].
 
-            entry := oldList detect:[:e|e model == entry] ifNone:[anyNew := true. (ListEntry model: item application: self)].
-            newList add:entry.
-        ].
-    ].
     newList sort:[:a :b|a label < b label].
-    (anyNew or:[oldList size ~~ newList size]) ifTrue:[
-        self listHolder value:newList
-    ].
+    self listHolder value:newList
 
     "Modified: / 07-07-2011 / 14:17:26 / jv"
-    "Modified: / 17-01-2013 / 16:40:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 29-11-2011 / 16:08:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-07-2013 / 19:30:18 / cg"
 ! !
 
 !ChangeSetDiffList::ListEntry class methodsFor:'instance creation'!
@@ -600,7 +593,7 @@
 !ChangeSetDiffList class methodsFor:'documentation'!
 
 version_CVS
-    ^ '§Header: /cvs/stx/stx/libtool/Tools__ChangeSetDiffList.st,v 1.6 2011/11/30 11:14:53 vrany Exp §'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeSetDiffList.st,v 1.7 2013-07-30 17:35:29 cg Exp $'
 !
 
 version_HG
@@ -609,6 +602,6 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__ChangeSetDiffList.st 8089 2013-01-17 17:16:17Z vranyj1 $'
+    ^ '$Id: Tools__ChangeSetDiffList.st,v 1.7 2013-07-30 17:35:29 cg Exp $'
 ! !
 
--- a/Tools__CodeHighlightingService.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__CodeHighlightingService.st	Thu Aug 01 10:27:56 2013 +0100
@@ -377,11 +377,11 @@
 !CodeHighlightingService class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.44 2013-07-30 17:35:09 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.44 2013-07-30 17:35:09 cg Exp $'
 !
 
 version_HG
@@ -390,6 +390,6 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
+    ^ '$Id: Tools__CodeHighlightingService.st,v 1.44 2013-07-30 17:35:09 cg Exp $'
 ! !
 
--- a/Tools__Inspector2.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__Inspector2.st	Thu Aug 01 10:27:56 2013 +0100
@@ -985,22 +985,22 @@
 
     class := self currentObject class.
 
-    browser notNil ifTrue:[
-        "/ try to add a tab to the already opened browser
-        (browser isKindOf:Tools::NewSystemBrowser) ifTrue:[
-            browser spawnClassBrowserFor:(Array with:class) in:#newBuffer.
-            "/ browser spawnSingleClassBrowserFor:class in:#newBuffer.
-            browser window raise.
-            ^ self.
-        ].
-    ].
+"/    browser notNil ifTrue:[
+"/        "/ try to add a tab to the already opened browser
+"/        (browser isKindOf:Tools::NewSystemBrowser) ifTrue:[
+"/            browser spawnClassBrowserFor:(Array with:class) in:#newBuffer.
+"/            "/ browser spawnSingleClassBrowserFor:class in:#newBuffer.
+"/            browser window raise.
+"/            ^ self.
+"/        ].
+"/    ].
     "/ if that fails, open a new one
 
     browser := UserPreferences systemBrowserClass 
                     openInClass:class selector:nil "/ browseSingleClass: class
 
     "Modified: / 23-07-2011 / 11:28:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified (format): / 05-03-2012 / 13:03:55 / cg"
+    "Modified: / 26-07-2013 / 15:36:51 / cg"
 !
 
 browseFileAction
@@ -1132,11 +1132,11 @@
 !Inspector2::NavigationState class methodsFor:'documentation'!
 
 version
-    ^'$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^'$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 !
 
 version_SVN
-    ^'$Id: Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^'$Id: Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 ! !
 
 !Inspector2::NavigationState methodsFor:'accessing'!
@@ -1363,15 +1363,15 @@
 !Inspector2 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 !
 
 version_CVS_jvrany
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 !
 
 version_HG
@@ -1380,7 +1380,7 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__Inspector2.st,v 1.42 2013-07-15 15:12:25 cg Exp $'
+    ^ '$Id: Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $'
 ! !
 
 
--- a/Tools__NewSystemBrowser.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__NewSystemBrowser.st	Thu Aug 01 10:27:56 2013 +0100
@@ -15,46 +15,46 @@
 
 SystemBrowser subclass:#NewSystemBrowser
 	instanceVariableNames:'navigationState bufferNameList selectedBuffer buffers
-		bufferUsageOrder browserCanvas immediateUpdate showClassPackages
-		lastMethodCategory lastMethodMoveClass browserCanvasType
-		syntaxColoringProcessRunning syntaxColoringProcess
-		methodInfoProcess browsletShowHideLabelHolder browserPageCanvas
-		isEmbedded'
+                bufferUsageOrder browserCanvas immediateUpdate showClassPackages
+                lastMethodCategory lastMethodMoveClass browserCanvasType
+                syntaxColoringProcessRunning syntaxColoringProcess
+                methodInfoProcess browsletShowHideLabelHolder browserPageCanvas
+                isEmbedded'
 	classVariableNames:'LastNewProtocols LastProtocolRenames LastCategoryRenames
-		LastCategoryRenameOld LastCategoryRenameNew LastProjectMoves
-		LastNameSpaceMove LastMethodMoveOrCopyTargetClass
-		LastClassFilterBlockString LastMethodFilterBlockString
-		LastBreakPointConditionString LastIndividualChecks
-		LastAcceptPackage LastVariableRenames LastVisitorClassName
-		LastTemporaryVariableName FindHistory
-		CheckForInstancesWhenRemovingClasses SynchronousUpdate
-		DoubleClickIsOpenBrowser ShowMethodTemplateWhenProtocolIsSelected
-		DefaultShowMethodInheritance DefaultEmphasizeUnloadedClasses
-		DefaultImmediateSyntaxColoring DefaultImmediateExplaining
-		DefaultSyntaxColoring DefaultToolBarVisible
-		DefaultCodeInfoVisible DefaultShortNameInTabs
-		DefaultHideUnloadedClasses DefaultMarkApplications
-		DefaultAutoFormat DefaultShowMethodComplexity
-		DefaultShowMethodTypeIcon DefaultShowSpecialResourceEditors
-		SharedMethodCategoryCache LastMethodProcessingBlockString
-		LastLoadedPackages DefaultShortAllClassesInNameSpaceOrganisation
-		LastBaseVersionTag DefaultShowPseudoProtocols
-		DefaultShowMultitabMode LastRenamedOld LastRenamedNew
-		LastImportedPackage LastLintRules NewNavigationHistory
-		LastLiteralReplacementType LastLiteralReplacementNewName
-		LastLiteralReplacementOldLiteral LastNewProjectType
-		LastClassProcessingBlockString RecentlyClosedList
-		LastClassSearchBoxShowedFullName CachedTagToRevisionMapping
-		CachedMethodsImplemented DefaultShowSyntheticMethods'
+                LastCategoryRenameOld LastCategoryRenameNew LastProjectMoves
+                LastNameSpaceMove LastMethodMoveOrCopyTargetClass
+                LastClassFilterBlockString LastMethodFilterBlockString
+                LastBreakPointConditionString LastIndividualChecks
+                LastAcceptPackage LastVariableRenames LastVisitorClassName
+                LastTemporaryVariableName FindHistory
+                CheckForInstancesWhenRemovingClasses SynchronousUpdate
+                DoubleClickIsOpenBrowser ShowMethodTemplateWhenProtocolIsSelected
+                DefaultShowMethodInheritance DefaultEmphasizeUnloadedClasses
+                DefaultImmediateSyntaxColoring DefaultImmediateExplaining
+                DefaultSyntaxColoring DefaultToolBarVisible
+                DefaultCodeInfoVisible DefaultShortNameInTabs
+                DefaultHideUnloadedClasses DefaultMarkApplications
+                DefaultAutoFormat DefaultShowMethodComplexity
+                DefaultShowMethodTypeIcon DefaultShowSpecialResourceEditors
+                SharedMethodCategoryCache LastMethodProcessingBlockString
+                LastLoadedPackages DefaultShortAllClassesInNameSpaceOrganisation
+                LastBaseVersionTag DefaultShowPseudoProtocols
+                DefaultShowMultitabMode LastRenamedOld LastRenamedNew
+                LastImportedPackage LastLintRules NewNavigationHistory
+                LastLiteralReplacementType LastLiteralReplacementNewName
+                LastLiteralReplacementOldLiteral LastNewProjectType
+                LastClassProcessingBlockString RecentlyClosedList
+                LastClassSearchBoxShowedFullName CachedTagToRevisionMapping
+                CachedMethodsImplemented DefaultShowSyntheticMethods'
 	poolDictionaries:''
 	category:'Interface-Browsers-New'
 !
 
-Object subclass:#ClassCompletionEntry
+Object subclass:#'NewSystemBrowser::ClassCompletionEntry'
 	instanceVariableNames:'klass showPrefix'
 	classVariableNames:''
 	poolDictionaries:''
-	privateIn:NewSystemBrowser
+	privateIn:Tools::NewSystemBrowser
 !
 
 ListEntry subclass:#OwnershipGraph
@@ -15342,153 +15342,160 @@
 
     <resource: #menu>
 
-    ^
-     #(Menu
-	(
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckIn...'
-	    itemValue: projectMenuCheckInAllUsingManagerNamed:
-	    labelImage: (ResourceRetriever ToolbarIconLibrary repositoryCheckIn 'CheckIn...')
-	    argument: CVSSourceCodeManager
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckIn Classes Only...'
-	    itemValue: projectMenuCheckInClassesUsingManagerNamed:
-	    argument: CVSSourceCodeManager
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckIn Extensions Only...'
-	    itemValue: projectMenuCheckInExtensionsUsingManagerNamed:
-	    argument: CVSSourceCodeManager
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckIn Build Support Files Only...'
-	    itemValue: projectMenuCheckInBuildSupportFilesUsingManagerNamed:
-	    argument: CVSSourceCodeManager
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    label: '-'
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckOut Newest'
-	    itemValue: projectMenuCheckOutNewest
-	    labelImage: (ResourceRetriever ToolbarIconLibrary repositoryCheckOut 'CheckOut Newest')
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckOut Previous Version...'
-	    itemValue: projectMenuCheckOut
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'CheckOut Extensions Only...'
-	    itemValue: projectMenuCheckOutExtensions
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    label: '-'
-	  )
-	 (MenuItem
-	    label: 'Import Structure...'
-	    itemValue: projectMenuImport
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    label: 'Import...'
-	    itemValue: projectMenuImportAndLoadClasses
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    label: '-'
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Compare with Newest in Repository'
-	    itemValue: projectMenuCompareAgainstNewestInRepository
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Compare with Stable Version in Repository'
-	    itemValue: projectMenuCompareAgainstStableInRepository
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Compare with Repository at Date or Tag...'
-	    itemValue: projectMenuCompareAgainstRepository
-	  )
-	 (MenuItem
-	    label: 'Compare Build Support File'
-	    submenuChannel: compareBuildSupportFileMenu
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Browse Classes ...'
-	    itemValue: projectMenuCheckRepositoryConsistency
-	  )
-	 (MenuItem
-	    label: '-'
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Set Tag (Release As)...'
-	    itemValue: projectMenuSetTag
-	    labelImage: (ResourceRetriever ToolbarIconLibrary repositoryTag 'Set Tag (Release As)...')
-	  )
-	 (MenuItem
-	    label: '-'
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Repository History...'
-	    itemValue: projectMenuRepositoryHistory
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    label: 'Package Dependencies...'
-	    itemValue: projectPackageDependencyBrowser
-	    isVisible: false
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Find Classes NOT tagged as "stable"'
-	    itemValue: projectMenuFindNotStableClasses
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Find Classes NOT tagged as...'
-	    itemValue: projectMenuFindNotTaggedClasses
-	  )
-	 (MenuItem
-	    label: '-'
-	    isVisible: false
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedHolder
-	    label: 'Resource Files...'
-	    itemValue: projectMenuResources
-	    isVisible: false
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedHolder
-	    label: 'Bitmap Files...'
-	    itemValue: projectMenuBitmapFiles
-	    isVisible: false
-	  )
-	 )
-	nil
-	nil
-      )
+    ^ 
+     #(Menu
+        (
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckIn...'
+            itemValue: projectMenuCheckInAllUsingManagerNamed:
+            labelImage: (ResourceRetriever ToolbarIconLibrary repositoryCheckIn 'CheckIn...')
+            argument: CVSSourceCodeManager
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckIn Classes Only...'
+            itemValue: projectMenuCheckInClassesUsingManagerNamed:
+            argument: CVSSourceCodeManager
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckIn Extensions Only...'
+            itemValue: projectMenuCheckInExtensionsUsingManagerNamed:
+            argument: CVSSourceCodeManager
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckIn Build Support Files Only...'
+            itemValue: projectMenuCheckInBuildSupportFilesUsingManagerNamed:
+            argument: CVSSourceCodeManager
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckOut Newest'
+            itemValue: projectMenuCheckOutNewest
+            labelImage: (ResourceRetriever ToolbarIconLibrary repositoryCheckOut 'CheckOut Newest')
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckOut Previous Version...'
+            itemValue: projectMenuCheckOut
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'CheckOut Extensions Only...'
+            itemValue: projectMenuCheckOutExtensions
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            label: 'Import Structure...'
+            itemValue: projectMenuImport
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            label: 'Import...'
+            itemValue: projectMenuImportAndLoadClasses
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Compare with Newest in Repository'
+            itemValue: projectMenuCompareAgainstNewestInRepository
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Compare with Stable Version in Repository'
+            itemValue: projectMenuCompareAgainstStableInRepository
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Compare with Repository at Date or Tag...'
+            itemValue: projectMenuCompareAgainstRepository
+          )
+         (MenuItem
+            label: 'Compare Build Support File'
+            submenuChannel: compareBuildSupportFileMenu
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Browse Classes ...'
+            itemValue: projectMenuCheckRepositoryConsistency
+          )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Set Tag (Release As)...'
+            itemValue: projectMenuSetTag
+            labelImage: (ResourceRetriever ToolbarIconLibrary repositoryTag 'Set Tag (Release As)...')
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Set Tag of Build Support Files...'
+            itemValue: projectMenuSetTagOfBuildSupportFiles
+          )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Repository History...'
+            itemValue: projectMenuRepositoryHistory
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            label: 'Package Dependencies...'
+            itemValue: projectPackageDependencyBrowser
+            isVisible: false
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Find Classes NOT tagged as "stable"'
+            itemValue: projectMenuFindNotStableClasses
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Find Classes NOT tagged as...'
+            itemValue: projectMenuFindNotTaggedClasses
+          )
+         (MenuItem
+            label: '-'
+            isVisible: false
+          )
+         (MenuItem
+            enabled: hasProjectSelectedHolder
+            label: 'Resource Files...'
+            itemValue: projectMenuResources
+            isVisible: false
+          )
+         (MenuItem
+            enabled: hasProjectSelectedHolder
+            label: 'Bitmap Files...'
+            itemValue: projectMenuBitmapFiles
+            isVisible: false
+          )
+         )
+        nil
+        nil
+      )
+
+    "Modified: / 29-07-2013 / 09:49:12 / cg"
 !
 
 projectGitMenu
@@ -15924,28 +15931,34 @@
 
     ^
      #(Menu
-	(
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Repository History...'
-	    itemValue: projectMenuRepositoryHistory
-	    translateLabel: true
-	    showBusyCursorWhilePerforming: true
-	  )
-	 (MenuItem
-	    enabled: hasProjectSelectedAndSourceCodeManagerHolder
-	    label: 'Set Tag (Release As)...'
-	    itemValue: projectMenuSetTagUsingManager:
-	    translateLabel: true
-	    labelImage: (ResourceRetriever ToolbarIconLibrary repositoryTag 'Set Tag (Release As)...')
-	    argument: SourceCodeManagerPlaceholder
-	  )
-	 )
-	nil
-	nil
-      )
-
-    "Modified: / 23-07-2012 / 15:16:21 / cg"
+        (
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Repository History...'
+            itemValue: projectMenuRepositoryHistory
+            translateLabel: true
+            showBusyCursorWhilePerforming: true
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Set Tag (Release As)...'
+            itemValue: projectMenuSetTagUsingManager:
+            translateLabel: true
+            labelImage: (ResourceRetriever ToolbarIconLibrary repositoryTag 'Set Tag (Release As)...')
+            argument: SourceCodeManagerPlaceholder
+          )
+         (MenuItem
+            enabled: hasProjectSelectedAndSourceCodeManagerHolder
+            label: 'Set Tag of Build Support Files...'
+            itemValue: projectMenuSetTagOfBuildSupportFilesUsingManager:
+            argument: SourceCodeManagerPlaceholder
+          )
+         )
+        nil
+        nil
+      )
+
+    "Modified: / 29-07-2013 / 09:49:26 / cg"
 !
 
 projectMenuSCMExtra_SVN
@@ -28332,27 +28345,27 @@
 
     (aClass == Autoload
     or:[aClass isNil or:[aClass isLoaded not]]) ifTrue:[
-	self javaMode ifTrue:[
-	    theSuperClass := Java at:'java.lang.Object'
-	] ifFalse:[
-	    theSuperClass := Object
-	]
-    ] ifFalse:[
-	theSuperClass := aClass
+        self javaMode ifTrue:[
+            theSuperClass := Java at:'java.lang.Object'
+        ] ifFalse:[
+            theSuperClass := Object
+        ]
+    ] ifFalse:[
+        theSuperClass := aClass
     ].
 
 "/    self switchToClass:nil.
     metaClassUsedOrNil notNil ifTrue:[
-	self codeView isCodeView2 ifTrue:[
-	    self codeView languageHolder value: theSuperClass programmingLanguage.
-	].
+        self codeView isCodeView2 ifTrue:[
+            self codeView languageHolder value: theSuperClass programmingLanguage.
+        ].
     ].
     self showCode:(self
-			classTemplateFor:theSuperClass
-			in:cat
-			asNamespace:isNameSpace
-			private:isPrivate
-			metaClassUsed:metaClassUsedOrNil).
+                        classTemplateFor:theSuperClass
+                        in:cat
+                        asNamespace:isNameSpace
+                        private:isPrivate
+                        metaClassUsed:metaClassUsedOrNil).
 
     self setAcceptActionForMetaClassUsed:metaClassUsedOrNil.
 
@@ -33023,6 +33036,56 @@
     "Created: / 26-09-2012 / 12:26:43 / cg"
 !
 
+askForTagForClasses:classesToFetchExistingTagsFrom
+    |classes tag knownTags allOwners|
+
+    classes := classesToFetchExistingTagsFrom.
+
+    allOwners := Set new.
+    classes do:[:each | 
+        each owningClass notNil ifTrue:[
+            allOwners add:each owningClass
+        ].
+    ].
+    classes := classes reject:[:cls | cls isPrivate].
+    classes := classes asSet.
+    classes addAll:allOwners.
+    classes := classes asOrderedCollection "sort:[:a :b | a name < b name]".
+
+    ((classes size <= 10)
+        or:[ |answer|
+             answer := Dialog
+                        confirmWithCancel:'Fetch known tags to choose from all classes?\(this may take some time)' withCRs
+                        default:false.
+             answer isNil ifTrue:[^ self].
+             answer == true
+           ]
+    ) ifTrue:[
+        "/ fetch from all classes
+        knownTags := self allKnownTagsInClasses:classes.
+    ] ifFalse:[
+        "/ only fetch from ProjectDefinitionClasses
+        knownTags := self allKnownTagsInClasses:(classes select:[:cls | cls isProjectDefinition]).
+    ].
+    knownTags remove:'stable' ifAbsent:[].
+    knownTags := knownTags asOrderedCollection reverse.
+    knownTags notEmpty ifTrue:[
+        knownTags addFirst:nil.
+    ].
+    knownTags addFirst:'stable'.
+
+    tag := Dialog
+                request:(resources string:'Tag (possibly multiple, separated by ";"):')
+                initialAnswer:(CVSSourceCodeManager recentTag)
+                list:knownTags.
+    tag isEmptyOrNil ifTrue:[^ nil ].
+
+    CVSSourceCodeManager recentTag:tag.
+    ^  tag
+
+    "Created: / 29-07-2013 / 00:56:30 / cg"
+!
+
 checkInClasses:aCollectionOfClasses withInfo:logInfoOrNil withCheck:doCheck
     "check a bunch of classes into the source repository.
      If logInfoOrNil isNil, ask for one."
@@ -34520,55 +34583,22 @@
 !
 
 classMenuSetTag
-    |classes tag knownTags allOwners|
+    |classes tag tags|
 
     classes := self selectedNonMetaclasses.
-    allOwners := Set new.
-    classes do:[:each |
-	each owningClass notNil ifTrue:[
-	    allOwners add:each owningClass
-	].
-    ].
-    classes := classes reject:[:cls | cls isPrivate].
-    classes := classes asSet.
-    classes addAll:allOwners.
-    classes := classes asOrderedCollection sort:[:a :b | a name < b name].
-
-    ((classes size <= 10)
-	or:[ |answer|
-	     answer := Dialog
-			confirmWithCancel:'Fetch known tags to choose from all classes?\(this may take some time)' withCRs
-			default:false.
-	     answer isNil ifTrue:[^ self].
-	     answer == true
-	   ]
-    ) ifTrue:[
-	"/ fetch from all classes
-	knownTags := self allKnownTagsInClasses:classes.
-    ] ifFalse:[
-	"/ only fetch from ProjectDefinitionClasses
-	knownTags := self allKnownTagsInClasses:(classes select:[:cls | cls isProjectDefinition]).
-    ].
-    knownTags remove:'stable' ifAbsent:[].
-    knownTags := knownTags asOrderedCollection reverse.
-    knownTags notEmpty ifTrue:[
-	knownTags addFirst:nil.
-    ].
-    knownTags addFirst:'stable'.
-
-    tag := Dialog
-		request:(resources string:'Tag:')
-		initialAnswer:LastTag
-		list:knownTags.
+    tag := self askForTagForClasses:classes.
     tag isEmptyOrNil ifTrue:[^ self ].
 
-    LastTag := tag.
+    CVSSourceCodeManager recentTag:tag.
     self withWaitCursorDo:[
-	SourceCodeManagerUtilities default tagClasses:classes as:tag.
+        tags := tag asCollectionOfSubstringsSeparatedByAny:',;'.
+        tags do:[:eachTag |
+            SourceCodeManagerUtilities default tagClasses:classes as:(eachTag withoutSeparators).
+        ].
     ]
 
     "Created: / 12-09-2006 / 13:36:59 / cg"
-    "Modified: / 08-02-2011 / 10:30:49 / cg"
+    "Modified: / 29-07-2013 / 00:59:28 / cg"
 !
 
 classMenuSetTagUsingManager: aManager
@@ -37483,63 +37513,63 @@
 
     processes := ProcessorScheduler knownProcesses asOrderedCollection.
     processes := processes select:[:aProcess |
-			aProcess notNil
-			and:[aProcess id notNil]
-		 ].
+                        aProcess notNil
+                        and:[aProcess id notNil]
+                 ].
     processes := processes sort:[:a :b | a id < b id].
     processNames := processes collect:[:aProcess |
-			|pName theGroup topViews topView topLabel winLabel
-			 busyOrNot iconifiedOrNot sensor pending |
-
-			pName := aProcess nameOrId.
-
-			"/ if its a windowGroup process,
-			"/ fetch its first topViews name and add.
-			"/ (allows selecting among multiple browsers ...)
-			winLabel := ''.
-
-			theGroup := windowGroups detect:[:g | g process == aProcess] ifNone:nil.
-			theGroup notNil ifTrue:[
-			    theGroup isModal ifTrue:[theGroup := theGroup previousGroup].
-			    topViews := theGroup topViews select:[:v | v isTopView].
-			    topViews size > 0 ifTrue:[
-				topView := topViews detect:[:v | v isCollapsed not] ifNone:nil.
-				topView isNil ifTrue:[ topView := topViews detect:[:v | v application notNil] ifNone:nil].
-				topView isNil ifTrue:[ topView := topViews first ].
-				topLabel := (topView label ? '').
-
-				busyOrNot := ''.
-				aProcess isDebugged ifTrue:[
-				    busyOrNot := ' debug'
-				] ifFalse:[
-				    (sensor := theGroup sensor) notNil ifTrue:[
-					(pending := sensor pendingEvent) notNil ifTrue:[
-					    (Timestamp now - pending timeStamp) > 1 ifTrue:[
-						(aProcess isDebugged) ifTrue:[
-						    busyOrNot := ' debug'
-						] ifFalse:[
-						    busyOrNot := ' busy'
-						].
-					    ]
-					]
-				    ].
-				].
-				iconifiedOrNot := ''.
-				topView isCollapsed ifTrue:[
-				    iconifiedOrNot := ' iconified' colorizeAllWith:Color blue.
-				].
-				busyOrNot notEmptyOrNil ifTrue:[
-				    busyOrNot := busyOrNot allBold colorizeAllWith:Color red
-				].
-				winLabel := '  ("' , topLabel , '"',busyOrNot,iconifiedOrNot, ')'
-			    ].
-			] ifFalse:[
-			    (aProcess isDebugged) ifTrue:[
-				winLabel := ' (debug)' allBold colorizeAllWith:Color red
-			    ].
-			].
-			aProcess id printString , ' [' , pName , ']' , winLabel
-		    ].
+                        |pName theGroup topViews topView topLabel winLabel
+                         busyOrNot iconifiedOrNot sensor pending |
+
+                        pName := aProcess nameOrId.
+
+                        "/ if its a windowGroup process,
+                        "/ fetch its first topViews name and add.
+                        "/ (allows selecting among multiple browsers ...)
+                        winLabel := ''.
+
+                        theGroup := windowGroups detect:[:g | g process == aProcess] ifNone:nil.
+                        theGroup notNil ifTrue:[
+                            theGroup isModal ifTrue:[theGroup := (theGroup previousGroup ? theGroup)].
+                            topViews := theGroup topViews select:[:v | v isTopView].
+                            topViews size > 0 ifTrue:[
+                                topView := topViews detect:[:v | v isCollapsed not] ifNone:nil.
+                                topView isNil ifTrue:[ topView := topViews detect:[:v | v application notNil] ifNone:nil].
+                                topView isNil ifTrue:[ topView := topViews first ].
+                                topLabel := (topView label ? '').
+
+                                busyOrNot := ''.
+                                aProcess isDebugged ifTrue:[
+                                    busyOrNot := ' debug'
+                                ] ifFalse:[
+                                    (sensor := theGroup sensor) notNil ifTrue:[
+                                        (pending := sensor pendingEvent) notNil ifTrue:[
+                                            (Timestamp now - pending timeStamp) > 1 ifTrue:[
+                                                (aProcess isDebugged) ifTrue:[
+                                                    busyOrNot := ' debug'
+                                                ] ifFalse:[
+                                                    busyOrNot := ' busy'
+                                                ].
+                                            ]
+                                        ]
+                                    ].
+                                ].
+                                iconifiedOrNot := ''.
+                                topView isCollapsed ifTrue:[
+                                    iconifiedOrNot := ' iconified' colorizeAllWith:Color blue.
+                                ].
+                                busyOrNot notEmptyOrNil ifTrue:[
+                                    busyOrNot := busyOrNot allBold colorizeAllWith:Color red
+                                ].
+                                winLabel := '  ("' , topLabel , '"',busyOrNot,iconifiedOrNot, ')'
+                            ].
+                        ] ifFalse:[
+                            (aProcess isDebugged) ifTrue:[
+                                winLabel := ' (debug)' allBold colorizeAllWith:Color red
+                            ].
+                        ].
+                        aProcess id printString , ' [' , pName , ']' , winLabel
+                    ].
 
     "/ let user specify which one ...
 
@@ -37548,9 +37578,9 @@
     box list:processNames.
     box label:(resources string:'process selection').
     box title:(resources
-		string:'Stop if method is executed by process:\\(current process is %1)'
-		with:(Processor activeProcess id)
-		with:(Processor activeProcess nameOrId)) withCRs.
+                string:'Stop if method is executed by process:\\(current process is %1)'
+                with:(Processor activeProcess id)
+                with:(Processor activeProcess nameOrId)) withCRs.
     box action:[:selection | selectedProcessIndex := box selectionIndex].
     box initialSelection:(processes identityIndexOf:Processor activeProcess).
     box extent:(450 @ 350).
@@ -37558,10 +37588,10 @@
     box destroy.
 
     selectedProcessIndex notNil ifTrue:[
-	self
-	    commonTraceHelperWith:#breakPointInProcess:
-	    with:(processes at:selectedProcessIndex)
-	    clear:true
+        self
+            commonTraceHelperWith:#breakPointInProcess:
+            with:(processes at:selectedProcessIndex)
+            clear:true
     ].
 
     "Created: / 14-10-1996 / 15:40:53 / cg"
@@ -38195,7 +38225,6 @@
     "Modified: / 28-02-2012 / 16:27:44 / cg"
 ! !
 
-
 !NewSystemBrowser methodsFor:'menu actions-namespace'!
 
 nameSpaceMenuCheckOut
@@ -40107,14 +40136,14 @@
     <resource: #obsolete> "use ...Using:manager variant"
 
     self withWaitCursorDo:[
-	self selectedProjects value do:[:eachProject |
-	    SourceCodeManagerUtilities compareProjectWithRepository:eachProject
-	].
+        self selectedProjects value do:[:eachProject |
+            SourceCodeManagerUtilities default compareProjectWithRepository:eachProject
+        ].
     ].
 
     "Created: / 12-10-2006 / 17:41:55 / cg"
-    "Modified: / 12-10-2006 / 21:46:14 / cg"
     "Modified: / 15-10-2011 / 23:09:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-07-2013 / 21:33:05 / cg"
 !
 
 projectMenuCompareAgainstNewestInRepositoryUsingManager: manager
@@ -41378,24 +41407,67 @@
     "Modified: / 15-10-2011 / 22:45:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+projectMenuSetTagOfBuildSupportFiles
+    self projectMenuSetTagOfBuildSupportFilesUsingManager:SourceCodeManager
+
+    "Created: / 29-07-2013 / 09:50:50 / cg"
+!
+
+projectMenuSetTagOfBuildSupportFilesUsingManager:aManager
+    |tag|
+
+    SourceCodeManagerError handle:[:ex |
+        Dialog 
+            warn:(resources
+                        stringWithCRs:'CVS Error:\\%1'
+                        with:ex description).
+    ] do:[
+        self selectedProjectsDo:[:prj |
+            |packageId defClass pathes|
+
+            packageId := prj asPackageId.
+            defClass := ProjectDefinition definitionClassForPackage:packageId createIfAbsent:false.
+
+            tag := self askForTagForClasses:{ defClass }.
+            tag isEmptyOrNil ifTrue:[^ self ].
+
+            self withWaitCursorDo: [
+                pathes := OrderedCollection new.
+                defClass forEachFileNameAndGeneratedContentsDo:[:fileName :fileContents |
+                    pathes add:(packageId pathRelativeToTopDirectory,'/',fileName).  "/ always unix names
+                ].
+
+                aManager
+                    setSymbolicName:tag 
+                    revision:nil 
+                    overWrite:true 
+                    pathes:pathes
+            ].
+        ]
+    ].
+
+    "Created: / 29-07-2013 / 09:49:58 / cg"
+!
+
 projectMenuSetTagUsingManager:aManager
     |tag allClasses|
 
-    tag := Dialog request:'Tag:'.
+    tag := self askForTagForClasses:(self selectedProjectClasses).
     tag isEmptyOrNil ifTrue:[^ self ].
 
     self withWaitCursorDo: [
-	allClasses := OrderedCollection new.
-	self selectedProjectsDo:[:packageToTag |
-	    allClasses addAll:((Smalltalk allClassesInPackage:packageToTag)
-				    asOrderedCollection reject:[:cls | cls isPrivate]).
-	].
-
-	aManager utilities tagClasses:allClasses as:tag.
+        allClasses := OrderedCollection new.
+        self selectedProjectsDo:[:packageToTag |
+            allClasses addAll:((Smalltalk allClassesInPackage:packageToTag)
+                                    asOrderedCollection reject:[:cls | cls isPrivate]).
+        ].
+        
+        aManager utilities tagClasses:allClasses as:tag.
     ]
 
     "Created: / 12-09-2006 / 13:25:09 / cg"
     "Modified: / 15-10-2011 / 22:45:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 29-07-2013 / 09:23:53 / cg"
 !
 
 projectMenuShowGeneratedBuildFile:whichFile
@@ -49686,16 +49758,16 @@
 
     mthd := self theSingleSelectedMethod.
     (mthd notNil and:[ (mSel := mthd selector) notNil]) ifTrue:[
-	needSep := false.
-
-	contractedSelector := mSel contractTo:80.
-
-	withCurrentSelector ifTrue:[
-	    item := MenuItem label:(' ' , contractedSelector , ' ').   "/ ' ' is a kludge - to allow '-' selector
-	    item itemValue:actionSelector argument:mSel.
-	    m addItem:item.
-	    needSep := true.
-	].
+        needSep := false.
+
+        contractedSelector := mSel contractTo:80.
+
+        withCurrentSelector ifTrue:[
+            item := MenuItem label:(' ' , contractedSelector , ' ').   "/ ' ' is a kludge - to allow '-' selector
+            item itemValue:actionSelector argument:mSel.
+            m addItem:item.
+            needSep := true.
+        ].
 "/            true "withInstanceProtocolOnly" ifTrue:[
 "/                item := MenuItem label:(resources string:' %1 - Instance Protocol Only' with:contractedSelector).
 "/                item value:actionSelector.
@@ -49709,131 +49781,145 @@
 "/                m addItem:item.
 "/            ].
 
-	(withLocalSenders or:[ withSenderChain or:[ withLocalImplementors or:[ withImplementorChain]]]) ifTrue:[
-	    needSep ifTrue:[ m addSeparator ].
-	    needSep := false.
-	].
-
-	withLocalSenders ifTrue:[
-	    "/ item := MenuItem label:(resources string:' %1 - Local Senders' with:contractedSelector).
-	    item := MenuItem label:(resources string:'Local Senders of %1' with:contractedSelector).
-	    item itemValue:#spawnLocalSendersBuffer.
-	    m addItem:item. needSep := true
-	].
-	withSenderChain ifTrue:[
-	    "/ item := MenuItem label:(resources string:' %1 - Sender Chain' with:contractedSelector).
-	    item := MenuItem label:(resources string:'Sender Chain of %1' with:contractedSelector).
-	    item itemValue:#spawnSenderChainBuffer.
-	    m addItem:item. needSep := true
-	].
-	(withCallersOfThisMethod and:[mthd isInstrumented]) ifTrue:[
-	    item := MenuItem label:(resources string:'Callers of this %1' with:contractedSelector).
-	    item itemValue:#spawnCallersBuffer.
-	    m addItem:item. needSep := true
-	].
-
-	withLocalImplementors ifTrue:[
-	    item := MenuItem label:(resources string:'Local Implementors of %1' with:contractedSelector).
-	    item itemValue:#spawnLocalImplementorsBuffer.
-	    m addItem:item. needSep := true
-	].
-	withImplementorChain ifTrue:[
-	    item := MenuItem label:(resources string:'Implementor Chain of %1' with:contractedSelector).
-	    item itemValue:#spawnImplementorChainBuffer.
-	    m addItem:item. needSep := true
-	].
-	withMethodsCalledByThisMethod ifTrue:[
-	    item := MenuItem label:(resources string:'Methods Called by %1' with:contractedSelector).
-	    item itemValue:#spawnMethodsCalledByBuffer.
-	    m addItem:item. needSep := true
-	].
-
-	selfSendsOnly ifTrue:[
-	    l := mthd messagesSentToSelf.
-	] ifFalse:[
-	    l := mthd messagesSent asArray.
-	    l := l , (mthd messagesPossiblySent asArray collect:[:each | each colorizeAllWith:Color darkGrey]).
-	].
-	l size > 0 ifTrue:[
-	    l := l asOrderedCollection sort:[:a :b |
-						|sA sB|
-						sA := a isArray ifTrue:[a first] ifFalse:[a string].
-						sB := b isArray ifTrue:[b first] ifFalse:[b string].
-						sA < sB].
-
-	    needSep ifTrue:[ m addSeparator ].
-
-"
-		(l size > 30) ifTrue:[
-		    l removeAllFoundIn:#(ifTrue: ifFalse: ifTrue:ifFalse: ifFalse:ifTrue:
-					 whileTrue: whileFalse:
-					 isNil notNil
-					 and: or:
-					).
-		    (l size > 30) ifTrue:[
-			l removeAllFoundIn:#(#'==' #'~~' class
-					    ).
-		    ]
-		].
-		(cut := l size > 30) ifTrue:[
-		    l := l copyTo:30
-		].
-"
-	    l do:[:eachMessage |
-		item := MenuItem label:(' ' , (eachMessage contractTo:100), ' ').  "/ ' ' is a kludge - to allow '-' selector
-		item itemValue:actionSelector argument:eachMessage string asSymbol.
-		m addItem:item.
-	    ].
-
-"
-		cut ifTrue:[
-		    m addItem:(MenuItem label:'-').
-		    m addItem:(MenuItem label:'<< more items ignored >>').
-		]
-"
-	]
-    ] ifFalse:[
-	allMessagesSent := Set new.
-
-	"/ not exactly one method selected;
-	"/ generate a menu for all selected method's implementors and sent messages.
-	methods := self selectedMethodsValue.
-	methods isEmptyOrNil ifTrue:[
-	    methods := OrderedCollection new.
-	    self selectedClassesDo:[:cls |
-		cls methodsDo:[:eachMethod | methods add:eachMethod].
-	    ].
-	].
-	methods do:[:eachMethod |
-	    mSel := eachMethod selector ? '?'.
-	    contractedSelector := mSel contractTo:80.
-
-	    item := MenuItem label:(' ' , contractedSelector , ' ').   "/ ' ' is a kludge - to allow '-' selector
-	    item itemValue:actionSelector argument:mSel.
-	    m addItem:item.
-
-	    selfSendsOnly ifTrue:[
-		allMessagesSent addAll:(eachMethod messagesSentToSelf).
-	    ] ifFalse:[
-		allMessagesSent addAll:(eachMethod messagesSent).
-	    ].
-	].
-
-	allMessagesSent := allMessagesSent asSortedCollection.
-	allMessagesSent size > 0 ifTrue:[
-	    m addSeparator.
-	    allMessagesSent do:[:eachMessage |
-		item := MenuItem label:(' ' , (eachMessage contractTo:100), ' ').  "/ ' ' is a kludge - to allow '-' selector
-		item itemValue:actionSelector argument:eachMessage asSymbol.
-		m addItem:item.
-	    ].
-	].
-    ].
-
+        (withLocalSenders or:[ withSenderChain or:[ withLocalImplementors or:[ withImplementorChain]]]) ifTrue:[
+            needSep ifTrue:[ m addSeparator ].
+            needSep := false.
+        ].
+
+        withLocalSenders ifTrue:[
+            "/ item := MenuItem label:(resources string:' %1 - Local Senders' with:contractedSelector).
+            item := MenuItem label:(resources string:'Local Senders of %1' with:contractedSelector).
+            item itemValue:#spawnLocalSendersBuffer.
+            m addItem:item. needSep := true
+        ].
+        withSenderChain ifTrue:[
+            "/ item := MenuItem label:(resources string:' %1 - Sender Chain' with:contractedSelector).
+            item := MenuItem label:(resources string:'Sender Chain of %1' with:contractedSelector).
+            item itemValue:#spawnSenderChainBuffer.
+            m addItem:item. needSep := true
+        ].
+        (withCallersOfThisMethod and:[mthd isInstrumented]) ifTrue:[
+            item := MenuItem label:(resources string:'Callers of this %1' with:contractedSelector).
+            item itemValue:#spawnCallersBuffer.
+            m addItem:item. needSep := true
+        ].
+
+        withLocalImplementors ifTrue:[
+            item := MenuItem label:(resources string:'Local Implementors of %1' with:contractedSelector).
+            item itemValue:#spawnLocalImplementorsBuffer.
+            m addItem:item. needSep := true
+        ].
+        withImplementorChain ifTrue:[
+            item := MenuItem label:(resources string:'Implementor Chain of %1' with:contractedSelector).
+            item itemValue:#spawnImplementorChainBuffer.
+            m addItem:item. needSep := true
+        ].
+        withMethodsCalledByThisMethod ifTrue:[
+            item := MenuItem label:(resources string:'Methods Called by %1' with:contractedSelector).
+            item itemValue:#spawnMethodsCalledByBuffer.
+            m addItem:item. needSep := true
+        ].
+
+        selfSendsOnly ifTrue:[
+            l := mthd messagesSentToSelf.
+            l := l , (mthd messagesSentToSuper asArray collect:[:each | { each . mthd mclass superclass }]).
+            l := l , ((mthd messagesPossiblySent 
+                          select:[:sel | mthd mclass canUnderstand:sel])
+                            asArray collect:[:each | each colorizeAllWith:Color darkGrey]).
+        ] ifFalse:[
+            l := mthd messagesSent asArray.
+            l := l , (mthd messagesPossiblySent asArray collect:[:each | each colorizeAllWith:Color darkGrey]).
+        ].
+        l size > 0 ifTrue:[
+            l := l asOrderedCollection sort:[:a :b | 
+                                                |sA sB| 
+                                                sA := a isArray ifTrue:[a first] ifFalse:[a string].
+                                                sB := b isArray ifTrue:[b first] ifFalse:[b string].
+                                                sA < sB].
+
+            needSep ifTrue:[ m addSeparator ].
+
+"/            (l size > 30) ifTrue:[
+"/                l removeAllFoundIn:#(ifTrue: ifFalse: ifTrue:ifFalse: ifFalse:ifTrue:
+"/                                     whileTrue: whileFalse:
+"/                                     isNil notNil
+"/                                     and: or:
+"/                                    ).
+"/                (l size > 30) ifTrue:[
+"/                    l removeAllFoundIn:#(#'==' #'~~' class
+"/                                        ).
+"/                ]
+"/            ].
+"/            (cut := l size > 30) ifTrue:[
+"/                l := l copyTo:30
+"/            ].
+
+            l do:[:eachMessageOrPair |
+                |selector class label arg|
+
+                eachMessageOrPair isArray ifTrue:[
+                    selector := eachMessageOrPair first.
+                    class := eachMessageOrPair second.
+                    arg := eachMessageOrPair.
+                ] ifFalse:[
+                    selector := eachMessageOrPair.
+                    arg := eachMessageOrPair string asSymbol.
+                ].
+                label := (selector contractTo:100).
+                class notNil ifTrue:[
+                    label := label , ' (super)'.
+                ].
+                item := MenuItem label:(' ' , label, ' ').  "/ ' ' is a kludge - to allow '-' selector (i.e. not confuse with separator)
+                item itemValue:actionSelector argument:arg.
+                m addItem:item.
+            ].
+
+"/            cut ifTrue:[
+"/                m addItem:(MenuItem label:'-').
+"/                m addItem:(MenuItem label:'<< more items ignored >>').
+"/            ]
+        ]
+    ] ifFalse:[
+        allMessagesSent := Set new.
+
+        "/ not exactly one method selected;
+        "/ generate a menu for all selected method's implementors and sent messages.
+        methods := self selectedMethodsValue.
+        methods isEmptyOrNil ifTrue:[
+            methods := OrderedCollection new.
+            self selectedClassesDo:[:cls |
+                cls methodsDo:[:eachMethod | methods add:eachMethod].
+            ].
+        ].
+        methods do:[:eachMethod |
+            mSel := eachMethod selector ? '?'.
+            contractedSelector := mSel contractTo:80.
+
+            item := MenuItem label:(' ' , contractedSelector , ' ').   "/ ' ' is a kludge - to allow '-' selector
+            item itemValue:actionSelector argument:mSel.
+            m addItem:item.
+
+            selfSendsOnly ifTrue:[
+                allMessagesSent addAll:(eachMethod messagesSentToSelf).
+            ] ifFalse:[
+                allMessagesSent addAll:(eachMethod messagesSent).
+            ].
+        ].
+
+        allMessagesSent := allMessagesSent asSortedCollection.
+        allMessagesSent size > 0 ifTrue:[
+            m addSeparator.
+            allMessagesSent do:[:eachMessage |
+                item := MenuItem label:(' ' , (eachMessage contractTo:100), ' ').  "/ ' ' is a kludge - to allow '-' selector
+                item itemValue:actionSelector argument:eachMessage asSymbol.
+                m addItem:item.
+            ].
+        ].
+    ].
     ^ m
 
     "Created: / 27-04-2010 / 15:05:52 / cg"
-    "Modified: / 09-09-2012 / 13:20:43 / cg"
+    "Modified: / 30-07-2013 / 15:53:58 / cg"
 !
 
 messagesMenuFor:actionSelector withSenderChain:withSenderChain withImplementorChain:withImplementorChain
@@ -60440,11 +60526,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1949 2013-07-30 19:43:19 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1949 2013-07-30 19:43:19 cg Exp $'
 !
 
 version_HG
@@ -60453,7 +60539,7 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
+    ^ '$Id: Tools__NewSystemBrowser.st,v 1.1949 2013-07-30 19:43:19 cg Exp $'
 ! !
 
 
--- a/Tools__TestRunner2.st	Sun Jul 28 11:38:21 2013 +0100
+++ b/Tools__TestRunner2.st	Thu Aug 01 10:27:56 2013 +0100
@@ -1554,13 +1554,14 @@
                             [:gen | 
                             |testCases|
 
-                            testCases := OrderedCollection new:8.
+                            testCases := OrderedCollection new.
                             gen do:[:cls | (self isTestCaseLike:cls) ifTrue:[ testCases add:cls ] ].
                             testCases ]
                         argument:self classListOutGeneratorHolder ].
     ^ classListInGeneratorHolder
 
     "Created: / 01-02-2010 / 09:50:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-07-2013 / 19:28:47 / cg"
 !
 
 classListOutGeneratorHolder
@@ -1855,7 +1856,7 @@
 !TestRunner2::ClassList class methodsFor:'documentation'!
 
 version
-    ^'$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.42 2013-07-04 15:19:38 cg Exp $'
+    ^'$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.43 2013-07-30 17:34:24 cg Exp $'
 ! !
 
 !TestRunner2::ClassList methodsFor:'private'!
@@ -2118,7 +2119,7 @@
     classes := Dictionary new.
     result tests do:
         [:test|
-        (classes at: test class ifAbsentPut:[OrderedCollection new:1])
+        (classes at: test class ifAbsentPut:[OrderedCollection new])
             add: test].
     children := classes keysAndValuesCollect:
                     [:class :tests|
@@ -2127,7 +2128,7 @@
     ^entry.
 
     "Created: / 19-03-2010 / 08:36:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 04-08-2011 / 20:30:39 / cg"
+    "Modified: / 30-07-2013 / 19:29:10 / cg"
 !
 
 makeRootEntry
@@ -2356,11 +2357,11 @@
 !TestRunner2 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.42 2013-07-04 15:19:38 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.43 2013-07-30 17:34:24 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.42 2013-07-04 15:19:38 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__TestRunner2.st,v 1.43 2013-07-30 17:34:24 cg Exp $'
 !
 
 version_HG
@@ -2369,7 +2370,7 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__TestRunner2.st,v 1.42 2013-07-04 15:19:38 cg Exp $'
+    ^ '$Id: Tools__TestRunner2.st,v 1.43 2013-07-30 17:34:24 cg Exp $'
 ! !
 
 
--- a/resources/de.rs	Sun Jul 28 11:38:21 2013 +0100
+++ b/resources/de.rs	Thu Aug 01 10:27:56 2013 +0100
@@ -1,6 +1,6 @@
 #encoding utf8
 
-; $Header: /cvs/stx/stx/libtool/resources/de.rs,v 1.226 2013-07-09 13:25:03 cg Exp $
+; $Header: /cvs/stx/stx/libtool/resources/de.rs,v 1.227 2013-07-25 09:53:02 cg Exp $
 ;
 ; German Workspace (and other tools) resources
 ;
@@ -1190,7 +1190,7 @@
 'Compile with stc'          'Mit stc bersetzen'
 'Recompile'                 'Neu bersetzen'
 'Decompile'                 'Bytecode anzeigen'
-'Process'                   'Bearbeiten mit'
+'Process with'              'Bearbeiten mit'
 'Copy List to Clipboard'            'Liste ins Clipboard kopieren'
 'Copy List of Classes to Clipboard' 'Liste der Klassen ins Clipboard kopieren'
 
@@ -2694,7 +2694,6 @@
 '** context returned **'                                 '** Kontext nicht mehr aktiv **'
 
 View            'Ansicht'
-Process         'Prozess'
 ; Context         'Kontext'
 Class           'Klasse'
 Selector        'Selektor'