extensions.st
changeset 16722 63b17ec548a5
parent 16704 af7a0d8ce0ed
child 16727 639ebd184cf4
child 16789 a3f528d8797d
--- a/extensions.st	Thu Jul 07 14:04:17 2016 +0200
+++ b/extensions.st	Thu Jul 07 14:05:29 2016 +0200
@@ -892,31 +892,30 @@
     | mimetype |
 
     self isDirectory ifTrue:[ 
-        (Smalltalk at:#'DirectoryContentsBrowser') notNil ifTrue:[
-            | tab |    
-
-            ^ (tab := Tools::Inspector2Tab new)
-                label: 'Contents';
-                priority: 50;
-                application: [   
-                    | browser |
-
-                    browser := DirectoryContentsBrowser new.
-                    browser masterApplication:nil.
-                    browser aspectFor:#currentFileNameHolder put: (OrderedCollection with:self) asValue.
-                    browser viewDirsInContentsBrowser value:true.
-                    browser updateCurrentFileNameHolderWhenSelectionChanges: false.
-                    browser enterActionBlock:[:item|
-                        | app |                        
-                        app := tab view topView application.
-                        app notNil ifTrue:[
-                            app inspect: item fileName.
-                        ].
+        | tab |    
+
+        ^ (tab := Tools::Inspector2Tab new)
+            label: 'Contents';
+            priority: 50;
+            applicationHolder: [   
+                | browser |
+
+                browser := DirectoryContentsBrowser new.
+                browser
+                    initializeAspects;
+                    aspectFor:#currentFileNameHolder put:((OrderedCollection with:self) asValue);
+                    updateCurrentFileNameHolderWhenSelectionChanges:false.
+                browser viewDirsInContentsBrowser value:true.
+                browser enterActionBlock:[:item|
+                    | app |                        
+                    app := tab view topView application.
+                    app notNil ifTrue:[
+                        app inspect: item fileName.
                     ].
-                    browser.
-                ];
-                yourself
-        ].
+                ].
+                browser
+            ];
+            yourself
     ].
     mimetype := self mimeTypeFromName.
     (mimetype notNil and:[mimetype isTextType or:[ mimetype endsWith: '-source']]) ifTrue:[ 
@@ -1666,29 +1665,35 @@
     <inspector2Tab>
 
     makeView := [
-        |spec view browser cls canvas|
-
-        "/ spec := #singleClassBrowserSpec.
-        spec := #multipleClassBrowserSpec.
-
-        cls := self class theNonMetaclass.
+        |spec view browser navigationState cls canvas|
+
+
         view isNil ifTrue:[
-            browser := Tools::NewSystemBrowser new.
-            browser isEmbeddedBrowser:true.
-            browser createBuilder.
-            browser navigationState canvasType:spec.
+            "/ spec := #singleClassBrowserSpec.
+            spec := #multipleClassBrowserSpec.
+
+            browser := Tools::NewSystemBrowser new
+                           isEmbeddedBrowser:true;
+                           createBuilder.
+
+            navigationState := browser navigationState.
+            navigationState canvasType:spec.
             browser browserCanvasType:spec.
+
             canvas := browser browserCanvas value.
             canvas builder:(browser builder).
-            browser navigationState canvas:canvas.
+            navigationState canvas:canvas.
             "/ browser switchToClassHierarchyView.
             "/ browser showInheritedMethods.
+
+            cls := self class theNonMetaclass.
             browser classListGenerator value:(cls withAllSuperclasses).
             browser sortByNameAndInheritance value:true.
-            browser selectClass: cls.
-            browser selectProtocol: (Tools::BrowserList nameListEntryForALL).  
+            browser
+                selectClass:cls;
+                selectProtocol: (Tools::BrowserList nameListEntryForALL).  
             view := ApplicationSubView new client: browser spec: spec.
-            browser navigationState classListApplication addOwnerClasses value:false.
+            navigationState classListApplication addOwnerClasses value:false.
         ].
         view
     ].