*** empty log message ***
authorClaus Gittinger <cg@exept.de>
Tue, 14 Feb 2006 15:31:02 +0100
changeset 6557 ff6506737ec4
parent 6556 446737f7e340
child 6558 1c948ee4326f
*** empty log message ***
Tools_NavigationState.st
--- a/Tools_NavigationState.st	Tue Feb 14 15:30:50 2006 +0100
+++ b/Tools_NavigationState.st	Tue Feb 14 15:31:02 2006 +0100
@@ -15,26 +15,26 @@
 "{ NameSpace: Tools }"
 
 Object subclass:#NavigationState
-        instanceVariableNames:'browserLabel codeModifiedHolder categoryList classList
-                packageFilter nameSpaceFilter hidePrivateClasses canvasType
-                notMetaToggle metaToggle metaToggleLabel organizerMode codeAspect
-                codeHolder classDocumentationHolder canvas selectorListGenerator
-                protocolListGenerator classListPerNameSpaceGenerator
-                classListGenerator categoryListGenerator nameSpaceListGenerator
-                projectListGenerator classHierarchyTopClass meta selectedMethods
-                selectedProtocols selectedClasses selectedCategories
-                selectedProjects selectedNamespaces variableFilter
-                filterClassVars sortBy noAllItem autoSearchPattern
-                autoSearchIgnoreCase autoSearchAction realModifiedState
-                methodInfo versionDiffApplication selectorListGeneratorArray
-                selectedMethodsArray infoLabelHolder packageLabelHolder
-                cursorLineLabelHolder cursorColLabelHolder modeLabelHolder
-                sortVariablesBy editModeHolder scrollableCodeView specialEditors
-                selectedEditorNoteBookTabIndexHolder editorNoteBookListHolder
-                editorNoteBookCanvasHolder'
-        classVariableNames:''
-        poolDictionaries:''
-        category:'Interface-Browsers-New'
+	instanceVariableNames:'browserLabel codeModifiedHolder categoryList classList
+		packageFilter nameSpaceFilter hidePrivateClasses canvasType
+		notMetaToggle metaToggle metaToggleLabel organizerMode codeAspect
+		codeHolder classDocumentationHolder canvas selectorListGenerator
+		protocolListGenerator classListPerNameSpaceGenerator
+		classListGenerator categoryListGenerator nameSpaceListGenerator
+		projectListGenerator classHierarchyTopClass meta selectedMethods
+		selectedProtocols selectedClasses selectedCategories
+		selectedProjects selectedNamespaces variableFilter
+		filterClassVars sortBy noAllItem autoSearchPattern
+		autoSearchIgnoreCase autoSearchAction realModifiedState
+		methodInfo versionDiffApplication selectorListGeneratorArray
+		selectedMethodsArray infoLabelHolder packageLabelHolder
+		cursorLineLabelHolder cursorColLabelHolder modeLabelHolder
+		sortVariablesBy editModeHolder scrollableCodeView specialEditors
+		selectedEditorNoteBookTabIndexHolder editorNoteBookListHolder
+		editorNoteBookCanvasHolder codeView'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Interface-Browsers-New'
 !
 
 !NavigationState class methodsFor:'documentation'!
@@ -297,36 +297,57 @@
 !NavigationState methodsFor:'accessing-subViews'!
 
 codeView
-    ^ self scrollableCodeView scrolledView
+    codeView isNil ifTrue:[
+        self setUpScrollableCodeView
+    ].
+    ^ codeView
+!
+
+getCodeView
+    ^ codeView
 !
 
 scrollableCodeView
     scrollableCodeView isNil ifTrue:[
+        self setUpScrollableCodeView.
+    ].
+    ^ scrollableCodeView
+!
+
+setUpScrollableCodeView
+    scrollableCodeView isNil ifTrue:[
         scrollableCodeView := ScrollableView for:CodeView.
         scrollableCodeView name:'CodeView'.
         scrollableCodeView horizontalMini:true.
-        scrollableCodeView scrolledView modifiedChannel:self codeModifiedHolder.
-        scrollableCodeView scrolledView model: self codeHolder.
+        codeView := scrollableCodeView scrolledView.
+        codeView modifiedChannel:self codeModifiedHolder.
+        codeView model: self codeHolder.
+
     ].
     ^ scrollableCodeView
 !
 
+specialEditorCanvasClassForResourceType:resourceTypeSymbol
+    resourceTypeSymbol == #image ifTrue:[
+        ^ ImageEditor.
+    ].
+    resourceTypeSymbol == #menu ifTrue:[
+        ^ MenuEditor.
+    ].
+    ^ nil
+!
+
 specialEditorCanvasForResourceType:resourceTypeSymbol
-    |app editor|
+    |appClass app editor|
 
     specialEditors isNil ifTrue:[
         specialEditors := Dictionary new.    
     ].
     editor := specialEditors at:resourceTypeSymbol ifAbsent:nil.
     editor isNil ifTrue:[
-        resourceTypeSymbol == #image ifTrue:[
-            app := ImageEditor new.
-        ] ifFalse:[
-            resourceTypeSymbol == #menu ifTrue:[
-                app := MenuEditor new.
-            ]
-        ].
-        app notNil ifTrue:[
+        appClass := self specialEditorCanvasClassForResourceType:resourceTypeSymbol.
+        appClass notNil ifTrue:[
+            app := appClass new.
             app builder window:(editor := ApplicationSubView new client:app).
             specialEditors at:resourceTypeSymbol put:editor.
         ].
@@ -1184,5 +1205,5 @@
 !NavigationState class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_NavigationState.st,v 1.8 2006-02-14 10:05:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_NavigationState.st,v 1.9 2006-02-14 14:31:02 cg Exp $'
 ! !